ロジスティック回帰と線形回帰の関係:分類問題への拡張を理解する

こんにちは。ゆうせいです。

機械学習を学ぶ際、「線形回帰」と「ロジスティック回帰」という二つの手法が登場します。一見すると別の手法のように思えますが、実は密接な関係があります。ロジスティック回帰は、線形回帰の考え方を分類問題に適応させたものなのです。この関係を理解することで、なぜロジスティック回帰という名前が付けられたのか、そしてどのようなシーンで各手法を使い分けるべきかが明確になります。本記事では、線形回帰からロジスティック回帰へと発展する過程を解説します。

線形回帰の基本

線形回帰とは、一つ以上の説明変数から連続値の目的変数を予測する手法です。

単回帰モデルでは、以下のような直線の式を使用します。

\hat{y} = a + bx

ここで、a は切片、b は傾き、x は説明変数です。訓練データから a と b を学習し、未知の x に対する y の予測値を計算します。

例えば、従業員の勤続年数から年収を予測する場合、線形回帰は「勤続年数が1年増えるごとに、年収がいくら増えるのか」という関係を直線で表現します。

線形回帰が出力するのは、連続値です。「450万円」「520万円」といった具体的な数値が予測値になります。

線形回帰の限界:分類問題への適用

線形回帰は、連続値を予測する場面では優れていますが、「はい/いいえ」「合格/不合格」のような二者択一の分類問題には不適切です。

例えば、学生の試験勉強時間から「合格か不合格か」を予測する場合を考えます。試験勉強時間を説明変数 x、合格を1、不合格を0と設定して線形回帰を適用すると、以下の問題が生じます。

問題1:予測値が範囲外になる

線形回帰モデルで計算された予測値が、0 から 1 の範囲を超えることがあります。例えば、「試験勉強時間が-5時間のとき、予測値は-0.3」「試験勉強時間が50時間のとき、予測値は1.8」という荒唐無稽な結果が出ます。

分類問題では、予測値は「確率」として解釈されるべきです。確率は0 から 1 の間の値に限定されなければなりません。

問題2:確率の非線形性

実際には、試験勉強時間と合格確率の関係は直線ではなく、曲線です。勉強時間が非常に短い場合、勉強時間をいくら増やしても合格確率は変わりにくいかもしれません。一方、ある程度の勉強時間を超えると、わずかな追加勉強でも合格確率が急激に上がるかもしれません。

この非線形な関係を、直線で表現することは不適切です。

シグモイド関数の導入

線形回帰の出力を、確率(0 から 1 の値)に変換する方法として、シグモイド関数が使用されます。

シグモイド関数は、以下の式で定義されます。

\sigma(z) = \frac{1}{1 + e^{-z}}

ここで、z は線形回帰の出力値 a + bx です。

シグモイド関数は、以下の性質があります。

入力が -\infty に近い場合、出力は0に近づく。 入力が 0 のとき、出力は 0.5 になる。 入力が +\infty に近い場合、出力は1に近づく。

つまり、シグモイド関数は、任意の実数値を0 から 1 の間に変換します。この性質が、分類問題に非常に適しているのです。

ロジスティック回帰のモデル

ロジスティック回帰は、線形回帰の出力にシグモイド関数を適用したモデルです。

線形回帰の出力:z = a + bx
シグモイド関数を適用:y = σ(z) = 1 / (1 + e^(-z))
結果:y = 1 / (1 + e^(-(a + bx)))

このモデルにより、説明変数 x から、事象が発生する確率 y を直接推定できるようになります。

例えば、試験勉強時間 x = 10 時間のとき、y = 0.75 という出力が得られれば、「この学生が合格する確率は75パーセント」と解釈できます。

具体例で理解する

試験勉強時間から合格確率を予測する例で、線形回帰とロジスティック回帰の違いを可視化します。

訓練データ

学生1:勉強時間2時間、結果:不合格(0) 学生2:勉強時間4時間、結果:不合格(0) 学生3:勉強時間6時間、結果:合格(1) 学生4:勉強時間8時間、結果:合格(1) 学生5:勉強時間10時間、結果:合格(1)

線形回帰で学習した場合

線形回帰モデルは、これらのデータに最も適合する直線を引きます。概ね、y = -0.5 + 0.15x のような直線が得られます。

この直線を使うと、勉強時間0時間のとき y = -0.5、勉強時間20時間のとき y = 2.5 という予測値が得られます。これらは確率として解釈不可能です。

ロジスティック回帰で学習した場合

ロジスティック回帰は、同じ訓練データから、シグモイド曲線を学習します。結果は以下のようなS字カーブになります。

勉強時間0時間のとき、y ≈ 0.1(合格確率10パーセント) 勉強時間5時間のとき、y ≈ 0.5(合格確率50パーセント) 勉強時間10時間のとき、y ≈ 0.9(合格確率90パーセント)

勉強時間の増加に従って、合格確率が段階的に上昇するS字曲線が描かれます。この形状は、実際の現象をよく反映しています。

名前の由来

「ロジスティック回帰」という名前は、シグモイド関数の別名である「ロジスティック関数」に由来します。ロジスティック関数は、生物学における個体群動態(人口増加が環境容量に制限される現象)をモデル化するために歴史的に開発されました。

統計学者たちが、この関数を分類問題に応用した際に、「ロジスティック関数を使った回帰」という意味で「ロジスティック回帰」と命名したのです。

線形回帰との数学的な関連性

ロジスティック回帰と線形回帰の関連性は、「オッズ」という概念を通じてさらに明確になります。

事象が発生する確率を p とするとき、オッズは以下のように定義されます。

\text{odds} = \frac{p}{1-p}

例えば、合格確率が0.75の場合、オッズは \frac{0.75}{0.25} = 3 です。つまり、不合格になる確率の3倍、合格する確率が高いという意味です。

オッズの自然対数(ロジット)を取ると以下のようになります。

\text{logit}(p) = \ln\left(\frac{p}{1-p}\right)

ロジスティック回帰の数学的性質により、このロジット値が線形になります。つまり、以下の関係が成立します。

\ln\left(\frac{p}{1-p}\right) = a + bx

これは、線形回帰の形式です。つまり、ロジスティック回帰は「確率のロジット変換が線形になる」という仮定に基づいており、その意味で線形回帰の一種だと言えるのです。

実務での使い分け

線形回帰を使う場面

連続値の予測が必要な場合。例えば、不動産価格の予測、売上高予測など。

複数の説明変数と目的変数の関係を理解したい場合。線形回帰の係数から、各変数の寄与度を直接読み取ることができます。

解釈可能性が重視される場面。線形モデルは、その予測根拠を明確に説明しやすいです。

ロジスティック回帰を使う場面

二値分類問題。例えば、メールがスパムか否かの判定、患者が特定の病気にかかっているか否かの診断。

確率の推定が必要な場面。単に「合格」「不合格」というラベルだけでなく、その確信度(確率)を知りたい場合。

解釈可能で、かつ確率的な推定が必要な場面。医療診断や与信判定など、説明可能性と確率情報の両方が重要です。

多項ロジスティック回帰への拡張

ロジスティック回帰は、二値分類(二者択一)だけに限定されません。多項ロジスティック回帰により、三つ以上のカテゴリへの分類も可能です。

例えば、顧客の購買傾向から、その顧客のセグメント(高価値、中価値、低価値)を予測する場合、多項ロジスティック回帰が使用されます。

多項ロジスティック回帰では、各カテゴリに対して異なるシグモイド関数が適用され、各カテゴリに属する確率を同時に推定します。

線形回帰とロジスティック回帰の比較表

項目線形回帰ロジスティック回帰
目的変数連続値二値またはカテゴリ
出力の範囲無制限(-\infty から +\infty0 から 1(確率)
適用関数恒等関数(変換なし)シグモイド関数
予測値の解釈直接値確率
問題のタイプ回帰問題分類問題
各説明変数の影響線形(傾き = 影響度)非線形(変数値により影響度が変わる)

よくある誤解

ロジスティック回帰は「回帰」という名前ですが、分類問題に使用されます。名前が紛らわしいかもしれませんが、これは歴史的な命名の名残です。正確には「ロジスティック分類」と呼ぶべきかもしれません。

ロジスティック回帰は、線形回帰よりも常に優れているわけではありません。分類問題にはロジスティック回帰を使うべきですが、連続値の予測には線形回帰を使うべきです。問題の性質に応じた使い分けが重要です。

ロジスティック回帰の出力する確率を盲目的に信じてはいけません。訓練データが不均衡な場合や、訓練時のサンプルサイズが小さい場合、確率の推定が不正確になることがあります。

まとめ

ロジスティック回帰は、線形回帰の考え方をシグモイド関数を通じて分類問題に適応させたモデルです。線形回帰の出力値(無制限の実数)をシグモイド関数に通すことで、0 から 1 の間の確率値に変換します。

数学的には、ロジスティック回帰は「確率のロジット変換が線形である」という前提に基づいており、その意味で線形回帰と密接に関連しています。

実務では、連続値の予測には線形回帰を、二値またはカテゴリの分類には(多項)ロジスティック回帰を使用するという使い分けが標準的です。両者の関連性を理解することで、統計学的な推論の幅が広がり、より適切なモデル選択ができるようになります。

次のステップとして、実際のデータセットで線形回帰とロジスティック回帰を試し、各モデルの出力がどのように異なるか、そしてどのような場面でどちらが適切かを体験することをお勧めします。その実験を通じて、両モデルの関係性がより深く理解できるようになるでしょう。

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
海外放浪の末、2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。

学生時代は趣味と実益を兼ねてリゾートバイトにいそしむ。長野県白馬村に始まり、志賀高原でのスキーインストラクター、沖縄石垣島、北海道トマム。高じてオーストラリアのゴールドコーストでツアーガイドなど。現在は野菜作りにはまっている。