pub struct QueryPoolVectorScoreOperator {
pub query_vector: Vec<f32>,
pub k: usize,
pub field: String,
pub base_rate: f64,
pub split: RelevantSampleSplit,
}Expand description
Query-pool vector score transform.
Fits the likelihood-ratio calibration from the retrieved pool at
query time: the head of the sorted distance distribution (per
RelevantSampleSplit) estimates the relevant density f_R, the
tail estimates the background density f_G, and each candidate’s
posterior is sigmoid(log(f_R(d) / f_G(d)) + logit(base_rate)) via
VectorProbabilityTransform. An uninformative pool (too small,
zero spread, or no head/tail separation) yields the prior for every
candidate instead of fabricating discrimination. Because the same selected
pool supplies both pseudo-classes, this is an unsupervised ranking transform,
not a reusable calibrated-probability model. Use
uqa_scoring::VectorCalibrationModel for the latter contract.
Fields§
§query_vector: Vec<f32>§k: usize§field: String§base_rate: f64Relevance prior folded into the posterior. The default 0.5
contributes zero log-odds, so the output doubles as prior-free
evidence for fusion-level priors.
split: RelevantSampleSplit