Efficientnet

Implementation of EfficientNet model. Keras and TensorFlow Keras.

AI & Machine LearningPythonApache-2.0

Abstract

Efficientnet is an open-source AI & Machine Learning project. Implementation of EfficientNet model. Keras and TensorFlow Keras. EfficientNets rely on AutoML and compound scaling to achieve superior performance without compromising resource efficiency. The AutoML Mobile framework has helped develop a mobile-size baseline network, EfficientNet-B0, which is then improved by the compound scaling method to obtain EfficientNet-B1 to B7. It is built using Python, Deep Learning. The complete source code is publicly available on GitHub under the Apache License 2.0, making it a useful reference for students building an AI & Machine Learning mini project or final-year project.

1. Introduction

EfficientNets rely on AutoML and compound scaling to achieve superior performance without compromising resource efficiency. The AutoML Mobile framework has helped develop a mobile-size baseline network, EfficientNet-B0, which is then improved by the compound scaling method to obtain EfficientNet-B1 to B7.

There was a huge library update on 24th of July 2019. Now efficientnet works with both frameworks: keras and tensorflow.keras. If you have models trained before that date, please use efficientnet of version 0.0.4 to load them. You can roll back using pip install -U efficientnet==0.0.4 or pip install -U git+https://github.com/qubvel/efficientnet/tree/v0.0.4.

The codebase is heavily inspired by the TensorFlow implementation.

2. Objective

Implementation of EfficientNet model. Keras and TensorFlow Keras.

This project demonstrates how Python, Deep Learning can be applied to a real-world AI & Machine Learning problem.

4. Technology Stack

PythonDeep Learning

5. System Requirements

General requirements for this technology stack — check the README for exact versions.

  • Python 3.8 or later
  • pip / virtualenv for dependencies
  • VS Code, PyCharm or Jupyter Notebook
  • Git (to clone the repository)

6. Installation & Setup

git clone https://github.com/qubvel/efficientnet.git
cd efficientnet
$ pip install -U git+https://github.com/qubvel/efficientnet
$ pip install -U efficientnet
$ pip install -U --pre efficientnet

Full setup instructions are in the project README.

7. Future Enhancements

Suggested extensions you can add to make this your own project.

  • Deploy the model as a web app with Streamlit, Flask or FastAPI
  • Compare against an additional model and report the metric difference
  • Add explainability (SHAP / Grad-CAM)

8. Viva / Review Questions

Common questions examiners ask for projects in this domain.

  1. What dataset does the project use and how was it pre-processed?
  2. Which algorithm / model architecture is used and why was it chosen over alternatives?
  3. How are training and testing data split, and how is overfitting avoided?
  4. Which evaluation metrics (accuracy, precision, recall, F1) are reported and what do they mean here?
  5. How would you deploy this model for real users?

9. Source Code & License

This project is developed by qubvel and published on GitHub under the Apache License 2.0. Please follow the license terms and credit the original author when you use or modify this code.

Want to build this as your internship project?

Work on an AI & Machine Learning project like this with mentor guidance, weekly reviews and an internship certificate from Training Trains, Erode — online or offline.

Apply for AI & Machine Learning Internship