ロジスティック回帰
このトピックを完了すると
確率とオッズ比の対数との関係として二項アウトカムを表現し、係数、オッズ比、予測確率、較正を区別できるようになる。ロジスティックモデルの適合が予測性能や因果効果として成功したと過大評価しない。
二項アウトカムの構造
アウトカムが2つのカテゴリで記録されている場合、線形予測子を確率として直接読み取ると、 0 より小さい値や 1 より大きい値が生じる可能性がある。ロジスティック回帰は、線形予測子をオッズ比の対数尺度に配置し、それを確率に変換する構造を使用する。
係数の読み取り
係数は、他の入力を一定に保ったときのオッズ比の対数尺度上の変化を表す。係数を指数化するとオッズ比が得られるが、オッズと確率は同じ値ではない。確率の差は基礎確率によって異なる可能性があるため、研究結果を単一の係数のみで説明してはならない。
Pythonでの適合
import numpy as npimport statsmodels.api as sm
X = sm.add_constant(data[["exposure", "covariate"]])model = sm.Logit(data["outcome"], X).fit(disp=False)probability = model.predict(X)odds_ratio = model.params.apply(lambda value: np.exp(value))print(probability.head())print(odds_ratio)このコードは、二項アウトカムと適切なデータ型および欠測値が準備されていることを前提としている。np.expを使用するには、NumPyのインポートとロック環境を確認する必要がある。確率予測が生成されたことと、較正が良好であるという判断を区別しなければならない。
診断と予測
判別性はモデルが順序をどれだけよく分離するかを問い、較正は予測確率が観測頻度とどれだけよく一致するかを問う。単一の指標では、これらの2つの質問に同時に答えることはできない。閾値を適用して分類値を作成する場合は、閾値の目的とコストを記録する。
解釈のための研究質問への回帰
ロジスティック係数は、設計とモデルが許容する条件付き関係を表す。観測データからオッズ比を因果的なリスク比であるかのように読み取ってはならず、解釈が有病率、基礎値、サンプル構成によって異なる可能性があることに注意する。
一般的な失敗
- オッズと確率を交換して使用しない。
- 係数を生物学的効果として即座に確認しない。
- 較正なしで予測確率を信頼しない。
- クラスの不均衡がある場合に精度のみを報告しない。
重要なポイント
- ロジスティック回帰は、二項アウトカムとオッズ比の対数との関係をモデル化する。
- 係数、オッズ比、確率は異なる尺度にある。
- 判別性と較正は分離しなければならない。
次のトピック
次のセクションでは、カウント、レート、オフセット、過分散について扱う。
参考文献
- statsmodels API: https://www.statsmodels.org/stable/api.html
- scikit-learn calibration: https://scikit-learn.org/stable/modules/calibration.html
- scikit-learn metrics: https://scikit-learn.org/stable/modules/model_evaluation.html
このセクションの解説とデータ構造は、BioStatPyによって独立して記述されました。