Bu zaten oldukça eski bir soru ama bu arada cevapların çoğunun oldukça modası geçmiş olduğunu düşünüyorum (ve doğru cevap olarak kontrol edilenin yanlış olduğu da açık).
İlk olarak, iyi tahmin performansı elde etmek açısından, LASSO'nun her zaman adım adım daha iyi olduğu evrensel olarak doğru değildir. Hastie ve arkadaşlarının (2017) "En İyi Alt Küme Seçimi, İleriye Doğru Kademeli Seçim ve Kement Seçiminin Genişletilmiş Karşılaştırmaları" makalesi , ileriye doğru kademeli ileri, LASSO ve rahat LASSO gibi bazı LASSO çeşitlerinin yanı sıra en iyi alt kümenin geniş bir karşılaştırmasını sunar. adım adım LASSO'dan bazen daha iyi olduğunu gösterin. LASSO'nun bir çeşidi olsa da - rahat LASSO - en geniş koşullar altında en yüksek model tahmin doğruluğunu üreten modeldi. Hangisinin en iyisi olduğu sonucu, en çok ne düşündüğünüze bağlıdır, örneğin, bunun en yüksek tahmin doğruluğu mu olacağı yoksa en düşük yanlış pozitif değişkenlerin seçilip seçilmediği.
Birçoğu LASSO'dan daha iyi olsa da, bir çok seyrek öğrenme yöntemi hayvanat bahçesi var. Örneğin, Meinhausen'in rahat LASSO'su , uyarlanabilir LASSO ve SCAD ve MCPncvreg
, standart LASSO'dan daha az önyargılı olan ve tercih edilenler gibi pakette uygulanan regresyonun cezalandırılmasını sağlamıştır. Ayrıca, en iyi tahmin performansına sahip mutlak en saf çözümle ilgileniyorsanız, L0 cezalandırılmış regresyon (aka en iyi alt küme, yani, LASSO'daki katsayıların mutlak değerinin toplamına karşılık sıfır olmayan katsayıların sayısının cezalandırılması temelinde) LASSO'dan daha iyidir, örneğin, bir yinelemeli uyarlamalı çıkıntı prosedürü kullanarak L0 cezalı GLM'lere yaklaşan l0ara
pakete bakınız.Ve LASSO farklı de son derece doğrudaş değişkenler ve çok iyi çalıştığı L0Learn
paketi kullanılarak L0 ceza regresyon modelleri sığabilecek, iniş koordinat doğrudaşlığa düzene L2 cezası ile potansiyel olarak kombinasyon halinde.
Öyleyse asıl sorunuza geri dönmek için: neden LASSO'yu değişken seçimi için kullanmıyorsunuz? :
(1) katsayılar çok taraflı olacağından, rahat LASSO, MCP ve SCAD cezalandırılmış regresyonda iyileştirilmiş ve tamamen L0 cezalandırılmış regresyonda (tam bir kehanet özelliğine sahip, yani nedensel değişkenleri ve geri dönüşü alabilecek şekilde) tamamen çözülmüş olacağı için yansız katsayılar, p> n durumlar için)
(2) L0 cezalandırılmış regresyondan çok daha fazla yanlış pozitif üretme eğiliminde olduğu için (testlerimde l0ara
en iyi performansı veren, yani yinelemeli uyarlamalı sırt, ardından L0Learn
)
(3) collinear değişkenleriyle iyi baş edemediği için (esasen sadece collinear değişkenlerinden birini seçecektir) - yinelemeli adaptif sırt / / l0ara
ve L0L2 cezaları bununla L0Learn
başa çıkmada çok daha iyidir.
Tabii ki, genel olarak, en uygun tahmin performansını elde etmek için düzenlileştirme parametrelerinizi ayarlamak için çapraz doğrulama kullanmanız gerekecek, ancak bu bir sorun değil. Parametrelerinize yüksek boyutsal çıkarımlar bile yapabilir ve parametrik olmayan önyükleme yoluyla isterseniz bile katsayılarınızdaki% 95 güven aralığını hesaplayabilirsiniz (hatta her önyükleme veri setinde çapraz doğrulama yaparsanız bile optimal regülasyonun seçimindeki belirsizliği hesaba katabilirsiniz) , ama o zaman oldukça yavaş olur).
Hesaplamalı LASSO, btw'ye aşamalı olarak yaklaşmaktan daha yavaş değildir, kesinlikle LASSO düzenlileştirmenizi optimize etmek için sıcak başlangıçlar kullanan yüksek derecede optimize edilmiş kod kullanan bir kod kullanmıyorsa (kendinizi fs
adım adım ileriye ve lasso
paketteki LASSO komutunu kullanarak karşılaştırabilirsiniz bestsubset
). Kademeli yaklaşımların hala popüler olması gerçeğinin muhtemelen birçoğunun hatalı modeline inanmasıyla ilgisi olmalı, o zaman nihai modelinizi koruyabilir ve bunun p değerleri ile ilişkili olduğunu rapor edebilirsiniz - ki bu aslında doğru bir şey değildir, çünkü bu doğru değildir. Model seçiminizin getirdiği belirsizliği göz önünde bulundurarak, iyimser p değerleri ile sonuçlandı.
Bu yardımcı olur umarım?