MaximeVandegar/Papers-in-100-Lines-of-Code
Implementation of papers in 100 lines of code.
Papers in 100 Lines of Code
What it is – A collection of tiny, self‑contained implementations of classic (and some very recent) machine‑learning papers. Each entry aims to reproduce the core idea of a paper in roughly 100 lines of Python (or a similarly concise language), making the algorithms easy to read, run, and experiment with.
Why it matters – Academic papers often come with bulky codebases or only high‑level pseudocode, which can be a barrier for learning. By stripping the implementations down to their essentials, this repo lets you:
- See the minimal code needed for a model or algorithm to work.
- Quickly prototype and compare many influential ideas (e.g., GANs, VAEs, reinforcement‑learning algorithms, NeRF variants, diffusion samplers, meta‑learning, etc.).
- Use the snippets as teaching material or as a starting point for research experiments.
What you get
- A long list of papers ranging from early milestones like Maxout Networks (2013) and Deep Q‑Learning to cutting‑edge works such as 3D Gaussian Splatting (2023) and Speedy‑Splat (2024).
- For each paper, a short reference (title, arXiv/Nature link, authors, date) and a corresponding implementation that fits within the 100‑line constraint.
- A badge showing how many papers are currently implemented (64 at the time of the README) and a welcoming contribution guide.
How to use it
- Clone the repository.
- Browse the directory tree – each paper typically has its own folder or script.
- Run the script (usually
python <paper_name>.py) to reproduce the main experiment or a demo provided by the author. - Modify the code to explore variations; because the implementations are tiny, they are easy to edit.
Who it’s for
- Students and self‑learners who want concrete, runnable examples of seminal ML techniques.
- Researchers looking for a quick reference implementation before writing a full‑scale version.
- Educators who need concise code to illustrate concepts in lectures or workshops.
License – MIT, allowing free use, modification, and redistribution.
Contribution – The README invites contributions, so the community can keep adding new papers and improving existing implementations.
Related
- Project
- Project
- Project
- Project
- Project