ロジスティック回帰(Logistic Regression)は、統計学や機械学習において広く使われる分類モデルの一つで、特に二値分類(二つのクラスのどちらかに分類する問題)で使用されます。ロジスティック回帰は、名前に「回帰」とありますが、実際にはカテゴリ分類に適したモデルです。
ロジスティック回帰の基本的な考え方
ロジスティック回帰は、目的変数 ( y ) が「0」または「1」の値を取る二値変数(例:スパムか非スパムか、病気か健康かなど)を予測するために用いられます。ロジスティック回帰では、次のような式を使用して、あるデータが特定のクラスに属する確率をモデル化します。
シグモイド関数(ロジスティック関数)
ロジスティック回帰は、シグモイド関数(ロジスティック関数)を用いて、予測値を確率に変換します。この関数は次のように表されます:
P(y = 1 | x) = \frac{1}{1 + e^{-(b_0 + b_1 x_1 + b_2 x_2 + \cdots + b_n x_n)}}
ここで、
- $( P(y = 1 | x) )$ は、クラス「1」に属する確率を示します。
- $( b_0 )$ は切片(バイアス)です。
- $( b_1, b_2, \ldots, b_n )$ は回帰係数で、それぞれの独立変数 $( x_1, x_2, \ldots, x_n )$ に対する重みを表します。
- $( e )$ は自然対数の底(約2.718)です。
シグモイド関数は、入力値を0から1の範囲にマッピングするため、確率の範囲に対応します。これにより、ロジスティック回帰は、データが特定のクラスに属する確率を出力します。
ロジスティック回帰の学習方法
ロジスティック回帰では、最尤推定法(Maximum Likelihood Estimation, MLE)を用いてパラメータ $( b_0, b_1, \ldots, b_n )$ を推定します。これにより、予測された確率と実際のラベルとの誤差を最小化するようにパラメータが調整されます。
1. コスト関数
予測と実際の値の誤差を表すために、ロジスティック回帰では対数損失(log loss)を用いたコスト関数が一般的です。
2. 勾配降下法
最適なパラメータを見つけるために、勾配降下法を用いてコスト関数を最小化します。
ロジスティック回帰の種類
1. 二項ロジスティック回帰
クラスが2つ(例:「0」または「1」)の場合に使用します。これが基本的なロジスティック回帰です。
2. 多項ロジスティック回帰(マルチクラスロジスティック回帰)
クラスが3つ以上ある場合に使用します。この場合は、ソフトマックス回帰と呼ばれる拡張が一般的です。
3. 順序ロジスティック回帰
クラスが自然な順序を持つ場合(例:満足度が「低」「中」「高」など)に使用します。
ロジスティック回帰の評価指標
ロジスティック回帰モデルを評価するための代表的な指標には、以下のようなものがあります:
1. 正解率(Accuracy)
全体の予測が正しかった割合です。
2. ROC曲線とAUC
ROC曲線は真陽性率と偽陽性率の関係を示す曲線で、AUCはその曲線の下の面積です。AUCが1に近いほど、分類性能が高いことを示します。
3. 混同行列
予測の正解数と誤分類数を詳細に示します。
4. F1スコア
精度(Precision)と再現率(Recall)の調和平均で、モデルのバランスの取れた評価を行います。
ロジスティック回帰の仮定
ロジスティック回帰を適用するには、以下の仮定が成り立っていることが望ましいです。
1. 線形関係:
独立変数と従属変数の間には、ロジット(logit)変換後に線形関係があると仮定します。
2. 独立性:
観測値間に相互依存がないと仮定します。
3. 多重共線性がない:
独立変数間に強い相関がないことが望ましいです。
ロジスティック回帰の応用例
- マーケティング:顧客が購入するか否かの予測
- 医療:患者が特定の病気になる確率の予測
- 金融:ローンの返済が行われるかどうかの予測
- スポーツ:試合の勝敗予測
まとめ
ロジスティック回帰は、分類問題における基本的かつ効果的な手法であり、特に二値分類問題に適しています。データが線形的に分離できる場合に最も効果を発揮しますが、モデルが過学習しにくく、解釈性が高いのも特徴です。実務でも多くの分野で応用されており、分類問題における重要な手法の一つです。