From lesson 3, I’d say don’t just look at validation accuracy. Compare it to the training accuracy to see whether you’re overfitting or underfitting, and then act accordingly. See lesson 3 on how to deal with either situation.
Update: From 62.15% to 93.51% accuracy
Differences:
- Instead of fine-tuning VGG, I used the VGG-style CNN with batchnorm from the MNIST notebook.
- I think this worked better because traffic signs are must simpler than cats, dogs, flowers, and so on. This allowed for a simpler network like the one Jeremy and Rachel used for MNIST. The simplicity of the network allowed me to retrain all the filters instead of fine-tuning them. One epoch from random weights took 51 seconds.
- Only did one epoch! (see TODO) (learning_rate == 0.001)
TODO:
- Apply more lesson 3 skills/ideas/tips/tricks:
- Do more than one epoch!
- Use the learning rate pattern that Jeremy used (0.001, 0.1, 0.01, 0.001, …)
- Data augmentation
- Dropout
- Ensemble
- Do more than one epoch!
- Input normalization (I didn’t subtract the mean or divide by the standard deviation)
Update: From 93.51% accuracy to 97.58% accuracy
Differences:
- 30 epochs instead of 1 (same learning rate, 0.001)
TODO:
- Same TODO