Skip to content

probcal 0.1.1

Latest

Choose a tag to compare

@wlazlod wlazlod released this 08 Aug 00:18
· 1 commit to main since this release

Kernel calibration inference and a visualization overhaul, in one release.

Added

  • SKCEprobcal.metrics.kernel: squared kernel calibration error skce (estimators uq/ul/biased, Laplacian/Gaussian kernels, deterministic median-heuristic bandwidth, probability/logit kernel scale) and skce_test (Arcones–Giné centered bootstrap per Widmann et al. 2019, Appendix G, plus an O(n) asymptotic-normal method; one-sided, with the distribution-free p_value_bound). Report-only by design — excluded from evaluate() and the selector (DECISIONS 53).
  • Visualization — annotated plot_reliability (stats box via the new probcal.metrics.reliability_summary, deterministic event/non-event rug), plot_ecce cumulative-drift walks (on the new probcal.curves.ecce_curve), plot_grade_backtest traffic-light chart with 90% display intervals (new ci_low/ci_high on both grade results, powered by the numpy-only probcal._math.beta_ppf), and plot_offset_audit for fitted LogitOffset stages. All documentation figures are regenerated deterministically by docs/scripts/generate_figures.py.
  • Documentation — SKCE section and selection-table row in the metrics chapter, four new visualization-chapter sections, a namesake-disambiguation FAQ entry (the unaffiliated R package probcal and the ECAI 2025 research codebase), and a README feature-matrix column for the R package.
  • Tooling — mypy targets Python 3.12 in config and CI (numpy ≥ 2 stubs use PEP 695 type statements); runtime 3.11 support unchanged.

Changed

  • All plots style themselves via a per-call rc_context house style — global matplotlib rcParams are never touched.
  • plot_reliability: the count-bar margin is now opt-in (counts=False default); the rug replaces it as the density view.

Full details: CHANGELOG.md and DECISIONS entries 53–55. 284 tests.