Authors: Ahsaas Bajaj and Benjamin S Knight
? We ran 134,400 simulations grounded in actual manufacturing ML fashions to seek out out. The reply is determined by what you’re optimizing for, and on a single diagnostic you’ll be able to compute earlier than becoming a mannequin.
When you’ve ever educated a linear mannequin in scikit-learn, you’ve confronted this query: RidgeCV, LassoCV, or ElasticNetCV? Possibly you defaulted to no matter a tutorial advisable. Possibly a colleague had a powerful opinion. Possibly you tried all three and picked whichever gave the very best cross-validation rating.
We needed to switch instinct with empirical decision-making.
We ran 134,400 simulations throughout 960 configurations of a 7-dimensional parameter area, various pattern dimension, options, multicollinearity, signal-to-noise ratio, coefficient sparsity, and two extra parameters. We benchmarked 4 regularization frameworks (Ridge, Lasso, ElasticNet, and Submit-Lasso OLS) throughout the three targets:
- Predictive accuracy (check RMSE)
- Variable choice (F1 rating for recovering the true function set)
- Coefficient estimation (L2 error vs. true coefficients)
Our simulation ranges aren’t arbitrary. They’re grounded in eight real-world manufacturing ML fashions from Instacart, spanning demand forecasting, conversion prediction, and stock intelligence. The regimes we examined mirror circumstances that MLEs really encounter in observe.
This put up distills the sensible steering from our examine into a call framework you need to use in your subsequent mission. When you’re a Knowledge Scientist or MLE selecting a regularizer, that is for you.
The Headlines
Earlier than we get into the main points:
- For prediction, it barely issues. Ridge, Lasso, and ElasticNet differ by at most 0.3% in median RMSE. No hyperparameter achieves even a small impact dimension for RMSE variations amongst them. This solely holds with enough coaching information (> 78 observations per function).
- For variable choice, it issues enormously, particularly below multicollinearity. Lasso’s recall collapses to 0.18 below excessive situation numbers with low sign, whereas ElasticNet maintains 0.93.
- At massive sample-to-feature ratios (n/p ≥ 78), the strategies change into interchangeable. Use Ridge; it’s the quickest.
- Submit-Lasso OLS ought to be averted when optimizing for RMSE. It’s the one methodology that persistently underperforms, and it does so on each goal we measured.
What We Examined and Why
Our simulation framework varies seven hyper-parameters concurrently:

We ran every of the 4 regularization frameworks in opposition to 960 hyper-parameter configurations, every utilizing 35 random seeds for a complete of 134,400 simulations. For each simulation we logged the check RMSE, F1 rating (precision and recall for recovering the true assist of β), and coefficient L2 error.
To measure what drives the variations between strategies, we used omega-squared (ω²) from one-way ANOVA, an impact dimension that tells us what quantity of variance in efficiency gaps is defined by every parameter. This goes past asking “which methodology wins” to understanding why it wins, and below what circumstances.
Right here’s what this implies in observe: a lot of the parameters that drive methodology variations are issues you’ll be able to observe earlier than becoming a mannequin. n and p. You’ll be able to compute the situation quantity κ with numpy.linalg.cond(X). And the one essential latent parameter, SNR, has a free diagnostic proxy: the regularization power α that LassoCV selects. Excessive α indicators low sign; low α indicators robust sign. We’ll come again to this.
Discovering 1: For Prediction, Simply Use Ridge
That is crucial discovering for the most important variety of practitioners.
Ridge, Lasso, and ElasticNet are almost interchangeable for prediction. Throughout all 33,600 simulations per methodology, the median check RMSE differs by at most 0.3%. Our omega-squared evaluation confirms this: no single hyperparameter achieves even a small impact dimension (ω² ≥ 0.01) for RMSE variations amongst these three strategies. Each pairwise comparability is negligible (all < 0.02).
For practitioners who solely care about accuracy, the near-equivalence is itself the discovering. Regularizer selection issues far lower than pattern dimension.

So why Ridge? Computational effectivity. Ridge has a closed-form answer for every candidate α, making it dramatically sooner than the options (evaluate Ridge’s median run time of 6 seconds to Lasso’s median runtime of 9 seconds and ElasticNet’s median runtime of 48 seconds).

ElasticNet’s overhead stems from its joint grid search over α and the L1 ratio ρ. The 167–219× imply overhead we measured is restricted to our 8-value L1 ratio grid. A coarser 3-value grid would cut back this proportionally. Even worse, when the coefficient distribution is roughly uniform, Lasso can take over an hour to converge (see the right-side of the bimodal distribution). This overhead buys you a median RMSE enchancment of simply 0.04% over Ridge, a margin that’s negligible in observe.
Caveats
On the smallest pattern dimension we examined (n = 100), ElasticNet can beat Ridge by 5–15% in very particular situations: when SNR is excessive (~1.0). At low SNR, Ridge is definitely marginally higher. These are localized observations on the excessive of our simulation grid, not systematic tendencies.
Another observe: LassoLars wasn’t a part of our analysis design, however the LARS algorithm computes the whole Lasso regularization path analytically in a single go (O(np²)), probably matching Ridge’s closed-form pace benefit. Nevertheless, LARS is thought to be numerically unstable below high-collinearity circumstances (κ > 10⁴) that characterize most manufacturing ML function units. That is exactly the regime the place our strongest findings apply.
Backside line for prediction: Default to RidgeCV. Pattern dimension issues excess of regularizer selection. However prediction isn’t the one goal price optimizing. When variable choice or coefficient accuracy issues, particularly below multicollinearity, the story modifications dramatically.
Discovering 2: For Variable Choice, ElasticNet Is the Protected Default
Right here methodology selection really issues. Variable choice, the duty of figuring out which options really contribute to the end result, is the target most delicate to the regularizer, and the place getting it improper carries the steepest price.
What Drives the Variations
From our ANOVA decomposition of pairwise F1 variations:

Pattern dimension dominates overwhelmingly. However when you’re within the small-n regime (n/p < 78), the situation quantity and SNR change into the first differentiators.
Excessive Multicollinearity (κ > ~10⁴): Do Not Use Lasso
This is likely one of the most sturdy findings in the whole examine, and it’s immediately related to manufacturing ML. Seven of eight fashions we surveyed function within the high-κ regime. In case your options are even reasonably correlated (which they nearly definitely are in any engineered function set), this discovering applies to you.
At excessive κ with low SNR:
- Lasso recall: 0.18 (it misses 82% of true options)
- ElasticNet recall: 0.93 (it catches 93% of true options)
That’s a 5× recall benefit for ElasticNet. The mechanism is well-known. When options are extremely correlated, Lasso arbitrarily picks one from every correlated group and zeros the remainder. ElasticNet’s L2 penalty part, the “grouping impact” described by Zou and Hastie (2005), retains correlated options collectively.
Our simulations present this isn’t a nook case. The strongest F1 variations (ΔF1 of 0.50–0.75) focus squarely within the high-κ columns at n = 100 and n = 1,000. That is the frequent case in manufacturing.
Low Multicollinearity (κ < ~10²): Nonetheless Default to ElasticNet
You may anticipate Lasso to lastly shine at low κ. It doesn’t, at the least not universally. Even at low κ, Lasso’s recall is extremely delicate to the signal-to-noise ratio (see beneath).

ElasticNet maintains recall ≥ 0.91 no matter SNR, even at low κ. Lasso is simply aggressive when each SNR is excessive and the true mannequin is genuinely sparse. Because you sometimes don’t know SNR prematurely, ElasticNet is the safer wager.
The Ridge Shock
We didn’t anticipate this: Ridge regularly achieves the highest F1 scores at small n, regardless of by no means performing express variable choice. How? Ridge’s recall is all the time 1.0, as a result of it retains each function, and that excellent recall overwhelms the precision benefit of sparse strategies when these strategies’ recall collapses below low SNR.
However this isn’t real variable choice. Ridge provides you a nonzero coefficient for each function. When you want an explicitly sparse mannequin, Ridge doesn’t assist. Combining Ridge with post-hoc permutation significance is a pure extension, however we didn’t consider it right here.
Variable Choice: Abstract

Backside line for variable choice: ElasticNetCV is the secure default. Lasso solely earns its place when κ is low, SNR is excessive, and you’ve got area purpose to imagine the true mannequin is sparse.
Discovering 3: For Coefficient Estimation, Department on κ
When the aim is recovering correct coefficient values, for interpretability or causal inference, the situation quantity κ turns into the important thing branching variable. Ideally we’d department on the distribution of the true 𝛽 coefficients, however we don’t get to look at it. In distinction, κ may be measured immediately. At excessive κ ElasticNet dominates no matter sparsity. At low κ, the optimum methodology is determined by whether or not the true mannequin is sparse or dense. Pattern dimension modifications the magnitude of variations however not their route.
Excessive κ (> ~10⁴): Use ElasticNet. It achieves 20–40% decrease L2 coefficient error than Lasso, and holds a constant edge over Ridge no matter sparsity degree.
Low κ (< ~10²): Department in your area data about sparsity.
- Sparse area (genomics, textual content classification, sensor arrays): Lasso or ElasticNet
- Dense area (engineered function units, demand forecasting, conversion fashions): Ridge

All regimes: Keep away from Submit-Lasso OLS. It exhibits greater coefficient L2 error than customary Lasso throughout the whole simulation grid. The unpenalized OLS refit amplifies first-stage choice errors. That is the situation the place you’d hope the two-stage process helps, and it doesn’t.

Backside line for coefficient estimation: ElasticNet at excessive κ, domain-dependent at low κ, by no means Submit-Lasso OLS.
A Practitioner’s Determination Information
The entire findings above distill into a call framework that branches solely on portions you’ll be able to compute earlier than becoming a single mannequin: the sample-to-feature ratio n/p, the situation quantity κ (through numpy.linalg.cond(X)), and when finer discrimination is required, the regularization power α elected by a fast LassoCV run as a proxy for the latent SNR.
The complete flowchart is offered in our paper (Determine 7). Right here, we stroll by way of the logic as a call tree.
The under-determined regime
In case your function depend exceeds your pattern dimension, you’re within the under-determined regime. Lasso’s α regularly saturates on the higher boundary of the search grid right here, and its recall collapses. Default to Ridge or ElasticNet for all targets, and proceed with warning.
The massive-sample regime
If n/p ≥ 78, you’re within the large-sample regime the place all strategies converge. Efficiency gaps vanish throughout prediction, variable choice, and coefficient estimation concurrently.
Use RidgeCV. It’s the quickest methodology by a large margin, and there’s no accuracy penalty. When you particularly want a sparse mannequin for interpretability, ElasticNetCV or LassoCV are completely fantastic at this ratio. The selection amongst them is immaterial.
The regime the place selection issues
Beneath n/p = 78 is the place methodology selection issues most. The correct regularizer is determined by what you’re optimizing for.
If prediction is your precedence: Use RidgeCV. The RMSE variations among the many core three strategies are too small to justify extra complexity or compute. One slender exception: at n ≈ 100 with excessive SNR (~1.0), ElasticNet gives a detectable 5–15% edge no matter κ; at n ≈ 100 with very low SNR, Ridge is marginally most popular. In both case, the margin is modest relative to the development out there from rising pattern dimension.
If variable choice is your precedence: Department on the situation quantity.
- κ > ~10⁴ (excessive multicollinearity): Use ElasticNetCV. That is among the many strongest suggestions within the examine. One nuance: at moderate-to-high SNR (or n ≥ 1,000), ElasticNet is clearly most popular, with F1 benefits over Lasso reaching ΔF1 of +0.75. At very low SNR with n ≈ 100 (recognized by a saturated CV-elected α), Ridge achieves the very best F1, however solely by way of excellent recall (retaining all options), not real variable choice. When you want an explicitly sparse mannequin even on this nook, ElasticNet stays the least-bad possibility and nonetheless vastly outperforms Lasso.
- κ < ~10² (well-conditioned): An essential warning first: don’t default to Lasso even at low κ. Lasso’s recall drops sharply at decrease SNR ranges no matter multicollinearity, whereas ElasticNet maintains recall ≥ 0.91 throughout all SNR ranges. ElasticNet is the secure default right here. To refine additional, run a fast LassoCV and examine the elected α. If α is excessive or saturated on the boundary, you’re in a low-SNR regime. Ridge offers the very best F1 (although not by way of real sparsification). If α is reasonable, keep on with ElasticNet. If α is low and area experience suggests sparsity, Lasso turns into viable.
If coefficient estimation is your precedence: Department on the situation quantity.
- κ > ~10⁴: ElasticNetCV dominates no matter sparsity.
- κ < ~10²: Use area data. Sparse mannequin → Lasso. Dense mannequin → Ridge.
The α Diagnostic: A Free SNR Proxy
The one latent parameter that issues for fine-grained selections, signal-to-noise ratio, may be approximated at zero extra price. When scikit-learn’s LassoCV matches your information, it experiences the elected α. This worth is inversely associated to the underlying SNR: excessive α indicators weak sign, low α indicators robust sign.
Our simulations present direct empirical affirmation: the very best elected α values (approaching 10⁴–10⁵) focus solely in small-n, low-SNR configurations.

These thresholds are approximate heuristics derived from our simulation grid, they’ll range with function scaling and dataset traits. Deal with them as pointers, not sharp cutoffs.
In All Unsure Instances
While you’re uncertain about SNR, uncertain about sparsity, or working within the intermediate-κ vary we didn’t immediately check: ElasticNet is the default that received’t burn you, and Submit-Lasso OLS ought to be averted.
The Meta-Discovering: Pattern Dimension Trumps All the pieces
One takeaway issues greater than any method-level steering: rising your sample-to-feature ratio does extra for each goal than any regularizer selection.
Pattern dimension is the dominant driver of efficiency variations throughout all three metrics (ω² = 0.308 for F1, a massive impact). The n × SNR interplay is the strongest two-way interplay throughout all comparisons (F = 569, p < 0.001). Sign-to-noise issues most exactly when samples are scarce. And at n/p ≥ 78, methodology selection turns into irrelevant fully.
When you’re spending days tuning your regularizer when you can be rising your coaching set, you’re optimizing the improper factor.
Fast Reference

Placing It Into Observe
The simulation framework is a reusable harness. We capped pattern sizes at 100k observations for compute causes, however the grid nonetheless spans the n/p inflection level the place regularizer efficiency shifts. We’re extending it now to newer regularizers (Adaptive Lasso, SCAD, MCP) and intermediate κ ranges.
To use this framework to your subsequent mission, compute three portions earlier than you match something: the sample-to-feature ratio (n/p), the situation quantity (κ), and should you’re within the small-n regime, a fast LassoCV α as your SNR proxy. Route by way of the choice information above primarily based in your main goal.
If n/p ≥ 78, use Ridge and spend your tuning funds elsewhere. If n/p < 78 and κ is excessive, use ElasticNet and don’t second-guess it. The one situation the place the selection requires actual thought is low κ with small n, and even there, ElasticNet isn’t a foul reply.
The complete paper, together with all appendix figures, ANOVA tables, and the consolidated resolution flowchart, is offered on ArXiv.
Ahsaas Bajaj is a Machine Studying Tech Lead at Instacart. Benjamin S Knight is a Employees Knowledge Scientist at Instacart.
All photos had been created by the authors.















