Join 20K+ developers in learning how to responsibly deliver value with applied ML.
If you need refresh yourself on ML algorithms, check our out ML Foundations repository (🔥 Among the top ML repositories on GitHub)
📦 Product | 🔢 Data | 📈 Modeling |
Objective | Annotation | Baselines |
Solution | Exploratory data analysis | Experiment tracking |
Evaluation | Splitting | Optimization |
Iteration | Preprocessing |
📝 Scripting | (cont.) | 📦 Application | ✅ Testing |
Organization | Styling | Command line | Code |
Packaging | Makefile | RESTful API | Data |
Documentation | Databases | Model | |
Logging | Authentication |
⏰ Version control | 🚀 Production | (cont.) |
Git | Dashboard | Serving |
Precommit | Docker | Feature stores |
Versioning | CI/CD | Workflow management |
Monitoring | Active learning |
📆 new lesson every week!
Subscribe for our monthly updates on new content.
python3 -m venv venv
source venv/bin/activate
python -m pip install --upgrade pip setuptools wheel
make install-dev
python -m ipykernel install --user --name=tagifai
jupyter labextension install @jupyter-widgets/jupyterlab-manager
jupyter labextension install @jupyterlab/toc
jupyter lab
You can also run all notebooks on Google Colab.
tagifai/
├── config.py - configuration setup
├── data.py - data processing utilities
├── main.py - main operations (CLI)
├── models.py - model architectures
├── predict.py - inference utilities
├── train.py - training utilities
└── utils.py - supplementary utilities
Documentation can be found here.
- View all available options using the CLI app:
tagifai --help
tagifai train-model --help
- Download the necessary data files to
assets/data
.
tagifai download-data
- Optimize using distributions specified in
tagifai.train.objective
. This also writes the best model's args toconfig/args.json
tagifai optimize --num-trials 100
We'll cover how to train using compute instances on the cloud from Amazon Web Services (AWS) or Google Cloud Platforms (GCP) in later lessons. But in the meantime, if you don't have access to GPUs, check out the optimize.ipynb notebook for how to train on Colab and transfer to local. We essentially run optimization, then train the best model to download and transfer it's arguments and artifacts. Once we have them in our local machine, we can run
tagifai set-artifact-metadata
to match all metadata as if it were run from your machine.
- Train a model (and save all it's artifacts) using args from
config/args.json
tagifai train-model --args-fp config/args.json
- Predict tags for an input sentence. It'll use the best model saved from
train-model
but you can also specify arun-id
to choose a specific model.
tagifai predict-tags --text "Transfer learning with BERT"
mlflow server -h 0.0.0.0 -p 5000 --backend-store-uri assets/experiments/
python -m mkdocs serve
While this content is for everyone, it's especially targeted towards people who don't have as much opportunity to learn. I firmly believe that creativity and intelligence are randomly distributed but opportunity is siloed. I want to enable more people to create and contribute to innovation.
- I've deployed large scale ML systems at Apple as well as smaller systems with constraints at startups and want to share the common principles I've learned along the way.
- I created Made With ML so that the community can explore, learn and build ML and I learned how to build it into an end-to-end product that's currently used by over 20K monthly active users.
- Connect with me on Twitter and LinkedIn