Lasso regresyon, çok sayıda açıklayıcı değişken içeren doğrusal regresyon modellerinde bazı katsayıları tam olarak sıfıra indirerek hem tahmin yapan hem de değişken seçimi gerçekleştiren bir yöntemdir. Modeli kurarken hata terimine katsayıların mutlak değerleri toplamına dayalı bir ceza eklenir. Böylece gereksiz değişkenlerin katsayıları sıfırlanabilir; sıfır olmayan katsayılar ise modelde tutulur.
Standart doğrusal regresyon, tahmin hatasını en aza indirmeye çalışır. Lasso ise bunu katsayı büyüklüklerini de sınırlayarak yapar. Temel amaç şu iki unsuru birlikte dengelemektir:
Lasso özellikle açıklayıcı değişken sayısının fazla, fakat bunların yalnızca bir bölümünün hedef değişkenle anlamlı ilişki taşıdığı durumlarda kullanışlıdır. Örneğin konut fiyatını tahmin ederken yüzlerce özellik bulunabilir; Lasso bazı özelliklerin katsayısını sıfırlayarak daha küçük ve yorumlanabilir bir model oluşturabilir.
Aşağıdaki örnek varsayımsaldır. Üç açıklayıcı değişken kullanır ve Lasso modelinin katsayılarından hangilerinin modelde tutulduğunu gösterir. Çalıştırmak için Python ile birlikte
Buradaki
Bu sonuç, sıfır katsayılı değişkenin gerçek hayatta kesinlikle önemsiz olduğunu kanıtlamaz. Değişkenler birbirine çok benziyorsa Lasso bunlardan yalnızca birini seçebilir veya seçim, kullanılan
Hangi yöntemin daha uygun olduğu, öncelikle modelden değişken seçimi bekleyip beklemediğinize bağlıdır. Aşağıdaki karşılaştırma bu seçimi netleştirir.
Bu fark nedeniyle Lasso her zaman Ridge'den daha iyi değildir. Bir grup değişken aynı bilgiyi taşıyorsa Lasso bunlardan bazılarını sıfırlayarak seçim yapabilir; Ridge ise bu değişkenlerin etkisini daha dengeli biçimde küçültebilir. Tahmin doğruluğu öncelikliyse iki yöntemi de aynı doğrulama düzeniyle karşılaştırmak gerekir.
Sonuçları yorumlarken üç noktayı ayırın:
Lasso regresyon nasıl çalışır?
Standart doğrusal regresyon, tahmin hatasını en aza indirmeye çalışır. Lasso ise bunu katsayı büyüklüklerini de sınırlayarak yapar. Temel amaç şu iki unsuru birlikte dengelemektir:
- Verilerin gerçek değerlerine yakın tahminler üretmek.
- Modeldeki katsayıların mutlak değerleri toplamını küçük tutmak.
alpha veya λ ile gösterilir. Ceza arttıkça daha fazla katsayı sıfıra yaklaşır veya sıfırlanır. Ancak cezanın fazla artırılması önemli değişkenlerin de modelden çıkarılmasına ve modelin yetersiz kalmasına yol açabilir.Lasso özellikle açıklayıcı değişken sayısının fazla, fakat bunların yalnızca bir bölümünün hedef değişkenle anlamlı ilişki taşıdığı durumlarda kullanışlıdır. Örneğin konut fiyatını tahmin ederken yüzlerce özellik bulunabilir; Lasso bazı özelliklerin katsayısını sıfırlayarak daha küçük ve yorumlanabilir bir model oluşturabilir.
Küçük bir Python örneği
Aşağıdaki örnek varsayımsaldır. Üç açıklayıcı değişken kullanır ve Lasso modelinin katsayılarından hangilerinin modelde tutulduğunu gösterir. Çalıştırmak için Python ile birlikte
numpy ve scikit-learn paketlerinin kurulu olması gerekir.
Python:
import numpy as np
from sklearn.linear_model import Lasso
from sklearn.pipeline import make_pipeline
from sklearn.preprocessing import StandardScaler
X = np.array([
[1, 10, 5],
[2, 11, 5],
[3, 12, 5],
[4, 13, 5],
[5, 14, 5],
[6, 15, 5]
])
y = np.array([2, 4, 6, 8, 10, 12])
model = make_pipeline(
StandardScaler(),
Lasso(alpha=0.1)
)
model.fit(X, y)
lasso = model.named_steps["lasso"]
print(lasso.coef_)
Buradaki
X matrisi açıklayıcı değişkenleri, y ise tahmin edilmek istenen hedefi içerir. StandardScaler değişkenleri benzer ölçeğe getirir; bu önemlidir çünkü Lasso cezası katsayıların büyüklüğüne uygulanır. Çıktıdaki sıfır katsayı, ilgili değişkenin bu model tarafından kullanılmadığını gösterir. Sıfır olmayan katsayı ise değişkenin tahminde tutulduğunu gösterir.Bu sonuç, sıfır katsayılı değişkenin gerçek hayatta kesinlikle önemsiz olduğunu kanıtlamaz. Değişkenler birbirine çok benziyorsa Lasso bunlardan yalnızca birini seçebilir veya seçim, kullanılan
alpha değerine göre değişebilir.Lasso, Ridge ve normal doğrusal regresyon farkı
Hangi yöntemin daha uygun olduğu, öncelikle modelden değişken seçimi bekleyip beklemediğinize bağlıdır. Aşağıdaki karşılaştırma bu seçimi netleştirir.
| Yöntem | Ceza yaklaşımı | Katsayı davranışı | Ne zaman tercih edilir? |
|---|---|---|---|
| Normal doğrusal regresyon | Ceza yoktur | Katsayılar genellikle sıfır olmaz | Değişken sayısı makulse ve tüm değişkenleri modelde tutmak istiyorsanız |
| Ridge regresyon | Katsayıların kareleri cezalandırılır | Katsayıları küçültür, genellikle sıfırlamaz | Birbirine benzer veya yüksek korelasyonlu değişkenleri birlikte korumak istiyorsanız |
| Lasso regresyon | Katsayıların mutlak değerleri cezalandırılır | Bazı katsayıları tam olarak sıfırlayabilir | Değişken seçimi ve daha sade bir model istiyorsanız |
Alpha değeri nasıl değerlendirilir?
alpha küçükse model normal doğrusal regresyona yaklaşır ve daha fazla değişkeni korur. alpha büyükse ceza güçlenir; daha fazla katsayı sıfırlanabilir. En uygun değer, yalnızca katsayıların görünümüne bakılarak değil, eğitim verisinden ayrı tutulan doğrulama verisi veya çapraz doğrulama ile seçilmelidir.Sonuçları yorumlarken üç noktayı ayırın:
- Tahmin hatası düşükse modelin veriyi tahmin etme performansı iyi olabilir; bu, nedensel bir ilişki kanıtlamaz.
- Katsayının sıfırlanması, değişkenin her koşulda etkisiz olduğunu göstermez; seçimin kullanılan veri ve ceza değerine bağlı olduğu unutulmamalıdır.
- Katsayıların büyüklüğünü karşılaştıracaksanız değişkenleri aynı ölçekte kullanın veya modelden önce ölçeklendirin.