This is the dog breed identification projecy submission by Alain Ramirez Martinez. This project is made in an ipython notebook which contains the main project codes and results.
Most of the code was implemented in Udacity workspace. The main libraries used for this project are:
- OpenCV
- Pytorch
- TQDM (Fast, Extensible Progress Meter)
- VGG16 pre-trained model
- Model from Scratch from here
- Alexnet pre-trained model (proposal)
- Resnet18 pre-trained model (report)
The following library was implementd in a personal computer (Intel Corei5 6th gen, 32GB RAM) with Anaconda distribution because it is not supported in the workspace.
- Learning rate finder (See: https://github.com/davidtvs/pytorch-lr-finder)
The following torchvision transform was implemented in the same personal computer because is not supported in the workspace:
- Transform.RandomPerspective(0.5,0.5,2,0)
The following files are included as a probe of other tests that were made for this project.
- dog para lr.ipynb
- algorithm.ppt
The original Udacity project instructions can be found here.
The Model from scratch can achieve 16% of accuracy in just 10 epochs. That was accomplished after some tests with different learning rate and data augmentation.
The Model from scratch can achieve 20% of accuracy in 20 epochs. That was accomplished after some tests with different learning rate and data augmentation. Unfortunatly there is no probe of this because it was made in a personal computer without random seed. Next tests could not replicate that result.