スタッツギルド

ロジスティック回帰分析

|

Logistic Regression Analysis

ロジスティック回帰分析

Logistic Regression Analysis

予測する要因を探る分類する
#ロジスティック回帰#二項分類#オッズ比#確率予測#分類分析

二値分類(バイナリ分類)問題に使用される回帰モデルの一種で、従属変数(目的変数)が0または1の二値を取る場合に適用されます。この手法は、従属変数がカテゴリカルであるため、通常の線形回帰が適用できない状況で用いられます。

A type of regression model used for binary classification problems, where the dependent variable (also called the target variable) takes on only two values, typically 0 or 1. This method is used when the dependent variable is categorical, making ordinary linear regression unsuitable.

カテゴリ型の従属変数の予測分析と要因分析

ロジスティック回帰分析(Logistic Regression)は、あるイベントが発生する確率を予測する予測分析の手法です。基本的に、従属変数0または12値フラグ(成功/失敗、購入/非購入、治癒/非治癒、合格/不合格など)であるときに用いられ、連続値を前提とする回帰分析の拡張として位置づけられます。どの要因がイベントの起きやすさに寄与するかを調べる要因分析としても活用されます。

独立変数を1個だけ含む場合は単変量解析、複数を含む場合は多変量解析の手法に分類されます。

線形回帰との違い

線形回帰では従属変数の平均が説明変数の線形結合で表されますが、2値の従属変数にそのまま適用すると、予測値が0~1の範囲を超えるなど解釈上の問題が生じます。

ロジット変換とオッズ比

ロジスティック回帰では、イベントの起こる確率 P をまずオッズ(Odds)P/(1−P) に置き換え、さらにその対数をとった値をロジット(対数オッズ、Logit)とします。起こる・起こらないが同じ確率の場合、オッズは1になります(0.5/(1−0.5)=1)。この一連の変換をロジット変換と呼びます。

対数をとる理由は、オッズが0から無限大まで取るため、説明変数との関係を「足し算の形」(線形)で直接書きにくいからです。対数オッズは−∞から+∞の範囲になり、説明変数の線形結合でモデル化できます。推定後はロジスティック関数で確率に戻すため、予測値は0~1に収まり、線形回帰に近い枠組みのまま2値の従属変数を扱えます。

各係数は、独立変数を1単位増加させたときのオッズ比(Odds Ratio,OR)として解釈されます。これは2つの異なる条件でのオッズの比を意味するため基準値は1となり、オッズ比が1より大きければイベントが起きやすい、1より小さければ起きにくい、1の場合は差がないと読みます。オッズ比が1ということは要因が変わっても結果の起きやすさは1倍、つまり変わらないことを意味するからです。通常は、オッズ比の信頼区間を報告し、信頼区間に1を含むかどうかを有意性の判断材料とします。

単変量モデルで得るオッズ比を単純オッズ比(Crude Odds Ratio)や未調整オッズ比(Unadjusted Odds Ratio)と呼び、複数の独立変数を同時に投入した多変量モデルで得るオッズ比を調整オッズ比(Adjusted Odds Ratio)と呼び、区別して報告します。調整オッズ比は、他の共変量の影響を統計的にコントロールしたうえでの寄与を示す指標として解釈するため、交絡要因(Confounding factor)の影響が想定される観察研究では、単純オッズ比だけでなく調整オッズ比の解釈と報告が重要です。

適用場面

ロジスティック回帰は、次のような分析目的で広く利用されます。

要因分析:年齢・性別・検査値などが、疾患の有無や購買の成否にどう関係するかを調べる
リスク予測:与信・離反・再発など、イベント発生の確率をスコア化する
介入効果の評価:治療群/対照群などのダミー変数を投入し、オッズ比で効果量を示す
多変量調整:複数の共変量を同時にコントロールしたうえで、特定要因の寄与を推定する

従属変数が3カテゴリ以上の名義尺度の場合は、多項ロジスティック回帰へ拡張します。順序尺度の場合は順序ロジスティック回帰が選択肢になります。

モデル評価と解釈の注意

推定後は、係数の有意性に加え、モデル全体の当てはまりを確認します。SPSS では、−2対数尤度やモデルカイ二乗、分類表(混同行列)による正解率、ROC曲線AUC(曲線下面積)などを参照します。サンプルサイズが小さいときは、過剰な変数投入による過適合に注意し、変数選択や交絡の理論的整理を行うことが重要です。ある独立変数によって2値が完全に説明できてしまう状況(完全分離、擬似完全分離)の問題は、係数が発散したり標準誤差が極端に大きくなる問題を引き起こすため、多重共線性と同様に結果の解釈に注意が必要です。例えば、心停止で搬送された患者はほぼ死亡するなど強い関連が認められる場合は、変数の除外や再定義を検討します。

オッズ比は確率そのものの倍率ではなくオッズの倍率である点に留意する必要があります。実務では、予測確率のキャリブレーションや、感度・特異度のトレードオフを踏まえたカットオフ値の設定も併せて検討します。

イベントの不均衡にも注意が必要です。故障や事故、死亡や再発など、イベント側のデータが少ないケースは珍しくありません。この場合、正解率が高くても予測性能自体は低いこともあります。このような不均衡データ(Imbalanced data)になっていないかは、研究仮説の段階で把握しておきたい問題ですが、解析の段階では度数分布の確認で発見することができます。

サンプルサイズとパラメータ数の目安

ロジスティック回帰では、サンプルサイズそのものよりイベント数とモデルに投入するパラメータ数のバランスが重要です。実務では イベント数÷パラメータ数(Events Per Variable, EPV)が10以上であることを目安にする経験則が広く引用されています(Peduzzi et al., 1996)。

EPV = イベント数÷パラメータ数

EPVの文献でいう variable は、SPSSに並べた独立変数の個数と必ずしも一致しません。パラメータ数は切片を除き、モデルで推定する係数の個数で数えます(連続変数・2水準カテゴリは1、3水準カテゴリは2=水準数−1)。独立変数と混同しないよう、下記の例もパラメータ数で記載します。

例えば、再発のイベントが80件、パラメータ数が8の場合、EPV=80÷8=10 で目安を満たします。イベントが30件で同じ8なら EPV=30÷8=3.75 と下回り、係数推定や信頼区間が不安定になりやすいと判断します。

逆算すると、パラメータ数が5ならイベント数は 5×10=50件 以上が目安です(必要イベント数 ≧ パラメータ数×10)。

このEPV>=10の目安は、シミュレーション研究に基づく経験則であり、絶対的な基準ではありません。説明変数間の相関や効果量、研究目的(要因推定か予測モデル構築か)によって必要なイベント数は変わります。より少ない EPV でも妥当な場合があるとの検討(Vittinghoff & McCulloch, 2007)や、EPV だけでは不十分との指摘(van Smeden et al., 2016)もあるため、事前にイベント数とパラメータ数を表にし、EPVを確認したうえで変数を絞る運用が安全です。

SPSS Statistics でのロジスティック回帰

SPSS Statistics では、二項ロジスティック回帰は基本機能のBaseでは実行できず、 Regression オプションが対応します。従属変数と共変量を指定して実行できます。必要な指標はチェックボックスで簡単に指定できますので、出力されるオッズ比、信頼区間、分類表、ROCなどを用いて結果を解釈します。

ソフトウェア

SPSSでは、Regression オプションが二項ロジスティック回帰の主な実行手段です。多項・順序ロジスティックも同オプションで対応します。一般線型モデル経由の実行は Advanced Statistics でも可能です。Rでは、statsパッケージのglm()関数にfamily = binomialを指定してロジスティック回帰を実行します。視覚化にはggplot2パッケージがよく使われます。Pythonでは、機械学習ライブラリのscikit-learnLogisticRegressionクラスや、statsmodelsLogit()関数が主要な実行方法として広く使われています。

IBM SPSS Statistics 製品情報
IBM SPSS Regression オプション

参考文献

    1. Cox, D. R. (1958). The regression analysis of binary sequences. Journal of the Royal Statistical Society: Series B (Methodological), 20(2), 215-242.
    2. Peduzzi, P., Concato, J., Kemper, E., Holford, T. R., & Feinstein, A. R. (1996). A simulation study of the number of events per variable in logistic regression analysis. Journal of Clinical Epidemiology, 49(12), 1373-1379.
    3. Vittinghoff, E., & McCulloch, C. E. (2007). Relaxing the Rule of Ten Events per Variable in Logistic and Cox Regression. American Journal of Epidemiology, Volume 165, Issue 6, 15 March 2007, Pages 710–718,
    4. van Smeden, M., de Groot, J. A. H., Moons, K. G. M., Collins, G. S., Altman, D. G., Eijkemans, M. J. C., & Reitsma, J. B. (2016). No rationale for 1 variable per 10 events criterion for binary logistic regression analysis. BMC Medical Research Methodology, 16, 163.
    5. 対馬 栄輝(2018),SPSSで学ぶ医療系多変量データ解析,東京図書
    6. IBM_SPSS_Statistics_Regression.pdf
    7. IBM_SPSS_Advanced_Statistics.pdf