Sobes.tech
Middle — Senior

Aký je rozdiel medzi L1 a L2 regularizáciou?

sobes.tech AI

Odpoveď od AI

L1 a L2 regularizácia sú metódy na prevenciu preučenia v modeloch strojového učenia, ktoré pridávajú trest k funkcii straty.

  • L1 regularizácia (Lasso) pridáva k funkcii straty súčet absolútnych hodnôt koeficientov modelu:

    [ \lambda \sum |w_i| ]

    To vedie k riedkym modelom — mnoho koeficientov smeruje k nule, čo pomáha pri výbere vlastností.

  • L2 regularizácia (Ridge) pridáva súčet štvorcov koeficientov:

    [ \lambda \sum w_i^2 ]

    To spôsobuje, že koeficienty sú malé, ale zriedka ich úplne nuluje, čím zlepšuje stabilitu modelu.

Hlavné rozdiely:

  • L1 podporuje riedkosť a výber vlastností.
  • L2 znižuje veľkosť koeficientov, čím robí model stabilnejším.

Príklad v Pythone s sklearn:

from sklearn.linear_model import LogisticRegression

# L1 regularizácia
model_l1 = LogisticRegression(penalty='l1', solver='liblinear')

# L2 regularizácia
model_l2 = LogisticRegression(penalty='l2')

Výber medzi nimi závisí od úlohy: ak je dôležitý výber vlastností — L1, ak je potrebná stabilita a vyhladzovanie — L2.