Face recognition using Deep Learning

Similar documents
Lecture 1: Machine Learning Basics

Word Segmentation of Off-line Handwritten Documents

System Implementation for SemEval-2017 Task 4 Subtask A Based on Interpolated Deep Neural Networks

Python Machine Learning

QuickStroke: An Incremental On-line Chinese Handwriting Recognition System

Deep search. Enhancing a search bar using machine learning. Ilgün Ilgün & Cedric Reichenbach

Semantic Segmentation with Histological Image Data: Cancer Cell vs. Stroma

CS Machine Learning

WHEN THERE IS A mismatch between the acoustic

Rule Learning With Negation: Issues Regarding Effectiveness

A Simple VQA Model with a Few Tricks and Image Features from Bottom-up Attention

Probabilistic Latent Semantic Analysis

ADVANCES IN DEEP NEURAL NETWORK APPROACHES TO SPEAKER RECOGNITION

Calibration of Confidence Measures in Speech Recognition

The 9 th International Scientific Conference elearning and software for Education Bucharest, April 25-26, / X

The Good Judgment Project: A large scale test of different methods of combining expert predictions

Assignment 1: Predicting Amazon Review Ratings

Knowledge Transfer in Deep Convolutional Neural Nets

arxiv: v2 [cs.cv] 30 Mar 2017

Evaluating Interactive Visualization of Multidimensional Data Projection with Feature Transformation

Generative models and adversarial training

AUTOMATIC DETECTION OF PROLONGED FRICATIVE PHONEMES WITH THE HIDDEN MARKOV MODELS APPROACH 1. INTRODUCTION

OCR for Arabic using SIFT Descriptors With Online Failure Prediction

Learning Structural Correspondences Across Different Linguistic Domains with Synchronous Neural Language Models

A study of speaker adaptation for DNN-based speech synthesis

Learning Methods for Fuzzy Systems

Model Ensemble for Click Prediction in Bing Search Ads

Automatic Pronunciation Checker

Experiments with SMS Translation and Stochastic Gradient Descent in Spanish Text Author Profiling

Phonetic- and Speaker-Discriminant Features for Speaker Recognition. Research Project

(Sub)Gradient Descent

Learning Optimal Dialogue Strategies: A Case Study of a Spoken Dialogue Agent for

have to be modeled) or isolated words. Output of the system is a grapheme-tophoneme conversion system which takes as its input the spelling of words,

Module 12. Machine Learning. Version 2 CSE IIT, Kharagpur

Rule Learning with Negation: Issues Regarding Effectiveness

DOMAIN MISMATCH COMPENSATION FOR SPEAKER RECOGNITION USING A LIBRARY OF WHITENERS. Elliot Singer and Douglas Reynolds

IEEE TRANSACTIONS ON AUDIO, SPEECH, AND LANGUAGE PROCESSING, VOL. 17, NO. 3, MARCH

Lip Reading in Profile

A Neural Network GUI Tested on Text-To-Phoneme Mapping

Using Deep Convolutional Neural Networks in Monte Carlo Tree Search

Reducing Features to Improve Bug Prediction

Course Outline. Course Grading. Where to go for help. Academic Integrity. EE-589 Introduction to Neural Networks NN 1 EE

Twitter Sentiment Classification on Sanders Data using Hybrid Approach

A New Perspective on Combining GMM and DNN Frameworks for Speaker Adaptation

Switchboard Language Model Improvement with Conversational Data from Gigaword

OPTIMIZATINON OF TRAINING SETS FOR HEBBIAN-LEARNING- BASED CLASSIFIERS

Semi-supervised methods of text processing, and an application to medical concept extraction. Yacine Jernite Text-as-Data series September 17.

Human Emotion Recognition From Speech

Comment-based Multi-View Clustering of Web 2.0 Items

Axiom 2013 Team Description Paper

Iterative Cross-Training: An Algorithm for Learning from Unlabeled Web Pages

Semi-Supervised Face Detection

SARDNET: A Self-Organizing Feature Map for Sequences

A Case Study: News Classification Based on Term Frequency

MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question.

Speech Emotion Recognition Using Support Vector Machine

Robust Speech Recognition using DNN-HMM Acoustic Model Combining Noise-aware training with Spectral Subtraction

Truth Inference in Crowdsourcing: Is the Problem Solved?

Linking Task: Identifying authors and book titles in verbose queries

On-the-Fly Customization of Automated Essay Scoring

Analysis of Emotion Recognition System through Speech Signal Using KNN & GMM Classifier

Combining Proactive and Reactive Predictions for Data Streams

ScienceDirect. A Framework for Clustering Cardiac Patient s Records Using Unsupervised Learning Techniques

INPE São José dos Campos

The Action Similarity Labeling Challenge

Unsupervised Learning of Word Semantic Embedding using the Deep Structured Semantic Model

Why Did My Detector Do That?!

arxiv: v1 [cs.lg] 15 Jun 2015

Speech Recognition at ICSI: Broadcast News and beyond

Modeling function word errors in DNN-HMM based LVCSR systems

Evidence for Reliability, Validity and Learning Effectiveness

THE enormous growth of unstructured data, including

Essentials of Ability Testing. Joni Lakin Assistant Professor Educational Foundations, Leadership, and Technology

Australian Journal of Basic and Applied Sciences

Training a Neural Network to Answer 8th Grade Science Questions Steven Hewitt, An Ju, Katherine Stasaski

Deep Facial Action Unit Recognition from Partially Labeled Data

MASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE

ADVANCED MACHINE LEARNING WITH PYTHON BY JOHN HEARTY DOWNLOAD EBOOK : ADVANCED MACHINE LEARNING WITH PYTHON BY JOHN HEARTY PDF

Evolutive Neural Net Fuzzy Filtering: Basic Description

Longest Common Subsequence: A Method for Automatic Evaluation of Handwritten Essays

University of Groningen. Systemen, planning, netwerken Bosman, Aart

Reinforcement Learning by Comparing Immediate Reward

Modeling function word errors in DNN-HMM based LVCSR systems

AUTOMATED TROUBLESHOOTING OF MOBILE NETWORKS USING BAYESIAN NETWORKS

PREDICTING SPEECH RECOGNITION CONFIDENCE USING DEEP LEARNING WITH WORD IDENTITY AND SCORE FEATURES

Using Web Searches on Important Words to Create Background Sets for LSI Classification

Developing True/False Test Sheet Generating System with Diagnosing Basic Cognitive Ability

Cultivating DNN Diversity for Large Scale Video Labelling

Applying Fuzzy Rule-Based System on FMEA to Assess the Risks on Project-Based Software Engineering Education

Comparison of network inference packages and methods for multiple networks inference

arxiv: v1 [cs.cv] 10 May 2017

Speaker recognition using universal background model on YOHO database

Test Effort Estimation Using Neural Network

P. Belsis, C. Sgouropoulou, K. Sfikas, G. Pantziou, C. Skourlas, J. Varnas

Exploration. CS : Deep Reinforcement Learning Sergey Levine

arxiv: v2 [cs.ir] 22 Aug 2016

A Reinforcement Learning Variant for Control Scheduling

Dual-Memory Deep Learning Architectures for Lifelong Learning of Everyday Human Behaviors

Exposé for a Master s Thesis

A Pipelined Approach for Iterative Software Process Model

Transcription:

Face recognition using Deep Learning Master Thesis Author: Serra, Xavier 1 Advisor: Castán, Javier 2 Tutor: Escalera, Sergio 3 1 Master in Artificial Intelligence Barcelona School of Informatics 2 GoldenSpear LLC 3 Department of Mathematics and Computer Science University of Barcelona Barcelona School of Informatics, January 2017 Barcelona School of Informatics Face recognition using Deep Learning 1 / 44

Outline 1 Introduction and Goals Introduction Goals 2 How it has been approached Problems Common approaches Proposed approach Datasets 3 Outcome 4 Conclusions Barcelona School of Informatics Face recognition using Deep Learning 2 / 44

Outline 1 Introduction and Goals Introduction Goals 2 How it has been approached Problems Common approaches Proposed approach Datasets 3 Outcome 4 Conclusions Barcelona School of Informatics Face recognition using Deep Learning 3 / 44

Uses of Face Recognition Face Recognition has drawn plenty of attention It has potential for multiple applications: Biometrical verification Search for a person through cameras Automatically tagging friends Finding similar people... So, what is actually Face Recognition? Barcelona School of Informatics Face recognition using Deep Learning 4 / 44

Face Recognition in fiction How has fiction pictured face recognition? Barcelona School of Informatics Face recognition using Deep Learning 5 / 44

Actual Face Recognition How does Face Recognition actually work? Eigenfaces Active Appearance Models Support Vector Machines Bayesian models Convolutional Neural Networks... Figure: Example of a CNN Barcelona School of Informatics Face recognition using Deep Learning 6 / 44

Goal of this master thesis Developing a face recognition system so that: Keeps a DB of known users Given a new picture, determines the closest match Capable of on-line learning Usable in uncontrolled environments Reasonably fast Barcelona School of Informatics Face recognition using Deep Learning 7 / 44

Outline 1 Introduction and Goals Introduction Goals 2 How it has been approached Problems Common approaches Proposed approach Datasets 3 Outcome 4 Conclusions Barcelona School of Informatics Face recognition using Deep Learning 8 / 44

Face Recognition Problems Many factors to take into account: Barcelona School of Informatics Face recognition using Deep Learning 9 / 44

Face Recognition Problems Many factors to take into account: Light conditions Barcelona School of Informatics Face recognition using Deep Learning 9 / 44

Face Recognition Problems Many factors to take into account: Light conditions Expression Barcelona School of Informatics Face recognition using Deep Learning 9 / 44

Face Recognition Problems Many factors to take into account: Light conditions Expression Face orientation Barcelona School of Informatics Face recognition using Deep Learning 9 / 44

Face Recognition Problems Many factors to take into account: Light conditions Expression Face orientation Age... Barcelona School of Informatics Face recognition using Deep Learning 9 / 44

Face Recognition Problems Many factors to take into account: Light conditions Expression Face orientation Age... It can be summarized as Intra-class variability Figure: Intra-class variability Barcelona School of Informatics Face recognition using Deep Learning 9 / 44

Face Recognition Problems Inter-class similarity is also an issue: Figure: Inter-class similarity Barcelona School of Informatics Face recognition using Deep Learning 10 / 44

Common Face Recognition approach Problems of raw images: Barcelona School of Informatics Face recognition using Deep Learning 11 / 44

Common Face Recognition approach Problems of raw images: Excessive noise Barcelona School of Informatics Face recognition using Deep Learning 11 / 44

Common Face Recognition approach Problems of raw images: Excessive noise Large dimensionality Barcelona School of Informatics Face recognition using Deep Learning 11 / 44

Common Face Recognition approach Problems of raw images: Excessive noise Large dimensionality Variability is too high Barcelona School of Informatics Face recognition using Deep Learning 11 / 44

Common Face Recognition approach Problems of raw images: Excessive noise Large dimensionality Variability is too high Solution? Barcelona School of Informatics Face recognition using Deep Learning 11 / 44

Common Face Recognition approach Problems of raw images: Excessive noise Large dimensionality Variability is too high Solution? Convert input image into a reduced space Barcelona School of Informatics Face recognition using Deep Learning 11 / 44

Common Face Recognition approach Problems of raw images: Excessive noise Large dimensionality Variability is too high Solution? Convert input image into a reduced space Feature extraction Manually crafted Automatically found Barcelona School of Informatics Face recognition using Deep Learning 11 / 44

Common approaches Eigenfaces Reduces faces into more compact representations Uses PCA to produce those Set of eigenvectors from the covariance matrix Comparison by linear combination of eigenfaces Figure: Set of eigenfaces Barcelona School of Informatics Face recognition using Deep Learning 12 / 44

Common approaches Active Appearance Models Fits a pre-defined face shape into the image Iteratively improves initial estimation Allows finding sets of relevant points Figure: Active Appearance Models fitting a face shape Barcelona School of Informatics Face recognition using Deep Learning 13 / 44

Common approaches Support Vector Machines Successful classifier in many problems Finds the hyperplane separating two problems Can be used to determine if two images belong to same person Figure: Application of Support Vector Machines Barcelona School of Informatics Face recognition using Deep Learning 14 / 44

Common approaches Bayesian models Models each facial feature as x = µ + ɛ It corresponds to inter-class and intra-class variability Based on the full joint distribution of face image pairs r(x 1, x 2 ) = log P(x 1, x 2 H I ) P(x 1, x 2 H E ) Barcelona School of Informatics Face recognition using Deep Learning 15 / 44

Common approaches Convolutional Neural Network It is a type of Artificial Neural Network Works by finding increasingly abstract features Takes into account spatial relation High requirements in time and data Currently providing state of art results in many CV problems Figure: Convolutional Neural Network Barcelona School of Informatics Face recognition using Deep Learning 16 / 44

Proposed approach The proposed approach consists of 4 steps: Barcelona School of Informatics Face recognition using Deep Learning 17 / 44

Proposed approach The proposed approach consists of 4 steps: Step 1: Locating the main face in the image Barcelona School of Informatics Face recognition using Deep Learning 17 / 44

Proposed approach The proposed approach consists of 4 steps: Step 1: Locating the main face in the image Step 2: Frontalizing the found face Barcelona School of Informatics Face recognition using Deep Learning 17 / 44

Proposed approach The proposed approach consists of 4 steps: Step 1: Locating the main face in the image Step 2: Frontalizing the found face Step 3: Extracting features using a CNN Barcelona School of Informatics Face recognition using Deep Learning 17 / 44

Proposed approach The proposed approach consists of 4 steps: Step 1: Locating the main face in the image Step 2: Frontalizing the found face Step 3: Extracting features using a CNN Step 4: Performing comparison with stored ones Barcelona School of Informatics Face recognition using Deep Learning 17 / 44

Step 1: Locate the face Goal: Look for the bounding box of the most likely face Figure: Locating the face Benefit: Prevent erroneously located faces in next step Barcelona School of Informatics Face recognition using Deep Learning 18 / 44

Step 1: Locate the face Procedure: Using a region based Convolutional Neural Networks (Faster RCNN [RHGS15]) Set of possible face locations is produced Most promising face is kept: distance to center + confidence Figure: Selecting most likely face Barcelona School of Informatics Face recognition using Deep Learning 19 / 44

Step 2: Frontalize the face Goal: Frontalize the face so that it is looking at the camera Figure: Frontalizing the found face Benefits: Eliminate background noise + Equally placed faces Barcelona School of Informatics Face recognition using Deep Learning 20 / 44

Step 2: Frontalize the face Procedure: 1 Locate a set of 46 fiducial points 2 Consider the same points in a 3D pre-defined model 3 Generate a projection matrix to map from 2D input to the 3D reference 4 (Apply vertical similarity to fill in empty spots) Discarded Figure: Frontalization process [HHPE15] Barcelona School of Informatics Face recognition using Deep Learning 21 / 44

Step 2: Frontalize the face Not working perfectly: Figure: Examples of successful and unsuccessful frontalizations Barcelona School of Informatics Face recognition using Deep Learning 22 / 44

Step 3: Extract relevant features Goal: Automatically extract a set of relevant features from the face Benefits: More efficient comparison + Reduction in variability Barcelona School of Informatics Face recognition using Deep Learning 23 / 44

Step 3: Extract relevant features Goal: Automatically extract a set of relevant features from the face Benefits: More efficient comparison + Reduction in variability Procedure: A CNN has been used to process each image Each image is compressed into a reduced representation A feature vector of 4096 features is generated Based on Facebook s DeepFace method [TYRW14] Figure: CNN architecture used Barcelona School of Informatics Face recognition using Deep Learning 23 / 44

Step 4: Compare them Goal: Perform the comparison with DB to look for a match Procedure: 1 Given a generated feature vector g 2 Iterates over all people in the DB 3 Each person has N relevant feature vectors F = f 1, f 2,...f N 4 Distance comparison is performed between g and each f i F 5 Various selection measures considered: minimum, mean, etc. Barcelona School of Informatics Face recognition using Deep Learning 24 / 44

Datasets used Three datasets considered: Casia dataset: 495,000 pictures / 10,500 people CACD dataset: 160,000 pictures / 2,000 people FaceScrub: 100,000 pictures / 500 people Training: 500,000 pictures / 9,351 people Testing: 100,000 pictures / 1,671 people Additionally, to use as a benchmark: Labeled Faces in the Wild: 13,000 pictures / 5,700 people Barcelona School of Informatics Face recognition using Deep Learning 25 / 44

Datasets used Generated datasets From training dataset, we generated two extra: Barcelona School of Informatics Face recognition using Deep Learning 26 / 44

Datasets used Generated datasets From training dataset, we generated two extra: Augmented: Using data augmentation Randomly modifying light intensity Other data augmentations made not much sense rotation, scaling, etc. 1M instances Barcelona School of Informatics Face recognition using Deep Learning 26 / 44

Datasets used Generated datasets From training dataset, we generated two extra: Augmented: Using data augmentation Randomly modifying light intensity Other data augmentations made not much sense rotation, scaling, etc. 1M instances Grayscale: Convert previous dataset to grayscale Aims to make the problem easier for CNN Both training and testing sets converted CNN modified accordingly Barcelona School of Informatics Face recognition using Deep Learning 26 / 44

Outline 1 Introduction and Goals Introduction Goals 2 How it has been approached Problems Common approaches Proposed approach Datasets 3 Outcome 4 Conclusions Barcelona School of Informatics Face recognition using Deep Learning 27 / 44

How to evaluate their performance? Face Recognition systems can be evaluated according to: Face Verification Face Recognition Barcelona School of Informatics Face recognition using Deep Learning 28 / 44

How to evaluate their performance? Face Recognition systems can be evaluated according to: Face Verification Face Recognition Both intrinsically related... Barcelona School of Informatics Face recognition using Deep Learning 28 / 44

How to evaluate their performance? Face Recognition systems can be evaluated according to: Face Verification Face Recognition Both intrinsically related...... but differently evaluated Barcelona School of Informatics Face recognition using Deep Learning 28 / 44

Face Verification Description Goal: Determining whether two pictures belong to same person: Needed on most Face Recognition systems Performance not directly related with Face Recognition step Commonly used as benchmark to compare methods The Labeled Faces in the Wild dataset has been used 2000 training pairs / 1000 test pairs Allowed for hyperparameter tuning Barcelona School of Informatics Face recognition using Deep Learning 29 / 44

Face Verification Examples Figure: Example on test pairs Barcelona School of Informatics Face recognition using Deep Learning 30 / 44

Face Verification Procedure Comparison performed using Euclidean and Taxicab distances Weighted variations considered but discarded due to bad results Training consists in: 1 Obtain distance between all train pairs 2 Find the optimal threshold placement to separate classes Barcelona School of Informatics Face recognition using Deep Learning 31 / 44

Face Verification Procedure Comparison performed using Euclidean and Taxicab distances Weighted variations considered but discarded due to bad results Training consists in: 1 Obtain distance between all train pairs 2 Find the optimal threshold placement to separate classes Figure: Example best case scenario Figure: Example more difficult scenario Barcelona School of Informatics Face recognition using Deep Learning 31 / 44

Face Verification Results a Method Accuracy Ours 0.896 Joint Bayesian 0.9242 Tom-vs-Pete 0.9330 High-dim LBP 0.9517 TL Joint Bayesian 0.9633 FaceNet 0.9963 DeepFace 0.9735 Human performance 0.9753 Reasons Too few training data Further need for parameter tuning Improve distance metric Table: Results state of art methods Barcelona School of Informatics Face recognition using Deep Learning 32 / 44

Results Figure: Accuracy according to dataset Figure: Accuracy according to distance Barcelona School of Informatics Face recognition using Deep Learning 33 / 44

Face Recognition Description Goal: Determining who the person is: Select among a set of people in a DB Person-wise comparison Face Verification Closest match is selected Need to determine if there is a match at all Seemingly more difficult than Face Verification...... empirical results prove it may not be so Barcelona School of Informatics Face recognition using Deep Learning 34 / 44

Face Recognition Procedure Reminder: comparing feature vector f with all people in DB Each person has N feature vectors F = f 1, f 2,...f N Comparison strategies: Barcelona School of Informatics Face recognition using Deep Learning 35 / 44

Face Recognition Procedure Reminder: comparing feature vector f with all people in DB Each person has N feature vectors F = f 1, f 2,...f N Comparison strategies: 1 Distance to closest feature vector in F Barcelona School of Informatics Face recognition using Deep Learning 35 / 44

Face Recognition Procedure Reminder: comparing feature vector f with all people in DB Each person has N feature vectors F = f 1, f 2,...f N Comparison strategies: 1 Distance to closest feature vector in F 2 Mean distance to all f i F Barcelona School of Informatics Face recognition using Deep Learning 35 / 44

Face Recognition Procedure Reminder: comparing feature vector f with all people in DB Each person has N feature vectors F = f 1, f 2,...f N Comparison strategies: 1 Distance to closest feature vector in F 2 Mean distance to all f i F 3 Product of 1 and 2 Barcelona School of Informatics Face recognition using Deep Learning 35 / 44

Face Recognition Procedure Reminder: comparing feature vector f with all people in DB Each person has N feature vectors F = f 1, f 2,...f N Comparison strategies: 1 Distance to closest feature vector in F 2 Mean distance to all f i F 3 Product of 1 and 2 4 Product of distance to furthest feature vector in f and 3 Barcelona School of Informatics Face recognition using Deep Learning 35 / 44

Face Recognition Procedure Reminder: comparing feature vector f with all people in DB Each person has N feature vectors F = f 1, f 2,...f N Comparison strategies: 1 Distance to closest feature vector in F 2 Mean distance to all f i F 3 Product of 1 and 2 4 Product of distance to furthest feature vector in f and 3 The smallest distance is chosen as a match Barcelona School of Informatics Face recognition using Deep Learning 35 / 44

Face Recognition Keeping Procedure Each new feature vector f may be kept into the system: Barcelona School of Informatics Face recognition using Deep Learning 36 / 44

Face Recognition Keeping Procedure Each new feature vector f may be kept into the system: 1 If less than T 1 feature vectors stored, keep it Barcelona School of Informatics Face recognition using Deep Learning 36 / 44

Face Recognition Keeping Procedure Each new feature vector f may be kept into the system: 1 If less than T 1 feature vectors stored, keep it 2 If distance M between f and mean of F less than T 2, discard it Barcelona School of Informatics Face recognition using Deep Learning 36 / 44

Face Recognition Keeping Procedure Each new feature vector f may be kept into the system: 1 If less than T 1 feature vectors stored, keep it 2 If distance M between f and mean of F less than T 2, discard it 3 If M higher than T 3, discard it (extreme outlier) Barcelona School of Informatics Face recognition using Deep Learning 36 / 44

Face Recognition Keeping Procedure Each new feature vector f may be kept into the system: 1 If less than T 1 feature vectors stored, keep it 2 If distance M between f and mean of F less than T 2, discard it 3 If M higher than T 3, discard it (extreme outlier) 4 Select the feature vectors - F O - far from mean (outliers) Barcelona School of Informatics Face recognition using Deep Learning 36 / 44

Face Recognition Keeping Procedure Each new feature vector f may be kept into the system: 1 If less than T 1 feature vectors stored, keep it 2 If distance M between f and mean of F less than T 2, discard it 3 If M higher than T 3, discard it (extreme outlier) 4 Select the feature vectors - F O - far from mean (outliers) 5 Face Verification between f and all f i F O Barcelona School of Informatics Face recognition using Deep Learning 36 / 44

Face Recognition Keeping Procedure Each new feature vector f may be kept into the system: 1 If less than T 1 feature vectors stored, keep it 2 If distance M between f and mean of F less than T 2, discard it 3 If M higher than T 3, discard it (extreme outlier) 4 Select the feature vectors - F O - far from mean (outliers) 5 Face Verification between f and all f i F O 6 If less than half matches, keep it (rare enough case) Barcelona School of Informatics Face recognition using Deep Learning 36 / 44

Face Recognition Keeping Procedure Each new feature vector f may be kept into the system: 1 If less than T 1 feature vectors stored, keep it 2 If distance M between f and mean of F less than T 2, discard it 3 If M higher than T 3, discard it (extreme outlier) 4 Select the feature vectors - F O - far from mean (outliers) 5 Face Verification between f and all f i F O 6 If less than half matches, keep it (rare enough case) 7 If more than T 4 feature vector stored, discard closest to mean Barcelona School of Informatics Face recognition using Deep Learning 36 / 44

Face Recognition Keeping Procedure Each new feature vector f may be kept into the system: 1 If less than T 1 feature vectors stored, keep it 2 If distance M between f and mean of F less than T 2, discard it 3 If M higher than T 3, discard it (extreme outlier) 4 Select the feature vectors - F O - far from mean (outliers) 5 Face Verification between f and all f i F O 6 If less than half matches, keep it (rare enough case) 7 If more than T 4 feature vector stored, discard closest to mean T 1, T 2, T 3 and T 4 are hyperparameters Barcelona School of Informatics Face recognition using Deep Learning 36 / 44

Face Recognition Dataset Self-generated dataset, from training dataset: 100 people (50 females / 50 males) 30 training images each 50 training images each Manually cleaned Barcelona School of Informatics Face recognition using Deep Learning 37 / 44

Face Recognition Results Figure: Accuracy according to number kept images Figure: Accuracy according to comparison strategy Barcelona School of Informatics Face recognition using Deep Learning 38 / 44

Face Recognition Results Figure: Accuracy according to number kept images Figure: Accuracy according to comparison strategy A 95% of accuracy was reached Barcelona School of Informatics Face recognition using Deep Learning 38 / 44

Outline 1 Introduction and Goals Introduction Goals 2 How it has been approached Problems Common approaches Proposed approach Datasets 3 Outcome 4 Conclusions Barcelona School of Informatics Face recognition using Deep Learning 39 / 44

To conclude... We have developed a functional Face Recognition System using CNNs Works in uncontrolled environment, capable of on-line learning Compared with state of art methods, it underperforms in Face Verification Quality results achieved in Face Recognition Exhaustive tests performed reliable results Barcelona School of Informatics Face recognition using Deep Learning 40 / 44

... or not! Future work lines: Improve CNN performance: More data Better parameter tuning Test more comparison metrics: Further try thresholding strategies Different weights Enhance matching capabilities: Use more complex strategies apart from min, mean, etc. Modify on-line learning mechanism Consider other alternatives for feature extraction: Other existing approaches Develop one on our own Barcelona School of Informatics Face recognition using Deep Learning 41 / 44

References I Tal Hassner, Shai Harel, Eran Paz, and Roee Enbar, Effective face frontalization in unconstrained images, IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), June 2015. Shaoqing Ren, Kaiming He, Ross Girshick, and Jian Sun, Faster r-cnn: Towards real-time object detection with region proposal networks, Advances in Neural Information Processing Systems 28 (C. Cortes, N. D. Lawrence, D. D. Lee, M. Sugiyama, and R. Garnett, eds.), Curran Associates, Inc., 2015, pp. 91 99. Yaniv Taigman, Ming Yang, Marc Aurelio Ranzato, and Lior Wolf, Deepface: Closing the gap to human-level performance in face verification, Proceedings of the 2014 IEEE Conference on Computer Vision and Pattern Recognition (Washington, DC, USA), CVPR 14, IEEE Computer Society, 2014, pp. 1701 1708. Barcelona School of Informatics Face recognition using Deep Learning 42 / 44

Questions? Any Question? Barcelona School of Informatics Face recognition using Deep Learning 43 / 44

Thank you! Thank you for your attention! Barcelona School of Informatics Face recognition using Deep Learning 44 / 44