pub struct ModelSelection;Expand description
Model selection criteria: AIC, BIC, Bayes factor, and cross-validation.
Implementations§
Source§impl ModelSelection
impl ModelSelection
Sourcepub fn aic(log_likelihood: f64, n_params: usize) -> f64
pub fn aic(log_likelihood: f64, n_params: usize) -> f64
Akaike Information Criterion: AIC = 2k - 2 log L.
§Arguments
log_likelihood- Maximised log-likelihood.n_params- Number of free parameters k.
Sourcepub fn aicc(log_likelihood: f64, n_params: usize, n_data: usize) -> f64
pub fn aicc(log_likelihood: f64, n_params: usize, n_data: usize) -> f64
Corrected AIC for small samples: AICc = AIC + 2k(k+1)/(n-k-1).
Sourcepub fn bic(log_likelihood: f64, n_params: usize, n_data: usize) -> f64
pub fn bic(log_likelihood: f64, n_params: usize, n_data: usize) -> f64
Bayesian Information Criterion: BIC = k ln(n) - 2 log L.
§Arguments
log_likelihood- Maximised log-likelihood.n_params- Number of free parameters k.n_data- Number of data points n.
Sourcepub fn log_bayes_factor(log_evidence_1: f64, log_evidence_2: f64) -> f64
pub fn log_bayes_factor(log_evidence_1: f64, log_evidence_2: f64) -> f64
Bayes factor (in log scale): log BF₁₂ = log p(D|M₁) - log p(D|M₂).
Sourcepub fn jeffreys_scale(log_bf: f64) -> &'static str
pub fn jeffreys_scale(log_bf: f64) -> &'static str
Interprets the log Bayes factor according to Jeffreys’ scale.
Returns a descriptive string.
Sourcepub fn k_fold_cv_mse(
x: &[Vec<f64>],
y: &[f64],
k: usize,
alpha: f64,
beta_noise: f64,
) -> f64
pub fn k_fold_cv_mse( x: &[Vec<f64>], y: &[f64], k: usize, alpha: f64, beta_noise: f64, ) -> f64
K-fold cross-validation mean squared error.
§Arguments
x- Feature matrix (n × d, row-major asVec<Vecf64>).y- Target vector (length n).k- Number of folds.alpha- Prior precision for Bayesian linear regression.beta- Noise precision.
Trait Implementations§
Source§impl Clone for ModelSelection
impl Clone for ModelSelection
Source§fn clone(&self) -> ModelSelection
fn clone(&self) -> ModelSelection
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ModelSelection
impl RefUnwindSafe for ModelSelection
impl Send for ModelSelection
impl Sync for ModelSelection
impl Unpin for ModelSelection
impl UnsafeUnpin for ModelSelection
impl UnwindSafe for ModelSelection
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.