Gender and Age group prediction of human face and also analysis of chained model(chaining age group with gender) using Deep learning.
==========================
Gender prediction : 81 %
Age prediction : 51 %
Age prediction(Exact 1-off) : 83 %
==========================
Adience data set has been used along with some preprocessing(basically face alignment and croping).
Dataset contain three type of gender namely male,female and child and eight age group 0-2, 4-6, 8-13, 15-20, 25-32, 38-43, 48-53 and 60+ . I have also used same for training purpose.
Dataset contain five fold in it. From which first four fold used for training purpose and from last fifth fold 50% dataset used validation and 50% dataset used for testing.
Model is trained on Google colab with GPU. Weights corresponding to best validation accuracy has been taken.
======================================================
Dimension of training dataset => (12969, 227, 227, 3)
Dimension of validation dataset => (1651, 227, 227, 3)
Dimension of testing dataset => (1651, 227, 227, 3)
======================================================
It is cnn based having four conv layer and two fully connected layer. In last layer softmax acts as activation function and in other layer relu. Last fully connected layer have 2 or 8 neurons. Droupout of 60% has been used to avoid overrfitting.
==========================
FOR MALE:
TEST ACCURACY : 42 %
TEST ACCURACY(Exact 1-off) : 80 %
==========================
FOR FEMALE:
TEST ACCURACY : 38 %
TEST ACCURACY(Exact 1-off) : 77 %
==========================
FOR CHILD:
TEST ACCURACY : 98 %
TEST ACCURACY(Exact 1-off) : 98 %
==========================
After chaining age prediction over gender, one can see male age prediction is better than female age accuracy. Author of one research paper was also stating the same that women are more good in hiding age :).
Also dataset age group level does not contain all age like age group 20-25. One can also estimate actual age value by taking weighted sum of mean of age range and its probability.