L1 ve L2 düzenlemesi arasındaki fark nedir?
sobes.tech yapay zeka
AI'dan gelen yanıt
L1 ve L2 düzenlemeleri, makine öğrenimi modellerinde aşırı uyumu önlemek için kayıp fonksiyonuna ceza ekleyen yöntemlerdir.
-
L1 düzenlemesi (Lasso), model katsayılarının mutlak değerlerinin toplamını kayıp fonksiyonuna ekler:
[ \lambda \sum |w_i| ]
Bu, modellerin seyrek olmasına yol açar: birçok katsayı sıfıra yaklaşır, bu da özellik seçiminde yardımcı olur.
-
L2 düzenlemesi (Ridge), katsayıların karelerinin toplamını ekler:
[ \lambda \sum w_i^2 ]
Bu, katsayıların küçük olmasını sağlar, ancak nadiren tamamen sıfıra ayarlar, bu da modelin istikrarını artırır.
Ana farklar:
- L1, seyrekliği ve özellik seçimlerini teşvik eder.
- L2, katsayıların büyüklüğünü azaltır, modeli daha stabil hale getirir.
Python'da sklearn kullanarak örnek:
from sklearn.linear_model import LogisticRegression
# L1 düzenlemesi
model_l1 = LogisticRegression(penalty='l1', solver='liblinear')
# L2 düzenlemesi
model_l2 = LogisticRegression(penalty='l2')
Hangi yöntemin seçileceği, göreve bağlıdır: özellik seçimi önemliyse — L1, stabilite ve yumuşatma gerekiyorsa — L2.