SlideShare une entreprise Scribd logo
1  sur  43
FaceNet:
A Unified Embedding for Face Recognition and Clustering
Florian Schroff
Dmitry Kalenichenko
James Philbin
Google [2015]
[ 0.01949719, 0.09399229, -0.01618082, -0.00876935, 0.03146157, 0.06853894, 0.00096175, -0.06854118, -0.04771797, -0.05296798, 0.02119147, 0.00511259, 0.1372668
[ 0.01949719,
0.09399229, -
0.01618082, -
0.00876935,
0.03146157,
0.06853894,
0.00096175, -
0.06854118, -
0.04771797, -
0.05296798,
0.02119147,
0.00511259,
0.13726683, -
0.05780432, -
0.00541799,
0.01251621, -
0.08900651, -
0.15897971, -
0.07564467,
0.16574059,
…]
EMBEDDING
MOTIVATION
PROBLEMS WITH OLD
APPROACHES
Is this Tess? This is Anders and Tess? Who diz?
VERIFICATION IDENTIFICATION CLUSTERING
TIMTESS TEMPEST YANA
TESS UNKNOWN?
SIMON CHRIS
We have lots and lots of
people…
We need lots and lots of
selfies…
FRANCOIS
Let’s not hire him,
I don’t want to retrain the network
TIMTESS TEMPEST YANASIMON CHRIS
This Photo by Unknown Author is licensed under CC BY-NC
LET’S TRAIN A SIMILARITY FUNCTION INSTEAD
EMBEDDINGS
APRICOT PEACH BEACH
MOVIE RECOMMENDATION
AdultChild
Blockbuster
Arthouse
* (-1,-0.95)
* (0.65, 0.2)
* (-1,-0.95)
* (0.65, 0.2)
DISTANCE
d(P,Q) = f(P)−f(Q) 2
2
𝐿2 𝑁𝑜𝑟𝑚
* (-1,-0.95)
* (0.65, 0.2)
DISTANCE
Embedding on the
d-dimensional hypher-sphere
f(X) 2
2
= 1
0 = Identical
4 = As different as can be
d(P,Q) = f(P)−f(Q) 2
2
𝐿2 𝑁𝑜𝑟𝑚
USING EMBEDDINGS
TO SOLVE FACE TASKS
Is this Tess?
VERIFICATION
Verification
=
Distance
Threshold
𝑑(𝑇𝑒𝑠𝑠, 𝑇𝑒𝑠𝑡) ≤ 𝜏
This is <unknown> and Tess?
IDENTIFICATION
Identification
=
search lowest
distance
or
K-nn/SVM
classification
0.3
1.2
1.4
2.3
1.7
1.1
1.6
0.8
Who diz?
CLUSTERING
DEEPFACE
DeepFace by Facebook
1
0
FACENET
TRIPLET LOSS AND
TRIPLET SELECTION
TRIPLET LOSS
ANCHOR (A) POSITIVE (P) ANCHOR (A) NEGATIVE (N)
d(A,P) ≤ d(A,N)d(A,P) - d(A,N) ≤ 0𝑓 𝐴 − 𝑓(𝑃) - 𝑓 𝐴 − 𝑓(𝑁) ≤ 0𝑓 𝐴 − 𝑓(𝑃) - 𝑓 𝐴 − 𝑓(𝑁) + α ≤ 0
0.3 0.32
COST FUNCTION
𝑓 𝑎 − 𝑓(𝑝) - 𝑓 𝑎 − 𝑓(𝑛) + α ≤ 0
FINDING THE RIGHT TRIPLETS
We need triplets that violate the equation to ensure fast convergance
𝑓 𝑎 − 𝑓(𝑝) - 𝑓 𝑎 − 𝑓(𝑛) + α ≤ 0
find P where argmax( 𝑓 𝑎 − 𝑓(𝑝) )
find N where argmin( 𝑓 𝑎 − 𝑓(𝑛) )
Triplet selection options
A) Generate triplets offline every N steps from a subset of data
B) Generate triplets online from a minibatch
Paper uses option B, with large minibatches with 1000s of examples
CNN ARCHITECTURE
OpenFace – Open Source FaceNet implementation
GoogLeNet Inception Network
DATASETS
PREPARATION AND RESULTS
http://vis-www.cs.umass.edu/lfw/
13233 images
5749 people
1680 people with two or more images
Labeled Faces in the Wild (LFW)
77.5 % Male
83.5 % White (Han & Jain, 2014)
BEYOND THE PAPER
https://www.researchgate.net/publication/317649493_Analysis_and_
Automation_of_Deep_Face_Recognition
DATA PREPRATION with DLIB

Contenu connexe

Tendances

Tendances (20)

Debugging .NET apps
Debugging .NET appsDebugging .NET apps
Debugging .NET apps
 
Batch normalization presentation
Batch normalization presentationBatch normalization presentation
Batch normalization presentation
 
Image classification using cnn
Image classification using cnnImage classification using cnn
Image classification using cnn
 
Deep learning for image video processing
Deep learning for image video processingDeep learning for image video processing
Deep learning for image video processing
 
Siamese networks.pptx.pdf
Siamese networks.pptx.pdfSiamese networks.pptx.pdf
Siamese networks.pptx.pdf
 
Real Time Object Dectection using machine learning
Real Time Object Dectection using machine learningReal Time Object Dectection using machine learning
Real Time Object Dectection using machine learning
 
Deep Learning With Python Tutorial | Edureka
Deep Learning With Python Tutorial | EdurekaDeep Learning With Python Tutorial | Edureka
Deep Learning With Python Tutorial | Edureka
 
Deep Learning
Deep Learning Deep Learning
Deep Learning
 
Convolutional Neural Network (CNN) - image recognition
Convolutional Neural Network (CNN)  - image recognitionConvolutional Neural Network (CNN)  - image recognition
Convolutional Neural Network (CNN) - image recognition
 
Intro to Deep Learning for Computer Vision
Intro to Deep Learning for Computer VisionIntro to Deep Learning for Computer Vision
Intro to Deep Learning for Computer Vision
 
CNN and its applications by ketaki
CNN and its applications by ketakiCNN and its applications by ketaki
CNN and its applications by ketaki
 
Convolutional Neural Network Models - Deep Learning
Convolutional Neural Network Models - Deep LearningConvolutional Neural Network Models - Deep Learning
Convolutional Neural Network Models - Deep Learning
 
Mask R-CNN
Mask R-CNNMask R-CNN
Mask R-CNN
 
Deep learning
Deep learning Deep learning
Deep learning
 
Deep Learning - CNN and RNN
Deep Learning - CNN and RNNDeep Learning - CNN and RNN
Deep Learning - CNN and RNN
 
CNN Machine learning DeepLearning
CNN Machine learning DeepLearningCNN Machine learning DeepLearning
CNN Machine learning DeepLearning
 
Convolutional neural networks
Convolutional neural networks Convolutional neural networks
Convolutional neural networks
 
Machine Learning - Convolutional Neural Network
Machine Learning - Convolutional Neural NetworkMachine Learning - Convolutional Neural Network
Machine Learning - Convolutional Neural Network
 
Cnn
CnnCnn
Cnn
 
Introduction to Few shot learning
Introduction to Few shot learningIntroduction to Few shot learning
Introduction to Few shot learning
 

Similaire à Facenet - Paper Review

Application of recursive perturbation approach for multimodal optimization
Application of recursive perturbation approach for multimodal optimizationApplication of recursive perturbation approach for multimodal optimization
Application of recursive perturbation approach for multimodal optimization
Pranamesh Chakraborty
 
computer notes - Data Structures - 25
computer notes - Data Structures - 25computer notes - Data Structures - 25
computer notes - Data Structures - 25
ecomputernotes
 

Similaire à Facenet - Paper Review (14)

Measuring movements of golfers with an accelerometer
Measuring movements of golfers with an accelerometerMeasuring movements of golfers with an accelerometer
Measuring movements of golfers with an accelerometer
 
Application of recursive perturbation approach for multimodal optimization
Application of recursive perturbation approach for multimodal optimizationApplication of recursive perturbation approach for multimodal optimization
Application of recursive perturbation approach for multimodal optimization
 
Empowering the quantum revolution with Q#
Empowering the quantum revolution with Q#Empowering the quantum revolution with Q#
Empowering the quantum revolution with Q#
 
A game theoretic approach for runtime capacity allocation in map-reduce (WACC...
A game theoretic approach for runtime capacity allocation in map-reduce (WACC...A game theoretic approach for runtime capacity allocation in map-reduce (WACC...
A game theoretic approach for runtime capacity allocation in map-reduce (WACC...
 
Model Presolve, Warmstart and Conflict Refining in CP Optimizer
Model Presolve, Warmstart and Conflict Refining in CP OptimizerModel Presolve, Warmstart and Conflict Refining in CP Optimizer
Model Presolve, Warmstart and Conflict Refining in CP Optimizer
 
Design of a Controller for MIMO System by using Approximate Model Matching (A...
Design of a Controller for MIMO System by using Approximate Model Matching (A...Design of a Controller for MIMO System by using Approximate Model Matching (A...
Design of a Controller for MIMO System by using Approximate Model Matching (A...
 
One Algorithm to Rule Them All: How to Automate Statistical Computation
One Algorithm to Rule Them All: How to Automate Statistical ComputationOne Algorithm to Rule Them All: How to Automate Statistical Computation
One Algorithm to Rule Them All: How to Automate Statistical Computation
 
GraphBLAS: A linear algebraic approach for high-performance graph queries
GraphBLAS: A linear algebraic approach for high-performance graph queriesGraphBLAS: A linear algebraic approach for high-performance graph queries
GraphBLAS: A linear algebraic approach for high-performance graph queries
 
03 GlobalAIBootcamp2020Lisboa-Rock, Paper, Scissors.pptx
03 GlobalAIBootcamp2020Lisboa-Rock, Paper, Scissors.pptx03 GlobalAIBootcamp2020Lisboa-Rock, Paper, Scissors.pptx
03 GlobalAIBootcamp2020Lisboa-Rock, Paper, Scissors.pptx
 
Introduction to PyTorch
Introduction to PyTorchIntroduction to PyTorch
Introduction to PyTorch
 
Modul 9
Modul 9Modul 9
Modul 9
 
computer notes - Data Structures - 25
computer notes - Data Structures - 25computer notes - Data Structures - 25
computer notes - Data Structures - 25
 
IRJET- Segregation of Machines According to the Noise Emitted by Differen...
IRJET-  	  Segregation of Machines According to the Noise Emitted by Differen...IRJET-  	  Segregation of Machines According to the Noise Emitted by Differen...
IRJET- Segregation of Machines According to the Noise Emitted by Differen...
 
딥러닝 중급 - AlexNet과 VggNet (Basic of DCNN : AlexNet and VggNet)
딥러닝 중급 - AlexNet과 VggNet (Basic of DCNN : AlexNet and VggNet)딥러닝 중급 - AlexNet과 VggNet (Basic of DCNN : AlexNet and VggNet)
딥러닝 중급 - AlexNet과 VggNet (Basic of DCNN : AlexNet and VggNet)
 

Plus de Tess Ferrandez

Plus de Tess Ferrandez (12)

funwithalgorithms.pptx
funwithalgorithms.pptxfunwithalgorithms.pptx
funwithalgorithms.pptx
 
CSI .net core - debugging .net applications
CSI .net core - debugging .net applicationsCSI .net core - debugging .net applications
CSI .net core - debugging .net applications
 
Debugging performance issues, memory issues and crashes in .net applications rev
Debugging performance issues, memory issues and crashes in .net applications revDebugging performance issues, memory issues and crashes in .net applications rev
Debugging performance issues, memory issues and crashes in .net applications rev
 
Common asp.net production issues rev
Common asp.net production issues revCommon asp.net production issues rev
Common asp.net production issues rev
 
Perf by design
Perf by designPerf by design
Perf by design
 
Fun421 stephens
Fun421 stephensFun421 stephens
Fun421 stephens
 
C# to python
C# to pythonC# to python
C# to python
 
AI and Ethics - We are the guardians of our future
AI and Ethics - We are the guardians of our futureAI and Ethics - We are the guardians of our future
AI and Ethics - We are the guardians of our future
 
Notes from Coursera Deep Learning courses by Andrew Ng
Notes from Coursera Deep Learning courses by Andrew NgNotes from Coursera Deep Learning courses by Andrew Ng
Notes from Coursera Deep Learning courses by Andrew Ng
 
A developers guide to machine learning
A developers guide to machine learningA developers guide to machine learning
A developers guide to machine learning
 
My bot has a personality disorder
My bot has a personality disorderMy bot has a personality disorder
My bot has a personality disorder
 
.Net debugging 2017
.Net debugging   2017.Net debugging   2017
.Net debugging 2017
 

Dernier

Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptx
pritamlangde
 
DeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesDeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakes
MayuraD1
 

Dernier (20)

A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
 
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptxOrlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
 
Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptx
 
Moment Distribution Method For Btech Civil
Moment Distribution Method For Btech CivilMoment Distribution Method For Btech Civil
Moment Distribution Method For Btech Civil
 
Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - V
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
DC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equationDC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equation
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna Municipality
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdf
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS Lambda
 
DeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesDeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakes
 
Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...
Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...
Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...
 
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
 
AIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsAIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech students
 
💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...
💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...
💚Trustworthy Call Girls Pune Call Girls Service Just Call 🍑👄6378878445 🍑👄 Top...
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdf
 
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
 
Introduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdfIntroduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdf
 

Facenet - Paper Review

Notes de l'éditeur

  1. Classification with very few images New people added all the time – don’t want to retrain OneShot Learning Common strategy for face verification, face identification, face clustering
  2. Classification with very few images New people added all the time – don’t want to retrain OneShot Learning Common strategy for face verification, face identification, face clustering
  3. Pairs of input and 1 or 0 as output – try to minimize distance of 1s (same) and maximize distance of 0s (different) assumes it will generalize 1000 of features in embedding