R'de glm çıktısı nasıl yorumlanır (örnekle)
R’deki glm() işlevi genelleştirilmiş doğrusal modellere uymak için kullanılabilir.
Bu işlev aşağıdaki sözdizimini kullanır:
glm(formül, aile=Gauss, veri, …)
Altın:
- formül: Doğrusal model formülü (örneğin y ~ x1 + x2)
- aile: modele uymak için kullanılacak istatistiksel aile. Varsayılan Gaussian’dır ancak diğer seçenekler arasında Binom, Gamma ve Poisson da bulunur.
- data: Verileri içeren veri bloğunun adı
Pratikte bu fonksiyon çoğunlukla “binom” ailesini belirterek lojistik regresyon modellerine uyum sağlamak için kullanılır.
Aşağıdaki örnek, lojistik regresyon modeli için R’deki glm çıktısının nasıl yorumlanacağını gösterir.
Örnek: R’de glm çıktısı nasıl yorumlanır?
Bu örnek için R’de yerleşik mtcars veri kümesini kullanacağız:
#view first six rows of mtcars dataset
head(mtcars)
mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225 105 2.76 3,460 20.22 1 0 3 1
Belirli bir arabanın am değişkeni için 1 değerini alma olasılığını tahmin etmek için disp ve hp değişkenlerini kullanacağız.
Aşağıdaki kod, bu lojistik regresyon modeline uyacak şekilde glm() işlevinin nasıl kullanılacağını gösterir:
#fit logistic regression model model <- glm(am ~ disp + hp, data=mtcars, family=binomial) #view model summary summary(model) Call: glm(formula = am ~ disp + hp, family = binomial, data = mtcars) Deviance Residuals: Min 1Q Median 3Q Max -1.9665 -0.3090 -0.0017 0.3934 1.3682 Coefficients: Estimate Std. Error z value Pr(>|z|) (Intercept) 1.40342 1.36757 1.026 0.3048 available -0.09518 0.04800 -1.983 0.0474 * hp 0.12170 0.06777 1.796 0.0725 . --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 (Dispersion parameter for binomial family taken to be 1) Null deviance: 43,230 on 31 degrees of freedom Residual deviance: 16,713 on 29 degrees of freedom AIC: 22,713 Number of Fisher Scoring iterations: 8
Sonucun her bir öğesinin nasıl yorumlanacağı aşağıda açıklanmıştır:
Katsayılar ve P değerleri
Sonuçtaki katsayı tahmini, her yordayıcı değişkendeki bir birimlik artışla ilişkili yanıt değişkeninin log olasılığındaki ortalama değişimi gösterir.
Örneğin, tahmin değişkeni disp’deki bir birimlik artış, yanıt değişkeninin 1 değerini alması ihtimalinin logdaki ortalama -0,09518 değişimiyle ilişkilidir. Bu, daha yüksek disp değerlerinin daha düşük olasılıkla ilişkili olduğu anlamına gelir . değişkenin 1 değerini alıyorum.
Standart hata bize katsayı tahminiyle ilişkili değişkenlik hakkında bir fikir verir. Daha sonra az değerini elde etmek için katsayı tahminini standart hataya böleriz.
Örneğin disp yordayıcı değişkeninin z değeri -.09518 / .048 = -1.983 olarak hesaplanır.
P değeri Pr(>|z|) bize belirli bir z değeriyle ilişkili olasılığı söyler. Bu aslında bize her bir yordayıcı değişkenin modeldeki yanıt değişkeninin değerini ne kadar iyi tahmin edebildiğini anlatır.
Örneğin disp değişkeninin z değeriyle ilişkili p değeri 0,0474’tür. Bu değer 0,05’ten küçük olduğundan disp’in modelde istatistiksel olarak anlamlı bir yordayıcı değişken olduğunu söyleyebiliriz.
Tercihlerinize bağlı olarak, her yordayıcı değişkenin istatistiksel olarak anlamlı olup olmadığını belirlemek için 0,01, 0,05 veya 0,10 anlamlılık düzeyini kullanmaya karar verebilirsiniz.
Sıfır ve artık sapma
Çıktıdaki sıfır sapma bize yanıt değişkeninin yalnızca orijinal terimi olan bir model tarafından ne kadar iyi tahmin edilebileceğini anlatır.
Artık sapma bize yanıt değişkeninin, p öngörücü değişkenle uydurduğumuz spesifik model tarafından ne kadar iyi tahmin edilebileceğini anlatır. Değer ne kadar düşük olursa, model yanıt değişkeninin değerini o kadar iyi tahmin edebilir.
Bir modelin “faydalı” olup olmadığını belirlemek için Ki-kare istatistiğini şu şekilde hesaplayabiliriz:
X 2 = Sıfır sapma – Artık sapma
p serbestlik derecesine sahip.
Daha sonra bu Ki-kare istatistiğiyle ilişkili p değerini bulabiliriz. P değeri ne kadar düşük olursa, model yalnızca orijinal terim içeren bir modele kıyasla veri kümesine o kadar iyi uyum sağlayabilir.
Örneğin regresyon modelimizde sıfır ve artık sapma için çıktıda aşağıdaki değerleri gözlemleyebiliriz:
- Sıfır sapma : 43,23, df = 31 ile
- Artık sapma : 16.713, df = 29
Modelin X 2 istatistiğini hesaplamak için bu değerleri kullanabiliriz:
- X 2 = Sıfır sapma – Artık sapma
- X2 = 43,23 – 16,713
- X2 = 26.517
Tahmin edici değişkenlerin p = 2 serbestlik derecesi vardır.
2 serbestlik derecesine sahip 26,517’lik bir X2 değerinin 0,000002’lik bir p değerine sahip olduğunu bulmak için Ki-kare-P-değeri hesaplayıcısını kullanabiliriz.
Bu p değeri 0,05’ten çok daha düşük olduğundan modelin çok kullanışlı olduğu sonucuna varabiliriz.
AIC
Akaike Bilgi Kriteri ( AIC ), farklı regresyon modellerinin uyumunu karşılaştırmak için kullanılan bir ölçüdür. Değer ne kadar düşük olursa, regresyon modeli verilere o kadar iyi uyum sağlayabilir.
Aşağıdaki şekilde hesaplanır:
AIC = 2K – 2 ln (L)
Altın:
- K: Model parametrelerinin sayısı.
- ln (L) : Modelin log-olasılığı. Bu bize modelin verilere dayanma olasılığının ne kadar olduğunu gösterir.
AIC’nin gerçek değeri anlamsızdır.
Ancak birden fazla regresyon modeli uygularsanız her modelin AIC değerini karşılaştırabilirsiniz. En düşük AIC değerine sahip model en iyi uyumu sağlar.
İlgili: İyi bir AIC değeri olarak kabul edilen şey nedir?
Ek kaynaklar
Aşağıdaki eğitimler, R’de glm() işlevinin nasıl kullanılacağına ilişkin ek bilgiler sağlar:
R’de glm ve lm arasındaki fark
R’de glm ile tahmin işlevi nasıl kullanılır?
Aşağıdaki eğitimler, glm() işlevini kullanırken yaygın hataların nasıl ele alınacağını açıklamaktadır:
R nasıl ele alınır? Uyarı: glm.fit: algoritma yakınsamadı
Nasıl ele alınır: glm.fit: sayısal olarak ayarlanmış olasılıklar 0 veya 1’in oluşması