Çok terimli bir lojistik regresyon yapmak için glm algoritmalarını kullanabilir miyim?


14

Projemde istatistiksel analiz için spotfire (S ++) kullanıyorum ve büyük bir veri kümesi için multinomiyal lojistik regresyon çalıştırmak zorundayım. En iyi algoritma mlogit olacağını biliyorum, ama ne yazık ki bu s ++ mevcut değildir. Ancak, bu regresyon için glm algoritması kullanma seçeneğim var. Burada iki şeyi açıklığa kavuşturmak istiyorum:

1. glm'nin Multinomiyal Lojistik Regresyonu çalıştırmak için de kullanılabileceğini doğru mu?

  1. Önceki soruya cevap evet ise, glm algo'da hangi parametreler kullanılmalıdır?

Teşekkürler,

Yanıtlar:


9

Evet, Poisson GLM (log lineer model) ile multinom modellere sığabilirsiniz. Bu nedenle, çok terimli lojistik veya log doğrusal Poisson modelleri eşdeğerdir.

Sen rastgele sayıları görmek gerekir yij anlamına ile Poisson rasgele değişkenler olarak ve aşağıdaki aşağıdaki log-lineer modeli belirtinμij

log(μij)=o+pi+cj+xiβj

Çok terimli bir logit modeli elde etmek için parametreler şunlardır:

Her bir çok- gözlem için bir parametre , örneğin bireyler veya grup. Bu, multinomiyal paydaların tam olarak çoğaltılmasını sağlar ve aslında Poisson ve multinom modelinin denkliğini oluşturur. Multinomiyal olasılıkta sabittirler, ancak Poisson olasılığında rastgele bulunurlar.pi

Her yanıt kategorisi için bir parametresi . Bu şekilde sayımlar her bir yanıt kategorisi için farklı olabilir ve kenar boşlukları aynı olmayabilir.cj

Ne gerçekten ilgilenen edilir etkileşim terimlerdir etkilerini temsil tepkisi log-oran üzerinde .xiβjxij

Log olasılıkları . İ gözleminin, cevap kategorisi göre cevap kategorisi j'ye düşeceği log oranlarıdır .log(μij/μik)=(cjck)+xi(βjβk)k

Daha sonra, multinomial logit modelindeki (latin harfleriyle gösterilen) parametreler, karşılık gelen log-lineer modeldeki parametreler arasındaki farklar olarak elde edilebilir, yani ve .aj=αjαkbj=βjβk


Teşekkürler Momo. Bu gerçekten faydalı. Yazılımım GLM alogorithm'i çalıştırırken Aileyi "mülkiyet" ve "günlük" olarak bağla seçeneğini seçme seçeneği sunuyor. Bence tam da burada gerekli olan bu.
Raghvendra

7

Evet, yapabilirsiniz ve aslında bu tam olarak GLMNET'in R-paketinin çok uluslu lojistik regresyon için yaptığı şeydir. Günlük olabilirlik fonksiyonunun şöyle yazılması:

LogL=icniclog(pic)

Burada gözlemleri temsil eder ve çokterimli kategorileri belirtmektedir gözlem için gözlemlenen sayısıdır kategorisinde . Gözlemler, benzersiz ortak değişken kombinasyonları ile tanımlanır - veya alternatif olarak, yinelemelere izin verebilir ve her kategorik "ikili" verilere sahip olacak şekilde ayarlayabiliriz . ...). Lojistik regresyon için olasılıklar şu şekilde tanımlanır:icnicicnic=1

pic=exp(xiTβc)cexp(xiTβc)

Bu, tam sıra parametreden daha düşüktür ve cezalandırılmış olabilirlik (GLMNET gibi) kullanıyorsanız faydalı olabilir. Prensip olarak tam beta matrisinde IRLS / newton rhapson'u kullanabiliriz , ancak çapraz olmayan ağırlık matrisleri ile sonuçlanırsınız. Alternatif olarak, biri hariç tüm kategoriler betalarını düzelterek ve daha sonra bu kategorinin biraz üzerinde optimize ederek "Gibbs tarzı" optimize edebiliriz. Ardından bir sonraki kategoriye geçin, vb. Bunu görebilirsiniz, çünkü olasılıklar(β1,,βC)

pic=exp(xiTβc)exp(xiTβc)+A where Aβc=0
pic=Bexp(xiTβc)+A where Bβc=0

ilgili karesel genişlemenin lojistik regresyon ile aynı forma sahip olacağı, ancak IRLS ağırlıkları farklı hesaplanmış olsa da - hala her zamanki beta güncellemesinde.βcWii,c=nicpic(1pic)(XTWX)1XTWY


IRLS QR Newton varyantını kullanarak multinomiyal lojistik regresyonu uygulamaya çalışıyorum. Kod diğer GLM modellerinde çalışır, ancak mlogit'i çalıştıramadık. Misiniz yineleme yerine bir kez bana sadece Cholesky hesaplamak için izin verecek SoftMax fonksiyonun Jakobiyeni olmak sonucun başına ağırlıkları her set için çözmek için zaman? Wk
José Bayoán Santiago Calderón

Diyagonal olmayacağı düşünüldüğünde, çok sayıda gözlemle iyi ölçeklendirilmez, değil mi? "Gibbs tarzı" olacaksa, temel kategori parametrelerini matrisinden çıkarmak tahminden önce veya sonra yapılabilir mi? β
José Bayoán Santiago Calderón

"Cholesky once" ve "cholesky k times" hakkında konuştuğunuzda, matrislerin farklı boyutta olduğunu not etmelisiniz - sütunları varsa, "once" bir matris boyutlu ve "k times" a matris boyutluX p k ppXpkp
olasılık
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.