quickai

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

https://github.com/geekjr/quickai

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.6%) to scientific vocabulary

Keywords

ai artificial-intelligence bert deep-learning dl easy-to-use fast gpt gpt-neo huggingface-transformers ml neural-network nlp object-detection python pytorch quickai research tensorflow2 yolo

Keywords from Contributors

hack bruteforce
Last synced: 6 months ago · JSON representation

Repository

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

Basic Info
  • Host: GitHub
  • Owner: geekjr
  • License: mit
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 220 MB
Statistics
  • Stars: 162
  • Watchers: 8
  • Forks: 17
  • Open Issues: 3
  • Releases: 14
Topics
ai artificial-intelligence bert deep-learning dl easy-to-use fast gpt gpt-neo huggingface-transformers ml neural-network nlp object-detection python pytorch quickai research tensorflow2 yolo
Created almost 5 years ago · Last pushed 8 months ago
Metadata Files
Readme Contributing License Code of conduct Citation

README.md

QuickAI logo

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

PyPI Counter
PyPI Counter
PyPI Counter
Github Stars

Note: Even if you are not using YOLO, you will still need a file in your curent working directory called coco.names. If you are not using YOLO, this file can be empty.

Announcement video

Announcement video

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.

Docker container:

To avoid setting up all the dependencies above, you can use the QuickAI Docker Container:

First pull the container: docker pull geekjr/quickai

Then run it:

  • CPU(on an Apple silicon Mac, you will need the --platform linux/amd64 flag and Rosetta 2 installed): docker run -it geekjr/quickai bash

  • GPU: docker run --gpus all -it geekjr/quickai bash

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)
  • GPT-J 6B(Generation, Inference)-BETA
  • 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)
  1. #### 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. Full documentation is in the wiki section of the repo.

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 implementations were taken from "The AI Guy's" tensorflow-yolov4-tflite & YOLOv4-Cloud-Tutorial repos. Without this, the YOLO implementation would not be possible. Thank you!

Owner

  • Login: geekjr
  • Kind: user
  • Location: My home
  • Company: My home

GitHub Events

Total
  • Watch event: 2
  • Push event: 9
  • Pull request event: 14
  • Fork event: 1
  • Create event: 3
Last Year
  • Watch event: 2
  • Push event: 9
  • Pull request event: 14
  • Fork event: 1
  • Create event: 3

Committers

Last synced: about 2 years ago

All Time
  • Total Commits: 159
  • Total Committers: 6
  • Avg Commits per committer: 26.5
  • Development Distribution Score (DDS): 0.516
Past Year
  • Commits: 6
  • Committers: 2
  • Avg Commits per committer: 3.0
  • Development Distribution Score (DDS): 0.333
Top Committers
Name Email Commits
geekjr 5****r 77
ac ac i****k@g****m 65
snyk-bot s****t@s****o 12
Pinjuf 6****f 2
ImgBotApp I****p@g****m 2
Jakub Jurových j****h@g****m 1
Committer Domains (Top 20 + Academic)
snyk.io: 1

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 2
  • Total pull requests: 63
  • Average time to close issues: about 16 hours
  • Average time to close pull requests: 3 months
  • Total issue authors: 2
  • Total pull request authors: 6
  • Average comments per issue: 2.5
  • Average comments per pull request: 0.03
  • Merged pull requests: 50
  • Bot issues: 0
  • Bot pull requests: 3
Past Year
  • Issues: 0
  • Pull requests: 7
  • Average time to close issues: N/A
  • Average time to close pull requests: 3 months
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • geekjr (2)
  • TheProtaganist (1)
Pull Request Authors
  • geekjr (70)
  • snyk-bot (9)
  • imgbot[bot] (2)
  • github-actions[bot] (1)
  • equiet (1)
  • pinjuf (1)
Top Labels
Issue Labels
enhancement (1)
Pull Request Labels
autopep8 (1) automated pr (1)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 34 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 18
  • Total maintainers: 1
pypi.org: quickai

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

  • Versions: 18
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 34 Last month
Rankings
Stargazers count: 5.5%
Forks count: 9.1%
Dependent packages count: 10.1%
Average: 14.0%
Dependent repos count: 21.6%
Downloads: 23.4%
Maintainers (1)
Last synced: 6 months ago

Dependencies

requirements.txt pypi
  • coremltools *
  • matplotlib *
  • numpy *
  • pillow >=8.3.2
  • scikit-learn *
  • torch *
  • torchvision *
setup.py pypi
  • coremltools *
  • matplotlib *
  • numpy *
  • scikit-learn *
  • transformers *
.github/workflows/autopep8.yml actions
  • actions/checkout v2 composite
  • peter-evans/autopep8 v1 composite
  • peter-evans/create-pull-request v3 composite
.github/workflows/pylint.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v1 composite
.github/workflows/python-package.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
.github/workflows/python-publish.yml actions
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • pypa/gh-action-pypi-publish 27b31702a0e7fc50959f5ad993c78deac1bdfc29 composite
Dockerfile docker
  • ubuntu jammy build