1 of 15

Building an Age Guesser using Transfer Learning

Arnav Garg, Shail Mirpuri, Darren Tsang

2 of 15

Task

3 of 15

Convolutional Neural Nets (CNNs)

4 of 15

Gradient Descent

5 of 15

Transfer Learning

6 of 15

VGG-19

Consists of:

  • 3 x 3 filters with a stride of 1 and zero-padding
  • Max Pooling Layer with a stride of 2
  • 19 layers

7 of 15

The IMDB-WIKI Dataset

  • 500,000+ images of celebrities from IMDB and Wikipedia
    • Collected by researchers and publicly available online
  • Discarded images where the age did not make sense
    • Negative ages
    • Ages over 100
  • Created subsets from cleaned dataset for training, validation, and testing
    • Training used to train model
    • Validation used during training process to ensure overfitting does not happen
    • Testing used at the very end to evaluate how well our model does on new, unseen data
  • https://data.vision.ee.ethz.ch/cvl/rrothe/imdb-wiki/

8 of 15

Hyperparameters

  • Learning Rate: 0.01
  • Batch Size: 10
  • Trainable: Last Layer
  • Optimizer: Adam
  • Random Sample 50,000 images to train our dataset (about 10% of total dataset)

9 of 15

Results

Good Predictions

Actual Age

Predicted Age

10 of 15

Results

Bad Predictions

Actual Age

Predicted Age

11 of 15

Results

12 of 15

Results

  • Mean Absolute Error: 7.83 years
  • Standard Deviation of Absolute Error: 6.84

13 of 15

Results

14 of 15

Challenges

  • Real age vs apparent age
  • Massive dataset, low computing power
  • Age skew in dataset

15 of 15

Future Work

  • Make it work on uncropped images
  • Multiple people in images
  • Train for longer periods of time on full dataset
  • Build user application to expand dataset
  • Use loss function that better accounts for close guesses
  • Look into newer, more advanced network architectures (ResNet, Inception)