1. Researcher degrees of freedom
Suppose we try 20 hyperparameter sets, 10 seeds, 5 metrics and 4 data subsets, then publish only the nicest number. Even without deliberate dishonesty, the workflow selected for luck.
Cherry-picking is not just lying. It is selective visibility.
2. Decide important rules before seeing the answer
Whenever practical, predefine primary metric, evaluation split, stopping rules, baseline, comparison method and exclusion criteria.
Exploratory work is valuable—but label it as exploration and validate resulting hypotheses on new evidence.
3. Report the distribution
Show all seeds or a principled summary, not only the best one. Report failed or negative ablations when they affect interpretation. Separate model-selection data from final evaluation.
4. Keep an experiment ledger
time | hypothesis | commit | data | config | seed | metric | outcome
This record prevents unconscious rewriting of history after seeing results.
5. The Level 5 checklist
Before believing “our model improved” ask:
- Was evaluation data truly unseen?
- Was there leakage?
- Is the metric appropriate?
- Did it beat a meaningful baseline?
- Is the result stable across runs?
- Is uncertainty reported?
- Were ablations controlled?
- Were many comparisons hidden?
- Would the conclusion survive a fresh dataset?
What to Remember
Honest ML is not only about using correct equations. It is about designing a process in which we would have been able to discover that our favourite idea did not work.
This closes Level 5.
Next → Meet the Smallest Neural Network: now that we know how to evaluate learning honestly, we can build the machinery behind deep learning one number at a time.