L1 ve L2 regularizasyon, makine öğrenmesi modellerinde overfitting'i önlemek ve modelin genelleme yeteneğini artırmak için kullanılan iki popüler yöntemdir. L1 (Lasso) mutlak değer cezası ekleyerek bazı katsayıları sıfır yapar, L2 (Ridge) ise kare cezası ekleyerek katsayıları sıfıra yaklaştırır. Hangi yöntemi seçeceğiniz, veri setinizin özellik sayısı, özelliklerin anlamlılığı ve modelin yorumlanabilirliği gibi faktörlere bağlıdır.
L1 ve L2 Regularizasyon Nedir?
Regularizasyon, modelin karmaşıklığını cezalandırarak aşırı öğrenmeyi engelleyen bir tekniktir. Kayıp fonksiyonuna bir ceza terimi eklenir. L1 regularizasyon (Lasso) ceza olarak katsayıların mutlak değerlerinin toplamını (λ∑|wi|) kullanırken, L2 regularizasyon (Ridge) karelerinin toplamını (λ∑wi2) kullanır. Bu fark, katsayıların davranışını kökten değiştirir.
L1 vs L2: Temel Farklar Nelerdir?
İki yöntem arasındaki en belirgin fark, L1'in katsayıları sıfıra çekme eğilimindeyken L2'nin sıfıra yaklaştırmasıdır. Bu, L1'i otomatik özellik seçimi (feature selection) için ideal kılar. Aşağıdaki tabloda temel farkları özetliyoruz:
| Özellik | L1 (Lasso) | L2 (Ridge) |
|---|---|---|
| Cezalandırma | Mutlak değer toplamı | Kare toplamı |
| Katsayılar | Sıfır yapabilir (sparse) | Sıfıra yaklaşır, nadiren sıfır |
| Feature selection | Var (otomatik) | Yok |
| Yorumlanabilirlik | Yüksek (az özellik) | Orta (tüm özellikler kalır) |
| Çoklu bağlantı (multicollinearity) | Birini seçer, diğerini sıfırlar | Tümünü dengeler |
L1 yöntemi, özellik sayısının çok fazla olduğu ve yalnızca anlamlı olanları seçmek istediğiniz durumlarda idealdir. Bu noktada Özellik Seçimi (Feature Selection) rehberimizdeki embedded yöntemler arasında Lasso da yer alır.
Ne Zaman L1 (Lasso) Kullanmalısınız?
- Yüksek boyutlu veri: Özellik sayısı gözlem sayısından fazlaysa, L1 seyrek çözümler üreterek modeli basitleştirir.
- Anlamlı özellikleri seçmek: Sadece en önemli özelliklerin kalmasını istiyorsanız L1 otomatik seçim yapar.
- Yorumlanabilir modeller: Katsayıları sıfırlanan özellikler elenir, böylece model daha anlaşılır olur.
Ancak L1, özellik sayısı çok fazla olduğunda kararlılık sorunları yaşayabilir. Ayrıca bir grup korele özellikten yalnızca birini seçer, diğerlerini atar.
Ne Zaman L2 (Ridge) Kullanmalısınız?
- Çoklu bağlantı (multicollinearity) durumu: Özellikler birbiriyle yüksek korelasyonluysa L2 hepsini dengeler ve katsayıları küçültür.
- Tüm özelliklerin anlamlı olduğu durum: Veri setinizdeki tüm özelliklerin modele katkı sağladığını düşünüyorsanız L2 tercih edilmelidir.
- Modelin tahmin performansı öncelikliyse: L2 genellikle daha düşük varyanslı ve daha kararlı tahminler üretir.
L2, katsayıları sıfıra yaklaştırdığı için özellikleri tamamen elemez, bu nedenle model yorumlanabilirliği L1 kadar yüksek olmayabilir. Özellik seçimi ihtiyacınız varsa L1'i düşünün.
Elastic Net: L1 ve L2'nin Birleşimi
Elastic Net, L1 ve L2 cezalarını bir arada kullanan bir yöntemdir. Hem özellik seçimi yapar (L1 sayesinde) hem de korele özellikleri gruplar halinde tutar (L2 sayesinde). Özellik sayısının gözlem sayısından çok fazla olduğu veya özelliklerin gruplar halinde korele olduğu durumlarda Elastic Net, L1 veya L2'ye göre daha iyi sonuç verebilir. Elastic Net'in iki hiperparametresi vardır: α (L1 oranı) ve λ (ceza şiddeti).
Regularizasyon Hiperparametreleri Nasıl Seçilir?
Her iki yöntemde de λ (lambda) hiperparametresinin doğru seçilmesi kritiktir. Genellikle çapraz doğrulama (cross-validation) ile en uygun λ değeri bulunur. scikit-learn'de LassoCV ve RidgeCV sınıfları bunu otomatik yapar. Hiperparametre optimizasyonuyla ilgili daha fazla bilgi için Hiperparametre Optimizasyonu rehberimize göz atabilirsiniz.
L1 için λ büyüdükçe daha fazla katsayı sıfırlanır; L2 için katsayılar daha da küçülür. λ çok büyük olursa model eksik öğrenir (underfitting). Veri setinize uygun λ aralığını bulmak için logaritmik ölçekte denemeler yapın.
Pratik Öneriler ve Sık Yapılan Hatalar
- Özellik ölçekleme: Regularizasyon, özelliklerin ölçeğine duyarlıdır. L1 ve L2 uygulamadan önce tüm özellikleri standartlaştırın (ortalama 0, varyans 1).
- Veri dengesizliğinde dikkat: Sınıflandırma problemlerinde sınıflar dengesizse, regularizasyon tek başına yeterli olmayabilir. Veri dengesizliği çözümleri ile birlikte kullanılabilir.
- Birden fazla yöntemi dene: L1, L2 ve Elastic Net'i karşılaştırarak hangisinin sizin verinizde daha iyi çalıştığını görün.
- λ değerini çapraz doğrulama ile seç: Rastgele bir λ kullanmak yerine, bir dizi λ değerini deneyip en düşük hata oranını vereni seçin.
Unutmayın: Regularizasyon, modelin karmaşıklığını kontrol etmenin güçlü bir yoludur ancak doğru uygulanmadığında model performansını düşürebilir. Her zaman modelinizi doğrulama seti üzerinde test edin.
Sık Sorulan Sorular
L1 regularizasyon özellik seçimini nasıl yapar?
L1 (Lasso) katsayılara mutlak değer cezası ekleyerek bazı katsayıları tam olarak sıfır yapar. Sıfır olan katsayılar, ilgili özelliklerin model dışı bırakılması anlamına gelir, böylece otomatik özellik seçimi gerçekleşir.
L2 regularizasyon neden katsayıları sıfıra yaklaştırır ama sıfır yapmaz?
L2 (Ridge) kare cezası kullanır. Kare fonksiyonu türevlenebilir ve katsayıları sıfıra yaklaştıracak şekilde cezalandırır, ancak katsayıların tam olarak sıfır olması için gerekli koşulu sağlamaz. Bu nedenle L2 seyrek çözümler üretmez.
Elastic Net hangi durumlarda L1 veya L2'ye tercih edilmelidir?
Elastic Net, özellik sayısının gözlem sayısından çok fazla olduğu veya özelliklerin gruplar halinde korele olduğu durumlarda idealdir. L1 gruplardan yalnızca bir özellik seçerken, Elastic Net tüm grubu birlikte seçebilir.
Regularizasyon parametresi λ (lambda) nasıl belirlenir?
En yaygın yöntem çapraz doğrulamadır. λ için logaritmik ölçekte bir dizi değer belirlenir (örneğin 10^{-3} ile 10^3 arası) ve her λ için çapraz doğrulama hatası hesaplanır. En düşük hatayı veren λ seçilir. scikit-learn'deki LassoCV ve RidgeCV bu işlemi otomatik yapar.
Ridge regresyon L2 regularizasyon ile aynı mıdır?
Evet, Ridge regresyon ve L2 regularizasyon aynı yöntemi ifade eder. Ridge, doğrusal regresyona L2 cezası ekleyen modeldir. L2 regularizasyon ayrıca SVM, lojistik regresyon ve sinir ağları gibi diğer modellerde de kullanılabilir.






