Middle+
14
Расскажите про регуляризацию в классических алгоритмах ML: L1 и L2. В чём их свойства и отличия?
Companies where asked
Answer from AI
sobes.tech AI
L1 и L2 — это два типа регуляризации, которые добавляют штраф к функции потерь, чтобы предотвратить переобучение.
-
L1-регуляризация (Lasso) добавляет сумму абсолютных значений коэффициентов: ( \lambda \sum |w_i| ). Она способствует разреженности модели, то есть многие коэффициенты становятся равны нулю, что помогает в отборе признаков.
-
L2-регуляризация (Ridge) добавляет сумму квадратов коэффициентов: ( \lambda \sum w_i^2 ). Она не обнуляет коэффициенты, а лишь уменьшает их величину, делая модель более устойчивой к шуму.
Отличия:
- L1 может приводить к разреженным решениям, что удобно для отбора признаков.
- L2 сглаживает веса, уменьшая их, но не обнуляет.
Пример в линейной регрессии:
from sklearn.linear_model import Ridge, Lasso
ridge = Ridge(alpha=1.0) # L2
lasso = Lasso(alpha=1.0) # L1
ridge.fit(X_train, y_train)
lasso.fit(X_train, y_train)