Middle — Senior
Неге L1 регуляциясы кей бир салмактарды нөлгө коюп жатат, ал эми L2 — жок?
sobes.tech AI
AIден жооп
L1-регуляризациясы (Lasso) жоготуу функциясына салмактардын абсолют маанилеринин жыйындысын (||w||₁) кошот, бул оптимизациянын бетинде бурчтуу чекиттердин пайда болушуна алып келет. Бул моделдин кээ бир салмактары так нөлгө тең болушун, башкача айтканда, аларды нөлгө коюуну илгерилетет, моделдин сирек болушун камсыз кылат.
L2-регуляризациясы (Ridge) салмактардын квадратынын жыйындысын (||w||₂²) кошот, ал тегиз парабола бетин түзөт жана бурчсуз болот. Натыйжада, салмактар азая берет, бирок так нөлгө айланбайт, анткени оптимизация кичинекей, бирок нөлгө жетпеген маанилерге умтулат.
Мисал:
import numpy as np
from sklearn.linear_model import Lasso, Ridge
X = np.array([[1, 2], [3, 4], [5, 6]])
y = np.array([1, 2, 3])
lasso = Lasso(alpha=0.1)
lasso.fit(X, y)
print('L1 салмактар:', lasso.coef_)
ridge = Ridge(alpha=0.1)
ridge.fit(X, y)
print('L2 салмактар:', ridge.coef_)
Бул жерде, L1 кээ бир салмактарды нөлгө коюшу мүмкүн, ал эми L2 алардын өлчөмүн гана азайтат.