Fast and Scalable Cellwise-Robust Ensemble

Functions to perform robust variable selection and regression using the Fast and Scalable Cellwise-Robust Ensemble (FSCRE) algorithm. The approach establishes a robust foundation using the Detect Deviating Cells (DDC) algorithm and robust correlation estimates. It then employs a competitive ensemble architecture where a robust Least Angle Regression (LARS) engine proposes candidate variables and cross-validation arbitrates their assignment. A final robust MM-estimator is applied to the selected predictors.


CRAN_Status_Badge CRAN Data Downloads

srlars: Fast and Scalable Cellwise-Robust Ensembles

High-dimensional data are often affected by cellwise contamination: individual cells of the predictor matrix deviate from the underlying structure without necessarily making the whole observation an outlier. Even a small fraction of contaminated cells can propagate across many observations, which is enough to mislead both classical variable selection methods and robust methods designed only for casewise (whole-observation) outliers.

srlars implements the Fast and Scalable Cellwise-Robust Ensemble (FSCRE) algorithm: a competitive ensemble of sparse sub-models built on a cellwise-robust foundation (Detect Deviating Cells imputation and wrapping-based robust correlations), constructed via a robust Least-Angle-Regression proposer and a cross-validation arbiter, then refit with robust MM-estimators. The method and its theoretical properties are described in:

Christidis, A., Pyneeandee, J., and Cohen Freue, G. (2026). Fast and Scalable Cellwise-Robust Ensembles for High-Dimensional Data. arXiv:2603.20940

Key features

  • Cellwise-robust foundation -- predictors are cleaned with cellWise::DDC() and correlations are estimated with the wrapping transform, so estimation stays reliable when individual cells (not whole rows) are contaminated.
  • Competitive ensemble construction -- n_models sub-models compete for variables each round via cross-validated predictive improvement, rather than being built independently.
  • Controllable variable sharing -- max_share sets how many sub-models a given variable may appear in, from fully disjoint sub-models (the default) to unrestricted sharing.
  • Minimum sub-model size -- n_min guarantees each sub-model reaches a minimum number of variables even when the ensemble-wide stopping rule would otherwise cut it short.
  • Automatic tuning -- cv.srlars() chooses max_share by cross-validation on held-out ensemble prediction error, instead of comparing values by hand.

Installation

You can install the stable version from CRAN:

install.packages("srlars", dependencies = TRUE)

You can install the development version from GitHub:

library(devtools)
devtools::install_github("AnthonyChristidis/srlars")

Quick start

library(srlars)

# x, y: a (possibly cellwise-contaminated) high-dimensional training set
fit <- srlars(x, y,
             n_models = 5,       # ensemble size
             x_preprocess = "ddc",
             y_preprocess = "wrap",
             cor_estimator = "wrap",
             cv_fit = "huber",
             cv_loss = "huber")

coef(fit)          # ensemble-averaged coefficients
predict(fit, newx) # ensemble-averaged predictions

# Choose max_share automatically instead of setting it by hand:
cv_fit <- cv.srlars(x, y, n_models = 5)
coef(cv_fit) # coef()/predict() work directly on the cross-validated fit

For a complete walkthrough -- simulating cellwise-contaminated data, fitting srlars(), and comparing max_share/n_min on the same dataset -- see the package vignette:

vignette("srlars", package = "srlars")

License

This package is free and open source software, licensed under GPL (>= 2).

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("srlars")

3.1.0 by Anthony Christidis, 18 days ago


Browse source code at https://github.com/cran/srlars


Authors: Anthony Christidis [aut, cre] , Gabriela Cohen-Freue [aut]


Documentation:   PDF Manual  


GPL (>= 2) license


Imports cellWise, robustbase, mvnfast

Suggests testthat, knitr, rmarkdown


Imported by RMSS.


See at CRAN