This repository contains implementations of transfer learning techniques for image classification using TensorFlow, Hugging Face Transformers, and Kaggle Datasets. The experiments explore leveraging pre-trained models and large datasets to build efficient and accurate classifiers with limited custom data.
-
TransferLearning_Tensorflow
- Implements transfer learning with TensorFlow and Keras.
- Uses pre-trained models (e.g., ResNet, MobileNet) for feature extraction and fine-tuning.
- Demonstrates effective utilization of pre-trained models for multi-class classification tasks.
-
TransferLearning_HuggingFace
- Applies Hugging Face's pre-trained transformers for image classification.
- Uses the
transformerslibrary to fine-tune Vision Transformer (ViT) models. - Highlights the flexibility and performance of Hugging Face tools for transfer learning.
-
TransferLearning_Kaggle
- Demonstrates integration with Kaggle datasets for transfer learning tasks.
- Prepares and utilizes datasets directly from Kaggle for model training and evaluation.
- Includes preprocessing and experimentation with TensorFlow/Keras and other frameworks.
- Utilizing pre-trained models on a new dataset to save time and computational resources.
- Methods used:
- Feature Extraction: Using frozen layers of pre-trained models as feature extractors.
- Fine-Tuning: Retraining specific layers of pre-trained models for domain-specific tasks.
- TensorFlow/Keras Models (e.g., ResNet, MobileNet, EfficientNet).
- Hugging Face's Vision Transformer (ViT).
- Standard datasets like ImageNet and CIFAR.
- Custom datasets prepared for specific tasks.
- Kaggle datasets accessed and used for experimentation.
Install the required libraries using:
pip install tensorflow transformers numpy matplotlib kaggle