sklears_model_selection/epistemic_uncertainty/
uncertainty_methods.rs

1#[derive(Debug, Clone)]
2pub enum EpistemicUncertaintyMethod {
3    /// MonteCarloDropout
4    MonteCarloDropout {
5        dropout_rate: f64,
6
7        n_samples: usize,
8    },
9    /// DeepEnsembles
10    DeepEnsembles {
11        n_models: usize,
12    },
13    /// BayesianNeuralNetwork
14    BayesianNeuralNetwork {
15        n_samples: usize,
16    },
17    Bootstrap {
18        n_bootstrap: usize,
19        sample_ratio: f64,
20    },
21    GaussianProcess {
22        kernel_type: String,
23    },
24    VariationalInference {
25        n_samples: usize,
26    },
27    LaplaceApproximation {
28        hessian_method: String,
29    },
30}
31
32#[derive(Debug, Clone)]
33pub enum AleatoricUncertaintyMethod {
34    /// HeteroskedasticRegression
35    HeteroskedasticRegression {
36        n_ensemble: usize,
37    },
38    /// MixtureDensityNetwork
39    MixtureDensityNetwork {
40        n_components: usize,
41    },
42    /// QuantileRegression
43    QuantileRegression {
44        quantiles: Vec<f64>,
45    },
46    /// ParametricUncertainty
47    ParametricUncertainty {
48        distribution: String,
49    },
50    InputDependentNoise {
51        noise_model: String,
52    },
53    ResidualBasedUncertainty {
54        window_size: usize,
55    },
56    EnsembleAleatoric {
57        n_models: usize,
58        noise_estimation: String,
59    },
60}