https://github.com/himanshumahajan138/transfervision
Transfer learning for image classification using pre-trained models like ResNet50, ResNet100, EfficientNetB0, and VGG16 in Keras. Fine-tunes the last layers, applies image augmentation, and evaluates with Precision, Recall, AUC, F1 score, and early stopping for improved performance.
https://github.com/himanshumahajan138/transfervision
adam-optimizer batch-normalization data-pre-processing deep-learning early-stopping efficientnetb0 image-augmentation image-classification keras multiclass-classification precision-recall-auc-f1-score regularization relu-activation resnet100 resnet50 transfer-learning vgg16
Last synced: 8 months ago
JSON representation
Transfer learning for image classification using pre-trained models like ResNet50, ResNet100, EfficientNetB0, and VGG16 in Keras. Fine-tunes the last layers, applies image augmentation, and evaluates with Precision, Recall, AUC, F1 score, and early stopping for improved performance.
- Host: GitHub
- URL: https://github.com/himanshumahajan138/transfervision
- Owner: himanshumahajan138
- License: mit
- Created: 2025-01-09T13:39:02.000Z (9 months ago)
- Default Branch: master
- Last Pushed: 2025-01-09T13:43:34.000Z (9 months ago)
- Last Synced: 2025-01-17T00:17:46.939Z (9 months ago)
- Topics: adam-optimizer, batch-normalization, data-pre-processing, deep-learning, early-stopping, efficientnetb0, image-augmentation, image-classification, keras, multiclass-classification, precision-recall-auc-f1-score, regularization, relu-activation, resnet100, resnet50, transfer-learning, vgg16
- Language: Jupyter Notebook
- Homepage: https://www.kaggle.com/code/dataanalysis138/transfer-learning-final
- Size: 1.41 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# TransferVision 🌟
**Empowering Scene Classification with Advanced Transfer Learning**
---
## Overview 🔬
TransferVision is a robust deep learning project designed to classify images across six distinct scene categories with remarkable precision. Leveraging pre-trained models and cutting-edge transfer learning techniques, this project demonstrates the potential of AI when applied to relatively small datasets, achieving state-of-the-art results through fine-tuning and optimization.---
## Features 🌐
- **Advanced Transfer Learning**: Utilizes pre-trained models (ResNet50, ResNet100, EfficientNetB0, VGG16) to extract meaningful image features.
- **Comprehensive Image Augmentation**: Empirical regularization techniques including rotation, zoom, flip, contrast, and translation to enhance generalization.
- **High-Performance Metrics**: Achieved **95%+ accuracy** with **Precision: 96%, Recall: 94%, AUC: 98%, and F1 Score: 95%**.
- **Optimized Training Process**: Implemented techniques such as early stopping, batch normalization, dropout, and ADAM optimizer for robust performance.---
## Tech Stack 🤖
- **Programming Language**: Python
- **Deep Learning Framework**: Keras, TensorFlow
- **Pre-trained Models**: ResNet50, ResNet100, EfficientNetB0, VGG16
- **Tools**: OpenCV (for image processing and augmentation)---
## Installation 🔧
1. **Clone the Repository**:
```bash
git clone https://github.com/himanshumahajan138/TransferVision.git
cd transfervision
```2. **Set Up the Environment**:
- Create a virtual environment and activate it:
```bash
python3 -m venv env
source env/bin/activate
```
- Install the required dependencies:
```bash
pip install -r requirements.txt
```3. **Prepare the Dataset**:
- Place the training and testing images in their respective folders (organized by class).
- Ensure images are preprocessed (resized or zero-padded).---
## Usage 🔄
1. **Run the Training Script**:
```bash
python train.py
```
- Automatically performs data augmentation and trains models with early stopping.
2. **Evaluate the Model**:
```bash
python evaluate.py
```
- Reports metrics: **Precision, Recall, AUC, and F1 Score**.3. **Make Predictions**:
```bash
python predict.py --image path/to/image.jpg
```---
## Results 🔹
- **Training and Validation Loss**: Consistently reduced over 50-100 epochs.
- **Metrics**: Precision, Recall, AUC, and F1 Score metrics highlight the reliability and accuracy of the models.---
## Key Learnings 🎓
- **Transfer Learning Efficiency**: Demonstrated how pre-trained models excel with small datasets.
- **Data Augmentation Impact**: Showcased the value of image augmentation in enhancing generalization.---
## Contributing 🙌
We welcome contributions! If you have ideas or improvements, please open an issue or submit a pull request.---
## License 🔒
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.---
## Contact 📧
For questions or collaborations, feel free to reach out:
- **Email**: himanshumahajan138@gmail.com
- **LinkedIn**: [Himanshu Mahajan](https://linkedin.com/in/himanshu138)---
**"Fine-Tuning Excellence with TransferVision" 🚀**