SlideShare una empresa de Scribd logo
1 de 17
Descargar para leer sin conexión
UNIVERSITY OF CAGLIARI
FACULTY OF SCIENCE
Major Project Proposal
Face Recognition Using a Deep Convolutional
Neural Network and a Graph-Based
Distributed Computation Framework:
”ArganRecogn”
Submitted by:
CHAOUA Ilyas
IGUIDER Walid
Submitted to:
Mr. Silvio Barra
Department of Computer Science
University of Cagliari
February 14, 2017
Abstract
The goal of this report is the presentation of our biometry and secu-
rity course’s project: Face recognition for Labeled Faces in the Wild dataset
using Convolutional Neural Network technology with Graphlab Framework.
Deep learning is the new big trend in machine learning. It had many recent
successes in computer vision, automatic speech recognition and natural lan-
guage processing. We will go through general ideas and structures of face
recognition using deep learning, important issues to load, summarize and
visualize the dataset, we will explain the critical techniques and algorithms,
and finally give some predictions and present our results.
i
Contents
Abstract i
Table of contents ii
List of Figures iii
1 Introduction 1
2 Data Collection 3
3 Face Detection 4
4 Splitting the Data 5
5 Network architecture and training 6
5.1 Convolutional Neural Network . . . . . . . . . . . . . . . . . . 6
5.2 Convolutional Neural Networks Architecture . . . . . . . . . . 6
5.2.1 Convolution Layer . . . . . . . . . . . . . . . . . . . . 7
5.2.2 Pooling Layer . . . . . . . . . . . . . . . . . . . . . . . 7
5.2.3 Training the CNN . . . . . . . . . . . . . . . . . . . . . 7
6 Test Set 9
7 Conclusion 10
Certificate of approval 11
Copyright 12
References 13
ii
List of Figures
1 The process of the project. . . . . . . . . . . . . . . . . . . . . 2
2 Image of the identity : Johnny Deep . . . . . . . . . . . . . . 4
3 Face of the identity : Johnny Deep. . . . . . . . . . . . . . . . 4
4 Beginning Test set . . . . . . . . . . . . . . . . . . . . . . . . 5
5 ArganRecogn Test set . . . . . . . . . . . . . . . . . . . . . . 5
6 Beginning Training set . . . . . . . . . . . . . . . . . . . . . . 5
7 ArganRecogn Training set . . . . . . . . . . . . . . . . . . . . 5
iii
1 Introduction
Face Recognition went mainstream in the early 1960’s when Helen
Chan and Charles Bisson, worked on using the computer to recognize hu-
man faces (Bledsoe 1966a, 1966b; Bledsoe and Chan 1965). The first semi-
automated system for face recognition required the administrator to locate
features (such as eyes, ears, nose, and mouth) on the photographs before
it calculated distances and ratios to a common reference point, which were
then compared to reference data. In the 1970’s, Goldstein, Harmon, and
Lesk used 21 specific subjective markers such as hair color and lip thickness
to automate the recognition. The problem with both of these early solu-
tions was that the measurements and locations were manually computed. In
1988, Kirby and Sirovich applied principle component analysis, a standard
linear algebra technique, to the face recognition problem. In 1991, Turk and
Pentland discovered that while using the eigenfaces techniques, the residual
error could be used to detect faces in images a discovery that enabled reliable
real-time automated face recognition systems.
Recent progress in this area has been due to two factors:
1. End to End learning for the task using a convolutional neural network.
2. The availability of very large scale training datasets.
In this report, we focus on image-based face recognition. Given a image from
LFW dataset, we’d like to detect faces of any person inside and know who
he/she is. Towards this goal, we generally followed this procedure :
1
Figure 1: The process of the project.
2
2 Data Collection
In the world of face recognition, the dataset plays the role of raw ma-
terial, for this reason, we choose to work with Labeled Faces in the Wild
: LFW, a database of face photographs designed for studying the problem
of unconstrained face recognition. The data set contains more than 13,000
images of faces collected from the web. Each face has been labeled with the
name of the person pictured. 1680 of the people pictured have two or more
distinct photos in the data set.
Dataset Identities Images
LFW 5749 13233
Beginning Set 5751 13229
Ours:ArganRecogn 5751 25651
We proposed a procedure to create a reasonably large face dataset :
ArganRecogn with the characteristic that each identity has more than three
images whilst the Beginning Set contains 4072 identities with only one image
(1679 identities have more than one image). To this end we downloaded
more than 13987 new images from Google Images. The method for collecting
images is writing with python using open source scripts available on the web.
We employ this procedure to build a dataset with over 25651 images.
3
3 Face Detection
In this section we propose an open source method to efficiently detect
and extract faces from an image given using OpenCV, the most popular li-
brary for computer vision. Originally written in C/C++, it now provides
bindings for Python.
For face detection, the algorithm starts at the top left of a picture and moves
down across small blocks of data, looking at each block, constantly asking,
“Is this a face? . . . Is this a face? . . . Is this a face?” Since there are
6,000 or more tests per block, you might have millions of calculations to do,
which will grind your computer to a halt. To get around this, OpenCV uses
cascades.
Like a series of waterfalls, the OpenCV cascade breaks the problem of de-
tecting faces into multiple stages. For each block, it does a very rough and
quick test. If that passes, it does a slightly more detailed test, and so on.
The algorithm may have 30-50 of these stages or cascades, and it will only
detect a face if all stages pass. The advantage is that the majority of the
pictures will return negative during the first few stages, which means the
algorithm won’t waste time testing all 6,000 features on it. Instead of taking
hours, face detection can now be done in real time.
Though the theory may sound complicated, in practice it is quite easy. The
cascades themselves are just a bunch of XML files that contain OpenCV data
used to detect objects. You initialize your code with the cascade you want,
and then it does the work for you.
Figure 2: Image of the
identity : Johnny Deep
Figure 3: Face of the
identity : Johnny Deep.
4
4 Splitting the Data
After applying our face detection algorithm based on OpenCV library,
we loaded all the resulting data and started the data splitting. First we split
the data into the following :
• Test data, which contains the images of all the identities such that we
have one image by identity (5751 image).
• The other data contains at least one image by identity(19900 image).
Then we took 80% of the other data for the training the network and 20%
for the validation.
The following figures represents information about the experimental test sets.
Figure 4: Beginning Test set Figure 5: ArganRecogn Test set
The following figures represents information about the experimental train-
ing sets.
Figure 6: Beginning Training set Figure 7: ArganRecogn Training set
5
5 Network architecture and training
5.1 Convolutional Neural Network
In this section, we explain the algorithms and tools for building and
training the convolutional neural network using GraphLab, a Python library,
backed by a C++ engine, for quickly building large-scale, high-performance
data products. GraphLab provides machine learning algorithms including
deep learning, boosted trees, and factorization machines and can be run the
code on your laptop or in a distributed system, using a Hadoop Yarn or EC2
cluster.
Convolutional neural networks are a special type of feed-forward networks.
These models are designed to emulate the behaviour of a visual cortex. CNNs
perform very well on visual recognition tasks. CNNs have special layers called
convolutional layers and pooling layers that allow the network to encode cer-
tain images properties.
5.2 Convolutional Neural Networks Architecture
The simplest architecture of a convolutional neural networks starts
with an input layer (images) followed by a sequence of convolutional layers
and pooling layers, and ends with fully-connected layers. The convolutional
layers are usually followed by one layer of ReLU activation functions.
The convolutional, pooling and ReLU layers act as learnable features extrac-
tors, while the fully connected layers acts as a machine learning classifier.
Furthermore, the early layers of the network encode generic patterns of the
images, while later layers encode the details patterns of the images.Note that
only the convolutional layers and fully-connected layers have weights. These
weights are learned in the training phase.[7]
6
5.2.1 Convolution Layer
This layer consists of a set of learnable filters that we slide over the image
spatially, computing dot products between the entries of the filter and the
input image. The filters should extend to the full depth of the input image.
For example, if we want to apply a filter of size 5x5 to a colored image of
size 32x32, then the filter should have depth 3 (5x5x3) to cover all 3 color
channels (Red, Green, Blue) of the image. These filters will activate when
they see same specific structure in the images.[7]
5.2.2 Pooling Layer
Pooling is a form of non-linear down-sampling. The goal of the pooling layer
is to progressively reduce the spatial size of the representation to reduce the
amount of parameters and computation in the network, and hence to also
control overfitting. There are several functions to implement pooling among
which max pooling is the most common one. Pooling is often applied with
filters of size 2x2 applied with a stride of 2 at every depth slice. A pooling
layer of size 2x2 with stride of 2 shrinks the input image to a 1/4 of its
original size.[7]
5.2.3 Training the CNN
The general workflow of training a neural network using GraphLab involves
three steps:
1. Create a convolutional neural network : CNN.
7
2. Tweak the CNN parameters (number of iterations, target class, met-
rics...) so that they are appropriate for the desired task.
3. Load the classifier and give it the CNN as a parameter to begin the
training using the given network architecture and parameters.
During the data splitting, we dedicated 78% of the whole dataset for the
training and validation. Thus we did a random split of the resulting dataset
such that 80% of the data is aimed to be the training set whereas the re-
maining 20% is for the validation. As a first experience of network training
we tried to give the classifier 300 iteration, which gave us, after the valida-
tion of the training, an accuracy of about 65%. Then we started increasing
the number of iterations until we reached a maximum accuracy at the 600th
iteration which was about 87%.
In a first time we trained the network CNN using the Beginning training
set with a learning rate of 0.001, a momentum of 0.9 and the metric: ”ac-
curacy,recall@2” for 600 iterations. After that we experimented an other
training for the CNN with the same parameters using ArganRecogn training
set. In the next section, we will present our results for the both attempts.
8
6 Test Set
Now that we have a trained model, we can use it to make predictions.
To do this, we can use the ArganRecogn test set (previously described) which
consists of 5751 faces and present 22% of global data. This set contains faces
that have never been subjected to the network.
In the following we first test several variations of the proposed models and
training data using the beginning test set based on LFW database and Argag-
nRecogn test set to compare the performance. Briefly, these are the results
I have achieved using MacBook 12”-Intel HD Graphics 5300 1536MB for
beginning test set after 600 iterations:
Training time (sec) : 23697.8544
Training accuracy Validation accuracy Training recall@2 Validation recall@2
0.8764 0.1527 0.9405 0.1799
Test results for beginning test set
These are the results I have achieved using MacBook 12”-Intel HD Graph-
ics 5300 1536MB for ArganRecogn test set after 600 iterations:
Training time (sec) : 63363.5553
Training accuracy Validation accuracy Training recall@2 Validation recall@2
0.7312 0.0865 0.8342 0.1023
Test results for ArganRecogn test set
9
7 Conclusion
In this work we have used a large scale dataset, with small label noise,
while keeping down the number of manual annotation. The main idea was to
train a classifier to rank the data presented to the annotators. This procedure
has been developed for faces, but is evidently suitable for other object classes
as well as fine grained tasks. Then as another contribution we have showed
that a well trained deep convolutional neural network can achieve very good
results comparing to the state of the art.
10
Certificate of approval
We found the students Ilyas Chaoua and Walid Iguider to be hardworking,
skilled, bonafide and ready to undertake any commercial and industrial work
related to their field of study.
Professor. Silvio Barra
(Project Supervisor)
.............................
11
Copyright
MIT License
Copyright (c) [2017] [ArganRecogn]
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the ”Software”), to deal
in the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to
do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED ”AS IS”, WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
OR OTHER DEALINGS IN THE SOFTWARE.
Department of Computer Science
University of Cagliari
Cagliari, Italy
12
References
[1] http://cs231n.github.io/convolutional-networks/
karpathy@cs.stanford.edu.
[2] https://turi.com/products/create/docs/graphlab.toolkits.deeplearning.html?highlight=deep
[3] https://www.robots.ox.ac.uk/vgg/publications/2015/parkhi15/parkhi15.pdf.
[4] Yoshua Bengio. Practical recommendations for gradient-based training of
deep architectures,neural networks: Tricks of the trade. Springer Berlin
Heidelberg, 437-478, 2012.
[5] Gary B. Huang, Manu Ramesh, Tamara Berg, and Erik Learned-Miller.
Labeled faces in the wild: A database for studying face recognition in
unconstrained environments. Technical Report 07-49, University of Mas-
sachusetts, Amherst, October 2007.
[6] Yann LeCun. Gradient-based learning applied to document recognition.
Proceedings of the IEEE 86.11, 2278-2324, 1998.
[7] Adil Moujahid. http://adilmoujahid.com/posts/2016/06/introduction-
deep-learning-python-caffe/. 2016.
13

Más contenido relacionado

La actualidad más candente

Attendance system based on face recognition using python by Raihan Sikdar
Attendance system based on face recognition using python by Raihan SikdarAttendance system based on face recognition using python by Raihan Sikdar
Attendance system based on face recognition using python by Raihan Sikdarraihansikdar
 
Automatic Attendance system using Facial Recognition
Automatic Attendance system using Facial RecognitionAutomatic Attendance system using Facial Recognition
Automatic Attendance system using Facial RecognitionNikyaa7
 
Deep learning on face recognition (use case, development and risk)
Deep learning on face recognition (use case, development and risk)Deep learning on face recognition (use case, development and risk)
Deep learning on face recognition (use case, development and risk)Herman Kurnadi
 
Attendance Using Facial Recognition
Attendance Using Facial RecognitionAttendance Using Facial Recognition
Attendance Using Facial RecognitionVikramaditya Tarai
 
FACE RECOGNITION SYSTEM PPT
FACE RECOGNITION SYSTEM PPTFACE RECOGNITION SYSTEM PPT
FACE RECOGNITION SYSTEM PPTSaghir Hussain
 
Face recognigion system ppt
Face recognigion system pptFace recognigion system ppt
Face recognigion system pptRavi Kumar
 
Facial Recognition Attendance System (Synopsis).pptx
Facial Recognition Attendance System (Synopsis).pptxFacial Recognition Attendance System (Synopsis).pptx
Facial Recognition Attendance System (Synopsis).pptxkakimetu
 
Skin Lesion Detection from Dermoscopic Images using Convolutional Neural Netw...
Skin Lesion Detection from Dermoscopic Images using Convolutional Neural Netw...Skin Lesion Detection from Dermoscopic Images using Convolutional Neural Netw...
Skin Lesion Detection from Dermoscopic Images using Convolutional Neural Netw...Universitat Politècnica de Catalunya
 
Face recognition technology
Face recognition technologyFace recognition technology
Face recognition technologyranjit banshpal
 
What is computer vision?
What is computer vision?What is computer vision?
What is computer vision?Qentinel
 
Project Face Detection
Project Face Detection Project Face Detection
Project Face Detection Abu Saleh Musa
 
face recognition system using LBP
face recognition system using LBPface recognition system using LBP
face recognition system using LBPMarwan H. Noman
 
Seminar Report face recognition_technology
Seminar Report face recognition_technologySeminar Report face recognition_technology
Seminar Report face recognition_technologyVivek Soni
 
Face Detection and Recognition System
Face Detection and Recognition SystemFace Detection and Recognition System
Face Detection and Recognition SystemZara Tariq
 

La actualidad más candente (20)

Attendance system based on face recognition using python by Raihan Sikdar
Attendance system based on face recognition using python by Raihan SikdarAttendance system based on face recognition using python by Raihan Sikdar
Attendance system based on face recognition using python by Raihan Sikdar
 
Automatic Attendance system using Facial Recognition
Automatic Attendance system using Facial RecognitionAutomatic Attendance system using Facial Recognition
Automatic Attendance system using Facial Recognition
 
Face recognisation system
Face recognisation systemFace recognisation system
Face recognisation system
 
Image recognition
Image recognitionImage recognition
Image recognition
 
Deep learning on face recognition (use case, development and risk)
Deep learning on face recognition (use case, development and risk)Deep learning on face recognition (use case, development and risk)
Deep learning on face recognition (use case, development and risk)
 
Attendance Using Facial Recognition
Attendance Using Facial RecognitionAttendance Using Facial Recognition
Attendance Using Facial Recognition
 
FACE RECOGNITION SYSTEM PPT
FACE RECOGNITION SYSTEM PPTFACE RECOGNITION SYSTEM PPT
FACE RECOGNITION SYSTEM PPT
 
Face recognigion system ppt
Face recognigion system pptFace recognigion system ppt
Face recognigion system ppt
 
Facial Recognition Attendance System (Synopsis).pptx
Facial Recognition Attendance System (Synopsis).pptxFacial Recognition Attendance System (Synopsis).pptx
Facial Recognition Attendance System (Synopsis).pptx
 
Mini Project- Face Recognition
Mini Project- Face RecognitionMini Project- Face Recognition
Mini Project- Face Recognition
 
Signature recognition
Signature recognitionSignature recognition
Signature recognition
 
Skin Lesion Detection from Dermoscopic Images using Convolutional Neural Netw...
Skin Lesion Detection from Dermoscopic Images using Convolutional Neural Netw...Skin Lesion Detection from Dermoscopic Images using Convolutional Neural Netw...
Skin Lesion Detection from Dermoscopic Images using Convolutional Neural Netw...
 
Face recognition technology
Face recognition technologyFace recognition technology
Face recognition technology
 
Face recognition
Face recognitionFace recognition
Face recognition
 
What is computer vision?
What is computer vision?What is computer vision?
What is computer vision?
 
Project Face Detection
Project Face Detection Project Face Detection
Project Face Detection
 
face recognition system using LBP
face recognition system using LBPface recognition system using LBP
face recognition system using LBP
 
Final year ppt
Final year pptFinal year ppt
Final year ppt
 
Seminar Report face recognition_technology
Seminar Report face recognition_technologySeminar Report face recognition_technology
Seminar Report face recognition_technology
 
Face Detection and Recognition System
Face Detection and Recognition SystemFace Detection and Recognition System
Face Detection and Recognition System
 

Similar a Report face recognition : ArganRecogn

FaceDetectionforColorImageBasedonMATLAB.pdf
FaceDetectionforColorImageBasedonMATLAB.pdfFaceDetectionforColorImageBasedonMATLAB.pdf
FaceDetectionforColorImageBasedonMATLAB.pdfAnita Pal
 
Human age and gender Detection
Human age and gender DetectionHuman age and gender Detection
Human age and gender DetectionAbhiAchalla
 
Face Recognition Based Intelligent Door Control System
Face Recognition Based Intelligent Door Control SystemFace Recognition Based Intelligent Door Control System
Face Recognition Based Intelligent Door Control Systemijtsrd
 
Real time multi face detection using deep learning
Real time multi face detection using deep learningReal time multi face detection using deep learning
Real time multi face detection using deep learningReallykul Kuul
 
Gender Classification using SVM With Flask
Gender Classification using SVM With FlaskGender Classification using SVM With Flask
Gender Classification using SVM With FlaskAI Publications
 
IRJET- Implementation of Gender Detection with Notice Board using Raspberry Pi
IRJET- Implementation of Gender Detection with Notice Board using Raspberry PiIRJET- Implementation of Gender Detection with Notice Board using Raspberry Pi
IRJET- Implementation of Gender Detection with Notice Board using Raspberry PiIRJET Journal
 
Metaphorical Analysis of diseases in Tomato leaves using Deep Learning Algori...
Metaphorical Analysis of diseases in Tomato leaves using Deep Learning Algori...Metaphorical Analysis of diseases in Tomato leaves using Deep Learning Algori...
Metaphorical Analysis of diseases in Tomato leaves using Deep Learning Algori...IRJET Journal
 
IRJET- Survey on Face Recognition using Biometrics
IRJET-  	  Survey on Face Recognition using BiometricsIRJET-  	  Survey on Face Recognition using Biometrics
IRJET- Survey on Face Recognition using BiometricsIRJET Journal
 
Machine Learning Model for Gender Detection
Machine Learning Model for Gender DetectionMachine Learning Model for Gender Detection
Machine Learning Model for Gender DetectionTecnoIncentive
 
COVID-19-Preventions-Control-System and Unconstrained Face-mask and Face-hand...
COVID-19-Preventions-Control-System and Unconstrained Face-mask and Face-hand...COVID-19-Preventions-Control-System and Unconstrained Face-mask and Face-hand...
COVID-19-Preventions-Control-System and Unconstrained Face-mask and Face-hand...SaiPrakash106
 
Image Captioning Generator using Deep Machine Learning
Image Captioning Generator using Deep Machine LearningImage Captioning Generator using Deep Machine Learning
Image Captioning Generator using Deep Machine Learningijtsrd
 
Using Deep Learning to Find Similar Dresses
Using Deep Learning to Find Similar DressesUsing Deep Learning to Find Similar Dresses
Using Deep Learning to Find Similar DressesHJ van Veen
 
Traffic Automation System
Traffic Automation SystemTraffic Automation System
Traffic Automation SystemPrabal Chauhan
 
Real Time Sign Language Recognition Using Deep Learning
Real Time Sign Language Recognition Using Deep LearningReal Time Sign Language Recognition Using Deep Learning
Real Time Sign Language Recognition Using Deep LearningIRJET Journal
 
Obscenity Detection in Images
Obscenity Detection in ImagesObscenity Detection in Images
Obscenity Detection in ImagesAnil Kumar Gupta
 
Detection of medical instruments project- PART 1
Detection of medical instruments project- PART 1Detection of medical instruments project- PART 1
Detection of medical instruments project- PART 1Sairam Adithya
 

Similar a Report face recognition : ArganRecogn (20)

FaceDetectionforColorImageBasedonMATLAB.pdf
FaceDetectionforColorImageBasedonMATLAB.pdfFaceDetectionforColorImageBasedonMATLAB.pdf
FaceDetectionforColorImageBasedonMATLAB.pdf
 
Human age and gender Detection
Human age and gender DetectionHuman age and gender Detection
Human age and gender Detection
 
Face Recognition Based Intelligent Door Control System
Face Recognition Based Intelligent Door Control SystemFace Recognition Based Intelligent Door Control System
Face Recognition Based Intelligent Door Control System
 
Real time multi face detection using deep learning
Real time multi face detection using deep learningReal time multi face detection using deep learning
Real time multi face detection using deep learning
 
One shot learning
One shot learningOne shot learning
One shot learning
 
Gender Classification using SVM With Flask
Gender Classification using SVM With FlaskGender Classification using SVM With Flask
Gender Classification using SVM With Flask
 
IRJET- Implementation of Gender Detection with Notice Board using Raspberry Pi
IRJET- Implementation of Gender Detection with Notice Board using Raspberry PiIRJET- Implementation of Gender Detection with Notice Board using Raspberry Pi
IRJET- Implementation of Gender Detection with Notice Board using Raspberry Pi
 
Metaphorical Analysis of diseases in Tomato leaves using Deep Learning Algori...
Metaphorical Analysis of diseases in Tomato leaves using Deep Learning Algori...Metaphorical Analysis of diseases in Tomato leaves using Deep Learning Algori...
Metaphorical Analysis of diseases in Tomato leaves using Deep Learning Algori...
 
Paper of Final Year Project.pdf
Paper of Final Year Project.pdfPaper of Final Year Project.pdf
Paper of Final Year Project.pdf
 
IRJET- Survey on Face Recognition using Biometrics
IRJET-  	  Survey on Face Recognition using BiometricsIRJET-  	  Survey on Face Recognition using Biometrics
IRJET- Survey on Face Recognition using Biometrics
 
Machine Learning Model for Gender Detection
Machine Learning Model for Gender DetectionMachine Learning Model for Gender Detection
Machine Learning Model for Gender Detection
 
COVID-19-Preventions-Control-System and Unconstrained Face-mask and Face-hand...
COVID-19-Preventions-Control-System and Unconstrained Face-mask and Face-hand...COVID-19-Preventions-Control-System and Unconstrained Face-mask and Face-hand...
COVID-19-Preventions-Control-System and Unconstrained Face-mask and Face-hand...
 
Image Captioning Generator using Deep Machine Learning
Image Captioning Generator using Deep Machine LearningImage Captioning Generator using Deep Machine Learning
Image Captioning Generator using Deep Machine Learning
 
Real time facial expression analysis using pca
Real time facial expression analysis using pcaReal time facial expression analysis using pca
Real time facial expression analysis using pca
 
Using Deep Learning to Find Similar Dresses
Using Deep Learning to Find Similar DressesUsing Deep Learning to Find Similar Dresses
Using Deep Learning to Find Similar Dresses
 
Traffic Automation System
Traffic Automation SystemTraffic Automation System
Traffic Automation System
 
Real Time Sign Language Recognition Using Deep Learning
Real Time Sign Language Recognition Using Deep LearningReal Time Sign Language Recognition Using Deep Learning
Real Time Sign Language Recognition Using Deep Learning
 
neuralAC
neuralACneuralAC
neuralAC
 
Obscenity Detection in Images
Obscenity Detection in ImagesObscenity Detection in Images
Obscenity Detection in Images
 
Detection of medical instruments project- PART 1
Detection of medical instruments project- PART 1Detection of medical instruments project- PART 1
Detection of medical instruments project- PART 1
 

Último

CebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptxCebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptxolyaivanovalion
 
April 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's AnalysisApril 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's Analysismanisha194592
 
Log Analysis using OSSEC sasoasasasas.pptx
Log Analysis using OSSEC sasoasasasas.pptxLog Analysis using OSSEC sasoasasasas.pptx
Log Analysis using OSSEC sasoasasasas.pptxJohnnyPlasten
 
Generative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and MilvusGenerative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and MilvusTimothy Spann
 
VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...
VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...
VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...SUHANI PANDEY
 
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...amitlee9823
 
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 nightCheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 nightDelhi Call girls
 
Halmar dropshipping via API with DroFx
Halmar  dropshipping  via API with DroFxHalmar  dropshipping  via API with DroFx
Halmar dropshipping via API with DroFxolyaivanovalion
 
Midocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFxMidocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFxolyaivanovalion
 
100-Concepts-of-AI by Anupama Kate .pptx
100-Concepts-of-AI by Anupama Kate .pptx100-Concepts-of-AI by Anupama Kate .pptx
100-Concepts-of-AI by Anupama Kate .pptxAnupama Kate
 
BigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptxBigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptxolyaivanovalion
 
Carero dropshipping via API with DroFx.pptx
Carero dropshipping via API with DroFx.pptxCarero dropshipping via API with DroFx.pptx
Carero dropshipping via API with DroFx.pptxolyaivanovalion
 
BPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptx
BPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptxBPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptx
BPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptxMohammedJunaid861692
 
Mature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxMature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxolyaivanovalion
 
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al BarshaAl Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al BarshaAroojKhan71
 
Best VIP Call Girls Noida Sector 39 Call Me: 8448380779
Best VIP Call Girls Noida Sector 39 Call Me: 8448380779Best VIP Call Girls Noida Sector 39 Call Me: 8448380779
Best VIP Call Girls Noida Sector 39 Call Me: 8448380779Delhi Call girls
 
Invezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signalsInvezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signalsInvezz1
 
Accredited-Transport-Cooperatives-Jan-2021-Web.pdf
Accredited-Transport-Cooperatives-Jan-2021-Web.pdfAccredited-Transport-Cooperatives-Jan-2021-Web.pdf
Accredited-Transport-Cooperatives-Jan-2021-Web.pdfadriantubila
 
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...Valters Lauzums
 

Último (20)

CebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptxCebaBaby dropshipping via API with DroFX.pptx
CebaBaby dropshipping via API with DroFX.pptx
 
April 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's AnalysisApril 2024 - Crypto Market Report's Analysis
April 2024 - Crypto Market Report's Analysis
 
Log Analysis using OSSEC sasoasasasas.pptx
Log Analysis using OSSEC sasoasasasas.pptxLog Analysis using OSSEC sasoasasasas.pptx
Log Analysis using OSSEC sasoasasasas.pptx
 
Generative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and MilvusGenerative AI on Enterprise Cloud with NiFi and Milvus
Generative AI on Enterprise Cloud with NiFi and Milvus
 
VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...
VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...
VIP Model Call Girls Hinjewadi ( Pune ) Call ON 8005736733 Starting From 5K t...
 
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
Call Girls Indiranagar Just Call 👗 7737669865 👗 Top Class Call Girl Service B...
 
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 nightCheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
Cheap Rate Call girls Sarita Vihar Delhi 9205541914 shot 1500 night
 
Halmar dropshipping via API with DroFx
Halmar  dropshipping  via API with DroFxHalmar  dropshipping  via API with DroFx
Halmar dropshipping via API with DroFx
 
Midocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFxMidocean dropshipping via API with DroFx
Midocean dropshipping via API with DroFx
 
100-Concepts-of-AI by Anupama Kate .pptx
100-Concepts-of-AI by Anupama Kate .pptx100-Concepts-of-AI by Anupama Kate .pptx
100-Concepts-of-AI by Anupama Kate .pptx
 
BigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptxBigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptx
 
Carero dropshipping via API with DroFx.pptx
Carero dropshipping via API with DroFx.pptxCarero dropshipping via API with DroFx.pptx
Carero dropshipping via API with DroFx.pptx
 
BPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptx
BPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptxBPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptx
BPAC WITH UFSBI GENERAL PRESENTATION 18_05_2017-1.pptx
 
Mature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptxMature dropshipping via API with DroFx.pptx
Mature dropshipping via API with DroFx.pptx
 
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al BarshaAl Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
Al Barsha Escorts $#$ O565212860 $#$ Escort Service In Al Barsha
 
Best VIP Call Girls Noida Sector 39 Call Me: 8448380779
Best VIP Call Girls Noida Sector 39 Call Me: 8448380779Best VIP Call Girls Noida Sector 39 Call Me: 8448380779
Best VIP Call Girls Noida Sector 39 Call Me: 8448380779
 
Invezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signalsInvezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signals
 
Accredited-Transport-Cooperatives-Jan-2021-Web.pdf
Accredited-Transport-Cooperatives-Jan-2021-Web.pdfAccredited-Transport-Cooperatives-Jan-2021-Web.pdf
Accredited-Transport-Cooperatives-Jan-2021-Web.pdf
 
Sampling (random) method and Non random.ppt
Sampling (random) method and Non random.pptSampling (random) method and Non random.ppt
Sampling (random) method and Non random.ppt
 
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
 

Report face recognition : ArganRecogn

  • 1. UNIVERSITY OF CAGLIARI FACULTY OF SCIENCE Major Project Proposal Face Recognition Using a Deep Convolutional Neural Network and a Graph-Based Distributed Computation Framework: ”ArganRecogn” Submitted by: CHAOUA Ilyas IGUIDER Walid Submitted to: Mr. Silvio Barra Department of Computer Science University of Cagliari February 14, 2017
  • 2. Abstract The goal of this report is the presentation of our biometry and secu- rity course’s project: Face recognition for Labeled Faces in the Wild dataset using Convolutional Neural Network technology with Graphlab Framework. Deep learning is the new big trend in machine learning. It had many recent successes in computer vision, automatic speech recognition and natural lan- guage processing. We will go through general ideas and structures of face recognition using deep learning, important issues to load, summarize and visualize the dataset, we will explain the critical techniques and algorithms, and finally give some predictions and present our results. i
  • 3. Contents Abstract i Table of contents ii List of Figures iii 1 Introduction 1 2 Data Collection 3 3 Face Detection 4 4 Splitting the Data 5 5 Network architecture and training 6 5.1 Convolutional Neural Network . . . . . . . . . . . . . . . . . . 6 5.2 Convolutional Neural Networks Architecture . . . . . . . . . . 6 5.2.1 Convolution Layer . . . . . . . . . . . . . . . . . . . . 7 5.2.2 Pooling Layer . . . . . . . . . . . . . . . . . . . . . . . 7 5.2.3 Training the CNN . . . . . . . . . . . . . . . . . . . . . 7 6 Test Set 9 7 Conclusion 10 Certificate of approval 11 Copyright 12 References 13 ii
  • 4. List of Figures 1 The process of the project. . . . . . . . . . . . . . . . . . . . . 2 2 Image of the identity : Johnny Deep . . . . . . . . . . . . . . 4 3 Face of the identity : Johnny Deep. . . . . . . . . . . . . . . . 4 4 Beginning Test set . . . . . . . . . . . . . . . . . . . . . . . . 5 5 ArganRecogn Test set . . . . . . . . . . . . . . . . . . . . . . 5 6 Beginning Training set . . . . . . . . . . . . . . . . . . . . . . 5 7 ArganRecogn Training set . . . . . . . . . . . . . . . . . . . . 5 iii
  • 5. 1 Introduction Face Recognition went mainstream in the early 1960’s when Helen Chan and Charles Bisson, worked on using the computer to recognize hu- man faces (Bledsoe 1966a, 1966b; Bledsoe and Chan 1965). The first semi- automated system for face recognition required the administrator to locate features (such as eyes, ears, nose, and mouth) on the photographs before it calculated distances and ratios to a common reference point, which were then compared to reference data. In the 1970’s, Goldstein, Harmon, and Lesk used 21 specific subjective markers such as hair color and lip thickness to automate the recognition. The problem with both of these early solu- tions was that the measurements and locations were manually computed. In 1988, Kirby and Sirovich applied principle component analysis, a standard linear algebra technique, to the face recognition problem. In 1991, Turk and Pentland discovered that while using the eigenfaces techniques, the residual error could be used to detect faces in images a discovery that enabled reliable real-time automated face recognition systems. Recent progress in this area has been due to two factors: 1. End to End learning for the task using a convolutional neural network. 2. The availability of very large scale training datasets. In this report, we focus on image-based face recognition. Given a image from LFW dataset, we’d like to detect faces of any person inside and know who he/she is. Towards this goal, we generally followed this procedure : 1
  • 6. Figure 1: The process of the project. 2
  • 7. 2 Data Collection In the world of face recognition, the dataset plays the role of raw ma- terial, for this reason, we choose to work with Labeled Faces in the Wild : LFW, a database of face photographs designed for studying the problem of unconstrained face recognition. The data set contains more than 13,000 images of faces collected from the web. Each face has been labeled with the name of the person pictured. 1680 of the people pictured have two or more distinct photos in the data set. Dataset Identities Images LFW 5749 13233 Beginning Set 5751 13229 Ours:ArganRecogn 5751 25651 We proposed a procedure to create a reasonably large face dataset : ArganRecogn with the characteristic that each identity has more than three images whilst the Beginning Set contains 4072 identities with only one image (1679 identities have more than one image). To this end we downloaded more than 13987 new images from Google Images. The method for collecting images is writing with python using open source scripts available on the web. We employ this procedure to build a dataset with over 25651 images. 3
  • 8. 3 Face Detection In this section we propose an open source method to efficiently detect and extract faces from an image given using OpenCV, the most popular li- brary for computer vision. Originally written in C/C++, it now provides bindings for Python. For face detection, the algorithm starts at the top left of a picture and moves down across small blocks of data, looking at each block, constantly asking, “Is this a face? . . . Is this a face? . . . Is this a face?” Since there are 6,000 or more tests per block, you might have millions of calculations to do, which will grind your computer to a halt. To get around this, OpenCV uses cascades. Like a series of waterfalls, the OpenCV cascade breaks the problem of de- tecting faces into multiple stages. For each block, it does a very rough and quick test. If that passes, it does a slightly more detailed test, and so on. The algorithm may have 30-50 of these stages or cascades, and it will only detect a face if all stages pass. The advantage is that the majority of the pictures will return negative during the first few stages, which means the algorithm won’t waste time testing all 6,000 features on it. Instead of taking hours, face detection can now be done in real time. Though the theory may sound complicated, in practice it is quite easy. The cascades themselves are just a bunch of XML files that contain OpenCV data used to detect objects. You initialize your code with the cascade you want, and then it does the work for you. Figure 2: Image of the identity : Johnny Deep Figure 3: Face of the identity : Johnny Deep. 4
  • 9. 4 Splitting the Data After applying our face detection algorithm based on OpenCV library, we loaded all the resulting data and started the data splitting. First we split the data into the following : • Test data, which contains the images of all the identities such that we have one image by identity (5751 image). • The other data contains at least one image by identity(19900 image). Then we took 80% of the other data for the training the network and 20% for the validation. The following figures represents information about the experimental test sets. Figure 4: Beginning Test set Figure 5: ArganRecogn Test set The following figures represents information about the experimental train- ing sets. Figure 6: Beginning Training set Figure 7: ArganRecogn Training set 5
  • 10. 5 Network architecture and training 5.1 Convolutional Neural Network In this section, we explain the algorithms and tools for building and training the convolutional neural network using GraphLab, a Python library, backed by a C++ engine, for quickly building large-scale, high-performance data products. GraphLab provides machine learning algorithms including deep learning, boosted trees, and factorization machines and can be run the code on your laptop or in a distributed system, using a Hadoop Yarn or EC2 cluster. Convolutional neural networks are a special type of feed-forward networks. These models are designed to emulate the behaviour of a visual cortex. CNNs perform very well on visual recognition tasks. CNNs have special layers called convolutional layers and pooling layers that allow the network to encode cer- tain images properties. 5.2 Convolutional Neural Networks Architecture The simplest architecture of a convolutional neural networks starts with an input layer (images) followed by a sequence of convolutional layers and pooling layers, and ends with fully-connected layers. The convolutional layers are usually followed by one layer of ReLU activation functions. The convolutional, pooling and ReLU layers act as learnable features extrac- tors, while the fully connected layers acts as a machine learning classifier. Furthermore, the early layers of the network encode generic patterns of the images, while later layers encode the details patterns of the images.Note that only the convolutional layers and fully-connected layers have weights. These weights are learned in the training phase.[7] 6
  • 11. 5.2.1 Convolution Layer This layer consists of a set of learnable filters that we slide over the image spatially, computing dot products between the entries of the filter and the input image. The filters should extend to the full depth of the input image. For example, if we want to apply a filter of size 5x5 to a colored image of size 32x32, then the filter should have depth 3 (5x5x3) to cover all 3 color channels (Red, Green, Blue) of the image. These filters will activate when they see same specific structure in the images.[7] 5.2.2 Pooling Layer Pooling is a form of non-linear down-sampling. The goal of the pooling layer is to progressively reduce the spatial size of the representation to reduce the amount of parameters and computation in the network, and hence to also control overfitting. There are several functions to implement pooling among which max pooling is the most common one. Pooling is often applied with filters of size 2x2 applied with a stride of 2 at every depth slice. A pooling layer of size 2x2 with stride of 2 shrinks the input image to a 1/4 of its original size.[7] 5.2.3 Training the CNN The general workflow of training a neural network using GraphLab involves three steps: 1. Create a convolutional neural network : CNN. 7
  • 12. 2. Tweak the CNN parameters (number of iterations, target class, met- rics...) so that they are appropriate for the desired task. 3. Load the classifier and give it the CNN as a parameter to begin the training using the given network architecture and parameters. During the data splitting, we dedicated 78% of the whole dataset for the training and validation. Thus we did a random split of the resulting dataset such that 80% of the data is aimed to be the training set whereas the re- maining 20% is for the validation. As a first experience of network training we tried to give the classifier 300 iteration, which gave us, after the valida- tion of the training, an accuracy of about 65%. Then we started increasing the number of iterations until we reached a maximum accuracy at the 600th iteration which was about 87%. In a first time we trained the network CNN using the Beginning training set with a learning rate of 0.001, a momentum of 0.9 and the metric: ”ac- curacy,recall@2” for 600 iterations. After that we experimented an other training for the CNN with the same parameters using ArganRecogn training set. In the next section, we will present our results for the both attempts. 8
  • 13. 6 Test Set Now that we have a trained model, we can use it to make predictions. To do this, we can use the ArganRecogn test set (previously described) which consists of 5751 faces and present 22% of global data. This set contains faces that have never been subjected to the network. In the following we first test several variations of the proposed models and training data using the beginning test set based on LFW database and Argag- nRecogn test set to compare the performance. Briefly, these are the results I have achieved using MacBook 12”-Intel HD Graphics 5300 1536MB for beginning test set after 600 iterations: Training time (sec) : 23697.8544 Training accuracy Validation accuracy Training recall@2 Validation recall@2 0.8764 0.1527 0.9405 0.1799 Test results for beginning test set These are the results I have achieved using MacBook 12”-Intel HD Graph- ics 5300 1536MB for ArganRecogn test set after 600 iterations: Training time (sec) : 63363.5553 Training accuracy Validation accuracy Training recall@2 Validation recall@2 0.7312 0.0865 0.8342 0.1023 Test results for ArganRecogn test set 9
  • 14. 7 Conclusion In this work we have used a large scale dataset, with small label noise, while keeping down the number of manual annotation. The main idea was to train a classifier to rank the data presented to the annotators. This procedure has been developed for faces, but is evidently suitable for other object classes as well as fine grained tasks. Then as another contribution we have showed that a well trained deep convolutional neural network can achieve very good results comparing to the state of the art. 10
  • 15. Certificate of approval We found the students Ilyas Chaoua and Walid Iguider to be hardworking, skilled, bonafide and ready to undertake any commercial and industrial work related to their field of study. Professor. Silvio Barra (Project Supervisor) ............................. 11
  • 16. Copyright MIT License Copyright (c) [2017] [ArganRecogn] Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the ”Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED ”AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Department of Computer Science University of Cagliari Cagliari, Italy 12
  • 17. References [1] http://cs231n.github.io/convolutional-networks/ karpathy@cs.stanford.edu. [2] https://turi.com/products/create/docs/graphlab.toolkits.deeplearning.html?highlight=deep [3] https://www.robots.ox.ac.uk/vgg/publications/2015/parkhi15/parkhi15.pdf. [4] Yoshua Bengio. Practical recommendations for gradient-based training of deep architectures,neural networks: Tricks of the trade. Springer Berlin Heidelberg, 437-478, 2012. [5] Gary B. Huang, Manu Ramesh, Tamara Berg, and Erik Learned-Miller. Labeled faces in the wild: A database for studying face recognition in unconstrained environments. Technical Report 07-49, University of Mas- sachusetts, Amherst, October 2007. [6] Yann LeCun. Gradient-based learning applied to document recognition. Proceedings of the IEEE 86.11, 2278-2324, 1998. [7] Adil Moujahid. http://adilmoujahid.com/posts/2016/06/introduction- deep-learning-python-caffe/. 2016. 13