ナイーブベイズとロジスティック回帰は、どちらも2値分類の定番手法です。そして不思議なことに、両者はしばしばまったく同じ形の決定境界(直線)を引きます。それなら中身も同じなのでしょうか? いいえ、正反対です。この2つは、機械学習を二分する2つの世界観——生成モデル(generative model) と 識別モデル(discriminative model)——のそれぞれの代表選手なのです。
「同じ形の境界を引くのに、発想は正反対」。この一見矛盾したペアを理解すると、次のような実務の疑問にすべて答えられるようになります。
- データが少ないとき、どちらを選ぶべきか?
- 特徴どうしが強く相関しているとき、どちらが有利か?
- 予測確率をそのまま「信頼度」として使ってよいのはどちらか?
- 欠損値やオンライン更新に強いのはどちらか?
この比較は、Ng と Jordan の有名な論文 “On Discriminative vs. Generative Classifiers”(2001年)で理論的に整理され、いまも機械学習を学ぶうえで欠かせない基礎になっています。ナイーブベイズは 前回の記事 で原理を解説しました。本記事はその続編として、ロジスティック回帰との違いに焦点を絞ります。
本記事の内容
- 生成モデルと識別モデルという2つの世界観
- なぜ同じ関数形(線形+シグモイド)になるのか
- 学習法の違い(閉形式 vs 勾配降下)
- バイアスとサンプル効率のトレードオフ(Ng&Jordan)
- 相関・欠損・確率校正での挙動の違い
- どちらをいつ使うか
前提知識
この記事を読む前に、以下の記事を読んでおくと理解が深まります。
生成モデルと識別モデル — 2つの世界観
分類の目標は、観測 $\bm{x}$ からクラス $y$ を当てる、すなわち事後確率 $P(y\mid\bm{x})$ を知ることです。ここへのアプローチが根本的に2つに分かれます。

生成モデル(ナイーブベイズ) は、遠回りをします。まず「各クラスがどんなデータを生み出すか」$P(\bm{x}\mid y)$ と、そのクラスの起こりやすさ $P(y)$ をモデル化します。そしてベイズの定理でひっくり返して $P(y\mid\bm{x})$ を得ます。データが「どう生成されるか」を丸ごと理解しようとする立場です。
識別モデル(ロジスティック回帰) は、直球です。$P(\bm{x}\mid y)$ には一切踏み込まず、知りたい $P(y\mid\bm{x})$ を 直接 モデル化します。「データがどう生まれるか」には興味がなく、「クラスを分ける境界だけ」に全リソースを注ぎます。
もう少し形式的に言うと、生成モデルは同時分布 $P(\bm{x},y)=P(\bm{x}\mid y)P(y)$ をモデル化します。$\bm{x}$ と $y$ が「どうペアで生成されるか」の完全な確率モデルを持つので、原理的にはこのモデルから新しいデータ $(\bm{x},y)$ を生成することさえできます(”生成モデル”の名の由来)。一方、識別モデルは条件付き分布 $P(y\mid\bm{x})$ だけをモデル化し、$\bm{x}$ 自体がどう分布するか $P(\bm{x})$ には踏み込みません。分類に必要なのは $P(y\mid\bm{x})$ だけなのだから、それだけを狙い撃ちする——これが識別モデルの割り切りです。
たとえるなら、2つの言語を聞き分けたいとき、生成モデルは「両方の言語を丸ごと習得してから、どちらの言語で書かれた文章かを判断する」やり方、識別モデルは「2言語を区別する特徴(音や単語)だけを覚える」やり方です。前者は多くを学びますが手間がかかり、後者は目的に直結していて効率的です。

1次元で見ると違いが鮮明です。左(生成)は、正常とスパムそれぞれの分布の「山」を推定し、あとで比較します。右(識別)は、山には関心を持たず、事後確率 $P(\text{スパム}\mid x)$ のS字カーブと、それが $0.5$ を横切る境界だけを直接引きます。同じ判定をするのに、見ているものがまるで違うのです。
この発想の違いにもかかわらず、両者が同じ形の境界を引くという事実から見ていきましょう。
驚きの共通点 — 同じ関数形になる
前回の記事 で、ナイーブベイズの対数オッズは特徴の線形結合になることを示しました。
$$ \log\frac{P(y=1\mid\bm{x})}{P(y=0\mid\bm{x})} = b + \sum_{i=1}^{d} w_i x_i \quad\Longrightarrow\quad P(y=1\mid\bm{x}) = \sigma\!\left(b + \bm{w}^\top\bm{x}\right) $$
これは ロジスティック回帰の定義式そのもの です。等分散のガウスナイーブベイズや、ベルヌーイナイーブベイズは、ロジスティック回帰とまったく同じ「線形+シグモイド」の関数形を持ちます。つまり両者は、同じ形をした分類器の係数の決め方が違うだけ、とも言えるのです。
なぜガウスナイーブベイズで線形になるのか、両クラスの分散が等しい場合を確かめておきましょう。各特徴を $P(x_i\mid y)=\mathcal{N}(\mu_{iy},\sigma_i^2)$(分散はクラス共通 $\sigma_i^2$)とすると、対数尤度比は
$$ \log\frac{P(x_i\mid y=1)}{P(x_i\mid y=0)} = -\frac{(x_i-\mu_{i1})^2}{2\sigma_i^2} + \frac{(x_i-\mu_{i0})^2}{2\sigma_i^2} $$
となります。分子を展開すると $x_i^2$ の項が両方に現れて打ち消し合い、$x_i$ の1次の項だけが残ります。整理すると
$$ \log\frac{P(x_i\mid y=1)}{P(x_i\mid y=0)} = \underbrace{\frac{\mu_{i1}-\mu_{i0}}{\sigma_i^2}}_{w_i}\,x_i + (\text{定数}) $$
と、$x_i$ について線形になります。分散がクラスで異なると $x_i^2$ の項が消えずに残り、境界は2次曲線になる——ちょうど 判別分析 の線形判別(LDA)と2次判別(QDA)の違いに対応します。重み $w_i=(\mu_{i1}-\mu_{i0})/\sigma_i^2$ は「2クラスの平均がどれだけ離れているかを、その特徴のばらつきで割ったもの」で、直感どおり「クラスをよく分ける特徴ほど重みが大きい」形をしています。

左は、ナイーブベイズの仮定(特徴が条件付き独立で等分散のガウス)が実際に成り立つデータです。このとき2つの決定境界はほぼ完全に重なります(どちらも精度0.96)。ナイーブベイズが置く仮定が正しければ、両者は同じ最適解にたどり着くのです。
右は、特徴が強く相関したデータです。ナイーブベイズは「独立」と思い込んでいるので、相関を無視した位置に境界を引き、最適な向きから傾いてしまいます。ロジスティック回帰は境界を直接調整するので、相関があってもうまく合わせられます。仮定が崩れたときに差が出る——これが両者の分かれ目です。
ここに、両者の関係の本質があります。ナイーブベイズは、$P(\bm{x}\mid y)$ の形(独立な等分散ガウス)を先に仮定し、その枠の中で重み $\bm{w}$ を間接的に決めます。だから、その仮定が現実と合っていれば最適な重みが得られますが、合っていなければ仮定に縛られたぶんだけ最適からずれる。対してロジスティック回帰は、$P(\bm{x}\mid y)$ の形を仮定しないので、同じ線形+シグモイドの枠の中で 分類誤差を最小にする重みを直接探し当てます。要するに「同じ地図(線形境界)を持っていても、ナイーブベイズは仮定というコンパスに従って進み、ロジスティック回帰はゴール(低い誤差)を見て最短で進む」。仮定が正しければ両者は同じ場所に着き、正しくなければ後者のほうがゴールに近づけるのです。
同じ形なのに係数の決め方が違う。その「決め方」を具体的に見てみましょう。
学習法の違い — 閉形式 vs 勾配降下
係数の求め方は、生成・識別の思想の違いをそのまま反映します。

ナイーブベイズは、各クラスの分布のパラメータを 数えるだけ で求められます。ガウスナイーブベイズなら、各クラス・各特徴の平均は標本平均、分散は標本分散、事前確率はクラスの出現割合——すべて閉形式で、データを1回スキャンすれば完了します。反復も最適化も要りません。これは生成モデルが「各クラスを別々にモデル化する」ため、クラスごとに独立して推定できるからです。
ロジスティック回帰には、そんな閉形式解はありません。条件付き対数尤度(交差エントロピー)を最大化する重み $\bm{w}$ を、勾配降下法などで反復的に探します。右の図は、反復のたびに損失が下がって収束していく様子です。境界を直接最適化するというアプローチの代償として、解析的には解けず、計算が反復になります。
両者が推定するパラメータの「数え方」も対照的です。$d$ 次元のガウスナイーブベイズは、各クラス・各特徴について平均と分散を持つので $2d$ 個ずつ、2クラスで $4d$ 個ほどのパラメータを推定します。一見多そうですが、それぞれが1次元の統計量として独立に推定されるので、1つあたりに必要なデータは少なくて済みます。ロジスティック回帰のパラメータは重み $\bm{w}$ と切片で $d+1$ 個と少ないものの、すべてを連立で同時に最適化するため、個々の重みの推定には他の重みとの兼ね合いが絡み、より多くのデータを要します。「パラメータ数が少ない=データが少なくて済む」とは限らないのが面白いところです。
この学習法の違いが、次に見る「データ量に対する強さ」の違いを生みます。
トレードオフの核心 — バイアスとサンプル効率
ここが両者の関係の最も深い部分です。Ng と Jordan が示したのは、次のトレードオフでした。
- ナイーブベイズ(生成):独立という強い仮定を置くぶん、その仮定が間違っていると 漸近的な誤差(バイアス)が高くなる。しかしパラメータを各特徴で独立に推定するため 分散が小さく、少ないデータで速く収束する。
- ロジスティック回帰(識別):仮定が少ないぶん 漸近的な誤差が低い(データが十分あれば高精度)。しかし多くのパラメータを同時に合わせるため 分散が大きく、収束に多くのデータを要する。

模式的に描くとこうなります。ナイーブベイズ(赤)は少ないデータで素早く誤差が下がりますが、独立仮定のぶん高めの誤差床で頭打ちになります。ロジスティック回帰(青)は立ち上がりが遅いものの、十分なデータがあればより低い誤差床に到達します。両者はどこかで クロスオーバー し、それより少なければナイーブベイズ、多ければロジスティック回帰が有利、という住み分けになります。
これは概念図ですが、実データでも同じ現象が確認できます。

左は、ナイーブベイズの仮定(条件付き独立)がほぼ成り立つ高次元データでの学習曲線です。ナイーブベイズはわずか数十サンプルで精度0.70に達し、ロジスティック回帰(少データで0.62)を引き離しています。データが増えると両者は同程度(約0.88)に収束します。仮定が正しければ、ナイーブベイズは少データで圧倒的に効率的です。
右は、独立仮定が崩れる相関データでの学習曲線です。今度は逆で、ロジスティック回帰が最終的に精度0.82に達するのに対し、ナイーブベイズは独立仮定のバイアスで0.70程度で頭打ちになります。仮定が崩れると、データが増えるほどロジスティック回帰に軍配が上がるのです。この2枚が、Ng&Jordanのトレードオフの両面を実データで示しています。
Ng と Jordan は、この直感を理論的にも裏づけました。彼らの結果を大づかみに言うと、ナイーブベイズが自分の(漸近的な)性能に達するのに必要なサンプル数は特徴次元 $d$ に対して $O(\log d)$ 程度であるのに対し、ロジスティック回帰は $O(d)$ を要する、というものです。つまり 高次元になるほど、少データでのナイーブベイズの優位が効いてくる。テキスト分類のように特徴(単語)が数万次元あってデータが限られる問題で、ナイーブベイズが今も強力なベースラインであり続ける理由がここにあります。
生成モデルだからこそ手に入るもの
「同じ境界を引くならロジスティック回帰でよいのでは」と思うかもしれません。しかし生成モデルには、識別モデルにはない副産物があります。$P(\bm{x}\mid y)$ をモデル化しているおかげで、ナイーブベイズは「そのデータがそもそもどのクラスからも生まれそうにない(=どちらの山からも遠い)」ことを検知でき、新規性検知・外れ値検知に転用できます。また、ラベルのないデータでも $P(\bm{x})$ の情報を使えるため 半教師あり学習 と相性がよく、前述のとおり 欠損値 も尤度の積から外すだけで自然に扱えます。識別モデルは境界に全リソースを注ぐぶん、これらの副産物は持ちません。「余計なことまで学ぶ」生成モデルの遠回りは、状況によっては強みに変わります。
精度以外にも、実務で効いてくる違いがいくつもあります。
実務での違い

表にまとめた観点を、いくつか補足します。
確率の信頼性(校正):ナイーブベイズは、相関した特徴を「独立な証拠」として二重に数えてしまうため、予測確率を $0$ や $1$ に張り付けがちです(過信)。前回の記事で見たとおり、対数オッズは各特徴の証拠の足し算でした。相関する特徴が同じ証拠を何度も投じると、この和が過剰にふくらみ、シグモイドを通した確率が極端な値に飽和してしまうのです。分類の正誤はそれでも合うことが多い(必要なのは符号だけ)のですが、予測確率を「その予測がどれだけ確からしいか」の数値として使いたい場合(リスク評価やしきい値調整)には注意が必要です。ロジスティック回帰は条件付き確率そのものを最適化の対象にするので、比較的よく校正された確率を出します。予測確率をそのまま意思決定に使いたいなら、ロジスティック回帰か、ナイーブベイズの出力を後段で校正(Plattスケーリングや等調回帰)するのが定石です。
欠損値:ナイーブベイズは尤度が各特徴の積なので、欠けている特徴は単に積から外せば、残りの特徴だけで自然に判定できます。ロジスティック回帰は $\bm{w}^\top\bm{x}$ の内積を計算するため、欠損値は基本的に補完が必要です。
オンライン更新:ナイーブベイズは、新しいデータが来たら出現回数のカウントを足すだけで更新できます。ストリーミングデータに向きます。ロジスティック回帰は再学習か確率的勾配降下による更新が必要です。
相関特徴・外れ値:相関した特徴を足すと、ナイーブベイズは二重カウントで確率がゆがみます。たとえば「無料」と「フリー」のようにほぼ同じ意味の単語が2つあると、ナイーブベイズはそれを2つの独立な証拠として数え、証拠を過大評価します。ロジスティック回帰は重みを連立で最適化するので、片方の重みを自動的に小さくして二重カウントを避けられますし、正則化で外れ値の影響も緩和できます。
解釈性:どちらも係数を持ち解釈しやすい部類ですが、意味合いが異なります。ナイーブベイズの重みは「各特徴がクラスごとにどう分布するか」という周辺的な情報を反映します。ロジスティック回帰の重みは「他の特徴を固定したときの、その特徴の条件付きの寄与」を表します。相関がある状況では後者のほうが「効いている特徴」を素直に示すため、特徴の重要度を議論したいときはロジスティック回帰の係数のほうが扱いやすいことが多いです。
これらを踏まえて、実際にどちらを選べばよいかを整理します。
どちらを使うか

大まかな目安は「データ量」と「特徴間の相関」の2軸で考えるとよいです。
- ナイーブベイズが向く場面:データが少ない、特徴の次元が高い(テキスト分類など)、高速な学習・更新が必要、まずベースラインを素早く作りたい
- ロジスティック回帰が向く場面:データが潤沢にある、特徴どうしが相関している、校正された確率が欲しい、係数の解釈(各特徴の寄与)を重視したい
実務では「まずナイーブベイズで手早くベースラインを作り、データが増えてきたらロジスティック回帰(やより強力なモデル)に移行する」という流れがよく取られます。
具体的な場面で考えてみましょう。スパムフィルタは、単語という数万次元の特徴を持ち、しかも新しいメールが次々流れてくるオンライン環境です。高次元・要オンライン更新というこの性質は、まさにナイーブベイズの得意分野で、実際に初期のスパムフィルタはナイーブベイズが定番でした。一方、医療診断で少数の検査値(年齢・血圧・血糖値など)から疾患の有無を予測する場面では、特徴数が少なく、検査値どうしは相関し、しかも「陽性確率が0.6なのか0.9なのか」という校正された確率が意思決定に直結します。ここではロジスティック回帰のほうが適しています。同じ2値分類でも、問題の性質が手法の向き不向きを決めるのです。

3つの場面で両者の精度を比べると、勝敗が状況しだいで入れ替わることがわかります。仮定が成り立つデータではほぼ互角、相関のあるデータでもこの例では拮抗、そして高次元・少データではナイーブベイズ(0.70)がロジスティック回帰(0.62)を明確に上回ります。「どちらが優れているか」ではなく「どちらがこの状況に合うか」で選ぶべきなのです。この結果は、これまで見てきたトレードオフ——仮定が正しければ両者は一致し、仮定が崩れかつデータが多ければロジスティック回帰、高次元で少データならナイーブベイズ——を一枚に凝縮したものと言えます。どちらも道具箱に入れておき、目の前のデータの性質(量・次元・相関・確率が必要か)で使い分けるのが、最も賢い付き合い方です。
まとめ
本記事では、ナイーブベイズとロジスティック回帰の違いを、生成モデルと識別モデルの視点から比較しました。
- 2つの世界観 — 生成モデル(NB)は $P(\bm{x}\mid y)$ を丸ごと学びベイズで反転、識別モデル(LR)は $P(y\mid\bm{x})$ を直接学ぶ
- 同じ関数形 — 等分散ガウス/ベルヌーイのNBはLRと同じ線形+シグモイド。仮定が成り立てば境界は一致し、崩れるとずれる
- 学習法 — NBは閉形式(数えるだけ・速い)、LRは勾配降下の反復
- Ng&Jordanのトレードオフ — NBは高バイアス・低分散で少データに強く、LRは低バイアス・高分散で大データに強い。クロスオーバーがある
- 実務の違い — NBは欠損・オンライン更新に強いが確率は過信しがち。LRは校正がよく相関に強いが学習コストが高い
- 選び方 — 少データ・高次元ならNB、大データ・相関ありならLR。ベースラインはNB、本番はLRという流れが定石
生成モデルと識別モデルの対比は、ナイーブベイズとロジスティック回帰にとどまりません。線形判別分析(生成)とサポートベクターマシン(識別)、隠れマルコフモデル(生成)と条件付き確率場(識別)など、機械学習のあちこちに同じ構図が現れます。近年の大規模言語モデルのような生成モデルの隆盛も、「データの生成過程を丸ごと学ぶ」という生成的発想の系譜の上にあります。この2つの世界観を押さえておくと、新しい手法に出会ったときも「これはどちらの発想だろう」と見通しを立てられるようになります。
次のステップとして、以下の記事も参考にしてください。