URL: https://ml-visualized.com/
Machine Learning Visualized is a Jupyter Book containing Jupyter Notebooks that implement and mathematically derive machine learning algorithms from first-principles.
There are also Interactive Notebooks built with Marimo that allow you to see how the weights influence the loss functions.
The output of each notebook is a visualization of the machine learning algorithm throughout its training phase, ultimately converging at its optimal weights.
There is a separate Github Repository for each machine learning algorithm. Thus, this repository is simply the code to configure and build the Jupyter Book. At a very high level, Jupyter Books allow you to build a website with Markdown files and Jupyter Notebooks. Notice that none of the Jupyter Notebooks are in this repository. There is a SH script to download the relevant Jupyter Notebooks from other Github Repos. Once that is complete, the Jupyter Book can be built. The website is updated using the GitHub Action at .github/workflows/ci.yml
after every commit or pull request. To build the website locally, see the Usage section below.
- Neural Networks Repo
- Logistic Regression Repo
- Perceptron Repo
- Principal Component Analysis Repo
- K Means Repo
- Gradient Descent Repo
Table of Contents and structure of the book is specified at _toc.yml
.
Configuration is specified at _config.yml
.
For more information, check out the Jupyter Book Docs.
chmod +x ./download_notebooks.sh
./download_notebooks.sh
pip install -U jupyter-book
jupyter-book build .
docker compose up
docker compose down --volumes --rmi local
docker build -t jupyter-book .
docker run --rm -v "$(pwd)":/usr/src/app jupyter-book
docker stop jupyter-book
docker rm jupyter-book
docker rmi jupyter-book
Navigate to _build/html/index.html