Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is Elastic Net regularization?
Elastic Net regularization is a technique that combines both L1 (Lasso) and L2 (Ridge) penalties to improve model performance and feature selection.
Click to reveal answer
intermediate
Why do we use Elastic Net instead of just Lasso or Ridge?
Elastic Net is used because it balances the strengths of Lasso (feature selection) and Ridge (handling multicollinearity), making it effective when features are correlated.
Click to reveal answer
beginner
What are the two penalty terms in Elastic Net?
Elastic Net uses a mix of L1 penalty (sum of absolute values of coefficients) and L2 penalty (sum of squared coefficients).
Click to reveal answer
intermediate
How does Elastic Net help with correlated features?
Elastic Net tends to select groups of correlated features together, unlike Lasso which might pick only one, improving model stability.
Click to reveal answer
advanced
Write the Elastic Net loss function formula.
The Elastic Net loss function is: Loss = RSS + α * (λ * L1_penalty + (1 - λ) * L2_penalty), where RSS is residual sum of squares, α controls overall strength, and λ balances L1 and L2 penalties.
Click to reveal answer
What does the L1 penalty in Elastic Net encourage?
AIgnoring correlated features
BShrinking coefficients towards zero but not zeroing them
CSparsity by setting some coefficients to zero
DIncreasing model complexity
✗ Incorrect
L1 penalty encourages sparsity by pushing some coefficients exactly to zero, effectively selecting features.
Which problem does Elastic Net help solve better than Lasso alone?
AHandling correlated features
BFitting non-linear models
CReducing training time
DIncreasing number of features
✗ Incorrect
Elastic Net handles correlated features better by selecting groups of them together.
In Elastic Net, what does the parameter λ control?
AThe learning rate
BThe size of the dataset
CThe number of features
DThe balance between L1 and L2 penalties
✗ Incorrect
λ controls how much weight is given to L1 versus L2 penalties in Elastic Net.
What happens if λ = 1 in Elastic Net?
AIt becomes Lasso regression
BIt becomes Ridge regression
CNo regularization is applied
DModel overfits
✗ Incorrect
When λ = 1, Elastic Net uses only the L1 penalty, which is Lasso regression.
Which of these is NOT a benefit of Elastic Net?
AHandling multicollinearity
BGuaranteeing zero training error
CFeature selection
DImproving model generalization
✗ Incorrect
Elastic Net does not guarantee zero training error; it aims to reduce overfitting and improve generalization.
Explain in your own words how Elastic Net regularization works and why it is useful.
Think about how Lasso and Ridge work and how Elastic Net mixes them.
You got /3 concepts.
Describe the role of the parameters α and λ in Elastic Net regularization.
Consider how these parameters influence the penalty terms.
You got /3 concepts.
Practice
(1/5)
1. What is the main purpose of Elastic Net regularization in machine learning?
easy
A. To only use L1 penalty for feature selection
B. To increase the number of features in the model
C. To combine L1 and L2 penalties for better feature selection and stability
D. To remove all regularization from the model
Solution
Step 1: Understand Elastic Net components
Elastic Net combines L1 (lasso) and L2 (ridge) penalties to balance feature selection and coefficient shrinkage.
Step 2: Identify the purpose
This combination helps select important features while keeping the model stable and avoiding overfitting.
Final Answer:
To combine L1 and L2 penalties for better feature selection and stability -> Option C
Quick Check:
Elastic Net = L1 + L2 penalties [OK]
Hint: Elastic Net mixes L1 and L2 to select features and stabilize [OK]
Common Mistakes:
Thinking Elastic Net only uses L1 or L2 alone
Believing it increases features instead of selecting
Confusing Elastic Net with no regularization
2. Which of the following is the correct way to create an Elastic Net model in Python using scikit-learn with both alpha and l1_ratio explicitly specified?
easy
A. from sklearn.linear_model import ElasticNet
model = ElasticNet(alpha=1.0, l1_ratio=0.5)
B. from sklearn.linear_model import ElasticNet
model = ElasticNet(l1_ratio=1.0)
C. from sklearn.linear_model import ElasticNet
model = ElasticNet(alpha=0.5)
D. from sklearn.linear_model import ElasticNet
model = ElasticNet()
Solution
Step 1: Check ElasticNet import and parameters
ElasticNet requires alpha (overall penalty strength) and l1_ratio (balance between L1 and L2).
Step 2: Validate correct parameter usage
from sklearn.linear_model import ElasticNet
model = ElasticNet(alpha=1.0, l1_ratio=0.5) correctly sets both alpha and l1_ratio, which are needed for ElasticNet.
Final Answer:
from sklearn.linear_model import ElasticNet
model = ElasticNet(alpha=1.0, l1_ratio=0.5) -> Option A
Quick Check:
ElasticNet needs alpha and l1_ratio [OK]
Hint: Always set alpha and l1_ratio when creating ElasticNet [OK]
Common Mistakes:
Omitting l1_ratio parameter
Setting only l1_ratio without alpha
Using ElasticNet without importing
3. Given the following code, what will be the output of print(model.coef_)?
from sklearn.linear_model import ElasticNet
import numpy as np
X = np.array([[1, 2], [3, 4], [5, 6]])
y = np.array([1, 2, 3])
model = ElasticNet(alpha=0.1, l1_ratio=0.7)
model.fit(X, y)
print(model.coef_)
medium
A. [0.4 0.4]
B. [0.5 0.5]
C. [0. 0.]
D. [0. 0.47]
Solution
Step 1: Understand ElasticNet fitting
ElasticNet fits coefficients balancing L1 and L2 penalties; with alpha=0.1 and l1_ratio=0.7, coefficients shrink but remain positive.
Step 2: Check typical coefficient values
Fitting this simple data yields coefficients [0. 0.47] due to L1 sparsity (first coef 0 from OLS) and shrinkage on second.
4. Identify the best practice issue in this Elastic Net usage and how to fix it:
from sklearn.linear_model import ElasticNet
model = ElasticNet(alpha=0.5)
model.fit(X, y)
Assuming X and y are defined.
medium
A. Missing l1_ratio parameter; add l1_ratio between 0 and 1
B. alpha must be zero; set alpha=0
C. ElasticNet does not have fit method; use fit_transform
D. X and y must be lists, not arrays
Solution
Step 1: Check ElasticNet parameters
ElasticNet requires l1_ratio to balance L1 and L2 penalties; default is 0.5 but best to specify explicitly.
Step 2: Fix by adding l1_ratio
Add l1_ratio parameter with a value between 0 and 1 to avoid ambiguity and ensure correct regularization.
Final Answer:
Missing l1_ratio parameter; add l1_ratio between 0 and 1 -> Option A
Quick Check:
ElasticNet needs l1_ratio set [OK]
Hint: Always specify l1_ratio with alpha in ElasticNet [OK]
Common Mistakes:
Assuming alpha=0.5 is invalid
Using fit_transform instead of fit
Thinking X and y must be lists
5. You want to build a model that selects important features but also keeps coefficients stable to avoid overfitting. Which Elastic Net parameters should you adjust and how?
hard
A. Set alpha to zero and l1_ratio to 1 to use only L1 penalty
B. Increase alpha to strengthen regularization and set l1_ratio near 0.5 to balance L1 and L2
C. Decrease alpha and set l1_ratio to zero to use only L2 penalty
D. Set alpha high and l1_ratio to zero to remove all penalties
Solution
Step 1: Understand parameter roles
Alpha controls overall penalty strength; higher alpha means stronger regularization. L1_ratio balances L1 (feature selection) and L2 (stability).
Step 2: Choose parameters for feature selection and stability
Increasing alpha helps reduce overfitting. Setting l1_ratio near 0.5 balances feature selection and coefficient stability.
Final Answer:
Increase alpha to strengthen regularization and set l1_ratio near 0.5 to balance L1 and L2 -> Option B
Quick Check:
Alpha up + l1_ratio ~0.5 = balanced Elastic Net [OK]
Hint: Boost alpha and balance l1_ratio around 0.5 for best results [OK]