ezr
minimal XAI for multi-objective reasoning
Menzies · 2026
github.com/timm/ezr ·
the paper ·
the data
ezr labels a few rows, grows a tiny tree, and lets that
tree explain the rest. Two files, no dependencies:
ezr.py (the library and its demos) and
ezr_eg.py (clustering and optimizer demos).
Start with the map, then read whichever tutorial matches
what puzzles you.
The code
- Map —
every section, signature, and the call graph;
regenerated from source, so it cannot rot.
Tutorials
- Python idioms —
twelve idioms that puzzle newcomers, easiest first.
- Maths idioms —
Welford, z-scores, entropy, Minkowski: ten pieces of
maths, each in three lines.
- AI ideas —
nine big ideas (labels are dear, discretization,
active learning ...), real-world first, then the code.
- SE ideas —
eleven software-engineering ideas hiding in tiny code
(SSOT, little languages, golden masters ...).
- Script patterns —
how one file keeps config, tests, docs and CLI in sync
forever.
Try it
pip install ezr
ezr --help # settings and demos
ezr --tree # label 50 rows, explain 398
ezr-eg --optimize # 1983 SA vs local search