sklears_model_selection/epistemic_uncertainty/
uncertainty_results.rs1use super::uncertainty_types::*;
2use scirs2_core::ndarray::{Array1, Array2};
3use std::collections::HashMap;
4
5#[derive(Debug, Clone)]
6pub struct EpistemicUncertaintyResult {
7 pub predictions: Array1<f64>,
8 pub uncertainties: Array1<f64>,
9 pub prediction_intervals: Array2<f64>,
10 pub calibration_score: f64,
11 pub entropy: Array1<f64>,
12 pub mutual_information: f64,
13 pub epistemic_uncertainty_components: UncertaintyComponents,
14 pub reliability_metrics: ReliabilityMetrics,
15}
16
17#[derive(Debug, Clone)]
18pub struct AleatoricUncertaintyResult {
19 pub predictions: Array1<f64>,
20 pub uncertainties: Array1<f64>,
21 pub prediction_intervals: Array2<f64>,
22 pub noise_estimates: Array1<f64>,
23 pub variance_estimates: Array1<f64>,
24 pub heteroskedastic_weights: Array1<f64>,
25 pub distributional_parameters: HashMap<String, Array1<f64>>,
26 pub reliability_metrics: ReliabilityMetrics,
27}
28
29#[derive(Debug, Clone)]
30pub struct UncertaintyQuantificationResult {
31 pub predictions: Array1<f64>,
32 pub total_uncertainty: Array1<f64>,
33 pub epistemic_uncertainty: Array1<f64>,
34 pub aleatoric_uncertainty: Array1<f64>,
35 pub prediction_intervals: Array2<f64>,
36 pub uncertainty_decomposition: UncertaintyDecomposition,
37 pub calibration_score: f64,
38 pub reliability_metrics: ReliabilityMetrics,
39 pub epistemic_result: EpistemicUncertaintyResult,
40 pub aleatoric_result: AleatoricUncertaintyResult,
41}