A repo for exploring machine learning with Elixir and Livebook. The included docker-compose file will
start up a Docker container running the latest version of Livebook. Data will be synced to the local
notebooks
directory.
See below for links to many notebooks that can be imported and opened from the Livebook UI.
Nx - Numerical Elixir, "a multi-dimensional tensors library for Elixir with multi-staged compilation to the CPU/GPU"
Scholar - Traditional machine learning tools built on top of Nx, including classification, regression, and clustering
Official notebooks for Scholar
Axon - Uses Nx for building neural networks in Elixir. Includes high-level API's for creating and training models
Bumblebee - provides pre-trained Neural Network models on top of Axon
Official notebooks for Bumblebee
Explorer - tool for exploring one-dimensional data and two-dimensional dataframes
Official notebooks for Explorer
EXLA - Google's XLA compiler/backend for Nx. Supports just-in-time compilation for GPU and TPU
- model - "In general, any mathematical construct that processes input data and returns output" (reference)
- neural networks - A model containing at least one hidden layer. The input is passed through each layer before generating an output. (reference)
- machine learning - a program or system that uses input data to train a model so that it can make useful predictions about new data (reference)
- GPU - graphics processing unit
- TPU - tensor processing unit
- Axon: Deep Learning in Elixir - April 2021
- Elixir and Machine Learning: Nx v0.1 released! - January 2022
- Nx for Absolute Beginners - March 2022
- LiveBook inside Hugging Face Spaces - March 2023