pub fn learn_record(
ballots: &[(String, String)],
outcome: &str,
records: &BTreeMap<String, Standing>,
about: &[String],
) -> Result<(Vec<Trust>, BTreeMap<String, Standing>)>Expand description
Learn from an outcome by the record: each voter’s hits and misses so
far, this outcome added, give its accuracy shrunk toward the panel’s
(shrunk_accuracy), and the rows are the log odds of that scaled to
the best voter at one (calibration_weights). Measured against
Hedge’s multiplicative update on voters of known accuracy, the record
reaches the batch calibration and Hedge does not: a voter is weighed by
what it got right, not by how many times it has been punished. One
outcome cannot tell voters apart, so the first leaves them equal. Rows
are complete over the voters and scoped to about.
§Errors
No outcome, or fewer than two voters.