Skip to main content

ml.experiment/1

Test a hypothesis by experiment: run a candidate against a baseline on a frozen dataset snapshot under a reviewed design, and close the case supported when the experiment is valid and its result reproducible, beats the baseline and is robust; refuted when a valid, reproducible result does not beat the baseline; invalid when the experiment itself is not valid; or inconclusive or superseded on an explicit decision.

Dependency graph​

Which actions may produce which evidence, which claims that evidence establishes, and which outcomes and obligations rest on those claims. Hover or focus a node to trace what it rests on.

Protocol · revision 1

ml.experiment/1

Test a hypothesis by experiment: run a candidate against a baseline on a frozen dataset snapshot under a reviewed design, and close the case supported when the experiment is valid and its result reproducible, beats the baseline and is robust; refuted when a valid, reproducible result does not beat the baseline; invalid when the experiment itself is not valid; or inconclusive or superseded on an explicit decision.

  • Evidence kinds5
  • Claims5
  • Outcomes5
  • Claim supports claim
EVIDENCE KINDcomparisonEVIDENCE KINDdesign_reviewEVIDENCE KINDintegrity_checkEVIDENCE KINDreproductionEVIDENCE KINDseed_sweepCLAIMcandidate.beats_baselineCLAIMeffect.robustCLAIMexperiment.validCLAIMhypothesis.supportedCLAIMresult.reproducibleOUTCOMEinconclusiveOUTCOMEinvalid_experimentOUTCOMErefutedOUTCOMEsupersededOUTCOMEsupported

Hover or focus a node to trace what it rests on and what rests on it. Press Enter to pin it, Escape to clear.

Protocol as text
Evidence kinds
NameDescriptionRuleLeads to
comparisona comparison of a candidate with the baseline on the design's metrics; its result is candidate_better or baseline_better—establishes candidate.beats_baseline (candidate_better about candidate)
design_reviewa review of an experiment design; its result is passed or failed—establishes experiment.valid (passed about experiment_design)
integrity_checka check of the runs behind a set of results for leakage, contamination or other integrity violations; its result is clean or violated—establishes experiment.valid (clean about results)
reproductiona rerun on the same dataset snapshot and run configuration; its result is matched or diverged—establishes result.reproducible (matched about results)
seed_sweepa sweep of a candidate's effect over seeds or ablations; its result is stable or unstable—establishes effect.robust (stable about candidate)
Claims
NameDescriptionRuleLeads to
candidate.beats_baselinea comparison of the current candidate revision found it better than the baselineevidence = candidate_better: comparisonsupports hypothesis.supported; requires refuted (false)
effect.robusta seed sweep of the current candidate revision found its effect stableevidence = stable: seed_sweepsupports hypothesis.supported
experiment.validthe current experiment design passed review and the current results carry no integrity violationall of evidence = passed: design_review evidence = clean: integrity_checksupports hypothesis.supported; requires invalid_experiment (false); requires refuted
hypothesis.supportedthe experiment is valid, its result reproducible, and the candidate beats the baseline with a robust effectall of claim candidate.beats_baseline claim effect.robust claim experiment.valid claim result.reproduciblerequires supported
result.reproduciblea reproduction of the current results matched themevidence = matched: reproductionsupports hypothesis.supported; requires refuted
Outcomes
NameDescriptionRuleLeads to
inconclusivethe case closed on an explicit decision that the experiment settles nothing——
invalid_experimentthe case closed because the experiment itself is not validclaim is false: experiment.valid—
refutedthe case closed with the hypothesis refuted; needs a valid experiment and a reproducible result in which the candidate does not beat the baseline. A comparison that is missing, or about another candidate revision, refutes nothing: it leaves the comparison unknown, not falseall of claim is false: candidate.beats_baseline claim experiment.valid claim result.reproducible—
supersededthe case closed because another case explicitly superseded it——
supportedthe case closed with the hypothesis supportedclaim hypothesis.supported—

Source: protocols/ml-experiment/1.yaml

Actions​

What can be done in a case: what it needs first, which authority it requires, the class of effect it has and the evidence it may produce.

This protocol declares no actions.

Evidence kinds​

The kinds of evidence this protocol admits.

Evidence kindDescriptionProduced byUsed by claims
comparisona comparison of a candidate with the baseline on the design's metrics; its result is candidate_better or baseline_betterno actioncandidate.beats_baseline
design_reviewa review of an experiment design; its result is passed or failedno actionexperiment.valid
integrity_checka check of the runs behind a set of results for leakage, contamination or other integrity violations; its result is clean or violatedno actionexperiment.valid
reproductiona rerun on the same dataset snapshot and run configuration; its result is matched or divergedno actionresult.reproducible
seed_sweepa sweep of a candidate's effect over seeds or ablations; its result is stable or unstableno actioneffect.robust

Claims​

Each claim is TRUE, FALSE or UNKNOWN, established from evidence by its predicate. Missing or stale evidence leaves a claim UNKNOWN, never FALSE.

ClaimDescriptionTrue when
candidate.beats_baselinea comparison of the current candidate revision found it better than the baselineevidence comparison with result candidate_better about candidate
effect.robusta seed sweep of the current candidate revision found its effect stableevidence seed_sweep with result stable about candidate
experiment.validthe current experiment design passed review and the current results carry no integrity violationall of (evidence design_review with result passed about experiment_design; evidence integrity_check with result clean about results)
hypothesis.supportedthe experiment is valid, its result reproducible, and the candidate beats the baseline with a robust effectall of (candidate.beats_baseline is TRUE; effect.robust is TRUE; experiment.valid is TRUE; result.reproducible is TRUE)
result.reproduciblea reproduction of the current results matched themevidence reproduction with result matched about results

Obligations​

What must be done before a case can be complete, and what discharges it. An obligation stays open until its predicate is TRUE; its predicate being UNKNOWN does not discharge it.

This protocol declares no obligations.

Outcomes​

The legitimate terminal interpretations of a case, and what each requires.

OutcomeDescriptionRequires
inconclusivethe case closed on an explicit decision that the experiment settles nothingdecision explicitly_inconclusive
invalid_experimentthe case closed because the experiment itself is not validexperiment.valid is FALSE
refutedthe case closed with the hypothesis refuted; needs a valid experiment and a reproducible result in which the candidate does not beat the baseline. A comparison that is missing, or about another candidate revision, refutes nothing: it leaves the comparison unknown, not falseall of (candidate.beats_baseline is FALSE; experiment.valid is TRUE; result.reproducible is TRUE)
supersededthe case closed because another case explicitly superseded itdecision explicitly_superseded
supportedthe case closed with the hypothesis supportedhypothesis.supported is TRUE

Artifacts​

The things whose revisions evidence is bound to.

ArtifactDescription
baselinethe reference model or method the candidate is compared with
candidatethe model or method under test
dataset_snapshotthe frozen data the runs read
experiment_designthe metrics, splits, seeds and success criterion the experiment is run under
resultsthe metrics the runs produced
run_configurationthe hyperparameters, environment and code revision of the runs