Middle+
Povedajte o regularizaciji v klasičnih algoritmih ML: L1 in L2. Kakšne so njihove lastnosti in razlike?
sobes.tech AI
Odpoveď od AI
L1 a L2 sú dva typy regularizácie, ktoré pridávajú trest k funkcii straty, aby sa zabránilo nadmernému prispôsobeniu.
-
L1 regularizácia (Lasso) pridáva súčet absolútnych hodnôt koeficientov: ( \lambda \sum |w_i| ). Podporuje riedke riešenia modelu, teda veľa koeficientov sa stáva nulovými, čo pomáha pri výbere vlastností.
-
L2 regularizácia (Ridge) pridáva súčet štvorcov koeficientov: ( \lambda \sum w_i^2 ). Nefaktorizuje koeficienty na nulu, iba ich znižuje, čím robí model odolnejším voči šumu.
Rozdiely:
- L1 môže viesť k riedkym riešeniam, čo je užitočné pri výbere vlastností.
- L2 vyhladzuje váhy, znižuje ich, ale na nulu ich nedáva.
Príklad v lineárnej regresii:
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)