Sobes.tech
Middle — Senior

Mi a különbség az L1 és L2 regularizáció között?

sobes.tech MI

Válasz az MI-től

Az L1 és L2 regularizációk olyan módszerek a gépi tanulási modellek túlillesztésének megelőzésére, amelyek a veszteségfüggvényhez büntetést adnak hozzá.

  • L1 regularizáció (Lasso) hozzáadja a modell koefficiensének abszolút értékeinek összegét a veszteségfüggvényhez:

    [ \lambda \sum |w_i| ]

    Ez ritka modellekhez vezet — sok koefficiens közelít a nullához, segítve a jellemzők kiválasztását.

  • L2 regularizáció (Ridge) hozzáadja a koefficiens négyzetének összegét:

    [ \lambda \sum w_i^2 ]

    Ez kicsi értékűvé teszi a koefficienseket, de ritkán nullázza őket teljesen, javítva a modell stabilitását.

Fő különbségek:

  • Az L1 a ritkaságot és a jellemzők kiválasztását támogatja.
  • Az L2 csökkenti a koefficiensek nagyságát, stabilabbá téve a modellt.

Példa Pythonban sklearn használatával:

from sklearn.linear_model import LogisticRegression

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

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

A közöttük való választás a feladattól függ: ha a jellemzők kiválasztása fontos — L1, ha stabilitás és simítás szükséges — L2.