ml-notes
Technical blog and index of a self-directed learning path on machine learning, inference systems and information retrieval. Every project lives in its own repository and ends with a post here.
Raw benchmark data is kept in data/, so every chart can be regenerated from source. Published numbers hold for one machine: an RTX 3060 12 GB, a Ryzen 5 8500G and 32 GB of RAM.
The path
| # | Project | Status | Repo | Post |
|---|---|---|---|---|
| 0 | Foundations: autograd and a Transformer from scratch | planned | foundations | - |
| 1 | Format and quantization benchmark on an RTX 3060 | planned | gpu-quant-bench | - |
| 2 | Vector database in Rust: HNSW and Product Quantization | planned | rustann | - |
| 3 | OCR from scratch: CRNN with CTC loss on synthetic data | planned | crnn-ocr | - |
| 4 | Semantic code search | planned | codesearch | - |
| 5 | Hand-written CUDA kernels and profiling | planned | cuda-kernels | - |
| 6 | LoRA fine-tuning on a domain of my own | planned | lora-lab | - |
| 7 | Disk failure prediction from SMART data (Backblaze) | planned | smart-failure | - |
| 8 | DQN, PPO and SAC from scratch, plus a study on seed variance | planned | rl-from-scratch | - |
| - | Shared utilities. Created when needed, not before | - | mlkit | - |
Statuses: planned, in progress, done, abandoned. Abandoned projects stay in the table with the reason. A repository stays private until its post ships.