trekhleb/machine-learning-experiments — explained in plain English
Analysis updated 2026-05-18
Play with live demos in the browser, like drawing a digit or playing rock-paper-scissors against a model.
Follow a Jupyter notebook to see exactly how a specific model type was trained.
Learn how models get converted from Python to a browser-friendly JavaScript format.
Use it as a study reference before building a real machine learning project.
| trekhleb/machine-learning-experiments | raiyanyahya/how-to-train-your-gpt | krishnaik06/interview-prepartion-data-science | |
|---|---|---|---|
| Stars | 1,810 | 2,278 | 1,041 |
| Language | Jupyter Notebook | Jupyter Notebook | Jupyter Notebook |
| Last pushed | — | 2026-06-23 | 2024-01-12 |
| Maintenance | — | Active | Dormant |
| Setup difficulty | moderate | easy | easy |
| Complexity | 3/5 | 2/5 | 1/5 |
| Audience | researcher | developer | data |
Figures from each repo's GitHub metadata at analysis time.
Requires setting up both a Python environment and a Node environment to run everything locally.
This repository is a collection of machine learning experiments put together for learning purposes, not production use. The author is clear about this: models may not perform well, and the code is not optimized. Think of it as a personal sandbox where different AI approaches were tested and documented. Each experiment has two parts. The first is a Jupyter notebook that walks through how a model was trained, including the data used and the decisions made along the way. The second is a live demo page where you can interact with the trained model directly in your browser, no installation needed. You can draw a digit and see the model guess it, or play rock-paper-scissors against the camera. The experiments cover a range of techniques. Some work with images, recognizing handwritten digits, classifying objects, detecting items in photos, or telling apart rock, paper, and scissors hand gestures. Others work with sequences of text, generating new Shakespeare-style writing, cooking recipes, or Wikipedia-style passages. One experiment trains a network that generates clothing images from scratch by having two networks compete with each other. The technical stack is Python with TensorFlow and Keras for training, and JavaScript with TensorFlow.js for running the models in the browser. After training, the models are converted from a Python format into a JavaScript-readable format so the demo pages can load and run them client-side. The README notes this is not a typical production pattern, since loading large model files into a browser is inefficient, but it works fine for an experimental demo. Anyone who wants to run the experiments locally can follow the setup instructions for Python and Node environments. The repo also links to a companion repository with hand-coded versions of common algorithms and a simpler introduction to how neural networks learn.
A collection of learning-focused machine learning experiments, each with a training notebook and a live browser demo you can interact with directly.
Mainly Jupyter Notebook. The stack also includes Python, TensorFlow, Keras.
No license information is given in the README.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly researcher.
This repo across BitVibe Labs
Verify against the repo before relying on details.