Lojistik regresyon için düzenlileştirme yöntemleri


42

Ridge, Lasso, ElasticNet gibi yöntemler kullanılarak yapılan düzenlileştirme doğrusal regresyon için oldukça yaygındır. Aşağıdakileri bilmek istedim: Bu yöntemler lojistik regresyon için uygulanabilir mi? Öyleyse, lojistik regresyon için kullanılması gereken farklılıklar var mı? Bu yöntemler uygulanabilir değilse, lojistik regresyon nasıl düzenlenir?


Belirli bir veri kümesine mi bakıyorsunuz ve bu nedenle verileri hesaplama için izlenebilir hale getirmeyi düşünmelisiniz, örneğin ilk hesaplamanın başarılı olması için verilerin seçilmesi, ölçeklenmesi ve dengelenmesi. Ya da bu hesaplama against0 için belirli bir veri kümesine olmadan hows ve whys de daha genel bir bakış (nedir?
Philip Oakley

1
Bu düzenlileşmenin nasıl ve niçin olduğuna daha genel bir bakış. Düzenlileştirme metotları için tanıtım metinleri (sırt, Kement, Elastiknet vb.) Özellikle karşılaştığım lineer regresyon örnekleri. Tek bir tanesi özellikle lojistikten söz etmedi, bu yüzden soru.
TAK

1
Lojistik Regresyon, kimliksiz bir link işlevi kullanan bir GLM şeklidir, hemen hemen her şey geçerlidir.
Firebug

1
Andrew Ng'in konuyla ilgili videosuna rastladın mı ?
Antoni Parellada

Sırt, kement ve elastik net regresyon popüler seçeneklerdir, ancak bunlar sadece düzenleme seçenekleri değildir. Örneğin, düzleştirme matrisleri büyük ikinci türevlere sahip işlevleri cezalandırır, böylece normalleştirme parametresi, verileri aşan ve uygun olmayan bir taviz olan bir regresyonu "çevirmenizi" sağlar. Sırt / lasso / elastik net regresyonda olduğu gibi, bunlar lojistik regresyon ile de kullanılabilir.
Monica

Yanıtlar:


49

Evet, Düzenleme, hem regresyon hem de sınıflandırma dahil olmak üzere tüm doğrusal yöntemlerde kullanılabilir. Size, regresyon ve sınıflandırma arasında çok fazla bir fark olmadığını göstermek isterim : tek fark, kayıp fonksiyonudur.

Spesifik olarak, lineer yöntemin üç ana bileşeni vardır: Kayıp Fonksiyonu, Düzenleme, Algoritmalar . Kayıp fonksiyonu artı düzenlileştirme, optimizasyon formundaki problemde amaç fonksiyonu ve algoritma bunu çözmenin yolu (amaç fonksiyonu dışbükey, bu yazıda tartışmayacağız).

Kayıp fonksiyonu ayarında hem regresyon hem de sınıflandırma durumlarında farklı kayıplar olabilir. Örneğin, en küçük kareler ve en az mutlak sapma kaybı regresyon için kullanılabilir. Ve matematik temsilidir ve L ( y , y ) = | Y - y | . (Fonksiyon L ( ) iki sayısal alan üzerinde tanımlanır, y kesin referans değer veL(y^,y)=(y^-y)2L(y^,y)=|y^-y|L()y öngörülen değerdir.)y^

Diğer taraftan, lojistik kayıp ve menteşe kaybı sınıflandırma için kullanılabilir. Matematik temsilleridir ve L ( y , y ) = ( 1 - y y ) + . (Burada, Y yer gerçeği de etiket { - 1 , 1 } ve YL(y^,y)=günlük(1+tecrübe(-y^y))L(y^,y)=(1-y^y)+y{-1,1}y^"puan" tahmin edilir. Tanımı y biraz sıradışı, yorum bölümüne bakın.)y^

Düzenleme ayarlarında, L1 ve L2 düzenlenmesi hakkında bahsettiniz, bu yazıda tartışılmayacak başka biçimler de var.

Bu nedenle, yüksek düzeyde bir doğrusal yöntem

küçültmekw   Σx,yL(wx,y)+λh(w)

Kayıp işlevini regresyon ayarından lojistik kaybına değiştirirseniz, regresyonda lojistik regresyon elde edersiniz.

Örneğin, sırt regresyonunda, optimizasyon problemi

küçültmekw   Σx,y(wx-y)2+λww

Kayıp fonksiyonunu lojistik kayıp ile değiştirirseniz, sorun

küçültmekw   Σx,ygünlük(1+tecrübe(-wxy))+λww

Burada L2 düzenli hale getirme ile lojistik regresyon var.


Oyuncak sentezlenmiş ikili veri setinde böyle gözüküyor. Soldaki rakam, doğrusal modeldeki verilerdir (karar sınırı). Sağdaki şekil objektif fonksiyon dağılımıdır (x ve y ekseni 2 parametrenin değerlerini temsil eder.). Veri seti iki Gaussian'dan üretildi ve lojistik regresyon modeline müdahale etmeden uyduk, bu yüzden sağ alt şekilde görselleştirebileceğimiz sadece iki parametre var.

Mavi çizgiler, düzenli hale getirilmemiş lojistik regresyondur ve siyah çizgiler, L2 düzenli hale getirilmiş lojistik regresyondur. Sağ rakamdaki mavi ve siyah noktalar objektif fonksiyon için en uygun parametrelerdir.

Bu deneyde büyük bir belirledik , böylece iki katsayının 0'a yakın olduğunu görebilirsiniz . Ek olarak, konturdan düzenlileştirme teriminin baskın olduğunu ve tüm fonksiyonun ikinci dereceden bir kase gibi olduğunu gözlemleyebiliriz.λ0

görüntü tanımını buraya girin

İşte L1 düzenlenmesi ile başka bir örnek.

görüntü tanımını buraya girin

Unutmayın, bu deneyin amacı, regülasyonun lojistik regresyonda nasıl çalıştığını göstermeye çalışmakta, ancak regüle edilmiş modelin daha iyi olduğunu tartışmamaktır.


İşte L1 ve L2 düzenlenmesi ve bunun lojistik kayıp hedefini nasıl etkilediği ile ilgili bazı animasyonlar. Her karede, başlık düzenleme türünü ve , arsa objektif fonksiyondur (lojistik kayıp + düzenlileştirme) dağılımı. Her karede normalleştirme parametresini λ arttırırız ve en uygun çözüm kareye göre 0 kareye düşer.λλ0

görüntü tanımını buraya girin görüntü tanımını buraya girin


Bazı gösterim açıklamaları. ve x sütun vektörleridir, y bir skalerdir. Lineer model Yani y = f ( x ) = a x . Intercept terimini dahil etmek istiyorsak , verilere sütun olarak 1 ekleyebiliriz .wxyy^=f(x)=wx1

yy{-1,1}

y^=wxy^yy^=wx{-1,1}y^

y{0,1}

Kod, diğer cevabımda burada bulunabilir.

Lojistik regresyonun mükemmel ayrılma durumu için neden işe yaramayacağına dair sezgisel bir açıklama var mı? Ve neden düzenlileştirme eklemek sorunu çözecektir?


4
wTxf(x)

@ Hxd1011 cevabı için teşekkürler, kontur grafiğindeki düz siyah çizgilerin neyi temsil ettiğini açıklayabilir misiniz? Daha kesin olmak gerekirse, (açıkladığınız gibi) x ve y ekseninin kullandığımız 2 parametreyi gösterdiğini biliyorum. Ama ne katı çizgiler ve 8000, 10000, 12000 gibi sayıları hakkında. Teşekkürler!
Jespar


12

l*(β)=l(β)+12ln|ben(β)|
ben(β)=1nΣbenpben(1-pben)xbenxben'{(yben,xben)={(1,1),(0,0)}sözde sonsuz ML tahminler üretmek ve olurdu glmiçinde Rhala soruna duyarlı olduğunu, inanıyorum.

1
Evet, bunun için R paketlerini logistf veya brglm kullanabilirsiniz! Belki de söz etmeye değer ...
Tom Wenseleers

ben(β)

Acı, yavaş, gerçekten, @appletree
StasK

h/21/2

6

Evet, lojistik regresyon için geçerlidir. R'de, glmnet kullanarak, lojistik regresyon için "binom" olan uygun aileyi belirtmeniz yeterlidir. Verilerinize ve ele aldığınız soruna bağlı olarak belirleyebileceğiniz birkaç kişi (zehir, çok terimli, vb.) Vardır.


Bunun için sadece glmnet kullanmanın olumsuz tarafı, bu yaklaşımın size anlamlılık düzeyleri vermeyeceğidir. Eğer bunlarla ilgileniyorsanız, R paketleri logistf veya brglm daha iyi bir yol olacaktır ...
Tom Wenseleers 5:17

@TomWenseleers ayrıca, p-değerleri elde etmek için glmnet'i önyükleme yöntemleri de vardır. Ancak, "normal" bootstrap kement katsayıları için işe yaramazsa biraz karışıktır
godspeed

Bunu bana bildirdiğiniz için teşekkür ederiz, başkalarının da bundan bahsettiğini gördüm, örneğin burada: stats.stackexchange.com/questions/34859/… , ancak bazı R paketlerinde uygulanan standart bir şey bulamıyor gibi görünüyor. Herhangi bir işaretçi olur mu? Ya da bu konuda iyi birincil literatür? Bootstrapping'ın
dezavantajı

Hdi, cran.r-project.org/web/packages/hdi/index.html R paketinde uygulananlar gibi yöntemlerden mi bahsediyorsunuz ?
Tom Wenseleers
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.