サーチ…


タイタニックデータセットのロジスティック回帰

ロジスティック回帰は、 一般化された線形モデルの特殊なケースであり、二分計算結果をモデルするために使用されますプロビットおよび補完対数ログモデルは密接に関連しています)。

この名前は、使用されているリンク関数 、すなわちlogitまたはlog-odds関数に由来します。 ロジットの逆関数はロジスティック関数と呼ばれ、次のように与えられます。

この関数は、 -Inf; + Inf [の間の値を取り、 01の間の値を返します。 ロジスティック関数は線形予測子をとり、確率を返す。

ロジスティック回帰は、オプションfamily = binomialfamily = binomial(link="logit")ショートカット; logitは二項族のデフォルトリンク関数family = binomial(link="logit")glm関数を使用して実行できます。

この例では、RMS Titanicに搭乗している乗客の運命を予測しようとしています。

データを読む:

url <- "http://biostat.mc.vanderbilt.edu/wiki/pub/Main/DataSets/titanic.txt"
titanic <- read.csv(file = url, stringsAsFactors = FALSE)

欠損値を消去する:

この場合、欠損値を近似(平均)で置き換えます。

titanic$age[is.na(titanic$age)] <- mean(titanic$age, na.rm = TRUE) 

モデルを訓練する:

titanic.train <- glm(survived ~ pclass + sex + age,
                         family = binomial, data = titanic)

モデルの概要:

summary(titanic.train)

出力:

Call:
glm(formula = survived ~ pclass + sex + age, family = binomial, data = titanic)

Deviance Residuals: 
    Min       1Q   Median       3Q      Max  
-2.6452  -0.6641  -0.3679   0.6123   2.5615  

Coefficients:
             Estimate Std. Error z value Pr(>|z|)    
(Intercept)  3.552261   0.342188  10.381  < 2e-16 ***
pclass2nd   -1.170777   0.211559  -5.534 3.13e-08 ***
pclass3rd   -2.430672   0.195157 -12.455  < 2e-16 ***
sexmale     -2.463377   0.154587 -15.935  < 2e-16 ***
age         -0.042235   0.007415  -5.696 1.23e-08 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 1686.8  on 1312  degrees of freedom
Residual deviance: 1165.7  on 1308  degrees of freedom
AIC: 1175.7

Number of Fisher Scoring iterations: 5
  • 最初に表示されるのはコールです。これはモデルと指定されたオプションを思い出させるものです。

  • 次に、モデルのフィットの尺度である偏差残差を見る。この出力の部分は、モデルで使用された個々のケースの偏差残差の分布を示します。

  • 出力の次の部分は、係数、標準誤差、z-統計量(時にはWald z-統計量と呼ばれる)、および関連するp値を示しています。

    • 定性的変数は「ダミー化」されている。モダリティは参考資料とみなされます。参照モダリティは、式でIで変更することができます。
    • 4つの予測変数はすべて0.1%レベルで統計的に有意である。
    • ロジスティック回帰係数は、予測変数の1単位の増加に対する結果の対数オッズの変化を与える。
    • オッズ比 (予測変数の単位増加あたりの生存確率の倍数変化)を見るには、パラメータを累乗します。
    • パラメータの信頼区間(CI)を確認するには、 confint使用しconfint
  • 係数表の下には、ヌルと偏差の残差を含む適合指標と、モデル性能の比較に使用できる赤池情報基準(AIC)があります。

    • 同じデータに最尤法でフィッティングされたモデルを比較すると、AICが小さければ小さいほど適合度が高くなります。
    • モデル適合の1つの尺度は、全体モデルの重要性です。このテストでは、予測子を含むモデルが、切片のみを持つモデル(つまり、ヌルモデル)よりもはるかに優れているかどうかを確認します。

オッズ比の例:

exp(coef(titanic.train)[3])

 pclass3rd 
0.08797765 

このモデルでは、第1クラスと比較して、第3クラスの乗客は生存確率の約10分の1を持っています。

パラメータの信頼区間の例:

confint(titanic.train)

Waiting for profiling to be done...
                  2.5 %      97.5 %
(Intercept)  2.89486872  4.23734280
pclass2nd   -1.58986065 -0.75987230
pclass3rd   -2.81987935 -2.05419500
sexmale     -2.77180962 -2.16528316
age         -0.05695894 -0.02786211

全体モデルの意義を計算する例:

テスト統計量は、カレント・モデルとヌル・モデルの間の自由度の差(すなわち、モデル内の予測変数の数)に等しい自由度でカイ二乗分布します。

with(titanic.train, pchisq(null.deviance - deviance, df.null - df.residual
, lower.tail = FALSE))
[1] 1.892539e-111

p値は0に近く、非常に有意なモデルを示しています。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow