Minimum Viable Experiment

A minimum viable experiment is the smallest experiment that can change the decision about a hypothesis.

For a hypothesis , choose an experiment that maximizes information per cost:

is the result of experiment , and is the information the result gives about the hypothesis.

Decision First

An MVE should answer one decision, not produce a final paper result.

DecisionMinimum Evidence
abandon ideasanity check fails, baseline is already enough, or cost is unjustified
debug implementationtiny subset confirms shapes, loss, gradients, and outputs
scale experimentsmall run shows signal and stable failure modes
narrow claimresult works only under a specific split, data source, or metric
write public noteresult can be generalized without private data or unpublished details

If the result cannot change a decision, it is not a minimum viable experiment.

MVE Contract

Write the contract before launching:

FieldInclude
Questionone uncertainty to reduce
Hypothesisfalsifiable expected result
Baselinecheapest credible comparison
Probesmallest dataset/run/subset that can reveal the signal
Metricone primary metric and a few diagnostics
Decision rulepass, fail, inconclusive, and next action
Public boundarywhat can be written without exposing private material

Size Ladder

Scale only after the cheaper rung changes the decision.

RungPurpose
static inspectioncheck data schema, labels, formulas, and leakage risks
tiny smoke runcheck implementation and artifact flow
small public subsetcheck whether signal exists under a public-safe setting
controlled ablationisolate one changed component
repeated-seed runestimate variance around the effect
full benchmarksupport a benchmark-level claim

The full benchmark should not be the first experiment unless cheaper probes cannot answer the question.

Design Rules

  • Test one uncertainty at a time.
  • Use a cheap baseline before a complex model.
  • Prefer a small public subset before a full-scale run.
  • Define pass, fail, and inconclusive outcomes before running.
  • Record the result even when it is negative.
  • Keep the run artifact small enough to inspect.
  • Use public data or sanitized summaries if the result may become a blog/wiki note.

Checks

  • What decision will this experiment change?
  • What observation would falsify the hypothesis?
  • Is the experiment smaller than the final intended run?
  • Is there a baseline or sanity check?
  • Is the result publishable as a general lesson without private details?
  • Are pass, fail, and inconclusive outcomes defined before launch?
  • Is the experiment testing one uncertainty or many?
  • Does the run record include enough context to explain the result later?

Result Handling

OutcomeAction
passscale one rung or convert the lesson into a claim-evidence record
failrecord a negative result and revise the hypothesis
inconclusiveidentify missing evidence instead of choosing the best-looking interpretation
broken runseparate infrastructure/code failure from hypothesis evidence