UAI's 2026 CFP did not impose a formal reproducibility checklist (one may appear later — 待核实 each cycle), but it strongly encouraged code and data availability and instructed reviewers to judge whether claims are backed up convincingly. At this venue "convincing" has a technical meaning: stochastic-inference results carry diagnostics, not just point estimates. This skill turns that norm into an audit.
Reproducibility questions at a probabilistic-inference venue go one level deeper than "can I rerun the script":
Record every randomness source once, in code, and cite it from the paper:
# repro/ledger.py — imported by every experiment entry point
import json, platform, random, numpy as np
def fix_and_log(seed: int, path: str = "run_manifest.json"):
random.seed(seed)
np.random.seed(seed)
manifest = {
"seed": seed,
"python": platform.python_version(),
"numpy": np.__version__,
"chains": 4, "warmup": 1000, "draws": 2000, # sampler config lives here
"elbo_restarts": 10, "restart_rule": "best final ELBO",
}
json.dump(manifest, open(path, "w"), indent=2)
return manifest
The manifest style matters more than the specific fields: one machine-readable file per run, checked into the artifact, lets a reviewer reconcile the paper's Table 3 with an actual execution.
| What must be recoverable | Where it lives at UAI | Common omission |
|---|---|---|
| Model and assumption set | Main part, stated with each theorem/method | Assumptions distributed across three sections |
| Sampler / optimizer settings | Appendix (unlimited, same PDF) | "Default settings" without library version |
| Hyperparameter search space and selection rule | Appendix table | Only the winning configuration reported |
| Seeds and number of repeats | Appendix + artifact manifest | Single-run results with no variance |
| Dataset versions, splits, preprocessing | Appendix + loader script in ZIP | Preprocessing "as in [12]" where [12] is ambiguous |
| Compute (hardware, runtime, memory) | Appendix | Runtime reported only for the proposed method, not baselines |
| Code/data availability statement | Main part or appendix | Silence, which reviewers read as "unavailable" |
What "reported convincingly" tends to mean per inference family — as conventions of the field, not venue mandates:
| Family | Minimum reported | Stronger version |
|---|---|---|
| MCMC | R-hat per parameter block, ESS, chain count/length | Rank plots; comparison against a long-run gold standard |
| Variational | Final ELBO, restart count and rule | ELBO traces; posterior-quality check on a tractable case |
| SMC / particle | Particle count, resampling scheme, ESS trajectory | Variance of the marginal-likelihood estimate over repeats |
| Conformal / intervals | Split sizes, α grid, empirical coverage | Conditional coverage slices; width distribution |
| Calibration | Binning scheme, ECE definition used | Reliability diagrams with confidence bands over seeds |
| Causal discovery | Graph generator, noise family, SHD/SID per seed | Sensitivity to assumption violations (unfaithfulness, confounding) |
If a row's "minimum" column is missing for your method family, expect the backing criterion to absorb the damage.
Split by tier deliberately: the availability statement and diagnostic summaries in the reviewed PDF (body or appendix), where they count toward backing; manifests, loaders, and per-run logs in the ZIP, where they support spot-checks. Never leave the only mention of seeds or repeat counts inside the optional archive — reviewers grade what the PDF says.
[Repro grade] turnkey / recoverable with effort / under-specified
[Diagnostics reported] <R-hat/ESS/ELBO/coverage/SHD... as applicable>
[Determinism ledger] present / partial / absent
[Disclosure gaps] <items from the map still missing>
[Availability statement] drafted / needs honesty pass / missing