Author: Sevendi Eldrige Rifki Poluan
A deep learning project for food image classification using transfer learning with EfficientNetB7.
This project focuses on image classification methods utilizing transfer learning techniques with the EfficientNetB7 model pre-trained on ImageNet. The model employs a hybrid approach where some layers are frozen while others are fine-tuned for weight updates during training.
- Name: Food-101
- Classes: 101 food categories
- Total Images: 101,000 images
- Train/Test Split: 750 training images + 250 manually reviewed test images per class
- Image Resolution: Maximum side length of 512 pixels (rescaled by dataset authors)
- Dataset Source: ETH Food-101 Dataset
- Python 3.7+
- TensorFlow 2.x
- scikit-learn
- NumPy
- Matplotlib
- Clone the repository:
git clone <repository-url>
cd food-101-classification- Create a virtual environment:
python -m venv .venv- Activate the virtual environment:
# On macOS/Linux
source .venv/bin/activate
# On Windows
.venv\Scripts\activate- Install dependencies:
pip install -r requirements.txt- Download the Food-101 dataset and extract it to the project root directory:
food-101-classification/
├── food-101/
│ └── images/
│ ├── apple_pie/
│ ├── baby_back_ribs/
│ └── ...
Run the main training script:
python food-101.pyFor interactive exploration and experimentation:
jupyter notebook Food-101.ipynb- Base Model: EfficientNetB7 (pre-trained on ImageNet)
- Input Size: 224×224 pixels
- Batch Size: 16
- Training Strategy: Fine-tuning with layer freezing/unfreezing
Model Performance: Achieves up to 70% accuracy on the Food-101 test dataset with the basic EfficientNetB7 architecture.
-
Food-101 Dataset: Learning a Deep Convolutional Network for Image Classification
- Official dataset: ETH Food-101 | 101 Food Categories & 101,000 Images
-
EfficientNet: Mingxing Tan & Quoc V. Le, EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks
-
Transfer Learning: Jason Yosinski et al., How transferable are features in deep neural networks?
-
TensorFlow & Keras: Keras Documentation

