An image classification model from data collection, cleaning, model training, deployment and API integration.
The model can classify 11 different types of cars
The types are following:
- Bus
- Convertible
- Hatchback
- Limousine
- Micro
- Minivan
- Muscle car
- Sedan
- Sports car
- SUV
- Truck
Data Collection: Downloaded from DuckDuckGo using term name.
DataLoader: Used fastai DataBlock API to set up the DataLoader.
Data Augmentation: fastai provides default data augmentation which operates in GPU.
Details can be found in car_data_prep.ipynb
Training: Fine-tuned a resnet50 model three times. First 5 epochs, second and third time 3 epochs and got up to ~90% accuracy.
Data Cleaning: Since I collected data from browser there were many irrelevant data and many noises. Cleaned and updated data using fastai ImageClassifierCleaner. Cleaned data each time after training or finetuning, except for the last time. There are still many irrelevant and noisy data.
I deployed the model to HuggingFace Spaces using Gradio App. The implementation can be found in deployment
folder or here.
The deployed model API is integrated here in GitHub Pages website. Implementation and other details can be found in docs
folder.