「回帰」という名前なのに、解くのは分類問題——ロジスティック回帰は、G検定で最も引っかけに使われやすいキーワードの1つです。線形回帰との関係、シグモイド関数の役割、ソフトマックス関数への拡張まで、名前の紛らわしさごと整理して解説します。
📖 ひと言でいうと
ロジスティック回帰とは、線形回帰の考え方を分類問題に応用したアルゴリズムです。入力から計算した値をロジスティック(シグモイド)関数に通して0から1の範囲に変換し、「そのクラスに属する確率」として出力して、最も確率の高いクラスに分類します。
身近な例えでいうと、健康診断の問診票の点数化です。年齢や検査値に重みを付けて合計点を出すところまでは線形回帰と同じですが、ロジスティック回帰はその合計点を「発症確率は78%」のような0〜100%の確率に変換してくれます。確率が出るからこそ、「50%を超えたら要精密検査」のようにカテゴリの判定(分類)に使えるのです。
🖼 1枚でわかるロジスティック回帰
📘 公式テキストの説明
線形回帰を分類問題に応用したアルゴリズム。対数オッズを重回帰分析により予測して、ロジスティック(シグモイド)関数で変換することで出力の正規化によって予測値を求めることで、最大確率を実現するクラスをデータが属するクラスと判定する。目的関数は尤度関数を用いる。ロジット変換を行うことで、出力値が正規化される。3種類以上の分類は、ソフトマックス関数を使う。
一読すると用語が密集していますが、流れは「線形回帰で数値を作る→シグモイド関数で0〜1の確率に直す→確率が最大のクラスに判定する」の3段階です。「対数オッズ」「ロジット変換」「尤度関数」「ソフトマックス関数」という4つの用語は、それぞれ次の節でかみ砕きます。
🔍 しっかり理解する
なぜ線形回帰のままでは分類できないのか
線形回帰は入力の重み付き合計で数値を予測するモデルで、出力はマイナス無限大からプラス無限大まで、どんな値でも取りえます。しかし分類で欲しいのは「クラスに属する確率」、つまり0〜1に収まる値です。合計点が3.7とか-12.4では、確率として解釈できません。
そこで登場するのがロジスティック(シグモイド)関数です。この関数はどんな実数を入れても出力が必ず0と1の間に収まる、なだらかなS字カーブを描きます。線形回帰の出力をシグモイド関数に通すことで「出力の正規化」が行われ、確率として読める値になります。2クラス分類なら「確率0.5以上ならクラスA、未満ならクラスB」のように、最大確率のクラスへ判定します。
対数オッズとロジット変換
「オッズ」とは、ある事象が起こる確率pと起こらない確率(1-p)の比、つまり p / (1-p) のことです。確率50%ならオッズは1、90%なら9になります。この対数を取ったものが「対数オッズ」で、確率(0〜1)と違ってマイナス無限大からプラス無限大まで自由に動けるため、線形式(重回帰)で予測する対象としてちょうどよい形になります。
確率を対数オッズに変換する操作をロジット変換と呼び、その逆向きの変換がちょうどシグモイド関数にあたります。つまり「線形式で対数オッズを予測し、シグモイド関数で確率に戻す」という往復関係が、ロジスティック回帰の数学的な骨組みです。
尤度関数とソフトマックス関数
パラメータ(重み)の学習では、「手元の学習データが観測される確率を最も高くするパラメータ」を探します。この「データの説明力」を測る関数が尤度(ゆうど)関数で、公式テキストの「目的関数は尤度関数を用いる」はこのことを指します。線形回帰が二乗誤差を最小化するのに対し、ロジスティック回帰は尤度を最大化する(最尤推定)という違いがあります。
また、2クラスまでならシグモイド関数で足りますが、3種類以上の分類ではソフトマックス関数を使います。ソフトマックス関数は各クラスのスコアを「合計すると1になる確率の組」に変換する関数で、シグモイド関数の多クラス版といえます。ニューラルネットワークの出力層でも同じ使い分けが登場するので、ここで理解しておくと後の章でも役立ちます。
💡 具体例で考える
ロジスティック回帰は医療分野で古くから使われてきました。たとえば疫学研究で「喫煙の有無・年齢・血圧などから、ある疾患の発症確率を予測する」モデルを作る場合、ロジスティック回帰が定番です。理由は確率がそのまま出ることに加え、学習された重みから「この因子はオッズを何倍にするか(オッズ比)」を読み取れるため、「喫煙は発症オッズを約2倍にする」といった解釈のしやすい結論を出せるからです。予測精度だけでなく説明のしやすさが求められる分野で強みを発揮します。
もう1つの例は、Webサービスのクリック率(CTR)予測です。広告配信では「このユーザーがこの広告をクリックする確率」を大量・高速に見積もる必要があり、シンプルで計算が軽く、確率を直接出力できるロジスティック回帰が長年の定番手法として使われてきました。深層学習が普及した現在でも、ベースラインモデルとしてまず試される存在です。
⚠️ よくある誤解・紛らわしい用語
- 「回帰問題を解く手法」ではない: 名前に反して、ロジスティック回帰は分類問題のアルゴリズムです。「回帰」の名は、内部で対数オッズを回帰(線形式で予測)していることの名残と理解しましょう。
- 線形回帰との混同: 線形回帰は連続値をそのまま出力(目的関数は二乗誤差が代表)、ロジスティック回帰は確率を出力して分類(目的関数は尤度関数)です。出力と目的関数がセットで異なります。
- シグモイド関数とソフトマックス関数の使い分け: 2クラス分類はシグモイド関数、3種類以上の多クラス分類はソフトマックス関数です。逆に覚えると正誤問題で失点します。
- 出力の確率を過信しない: 出力は「モデルが見積もった確率」であり、現実の頻度と常に一致する保証はありません。判定のしきい値(0.5など)も用途に応じて調整されます。
📝 試験でのポイント
- 「線形回帰を分類問題に応用したアルゴリズム」という定義文は最頻出の問われ方です。「回帰問題に応用」とすり替えた誤答に注意しましょう。
- 「対数オッズを重回帰分析により予測」「シグモイド関数で正規化」「目的関数は尤度関数」という公式説明のキーワードが、そのまま穴埋めになる形を想定してください。
- 「3種類以上の分類にはソフトマックス関数」という対応は、単独の正誤問題としても出やすいポイントです。
- 「名前は回帰だが実際は分類」という性質そのものが引っかけ選択肢の素材になります。落ち着いて用途で判断しましょう。
📚 まとめ
ロジスティック回帰は、線形回帰の仕組みを土台に、対数オッズを重回帰で予測しシグモイド関数で0〜1の確率へ正規化することで分類を行うアルゴリズムです。学習の目的関数には尤度関数を用い、3種類以上の分類にはソフトマックス関数を使います。「名前は回帰・中身は分類」という紛らわしさこそが試験の狙いどころなので、変換の流れ(線形式→シグモイド→確率→判定)を筋道で覚えておきましょう。
