| 
			 
			 
		
					
					
					| Titre : | 
					Deep Learning for Age, Gender and Race Identification based on Face Recognition | 
				 
					| Type de document :  | 
					texte imprimé | 
				 
					| Auteurs :  | 
					Hamdi ,Skander, Auteur ; Moussaoui ,Abdelouahab, Directeur de thèse | 
				 
					| Editeur : | 
					Setif:UFA | 
				 
					| Année de publication :  | 
					2019 | 
				 
					| Importance :  | 
					1 vol (71 f .) | 
				 
					| Format :  | 
					29 cm | 
				 
					| Langues : | 
					Français (fre) | 
				 
					| Catégories :  | 
					Thèses & Mémoires:Informatique
  | 
				 
					| Mots-clés :  | 
					Machine learning 
Convolutional neural n 
Recognition 
Feature extraction 
Tensorflow 
Keras | 
				 
					| Index. décimale :  | 
					004 - Informatique  | 
				 
					| Résumé :  | 
					Ce mémoire de master présente un systéme basé sur une approche d’apprentissage 
profond Réseau de Neurones Convolutif (CNN). L’objectif du travail est de prédire 
automatiquement, l’age, le genre et la race à partir d’une image faciale d’une personne. 
Notre approche à été testée est verifiée en utilisant la base de données 
publique UTKFace qui contient plus de 20.000 images de différentes personnes. 
Cette base de données est composée d’enfants, adolescents, adults pour la classe 
d’age, mâle, femelle pour le genre et blanc, noir, asiatique, indien, autres pour la 
race. On a fait une étude comparative entre différentes approches d’apprentissage 
automatique et apprentissage profond et les résultats ont montrés que l’approche 
profonde avec CNN a donné les meilleures résultats de teste. | 
				 
					| Note de contenu :  | 
					Sommaire 
Theoritical Background 3 
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 
1.2 Machine learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 
1.2.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 
1.2.1.1 Arthur Samuel . . . . . . . . . . . . . . . . . . . . . 4 
1.2.1.2 Tom M. Mitchell . . . . . . . . . . . . . . . . . . . . 4 
1.2.1.3 Alan Turing . . . . . . . . . . . . . . . . . . . . . . . 4 
1.2.2 Machine learning categories . . . . . . . . . . . . . . . . . . . 4 
1.2.2.1 Supervised learning . . . . . . . . . . . . . . . . . . 5 
1.2.2.2 Unsupervised learning . . . . . . . . . . . . . . . . 6 
1.2.2.3 Semi-supervised learning . . . . . . . . . . . . . . . 6 
1.2.2.4 Reinforcement learning . . . . . . . . . . . . . . . . 6 
1.2.3 Popular Machine learning algorithms . . . . . . . . . . . . . 7 
1.2.3.1 k-Nearest Neighbors (kNN) . . . . . . . . . . . . . 7 
1.2.3.2 Decision Trees . . . . . . . . . . . . . . . . . . . . . 8 
1.2.3.3 Logistic Regression . . . . . . . . . . . . . . . . . . 9 
1.2.3.4 Support Vector Machines . . . . . . . . . . . . . . . 10 
1.2.3.5 Artificial Neural Networks . . . . . . . . . . . . . . 13 
1.2.3.6 Random Forest . . . . . . . . . . . . . . . . . . . . . 19 
1.2.4 Evaluation metrics . . . . . . . . . . . . . . . . . . . . . . . . 20 
1.2.5 Overfitting and Underfitting . . . . . . . . . . . . . . . . . . 21 
1.2.5.1 Overfitting . . . . . . . . . . . . . . . . . . . . . . . 21 
1.2.5.2 Underfitting . . . . . . . . . . . . . . . . . . . . . . 21 
1.3 Deep learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 
1.3.1 Definition and Concept . . . . . . . . . . . . . . . . . . . . . 21 
1.3.2 Deep learning architectures . . . . . . . . . . . . . . . . . . . 22 
1.3.2.1 Deep Neural Networks (DNN) . . . . . . . . . . . 22 
1.3.2.2 Convolutional Neural Networks . . . . . . . . . . . 23 
Contents 3 
1.3.2.3 Recurrent Neural Networks . . . . . . . . . . . . . 27 
1.3.3 Neural Networks and overfitting . . . . . . . . . . . . . . . . 28 
1.3.3.1 Dropout . . . . . . . . . . . . . . . . . . . . . . . . . 28 
1.3.3.2 Batch Normalization . . . . . . . . . . . . . . . . . 28 
1.3.4 Deep learning applications . . . . . . . . . . . . . . . . . . . 28 
1.3.4.1 Image Recognition . . . . . . . . . . . . . . . . . . . 29 
1.3.4.2 Audio Processing . . . . . . . . . . . . . . . . . . . 29 
1.3.4.3 Natural Language Processing . . . . . . . . . . . . 30 
1.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 
2 Literature Review 31 
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 
2.2 Face Recognition and Feature Extraction . . . . . . . . . . . . . . . . 31 
2.2.1 Human Face Feature Points . . . . . . . . . . . . . . . . . . . 31 
2.2.2 Feature Extraction Methods . . . . . . . . . . . . . . . . . . . 32 
2.2.2.1 Principal Component Analysis . . . . . . . . . . . . 33 
2.2.2.2 Kernel Principal Component Analysis . . . . . . . 34 
2.2.2.3 Linear Discriminate Analysis . . . . . . . . . . . . . 35 
2.3 Related works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 
2.3.1 Age Estimation and Classification . . . . . . . . . . . . . . . 36 
2.3.2 Gender Classification . . . . . . . . . . . . . . . . . . . . . . . 38 
2.3.3 Ethnicity Classification . . . . . . . . . . . . . . . . . . . . . . 39 
2.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 
3 Methodology and Experiments 42 
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 
3.2 Dataset and Preprocessing . . . . . . . . . . . . . . . . . . . . . . . . 42 
3.2.1 Dataset Description . . . . . . . . . . . . . . . . . . . . . . . . 42 
3.2.2 Preprocessing . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 
3.3 Development environment . . . . . . . . . . . . . . . . . . . . . . . . 45 
3.3.1 Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 
3.3.1.1 Python . . . . . . . . . . . . . . . . . . . . . . . . . 46 
3.3.1.2 NumPy . . . . . . . . . . . . . . . . . . . . . . . . . 46 
3.3.1.3 Jupyter Notebook . . . . . . . . . . . . . . . . . . . 46 
3.3.1.4 Scikit-Learn . . . . . . . . . . . . . . . . . . . . . . . 46 
3.3.1.5 Matplotlib . . . . . . . . . . . . . . . . . . . . . . . 46 
Contents 4 
3.3.1.6 Tensorflow . . . . . . . . . . . . . . . . . . . . . . . 47 
3.3.1.7 Keras . . . . . . . . . . . . . . . . . . . . . . . . . . 47 
3.3.2 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 
3.3.2.1 Google Colaboratory Cloud . . . . . . . . . . . . . 47 
3.3.2.2 Kaggle Kernel Cloud . . . . . . . . . . . . . . . . . 48 
3.4 Methodology and Experiments Results . . . . . . . . . . . . . . . . 48 
3.4.1 Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . 48 
3.4.2 Proposed Methods . . . . . . . . . . . . . . . . . . . . . . . . 48 
3.4.2.1 Support Vector Machines (SVM) . . . . . . . . . . . 48 
3.4.2.2 Random Forest . . . . . . . . . . . . . . . . . . . . . 49 
3.4.2.3 Artificial Neural Network (Single Layer Perceptron 
SLP) . . . . . . . . . . . . . . . . . . . . . . . . 49 
3.4.2.4 Artificial Neural Network (Multi-Layer Perceptron 
MLP) . . . . . . . . . . . . . . . . . . . . . . . . . . 49 
3.4.2.5 Transfer Learning . . . . . . . . . . . . . . . . . . . 49 
3.4.2.6 Convolutional Neural Network . . . . . . . . . . . 52 
3.4.3 Experiments Results . . . . . . . . . . . . . . . . . . . . . . . 53 
3.4.3.1 Support Vector Machines (SVM) . . . . . . . . . . . 54 
3.4.3.2 Random Forest . . . . . . . . . . . . . . . . . . . . . 54 
3.4.3.3 Artificial Neural Network (Single Layer Perceptron 
SLP) . . . . . . . . . . . . . . . . . . . . . . . . 54 
3.4.3.4 Artificial Neural Network (Multi-Layer Perceptron 
MLP) . . . . . . . . . . . . . . . . . . . . . . . . . . 56 
3.4.3.5 Transfer Learning . . . . . . . . . . . . . . . . . . . 57 
3.4.3.6 Convolutional Neural Network . . . . . . . . . . . 61 
Discussion 68 
Conclusion 70 
Bibliography 71 | 
				 
					| Côte titre :  | 
					MAI/0287 | 
				 
					| En ligne :  | 
					https://drive.google.com/file/d/1sc20Stq3cwCDecar4ArShHzSaNJKTe36/view?usp=shari [...] | 
				 
					| Format de la ressource électronique :  | 
					pdf | 
				  
 
					Deep Learning for Age, Gender and Race Identification based on Face Recognition [texte imprimé] /  Hamdi ,Skander, Auteur ;  Moussaoui ,Abdelouahab, Directeur de thèse . -  [S.l.] : Setif:UFA, 2019 . - 1 vol (71 f .) ; 29 cm. Langues : Français ( fre) 
					| Catégories :  | 
					Thèses & Mémoires:Informatique
  | 
				 
					| Mots-clés :  | 
					Machine learning 
Convolutional neural n 
Recognition 
Feature extraction 
Tensorflow 
Keras | 
				 
					| Index. décimale :  | 
					004 - Informatique  | 
				 
					| Résumé :  | 
					Ce mémoire de master présente un systéme basé sur une approche d’apprentissage 
profond Réseau de Neurones Convolutif (CNN). L’objectif du travail est de prédire 
automatiquement, l’age, le genre et la race à partir d’une image faciale d’une personne. 
Notre approche à été testée est verifiée en utilisant la base de données 
publique UTKFace qui contient plus de 20.000 images de différentes personnes. 
Cette base de données est composée d’enfants, adolescents, adults pour la classe 
d’age, mâle, femelle pour le genre et blanc, noir, asiatique, indien, autres pour la 
race. On a fait une étude comparative entre différentes approches d’apprentissage 
automatique et apprentissage profond et les résultats ont montrés que l’approche 
profonde avec CNN a donné les meilleures résultats de teste. | 
				 
					| Note de contenu :  | 
					Sommaire 
Theoritical Background 3 
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 
1.2 Machine learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 
1.2.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 
1.2.1.1 Arthur Samuel . . . . . . . . . . . . . . . . . . . . . 4 
1.2.1.2 Tom M. Mitchell . . . . . . . . . . . . . . . . . . . . 4 
1.2.1.3 Alan Turing . . . . . . . . . . . . . . . . . . . . . . . 4 
1.2.2 Machine learning categories . . . . . . . . . . . . . . . . . . . 4 
1.2.2.1 Supervised learning . . . . . . . . . . . . . . . . . . 5 
1.2.2.2 Unsupervised learning . . . . . . . . . . . . . . . . 6 
1.2.2.3 Semi-supervised learning . . . . . . . . . . . . . . . 6 
1.2.2.4 Reinforcement learning . . . . . . . . . . . . . . . . 6 
1.2.3 Popular Machine learning algorithms . . . . . . . . . . . . . 7 
1.2.3.1 k-Nearest Neighbors (kNN) . . . . . . . . . . . . . 7 
1.2.3.2 Decision Trees . . . . . . . . . . . . . . . . . . . . . 8 
1.2.3.3 Logistic Regression . . . . . . . . . . . . . . . . . . 9 
1.2.3.4 Support Vector Machines . . . . . . . . . . . . . . . 10 
1.2.3.5 Artificial Neural Networks . . . . . . . . . . . . . . 13 
1.2.3.6 Random Forest . . . . . . . . . . . . . . . . . . . . . 19 
1.2.4 Evaluation metrics . . . . . . . . . . . . . . . . . . . . . . . . 20 
1.2.5 Overfitting and Underfitting . . . . . . . . . . . . . . . . . . 21 
1.2.5.1 Overfitting . . . . . . . . . . . . . . . . . . . . . . . 21 
1.2.5.2 Underfitting . . . . . . . . . . . . . . . . . . . . . . 21 
1.3 Deep learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 
1.3.1 Definition and Concept . . . . . . . . . . . . . . . . . . . . . 21 
1.3.2 Deep learning architectures . . . . . . . . . . . . . . . . . . . 22 
1.3.2.1 Deep Neural Networks (DNN) . . . . . . . . . . . 22 
1.3.2.2 Convolutional Neural Networks . . . . . . . . . . . 23 
Contents 3 
1.3.2.3 Recurrent Neural Networks . . . . . . . . . . . . . 27 
1.3.3 Neural Networks and overfitting . . . . . . . . . . . . . . . . 28 
1.3.3.1 Dropout . . . . . . . . . . . . . . . . . . . . . . . . . 28 
1.3.3.2 Batch Normalization . . . . . . . . . . . . . . . . . 28 
1.3.4 Deep learning applications . . . . . . . . . . . . . . . . . . . 28 
1.3.4.1 Image Recognition . . . . . . . . . . . . . . . . . . . 29 
1.3.4.2 Audio Processing . . . . . . . . . . . . . . . . . . . 29 
1.3.4.3 Natural Language Processing . . . . . . . . . . . . 30 
1.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 
2 Literature Review 31 
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 
2.2 Face Recognition and Feature Extraction . . . . . . . . . . . . . . . . 31 
2.2.1 Human Face Feature Points . . . . . . . . . . . . . . . . . . . 31 
2.2.2 Feature Extraction Methods . . . . . . . . . . . . . . . . . . . 32 
2.2.2.1 Principal Component Analysis . . . . . . . . . . . . 33 
2.2.2.2 Kernel Principal Component Analysis . . . . . . . 34 
2.2.2.3 Linear Discriminate Analysis . . . . . . . . . . . . . 35 
2.3 Related works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 
2.3.1 Age Estimation and Classification . . . . . . . . . . . . . . . 36 
2.3.2 Gender Classification . . . . . . . . . . . . . . . . . . . . . . . 38 
2.3.3 Ethnicity Classification . . . . . . . . . . . . . . . . . . . . . . 39 
2.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 
3 Methodology and Experiments 42 
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 
3.2 Dataset and Preprocessing . . . . . . . . . . . . . . . . . . . . . . . . 42 
3.2.1 Dataset Description . . . . . . . . . . . . . . . . . . . . . . . . 42 
3.2.2 Preprocessing . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 
3.3 Development environment . . . . . . . . . . . . . . . . . . . . . . . . 45 
3.3.1 Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 
3.3.1.1 Python . . . . . . . . . . . . . . . . . . . . . . . . . 46 
3.3.1.2 NumPy . . . . . . . . . . . . . . . . . . . . . . . . . 46 
3.3.1.3 Jupyter Notebook . . . . . . . . . . . . . . . . . . . 46 
3.3.1.4 Scikit-Learn . . . . . . . . . . . . . . . . . . . . . . . 46 
3.3.1.5 Matplotlib . . . . . . . . . . . . . . . . . . . . . . . 46 
Contents 4 
3.3.1.6 Tensorflow . . . . . . . . . . . . . . . . . . . . . . . 47 
3.3.1.7 Keras . . . . . . . . . . . . . . . . . . . . . . . . . . 47 
3.3.2 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 
3.3.2.1 Google Colaboratory Cloud . . . . . . . . . . . . . 47 
3.3.2.2 Kaggle Kernel Cloud . . . . . . . . . . . . . . . . . 48 
3.4 Methodology and Experiments Results . . . . . . . . . . . . . . . . 48 
3.4.1 Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . 48 
3.4.2 Proposed Methods . . . . . . . . . . . . . . . . . . . . . . . . 48 
3.4.2.1 Support Vector Machines (SVM) . . . . . . . . . . . 48 
3.4.2.2 Random Forest . . . . . . . . . . . . . . . . . . . . . 49 
3.4.2.3 Artificial Neural Network (Single Layer Perceptron 
SLP) . . . . . . . . . . . . . . . . . . . . . . . . 49 
3.4.2.4 Artificial Neural Network (Multi-Layer Perceptron 
MLP) . . . . . . . . . . . . . . . . . . . . . . . . . . 49 
3.4.2.5 Transfer Learning . . . . . . . . . . . . . . . . . . . 49 
3.4.2.6 Convolutional Neural Network . . . . . . . . . . . 52 
3.4.3 Experiments Results . . . . . . . . . . . . . . . . . . . . . . . 53 
3.4.3.1 Support Vector Machines (SVM) . . . . . . . . . . . 54 
3.4.3.2 Random Forest . . . . . . . . . . . . . . . . . . . . . 54 
3.4.3.3 Artificial Neural Network (Single Layer Perceptron 
SLP) . . . . . . . . . . . . . . . . . . . . . . . . 54 
3.4.3.4 Artificial Neural Network (Multi-Layer Perceptron 
MLP) . . . . . . . . . . . . . . . . . . . . . . . . . . 56 
3.4.3.5 Transfer Learning . . . . . . . . . . . . . . . . . . . 57 
3.4.3.6 Convolutional Neural Network . . . . . . . . . . . 61 
Discussion 68 
Conclusion 70 
Bibliography 71 | 
				 
					| Côte titre :  | 
					MAI/0287 | 
				 
					| En ligne :  | 
					https://drive.google.com/file/d/1sc20Stq3cwCDecar4ArShHzSaNJKTe36/view?usp=shari [...] | 
				 
					| Format de la ressource électronique :  | 
					pdf | 
				 
  |