Skip to main content

lambda_cv

Function lambda_cv 

Source
pub fn lambda_cv(
    data: &FdMatrix,
    argvals: &[f64],
    config: &LambdaCvConfig,
) -> Result<LambdaCvResult, FdarError>
Expand description

Select the best elastic-alignment regularisation parameter via K-fold cross-validation.

For each candidate lambda the data are split into K folds. A Karcher mean is computed on the training set and every held-out curve is scored by its elastic distance to that mean. The lambda with the lowest average held-out distance wins.

§Arguments

  • data — Functional data matrix (n x m).
  • argvals — Evaluation grid (length m).
  • config — Cross-validation settings (lambdas, folds, iterations, …).

§Errors

Returns FdarError::InvalidDimension if data has fewer than 4 rows or argvals length does not match data.ncols(). Returns FdarError::InvalidParameter if any lambda is negative or n_folds is 1.