Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Cml | 3,716 | 16 days ago | 126 | August 08, 2022 | 74 | apache-2.0 | JavaScript | |||
♾️ CML - Continuous Machine Learning | CI/CD for ML | ||||||||||
Igel | 3,037 | 2 months ago | 34 | November 19, 2021 | 6 | mit | Python | |||
a delightful machine learning tool that allows you to train, test, and use models without writing code | ||||||||||
Semantra | 1,713 | 6 days ago | 18 | mit | Python | |||||
Multi-tool for semantic search | ||||||||||
Vscode Jupyter | 1,033 | a day ago | 4 | December 26, 2021 | 567 | mit | TypeScript | |||
VS Code Jupyter extension | ||||||||||
Mlem | 667 | 9 days ago | 117 | apache-2.0 | Python | |||||
🐶 A tool to package, serve, and deploy any ML model on any platform. | ||||||||||
Waifu2x Mac | 390 | 5 months ago | 6 | mit | Swift | |||||
Waifu2x-ios port to macOS, still in Core ML and Metal | ||||||||||
Clai | 373 | a year ago | 31 | mit | Python | |||||
Command Line Artificial Intelligence or CLAI is an open-sourced project from IBM Research aimed to bring the power of AI to the command line interface. | ||||||||||
Vergeml | 339 | 4 years ago | 3 | mit | Python | |||||
Machine Learning Environment - alpha version | ||||||||||
Yggdrasil Decision Forests | 325 | 2 days ago | 10 | apache-2.0 | C++ | |||||
A collection of state-of-the-art algorithms for the training, serving and interpretation of Decision Forest models. | ||||||||||
Cookiecutter Fastapi | 277 | 8 days ago | 2 | mit | Python | |||||
Cookiecutter template for FastAPI projects using: Machine Learning, Poetry, Github Actions and Pytests |
VergeML is a command line based environment for exploring, training and running state-of-the-art Machine Learning models. It provides ready-to-use models, handles data preprocessing and augmentation, tracks your AI's training sessions and provides other goodies such as an automatic REST interface.
Here is how it looks in action:
VergeML runs on Windows, Linux and MacOS. You need to have Python 3.6 and TensorFlow installed.
Get VergeML via pip:
pip install vergeml
Verify your installation by typing:
ml help
Congratulations, you have successfully installed VergeML! If you need further help, see the full installation guide.
Let's create a very simple image classifier which tells apart cats from dogs.
First, we create a new project for our classifier. Projects help you organize your data, save your training results and compare the performance between trained AIs.
Go to the directory where you want to create your project and type:
ml --model=imagenet new cats_dogs
This sets up a model based on Keras called imagenet
, which is based on transfer learning.
Let's change to this project directory and have a look:
cd cats_dogs
VergeML will automatically create a samples folder and a configuration file (vergeml.yaml). Among other things, this configuration file defines the current model.
Let's get some help on what we can do with the current model:
ml help
In the output you will see a section on model functions. It says we have two model functions, train and predict. Let's try training first!
To start training an AI we will need a dataset:
ml download:cats-and-dogs
Info: VergeML provides several datasets to get you started. To see a list type
ml help download
After the download has finished, you will see a lot of images in your samples
directory divided into two folders: cats and dogs.
Later, when you use your own data, simply copy your images into subdirectories of the samples directory. VergeML will automatically pick up the directory names as labels.
To start training, type:
ml train
As a first step, VergeML will feed each of our images into a pretrained neural network, extract their features as output and cache it on disk. (On a GPU, this will typically take around 15 minutes.) Then it will train a new neural network based on this output. As a last step it will combine these two networks into a single network tailored for our task of classifying cats and dogs. This process is called "transfer learning".
VergeML will print out the test accuracy after our training is finished to evaluate the model's final performance. Our cats-and-dogs classifier achieves 98.6%, which is pretty good.
Info: By default, VergeML reserves 10% of your samples as validation and 10% as testing data. This step is required to measure the accuracy of your model.
We can inspect our model's performance using the list command:
ml list
This will give you the name (prefixed by the @ sign) and several performance metrics.
For instance, the training accuracy (acc
) will tell you how good your AI can classify the images it sees during training, while validation accuracy (val_acc
) tells you how well it performs with unseen images.
Our cats-and-dogs classifier is now ready to use. Let's point it to an image of a cat or a dog and see what it predicts:
ml @name-of-your-AI predict <filename>
Info: You can even point it to a directory:
ml @name-of-your-AI predict my_cats_and_dogs_pictures/*
Finally, let's deploy our newly trained AI on a web service:
ml @name-of-your-AI run:rest
VergeML provides an API explorer that will launch in a new browser window. (If you don't want the browser to open use the --no-browser
option.)
For example, to use the REST interface with cURL:
curl -F '[email protected]/to/image' http://localhost:2204/predict
Copyright (c) 2018-2019 Markus Ecker