One sentence: we train language models, with reinforcement learning whose reward is a proper scoring rule, to stop emitting a single answer and instead emit a calibrated probability distribution over answers — and we show this works across multiple-choice QA, open-ended QA, medical diagnosis, forecasting, and continuous regression.

Tabs: each project line is self-contained. 1·MCQ replication is the foundation (replicating Bereket et al.); 2·HotpotQA extends it to open-ended answers with an "Other" bucket; 3·DDXPlus trains against full gold distributions (49 diseases); 4·Forecasting moves to continuous targets (Polymarket, Metaculus) with Beta-distribution outputs; 5·Regression-PPL generalizes to mixture-of-Gaussians and probabilistic programs (pluck); Live status shows what is running right now.

The framework (current, after the 2026-05 meetings)

The model reasons freely, then commits to a structured distribution: a short list of named hypotheses with probabilities, plus a residual Other bucket.

<think> ...reasoning... </think>
<hypotheses>
  <h p="0.40">Pneumonia</h>
  <h p="0.30">Bronchitis</h>
  <other p="0.30"/>
</hypotheses>

Listed hypotheses keep their stated weight; the Other bucket spreads its mass over all unlisted answers using the base LM's prior (the LM-prior backoff):

\[ \hat p(a \mid x) \;=\; \begin{cases} w_i & a = h_i \text{ (listed)}\\[2pt] w_{\text{other}}\cdot p_{\text{LM}}(a \mid x) & \text{otherwise} \end{cases} \]

Training reward is the cross-entropy log-score against the gold distribution \(p^*\) (a point mass for single-answer tasks, a full differential for DDXPlus):

\[ R \;=\; \sum_a p^*(a)\,\log\bigl(\hat p(a) + \epsilon\bigr) \]
question x (+ context) LM reasons <think>…</think> hypotheses + weights h₁:w₁ … hₖ:wₖ + Other: wₐ induced distribution p̂ Other mass spread by base-LM prior p_LM(a|x) reward = log-score vs gold p* (GRPO) strictly proper: maximized at p̂ = p*
The pipeline. The reward is a strictly proper scoring rule — its expectation is maximized exactly when the model reports its true beliefs.
Why this matters: no behavioral hacks. Earlier iterations needed hand-tuned penalties (hypothesis-count / min-K constraints, soft-diversity bonuses) to stop the model collapsing to one answer or hiding in the Other bucket. The LM-prior backoff gives Other real semantics instead of a black-hole sink, and empirically the cross-entropy objective alone is stable: the model spreads when gold is spread, and commits when gold is concentrated. Formalizing why this objective avoids collapse is the conceptual core of the paper (open theory item).

The cleanest empirical validation: ProtoQA vs TriviaQA

Same objective, opposite learned behaviors — exactly what a proper scoring rule should produce:

Dataset (gold structure)# hypotheseswotherkey metric
ProtoQA (multi-cluster gold → should spread)stays ≈ 3.4≈ 0.12coverage 0.07 → 0.20
TriviaQA (single answer → should commit)3.0 → 1.00.02 → 0.48pgold 0.21 → 0.55

Project map

TabTask / gold structureStatusHeadline
1 · MCQ replicationMedMCQA A–D, single gold complete Reproduced Shepard/Bereket: ECE 0.36→0.03 at equal accuracy
2 · HotpotQAopen-ended QA, single gold Exp 1–10 done ECE 0.36→0.046; backoff bug found & fixed; principled backoff ≈ min-K hack
3 · DDXPlusdistribution over 49 diseases Exp 1–5 + TVD audit Cross-entropy beats every alternative reward; TVD 0.69 is semantic, not formatting
4 · Forecastingbinary + continuous, market-resolved Tracks 1–2 done Beta-format 4B ≈ o1 on Brier; mixtures capture 82% of oracle gain on branching
5 · Regression-PPLcontinuous targets, censoring, Fermi Phase 3 training now MoG-XML wins 3/5 baselines; pluck (exact-inference PPL) beats MoG on survival

Shared findings across projects

Output-representation comparison (DDXPlus, team-level result)

RepresentationKL ↓Mode acc ↑ECE ↓Fmt/exec
CoT (verbalized list)2.170.510.410.97
DSL (class-hierarchy spec)1.740.430.160.99
Pyro (writes def model())2.050.98

DSL wins KL and ECE but trades mode accuracy; Pyro writes flat programs — it never reaches for hierarchical structure or noisy-OR (open diagnosis: few-shot demos vs reward design).

Measurement standards

Total variation distance is reported alongside KL on closed-set tasks because it has two readable interpretations:

\[ \mathrm{TV}(P,Q) = \tfrac12 \sum_x |p(x)-q(x)| \;=\; \sup_A |P(A)-Q(A)| \;=\; \inf_{\text{couplings}} \Pr[X \neq Y] \]

Reporting rules: always give validation reward next to accuracy and ECE (the reward jointly captures calibration + accuracy); report TV alongside KL on closed sets. Caveat: Tim Vieira flagged literature questioning ECE as the right calibration metric — under review.

Matched-subset reporting (project-wide standard, adopted 2026-06-18). When a model can abstain by failing to produce a parseable answer, parse failure is informative: models decline the examples they find hardest. A metric averaged only over parsed outputs is therefore selection-biased, and is not comparable across models or methods with different parse rates (a model that answers only the easy 60% looks better than one that answers all 100%). The standard is to compare on the matched subset — the examples every series parses — and to quote each series' parse rate beside the metric. This first bit us on Regression-PPL (a trained model looked worse than base on fermieval purely because base abstained on the hard questions); the same commit-vs-abstain effect underlies the forecasting Beta-format result. Tooling: matched_report.py.

The broader vision (Alex)

LM outputs as a spectrum of increasingly expressive uncertainty representations:

explicit distributions hypothesis lists, Beta(α,β), MoG probabilistic programs pluck: exact marginalization conditioned generative models emit a simulator; inference = extraction
Aspirational endpoint: the model emits a latent-variable diagnosis simulator; conditioning it on symptoms yields the posterior. Pluck (Alex's exact-marginalization PPL, unlike approximate Pyro/NumPyro/Gen) is the candidate engine. The cross-entropy + Other framework is the ICLR-scoped contribution; this is the long arc.

Glossary

Other bucketresidual-mass token whose probability is distributed over unlisted answers via \(p_{\text{LM}}\)
LM-prior backoffusing the base model's logit probabilities to spread Other-bucket mass
Coveragefraction of gold mass captured by listed hypotheses
Mode accuracyargmax of predicted distribution matches argmax of gold
Proper scoring ruleloss minimized in expectation at the true distribution (here: log-score / cross-entropy)
RLVFRL with verifiable feedback — the single-correct-answer baseline
GRPO / Dr. GRPOgroup-relative policy optimization: sample G completions per prompt, advantage = reward − group mean (Dr. variant: no std normalization)
ECEexpected calibration error — gap between stated confidence and empirical accuracy
PluckAlex's probabilistic programming language doing exact marginalization (Rust, Python bindings)