Giter Club home page Giter Club logo

overhead_mnist's Introduction

Overhead MNIST

Dataset info

  • The dataset used in this project is the Overhead-MNIST dataset and it can be found here
  • The dataset contains 10 classes

Project info

  • This repo contains an end-to-end deep learning project deployment for overhead image classification
  • The purpose of this project is to try multiple new things. The following new things that have been explored
    • In this project, the recently popular Kolmogorov-Arnold Networks (KAN) is also explored
    • Simple and Complex CNNs using the KAN layer is developed and tested
    • Weights and Biases has been used for MLOps including its new feature of model registry
    • For training, the Automatic Mixed Precision (AMP) has been explored by using float16 for some layer weights to speed up training
    • For deployment, an API has been developed and deployed using FastAPI and docker
  • For the training, the dataset is split into 95% - 5% for train and validation sets respectively
  • The python packages are listed in requirements.txt
  • The docker container can be deployed using Dockerfile
  • For training and logging the model, use the modeling/train.py script
  • The FastAPI app deployment code is in app.py script
  • To test the deployed FastAPI app on a local machine, the test_post_request.py script can be used
  • Some sample test images are available in sample_test_images

Training using docker image

  • Use the following command for training using the docker image
docker run --rm -it --init   --gpus=all   --ipc=host   --user="$(id -u):$(id -g)"   --volume="$PWD:/app"   my_pytorch python3 modeling/train.py --dir_dataset /app/dir_dataset/

Docker deployment instructions on a local machine

docker build -t fastapi_overhead_mnist .
  • To the run the container, run the following command
docker run -p 7860:7860 -t fastapi_overhead_mnist

HuggingFace deployment

  • The FastAPI application has also been deployed to HuggingFace
  • To test the deployed FastAPI app on HuggingFace, use the test_post_request.py script in the HuggingFace repo since the endpoint is different

Docs

Sample test images

Sample test image 1 Sample test image 2 Sample test image 3 Sample test image 4 Sample test image 5 Sample test image 6 Sample test image 7 Sample test image 8 Sample test image 9 Sample test image 10

References

overhead_mnist's People

Contributors

abhishekrs4 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.