Show the confidence, and say which curve it came from
FR-CULL-9 was read as "no fit, no number", so every library without 200 confirmed positive pairs showed "Confidence unavailable" on every suggestion — which is every library, until enough confirmations exist to fit one. The confirmations are made on this screen, ranked by the number it was withholding, so the degraded state was also the permanent one. There has always been a curve: Calibration::default is the reference implementation's fitted MBF sigmoid, which is what clustering already operates at. It is a published operating point, not an invention, and what the requirement forbids is presenting it *as though it were measured on this library*. So the percentage is shown, and the screen says once, above the grid, where the curve came from. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -27,7 +27,11 @@
|
||||
//! person. Nothing else — bootstrapping positives from high cosine is circular,
|
||||
//! fitting the calibration to the belief it was supposed to test.
|
||||
//!
|
||||
//! Which is why a fresh library has **no valid calibration**, and says so.
|
||||
//! Which is why a fresh library has **no valid calibration** — no fit of its
|
||||
//! own — and says so. It is not left without a curve: it uses the reference
|
||||
//! implementation's fitted one ([`Calibration::default`]), which is a published
|
||||
//! operating point rather than an invention, and the interface reports which of
|
||||
//! the two it is speaking from.
|
||||
|
||||
/// Bins over cosine ∈ [-1, 1].
|
||||
///
|
||||
@@ -56,11 +60,13 @@ pub struct Calibration {
|
||||
pub b: f32,
|
||||
/// Weight on `log2(min crop_px)` — the face-size term FR-CULL-9 asks for.
|
||||
pub w_size: f32,
|
||||
/// Whether there was enough evidence to trust the fit.
|
||||
/// Whether there was enough evidence to fit this library's own curve.
|
||||
///
|
||||
/// When false the UI says confidence is unavailable. It does **not** present
|
||||
/// an untuned default as though it were measured, which is the distinction
|
||||
/// FR-CULL-9 spends a paragraph on.
|
||||
/// False means the numbers came from the built-in reference curve, and the
|
||||
/// UI says so — once, at the screen level. It does **not** mean confidences
|
||||
/// are withheld: FR-CULL-9's distinction is between presenting an untuned
|
||||
/// default *as though it were measured* and presenting it as what it is,
|
||||
/// and only the first is forbidden.
|
||||
pub valid: bool,
|
||||
pub positive_pairs: u64,
|
||||
pub negative_pairs: u64,
|
||||
@@ -70,10 +76,10 @@ impl Default for Calibration {
|
||||
/// The reference implementation's fitted MBF curve (docs/faces.md §1):
|
||||
/// steepness 16.2, P=0.5 at cosine 0.267.
|
||||
///
|
||||
/// **`valid` is false**, and that is the point. This exists so an
|
||||
/// un-calibrated library has a documented operating point to cluster at
|
||||
/// rather than no behaviour at all — but nothing may show its output as a
|
||||
/// measured confidence.
|
||||
/// **`valid` is false**, and that is the point. It is a documented
|
||||
/// operating point rather than an invented one, so a library with no fit of
|
||||
/// its own can both cluster and quote a probability from it — what it may
|
||||
/// not do is call that probability a measurement of *this* library.
|
||||
fn default() -> Self {
|
||||
Self {
|
||||
a: 16.2,
|
||||
|
||||
Reference in New Issue
Block a user