Awesome Open Source
Awesome Open Source

QuickAI logo

QuickAI is a Python library that makes it extremely easy to experiment with state-of-the-art Machine Learning models.

Announcement video https://www.youtube.com/watch?v=kK46sJphjIs

Demo https://deepnote.com/project/QuickAI-1r_4zvlyQMa2USJrIvB-kA/%2Fnotebook.ipynb

Motivation

When I started to get into more advanced Machine Learning, I started to see how these famous neural network architectures(such as EfficientNet), were doing amazing things. However, when I tried to implement these architectures to problems that I wanted to solve, I realized that it was not super easy to implement and quickly experiment with these architectures. That is where QuickAI came in. It allows for easy experimentation of many model architectures quickly.

Dependencies:

Tensorflow, PyTorch, Sklearn, Matplotlib, Numpy, and Hugging Face Transformers. You should install TensorFlow and PyTorch following the instructions from their respective websites.

Why you should use QuickAI

QuickAI can reduce what would take tens of lines of code into 1-2 lines. This makes fast experimentation very easy and clean. For example, if you wanted to train EfficientNet on your own dataset, you would have to manually write the data loading, preprocessing, model definition and training code, which would be many lines of code. Whereas, with QuickAI, all of these steps happens automatically with just 1-2 lines of code.

The following models are currently supported:

  1. Image Classification

    • EfficientNet B0-B7
    • VGG16
    • VGG19
    • DenseNet121
    • DenseNet169
    • DenseNet201
    • Inception ResNet V2
    • Inception V3
    • MobileNet
    • MobileNet V2
    • MobileNet V3 Small & Large
    • ResNet 101
    • ResNet 101 V2
    • ResNet 152
    • ResNet 152 V2
    • ResNet 50
    • ResNet 50 V2
    • Xception
  2. Natural Language Processing

    • GPT-NEO 125M(Generation, Inference)
    • GPT-NEO 350M(Generation, Inference)
    • GPT-NEO 1.3B(Generation, Inference)
    • GPT-NEO 2.7B(Generation, Inference)
    • Distill BERT Cased(Q&A, Inference and Fine Tuning)
    • Distill BERT Uncased(Named Entity Recognition, Inference)
    • Distil BART (Summarization, Inference)
    • Distill BERT Uncased(Sentiment Analysis & Text/Token Classification, Inference and Fine Tuning)
  3. Object Detection

    • YOLOV4
    • YOLOV4 Tiny

Installation

pip install quickAI

How to use

Please see the examples folder for details. For the YOLOV4, you can download weights from here

Issues/Questions

If you encounter any bugs, please open a new issue so they can be corrected. If you have general questions, please use the discussion section.

Credits

Most of the code for the YOLO implementation was taken from "The AI Guy's" tensorflow-yolov4-tflite repo. Without this, the YOLO implementation would not be possible. Thank you!


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Python (1,142,951
Deep Learning (23,727
Pytorch (11,616
Neural Network (8,618
Nlp (8,378
Artificial Intelligence (5,566
Ai (4,813
Object Detection (2,661
Ml (1,574
Research (1,538
Fast (1,173
Tensorflow2 (1,171
Bert (1,170
Easy To Use (864
Yolo (646
Huggingface Transformers (121
Gpt (116
Dl (99
Gpt Neo (15
Related Projects