OBSERVED PUBLIC DATA / STATIC BENCHMARK
German credit.
A fixed comparison.
1,000 historical German credit records. Frozen stratified split: 600 train, 200 calibration, 200 test. The native good/bad target has 300 bad records, including 60 in the test split. No hyperparameter search. Scaling and categories are learned only from training records.
This dataset has no decision or publication dates. It cannot validate the point-in-time controls or the 180-day outcome used in the separate synthetic experiment.
Untouched test split
| Method | ROC-AUC | Average precision | Brier ↓ |
|---|---|---|---|
| constant_train_rate | 0.500 | 0.300 | 0.210 |
| logistic | 0.774 | 0.677 | 0.162 |
| isotonic | 0.760 | 0.606 | 0.169 |
The same 20-record review capacity
| Method | Reviewed | Captured bad | Precision | Capture |
|---|---|---|---|---|
| constant_train_rate | 20 | 6/60 | 30.0% | 10.0% |
| logistic | 20 | 17/60 | 85.0% | 28.3% |
| isotonic | 20 | 17/60 | 85.0% | 28.3% |
A constant score is ordered by original row number to resolve ties. Review is a historical ranking comparison, with no observed intervention, financial benefit or approval outcome.
Reproduce and inspect
creditvintage public-benchmark --out outputs/public-credit
creditvintage verify-public outputs/public-credit
Verification refits the frozen models from the original bytes and recorded split, then checks scores, metrics, queue and page. It needs no network. Numerical tolerance is 1e-8 for probabilities and 1e-6 for summary metrics; runtime versions are recorded.
Original data · Every split assignment · Test labels and scores · All review budgets · Label-free logistic queue · Summary · Digests
What remains unproven
- No decision/publication/revision dates: not point-in-time or out-of-time evidence
- Static historical German sample: not evidence about current Chinese credit
- 200 test records: noisy single-split estimates; no selection or causal claim
- Excluding three fields does not demonstrate fairness or remove their proxies
- Native good/bad labels are not the synthetic experiment's 180-day 90+ DPD target
- No observed recoveries, monetary savings, approval policy or deployed service
Source: Hans Hofmann (1994), Statlog (German Credit Data), UCI Machine Learning Repository. CC BY 4.0. Original data bytes preserved; native label recoded and three model fields excluded as documented in the protocol.
SHA-256: b21f3d81db8071257d5ff1deaeba1fd4303b62712e6fcc9715c7a86202cb5871