tensorlogic_train/metrics/
mod.rs1use crate::TrainResult;
4use scirs2_core::ndarray::{ArrayView, Ix2};
5
6pub trait Metric {
8 fn compute(
10 &self,
11 predictions: &ArrayView<f64, Ix2>,
12 targets: &ArrayView<f64, Ix2>,
13 ) -> TrainResult<f64>;
14
15 fn name(&self) -> &str;
17
18 fn reset(&mut self) {}
20}
21
22mod advanced;
24mod basic;
25mod calibration;
26mod ranking;
27mod tracker;
28mod vision;
29
30pub use basic::{Accuracy, F1Score, Precision, Recall};
32
33pub use advanced::{
35 BalancedAccuracy, CohensKappa, ConfusionMatrix, MatthewsCorrelationCoefficient,
36 PerClassMetrics, RocCurve,
37};
38
39pub use ranking::{NormalizedDiscountedCumulativeGain, TopKAccuracy};
41
42pub use vision::{DiceCoefficient, IoU, MeanAveragePrecision, MeanIoU};
44
45pub use calibration::{ExpectedCalibrationError, MaximumCalibrationError};
47
48pub use tracker::MetricTracker;