Middle — Senior
Niyə L1 tənzimləməsi bəzi çəkiləri sıfıra endirir, L2 isə etməz?
sobes.tech Süni İntellekt
AI-dan cavab
L1-regulyasiya (Lasso) itki funksiyasına çəkilərin mütləq dəyərlərinin cəmi (||w||₁) əlavə edir, bu da optimallaşdırma səthində kənar nöqtələrin yaranmasına səbəb olur. Bu, bəzi çəkilərin tam olaraq sıfır olmasını təşviq edir, yəni onları sıfırlayır və modelin səpəliliyini təmin edir.
L2-regulyasiya (Ridge) çəkilərin kvadratlarının cəməsini (||w||₂²) əlavə edir, bu da hamar parabola səthi yaradır və kənarları olmayan bir səth formalaşdırır. Nəticədə, çəkilər kiçilir, lakin nadir hallarda tam olaraq sıfır olur, çünki optimallaşdırma kiçik, lakin sıfır olmayan dəyərlərə yönəlib.
Nümunə:
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 çəkilər:', lasso.coef_)
ridge = Ridge(alpha=0.1)
ridge.fit(X, y)
print('L2 çəkilər:', ridge.coef_)
Burada, L1 bəzi çəkiləri sıfıra endirə bilər, L2 isə onları yalnız azaldır.