確率的分類アルゴリズム
ベイジアンネットワークとして表現された単純ベイズ分類器の例
統計学 において 、 ナイーブベイズ分類器は、対象クラスが与えられた場合に特徴が条件付きで独立していると仮定する線形「 確率分類器 」のファミリーです 。この仮定の強さ(ナイーブさ)が分類器の名前の由来です。これらの分類器は、最も単純な ベイジアンネットワーク モデルの1つです。 [1]
ナイーブベイズ分類器は拡張性が高く、学習問題における変数(特徴量/予測子)の数に比例するパラメータ数を必要とします。 最大尤度 トレーニングは、他の多くの分類器で使用される
高価な 反復近似 ではなく、 線形 時間で 閉形 式式 を評価することによって実行できます。 [2] : 718
統計学の 文献では、ナイーブベイズモデルは、 単純ベイズ や 独立ベイズ など、さまざまな名前で知られています 。 [3] これらの名前はすべて、分類器の決定ルールで ベイズの定理を使用していることを示していますが、ナイーブベイズは(必ずしも) ベイズ 法ではありません 。 [2] [3]
導入
ナイーブ ベイズは、分類器を構築するためのシンプルな手法です。分類器は、問題インスタンスにクラス ラベルを割り当てるモデルで、クラス ラベルは有限セットから抽出され、 特徴値のベクトルとして表されます。このような分類器をトレーニングするための単一の アルゴリズム はありませんが 、共通の原則に基づくアルゴリズム ファミリがあります。つまり、すべてのナイーブ ベイズ分類器は、クラス変数が与えられた場合、特定の特徴の値は他の特徴の値とは 無関係で あると想定します。たとえば、果物が赤く、丸く、直径が約 10 cm の場合、それはリンゴであるとみなされます。ナイーブ ベイズ分類器は、 色、丸み、直径の特徴間の
相関関係に関係なく、これらの特徴のそれぞれが、この果物がリンゴである確率に独立して寄与しているとみなします。
多くの実際のアプリケーションでは、ナイーブ ベイズ モデルのパラメータ推定に最大尤度 法が使用されます 。つまり、 ベイズ確率 を受け入れたり、ベイズ法を使用したりせずに、ナイーブ ベイズ モデルを操作できます。
ナイーブベイズ分類器は、その素朴な設計と、明らかに単純化しすぎた仮定にもかかわらず、多くの複雑な現実世界の状況で非常にうまく機能してきました。2004年に行われたベイズ分類問題の分析では、ナイーブベイズ分類器の一見信じ難い 有効性 には、しっかりとした理論的根拠があることが示されました。 [4]それでも、2006年に行われた他の分類アルゴリズムとの包括的な比較では、ベイズ分類は ブーストツリー や ランダムフォレスト などの他のアプローチよりも優れていることが示されました 。 [5]
ナイーブベイズの利点は、分類に必要なパラメータを推定するのに少量のトレーニングデータしか必要としないことである。 [6]
確率モデル
抽象的には、ナイーブベイズは 条件付き確率 モデルです。分類すべき問題インスタンスを与えられた場合に、 K個 の可能な結果または クラス のそれぞれに 確率を割り当てます。これは、 n 個の特徴(独立変数) をエンコードしたベクトルによって表されます。 [7]
p
(
C
け
∣
x
1
、
…
、
x
ん
)
{\displaystyle p(C_{k}\mid x_{1},\ldots ,x_{n})}
C
け
{\displaystyle C_{k}}
x
=
(
x
1
、
…
、
x
ん
)
{\displaystyle \mathbf {x} =(x_{1},\ldots ,x_{n})}
上記の定式化の問題点は、特徴の数 n が大きい場合、または特徴が多数の値を取る可能性がある場合、そのようなモデルを 確率表に基づいて作成することは実行不可能であるということです。したがって、モデルはより扱いやすいように再定式化する必要があります。 ベイズの定理を 使用すると 、条件付き確率は次のように分解できます。
p
(
C
け
∣
x
)
=
p
(
C
け
)
p
(
x
∣
C
け
)
p
(
x
)
{\displaystyle p(C_{k}\mid \mathbf {x} )={\frac {p(C_{k})\ p(\mathbf {x} \mid C_{k})}{p(\mathbf {x} )}}\,}
平易な英語で、 ベイズ確率の 用語を使って、上記の式は次のように書くことができる。
後部
=
前
×
可能性
証拠
{\displaystyle {\text{事後確率}}={\frac {{\text{事前確率}}\times {\text{尤度}}}{\text{証拠}}}\,}
実際には、分数の分子にのみ関心があります。分母は に依存せず 、特徴の値 が与えられているため、分母は実質的に一定です。分子は、 条件付き確率 の定義を繰り返し適用するための 連鎖律
を使用して、次のように書き直すことができる 結合確率 モデル
に相当します 。
C
{\displaystyle C}
x
私
{\displaystyle x_{i}}
p
(
C
け
、
x
1
、
…
、
x
ん
)
{\displaystyle p(C_{k},x_{1},\ldots ,x_{n})\,}
p
(
C
k
,
x
1
,
…
,
x
n
)
=
p
(
x
1
,
…
,
x
n
,
C
k
)
=
p
(
x
1
∣
x
2
,
…
,
x
n
,
C
k
)
p
(
x
2
,
…
,
x
n
,
C
k
)
=
p
(
x
1
∣
x
2
,
…
,
x
n
,
C
k
)
p
(
x
2
∣
x
3
,
…
,
x
n
,
C
k
)
p
(
x
3
,
…
,
x
n
,
C
k
)
=
⋯
=
p
(
x
1
∣
x
2
,
…
,
x
n
,
C
k
)
p
(
x
2
∣
x
3
,
…
,
x
n
,
C
k
)
⋯
p
(
x
n
−
1
∣
x
n
,
C
k
)
p
(
x
n
∣
C
k
)
p
(
C
k
)
{\displaystyle {\begin{aligned}p(C_{k},x_{1},\ldots ,x_{n})&=p(x_{1},\ldots ,x_{n},C_{k})\\&=p(x_{1}\mid x_{2},\ldots ,x_{n},C_{k})\ p(x_{2},\ldots ,x_{n},C_{k})\\&=p(x_{1}\mid x_{2},\ldots ,x_{n},C_{k})\ p(x_{2}\mid x_{3},\ldots ,x_{n},C_{k})\ p(x_{3},\ldots ,x_{n},C_{k})\\&=\cdots \\&=p(x_{1}\mid x_{2},\ldots ,x_{n},C_{k})\ p(x_{2}\mid x_{3},\ldots ,x_{n},C_{k})\cdots p(x_{n-1}\mid x_{n},C_{k})\ p(x_{n}\mid C_{k})\ p(C_{k})\\\end{aligned}}}
ここで、「単純な」 条件付き独立性の 仮定が作用します。つまり、 内のすべての特徴が 、カテゴリ を条件として 相互に独立していると 仮定します 。この仮定の下では、
x
{\displaystyle \mathbf {x} }
C
k
{\displaystyle C_{k}}
p
(
x
i
∣
x
i
+
1
,
…
,
x
n
,
C
k
)
=
p
(
x
i
∣
C
k
)
.
{\displaystyle p(x_{i}\mid x_{i+1},\ldots ,x_{n},C_{k})=p(x_{i}\mid C_{k})\,.}
したがって、ジョイントモデルは
次のように表すことができます 。
ここで、 分母は省略されているため、は 比例を 表します。
p
(
C
k
∣
x
1
,
…
,
x
n
)
∝
p
(
C
k
,
x
1
,
…
,
x
n
)
=
p
(
C
k
)
p
(
x
1
∣
C
k
)
p
(
x
2
∣
C
k
)
p
(
x
3
∣
C
k
)
⋯
=
p
(
C
k
)
∏
i
=
1
n
p
(
x
i
∣
C
k
)
,
{\displaystyle {\begin{aligned}p(C_{k}\mid x_{1},\ldots ,x_{n})\varpropto \ &p(C_{k},x_{1},\ldots ,x_{n})\\&=p(C_{k})\ p(x_{1}\mid C_{k})\ p(x_{2}\mid C_{k})\ p(x_{3}\mid C_{k})\ \cdots \\&=p(C_{k})\prod _{i=1}^{n}p(x_{i}\mid C_{k})\,,\end{aligned}}}
∝
{\displaystyle \varpropto }
p
(
x
)
{\displaystyle p(\mathbf {x} )}
これは、上記の独立性の仮定の下で、クラス変数上の条件付き分布が次のように なることを意味します。
ここで、証拠は のみに依存するスケーリング係数 、つまり、特徴変数の値がわかっている場合は定数です。
C
{\displaystyle C}
p
(
C
k
∣
x
1
,
…
,
x
n
)
=
1
Z
p
(
C
k
)
∏
i
=
1
n
p
(
x
i
∣
C
k
)
{\displaystyle p(C_{k}\mid x_{1},\ldots ,x_{n})={\frac {1}{Z}}\ p(C_{k})\prod _{i=1}^{n}p(x_{i}\mid C_{k})}
Z
=
p
(
x
)
=
∑
k
p
(
C
k
)
p
(
x
∣
C
k
)
{\displaystyle Z=p(\mathbf {x} )=\sum _{k}p(C_{k})\ p(\mathbf {x} \mid C_{k})}
x
1
,
…
,
x
n
{\displaystyle x_{1},\ldots ,x_{n}}
確率モデルから分類器を構築する
これまでの議論では、独立した特徴モデル、つまりナイーブベイズ 確率モデル を導出しました。ナイーブベイズ 分類器は 、このモデルを 決定ルール と組み合わせます。一般的なルールの 1 つは、誤分類の確率を最小限に抑えるために最も可能性の高い仮説を選択することです。これは、 最大 事後確率 または MAP 決定ルールとして知られています。対応する分類器である ベイズ分類 器は、次のように
k に クラスラベルを割り当てる関数です。
y
^
=
C
k
{\displaystyle {\hat {y}}=C_{k}}
y
^
=
argmax
k
∈
{
1
,
…
,
K
}
p
(
C
k
)
∏
i
=
1
n
p
(
x
i
∣
C
k
)
.
{\displaystyle {\hat {y}}={\underset {k\in \{1,\ldots ,K\}}{\operatorname {argmax} }}\ p(C_{k})\displaystyle \prod _{i=1}^{n}p(x_{i}\mid C_{k}).}
尤度関数 、 混同行列 、 ROC曲線 。単純ベイズ分類器の場合、事前確率が すべてのクラスで同じであるとすると、 決定境界 (緑の線)は、 により、2つの確率密度が交差する点に配置されます 。
p
(
x
∣
Y
)
{\displaystyle p(\mathbf {x} \mid Y)}
p
(
Y
)
{\displaystyle p(Y)}
p
(
Y
∣
x
)
=
p
(
Y
)
p
(
x
∣
Y
)
p
(
x
)
∝
p
(
x
∣
Y
)
{\displaystyle p(Y\mid \mathbf {x} )={\frac {p(Y)\ p(\mathbf {x} \mid Y)}{p(\mathbf {x} )}}\propto p(\mathbf {x} \mid Y)}
パラメータ推定とイベントモデル
クラスの事前分布は、等確率クラス、すなわち と仮定して計算する か、トレーニングセットからクラス確率の推定値を計算することによって計算できます。
特徴の分布のパラメータを推定するには、分布を仮定するか、 トレーニングセットから特徴の ノンパラメトリック モデル
を生成する必要があります。 [8]
p
(
C
k
)
=
1
K
{\displaystyle p(C_{k})={\frac {1}{K}}}
prior for a given class
=
no. of samples in that class
total no. of samples
{\displaystyle {\text{prior for a given class}}={\frac {\text{no. of samples in that class}}{\text{total no. of samples}}}\,}
特徴の分布に関する仮定は、ナイーブベイズ分類器の「イベントモデル」と呼ばれます。文書分類(スパムフィルタリングを含む)で遭遇するような離散的な特徴の場合、 多項分布 と ベルヌーイ 分布が一般的です。これらの仮定は、しばしば混同される2つの異なるモデルにつながります。 [9] [10]
ガウスナイーブベイズ
連続データを扱う場合、各クラスに関連付けられた連続値は 正規 分布(またはガウス分布)に従って分布しているという仮定が一般的です。たとえば、トレーニング データに連続属性 が含まれているとします 。データは最初にクラス でセグメント化され、次に各クラスで の平均と 分散 が 計算されます。を クラス に関連付けられた 値の平均とし 、 を クラス に関連付けられた 値の ベッセル 補正分散 とします。ある観測値 を収集したとします。すると、 クラス が与えられた場合 の 確率 密度 、つまり は、 および によってパラメータ化された 正規分布 の方程式に 代入することで計算できます 。正式には、
x
{\displaystyle x}
x
{\displaystyle x}
μ
k
{\displaystyle \mu _{k}}
x
{\displaystyle x}
C
k
{\displaystyle C_{k}}
σ
k
2
{\displaystyle \sigma _{k}^{2}}
x
{\displaystyle x}
C
k
{\displaystyle C_{k}}
v
{\displaystyle v}
v
{\displaystyle v}
C
k
{\displaystyle C_{k}}
p
(
x
=
v
∣
C
k
)
{\displaystyle p(x=v\mid C_{k})}
v
{\displaystyle v}
μ
k
{\displaystyle \mu _{k}}
σ
k
2
{\displaystyle \sigma _{k}^{2}}
p
(
x
=
v
∣
C
k
)
=
1
2
π
σ
k
2
e
−
(
v
−
μ
k
)
2
2
σ
k
2
{\displaystyle p(x=v\mid C_{k})={\frac {1}{\sqrt {2\pi \sigma _{k}^{2}}}}\,e^{-{\frac {(v-\mu _{k})^{2}}{2\sigma _{k}^{2}}}}}
連続値を扱うためのもう一つの一般的な手法は、ビニングを使用して特徴値を 離散化し 、ベルヌーイ分布の特徴の新しいセットを取得することです。一部の文献では、ナイーブベイズを使用するにはこれが必要であると示唆していますが、離散化によって 識別情報が失われる 可能性があるため、これは正しくありません。 [3]
クラス条件付き周辺密度の分布は、正規分布から大きく外れている場合があります。このような場合、 カーネル密度推定を 使用して、各クラスの周辺密度をより現実的に推定することができます。ジョンとラングレーによって導入されたこの方法 [8] は、分類器の精度を大幅に向上させることができます。 [11] [12]
多項式ナイーブベイズ
多項式イベントモデルでは、サンプル(特徴ベクトル)は、多項式 によって特定のイベントが生成された頻度を表します。 ここで、はイベント i が発生する確率です (または、 多クラスの場合は K 個のそのような多項式)。特徴ベクトルは ヒストグラム で、 は特定のインスタンスでイベント i が観測された回数をカウントします 。これは、ドキュメント分類によく使用されるイベントモデルで、イベントは単一のドキュメント内の単語の出現を表します( bag of words 仮定を参照)。 [13]ヒストグラム x を 観測する尤度は 次のように与えられます。
ここで 、 。
(
p
1
,
…
,
p
n
)
{\displaystyle (p_{1},\dots ,p_{n})}
p
i
{\displaystyle p_{i}}
x
=
(
x
1
,
…
,
x
n
)
{\displaystyle \mathbf {x} =(x_{1},\dots ,x_{n})}
x
i
{\displaystyle x_{i}}
p
(
x
∣
C
k
)
=
(
∑
i
=
1
n
x
i
)
!
∏
i
=
1
n
x
i
!
∏
i
=
1
n
p
k
i
x
i
{\displaystyle p(\mathbf {x} \mid C_{k})={\frac {(\sum _{i=1}^{n}x_{i})!}{\prod _{i=1}^{n}x_{i}!}}\prod _{i=1}^{n}{p_{ki}}^{x_{i}}}
p
k
i
:=
p
(
i
∣
C
k
)
{\displaystyle p_{ki}:=p(i\mid C_{k})}
多項式ナイーブベイズ分類器は 、対数空間で表現すると 線形分類器になる: [14]
ここで 、およびである 。多数の小さな値を乗算すると大きな丸め誤差が生じる可能性があるため、対数空間でパラメータを推定することは有利である。対数変換を適用すると、この丸め誤差の影響が軽減される。
log
p
(
C
k
∣
x
)
∝
log
(
p
(
C
k
)
∏
i
=
1
n
p
k
i
x
i
)
=
log
p
(
C
k
)
+
∑
i
=
1
n
x
i
⋅
log
p
k
i
=
b
+
w
k
⊤
x
{\displaystyle {\begin{aligned}\log p(C_{k}\mid \mathbf {x} )&\varpropto \log \left(p(C_{k})\prod _{i=1}^{n}{p_{ki}}^{x_{i}}\right)\\&=\log p(C_{k})+\sum _{i=1}^{n}x_{i}\cdot \log p_{ki}\\&=b+\mathbf {w} _{k}^{\top }\mathbf {x} \end{aligned}}}
b
=
log
p
(
C
k
)
{\displaystyle b=\log p(C_{k})}
w
k
i
=
log
p
k
i
{\displaystyle w_{ki}=\log p_{ki}}
特定のクラスと特徴値がトレーニング データ内で一緒に出現しない場合、頻度ベースの確率推定値は 0 になります。これは、確率推定値が特徴値の発生回数に直接比例するためです。他の確率を掛け合わせると、他の確率の情報がすべて消去されるため、これは問題となります。したがって、確率が正確に 0 に設定されないように、すべての確率推定値に 擬似カウントと呼ばれる小サンプル補正を組み込むことが望ましい場合がよくあります。このナイーブ ベイズ 正規化 方法は、擬似カウントが 1 の場合は ラプラス スムージング 、 一般的な場合は
リドストン スムージング と呼ばれます。
レニー らは、 文書分類の文脈における多項式仮定の問題点と、生の用語頻度の代わりに tf-idf重みを使用し、文書長を正規化するなど、それらの問題を軽減する可能性のある方法について議論し、 サポートベクターマシン と競合できるナイーブベイズ分類器を作成しています 。 [14]
ベルヌーイ単純ベイズ
多変量 ベルヌーイ 事象モデルでは、特徴は入力を記述する独立した ブール変数 ( バイナリ変数 )です。多項式モデルと同様に、このモデルは文書分類タスクでよく使用されます。 [9] このタスクでは、用語の頻度ではなくバイナリ用語出現特徴が使用されます。 が語彙の i 番目の用語の出現または不在を表すブール値である場合 、クラスが与えられた文書の尤度は 次のように与えられます。 [9]
ここで、 はクラスが 用語を生成する 確率です 。このイベントモデルは、短いテキストを分類する場合に特によく使用されます。用語の不在を明示的にモデル化できるという利点があります。ベルヌーイ事象モデルを使用したナイーブベイズ分類器は、頻度カウントが 1 に切り捨てられた多項式 NB 分類器と同じではないことに注意してください。
x
i
{\displaystyle x_{i}}
C
k
{\displaystyle C_{k}}
p
(
x
∣
C
k
)
=
∏
i
=
1
n
p
k
i
x
i
(
1
−
p
k
i
)
(
1
−
x
i
)
{\displaystyle p(\mathbf {x} \mid C_{k})=\prod _{i=1}^{n}p_{ki}^{x_{i}}(1-p_{ki})^{(1-x_{i})}}
p
k
i
{\displaystyle p_{ki}}
C
k
{\displaystyle C_{k}}
x
i
{\displaystyle x_{i}}
半教師ありパラメータ推定
ラベル付きデータからナイーブベイズ分類器を訓練する方法が与えられれば、教師あり学習アルゴリズムをループで実行することで、ラベル付きデータとラベルなしデータの組み合わせから学習できる 半教師あり 訓練アルゴリズムを構築することが可能です。 [15]
ラベル付きサンプル L とラベルなしサンプル U のコレクションが与えられた場合、 L で単純ベイズ分類器をトレーニングすることから始めます 。
D
=
L
⊎
U
{\displaystyle D=L\uplus U}
収束するまで、次の操作を実行します。
すべての 例 x のクラス確率を予測します 。
P
(
C
∣
x
)
{\displaystyle P(C\mid x)}
D
{\displaystyle D}
前のステップで予測された確率 (ラベルではなく) に基づいてモデルを再トレーニングします。
収束はモデル尤度の改善に基づいて決定されます 。ここで、は ナイーブベイズモデルのパラメータを表します。
P
(
D
∣
θ
)
{\displaystyle P(D\mid \theta )}
θ
{\displaystyle \theta }
このトレーニングアルゴリズムは、より一般的な期待最大化アルゴリズム (EM)の一例です 。ループ内の予測ステップはEMの E ステップであり、ナイーブベイズの再トレーニングは Mステップです。このアルゴリズムは、データが 混合モデル によって生成され、この混合モデルのコンポーネントがまさに分類問題のクラスであるという仮定によって正式に正当化されます 。 [15]
議論
広範囲にわたる独立性の仮定はしばしば不正確であるという事実にもかかわらず、ナイーブベイズ分類器は、実際には驚くほど有用となるいくつかの特性を有する。特に、クラス条件付き特徴分布の分離は、各分布を独立して 1 次元分布として推定できることを意味する。これは、特徴 の数に応じて指数関数的に拡大するデータセットの必要性など、 次元の呪いに起因する問題を軽減するのに役立つ。ナイーブベイズは正しいクラス確率の適切な推定値を生成できないことが多いが、 [16] これは多くのアプリケーションで必須ではないかもしれない。たとえば、正しいクラスが他のどのクラスよりも確率が高いと予測される限り、ナイーブベイズ分類器は正しい MAP 決定ルール分類を行う。これは、確率推定値がわずかに、あるいは大幅に不正確であるかどうかに関係なく当てはまる。このようにして、全体的な分類器は、その基礎となるナイーブ確率モデルの重大な欠陥を無視できるほど堅牢になる可能性がある。 [17] ナイーブベイズ分類器の成功のその他の理由については、以下に引用する文献で議論されている。
ロジスティック回帰との関係
離散入力(離散イベントの指標または頻度特徴)の場合、ナイーブベイズ分類器は 多項ロジスティック回帰 分類器と 生成-識別 ペアを形成します。各ナイーブベイズ分類器は、結合尤度を最適化する確率モデルを当てはめる方法と考えることができます が、ロジスティック回帰は同じ確率モデルを当てはめて条件付きを最適化します 。 [18]
p
(
C
,
x
)
{\displaystyle p(C,\mathbf {x} )}
p
(
C
∣
x
)
{\displaystyle p(C\mid \mathbf {x} )}
より正式には、次のようになります。
定理 - バイナリ特徴の単純ベイズ分類器は、ロジスティック回帰分類器に包含されます。
証拠
一般的な多クラス分類問題を考えてみましょう 。この場合、ベイズの定理により、(非ナイーブな)ベイズ分類器は次のようになります。
Y
∈
{
1
,
.
.
.
,
n
}
{\displaystyle Y\in \{1,...,n\}}
p
(
Y
∣
X
=
x
)
=
softmax
(
{
ln
p
(
Y
=
k
)
+
ln
p
(
X
=
x
∣
Y
=
k
)
}
k
)
{\displaystyle p(Y\mid X=x)={\text{softmax}}(\{\ln p(Y=k)+\ln p(X=x\mid Y=k)\}_{k})}
ナイーブベイズ分類器は
、
softmax
(
{
ln
p
(
Y
=
k
)
+
1
2
∑
i
(
a
i
,
k
+
−
a
i
,
k
−
)
x
i
+
(
a
i
,
k
+
+
a
i
,
k
−
)
}
k
)
{\displaystyle {\text{softmax}}\left(\left\{\ln p(Y=k)+{\frac {1}{2}}\sum _{i}(a_{i,k}^{+}-a_{i,k}^{-})x_{i}+(a_{i,k}^{+}+a_{i,k}^{-})\right\}_{k}\right)}
a
i
,
s
+
=
ln
p
(
X
i
=
+
1
∣
Y
=
s
)
;
a
i
,
s
−
=
ln
p
(
X
i
=
−
1
∣
Y
=
s
)
{\displaystyle a_{i,s}^{+}=\ln p(X_{i}=+1\mid Y=s);\quad a_{i,s}^{-}=\ln p(X_{i}=-1\mid Y=s)}
これはまさにロジスティック回帰分類器です。
2 つの関係は、ナイーブ ベイズの決定関数 (バイナリの場合) が「 のオッズが のオッズ を 超える 場合に クラスを予測する」と書き直せることを観察することでわかります 。これを対数空間で表現すると次のようになります。
C
1
{\displaystyle C_{1}}
p
(
C
1
∣
x
)
{\displaystyle p(C_{1}\mid \mathbf {x} )}
p
(
C
2
∣
x
)
{\displaystyle p(C_{2}\mid \mathbf {x} )}
log
p
(
C
1
∣
x
)
p
(
C
2
∣
x
)
=
log
p
(
C
1
∣
x
)
−
log
p
(
C
2
∣
x
)
>
0
{\displaystyle \log {\frac {p(C_{1}\mid \mathbf {x} )}{p(C_{2}\mid \mathbf {x} )}}=\log p(C_{1}\mid \mathbf {x} )-\log p(C_{2}\mid \mathbf {x} )>0}
この式の左側は、 ロジスティック回帰の基礎となる線形モデルによって予測される量である対数オッズ、または logit です。ナイーブ ベイズも 2 つの「離散」イベント モデルの線形モデルであるため、線形関数 として再パラメータ化できます。確率を取得するには、ロジスティック関数 を に適用する か、マルチクラスの場合は ソフトマックス関数 を 適用します 。
b
+
w
⊤
x
>
0
{\displaystyle b+\mathbf {w} ^{\top }x>0}
b
+
w
⊤
x
{\displaystyle b+\mathbf {w} ^{\top }x}
識別分類器は生成分類器よりも漸近誤差が低いが、 Ng と Jordan の研究では、いくつかの実用的なケースでは、ナイーブベイズの方が漸近誤差に早く到達するため、ロジスティック回帰よりも優れていることが示された。 [18]
例
人物分類
問題: 測定された特徴に基づいて、特定の人物が男性か女性かを分類します。特徴には、身長、体重、足のサイズが含まれます。NB 分類器では、これらを独立したものとして扱いますが、実際にはそうではありません。
トレーニング
以下にトレーニング セットの例を示します。
ガウス分布の仮定を使用してトレーニング セットから作成された分類器は次のようになります (分散は 不偏 サンプル分散 であると仮定)。
次の例では、P(男性) = P(女性) = 0.5 となるように、クラスが等確率であると想定しています。この事前 確率分布は 、より大きな集団またはトレーニング セット内の頻度に関する事前知識に基づいている可能性があります。
テスト
以下は男性または女性として分類されるサンプルです。
サンプルを分類するには、男性と女性のどちらの事後分布が大きいかを判断する必要がある。男性として分類する場合、事後分布は次のように表される。
posterior (male)
=
P
(
male
)
p
(
height
∣
male
)
p
(
weight
∣
male
)
p
(
foot size
∣
male
)
evidence
{\displaystyle {\text{posterior (male)}}={\frac {P({\text{male}})\,p({\text{height}}\mid {\text{male}})\,p({\text{weight}}\mid {\text{male}})\,p({\text{foot size}}\mid {\text{male}})}{\text{evidence}}}}
女性として分類する場合、事後確率は次のように表される。
posterior (female)
=
P
(
female
)
p
(
height
∣
female
)
p
(
weight
∣
female
)
p
(
foot size
∣
female
)
evidence
{\displaystyle {\text{posterior (female)}}={\frac {P({\text{female}})\,p({\text{height}}\mid {\text{female}})\,p({\text{weight}}\mid {\text{female}})\,p({\text{foot size}}\mid {\text{female}})}{\text{evidence}}}}
証拠(正規化定数とも呼ばれる)は次のように計算できます。
evidence
=
P
(
male
)
p
(
height
∣
male
)
p
(
weight
∣
male
)
p
(
foot size
∣
male
)
+
P
(
female
)
p
(
height
∣
female
)
p
(
weight
∣
female
)
p
(
foot size
∣
female
)
{\displaystyle {\begin{aligned}{\text{evidence}}=P({\text{male}})\,p({\text{height}}\mid {\text{male}})\,p({\text{weight}}\mid {\text{male}})\,p({\text{foot size}}\mid {\text{male}})\\+P({\text{female}})\,p({\text{height}}\mid {\text{female}})\,p({\text{weight}}\mid {\text{female}})\,p({\text{foot size}}\mid {\text{female}})\end{aligned}}}
ただし、サンプルが与えられている場合、証拠は定数であるため、両方の事後分布を均等にスケーリングします。したがって、分類には影響せず、無視できます。 これで、サンプルの性別の
確率分布 を決定できます。
ここで 、 と は、トレーニング セットから以前に決定された正規分布のパラメーターです。ここでは 1 より大きい値でも問題ないことに注意してください。 身長は 連続変数である
ため、これは確率ではなく確率密度です。
P
(
male
)
=
0.5
{\displaystyle P({\text{male}})=0.5}
p
(
height
∣
male
)
=
1
2
π
σ
2
exp
(
−
(
6
−
μ
)
2
2
σ
2
)
≈
1.5789
,
{\displaystyle p({\text{height}}\mid {\text{male}})={\frac {1}{\sqrt {2\pi \sigma ^{2}}}}\exp \left({\frac {-(6-\mu )^{2}}{2\sigma ^{2}}}\right)\approx 1.5789,}
μ
=
5.855
{\displaystyle \mu =5.855}
σ
2
=
3.5033
⋅
10
−
2
{\displaystyle \sigma ^{2}=3.5033\cdot 10^{-2}}
p
(
weight
∣
male
)
=
1
2
π
σ
2
exp
(
−
(
130
−
μ
)
2
2
σ
2
)
=
5.9881
⋅
10
−
6
{\displaystyle p({\text{weight}}\mid {\text{male}})={\frac {1}{\sqrt {2\pi \sigma ^{2}}}}\exp \left({\frac {-(130-\mu )^{2}}{2\sigma ^{2}}}\right)=5.9881\cdot 10^{-6}}
p
(
foot size
∣
male
)
=
1
2
π
σ
2
exp
(
−
(
8
−
μ
)
2
2
σ
2
)
=
1.3112
⋅
10
−
3
{\displaystyle p({\text{foot size}}\mid {\text{male}})={\frac {1}{\sqrt {2\pi \sigma ^{2}}}}\exp \left({\frac {-(8-\mu )^{2}}{2\sigma ^{2}}}\right)=1.3112\cdot 10^{-3}}
posterior numerator (male)
=
their product
=
6.1984
⋅
10
−
9
{\displaystyle {\text{posterior numerator (male)}}={\text{their product}}=6.1984\cdot 10^{-9}}
P
(
female
)
=
0.5
{\displaystyle P({\text{female}})=0.5}
p
(
height
∣
female
)
=
2.23
⋅
10
−
1
{\displaystyle p({\text{height}}\mid {\text{female}})=2.23\cdot 10^{-1}}
p
(
weight
∣
female
)
=
1.6789
⋅
10
−
2
{\displaystyle p({\text{weight}}\mid {\text{female}})=1.6789\cdot 10^{-2}}
p
(
foot size
∣
female
)
=
2.8669
⋅
10
−
1
{\displaystyle p({\text{foot size}}\mid {\text{female}})=2.8669\cdot 10^{-1}}
posterior numerator (female)
=
their product
=
5.3778
⋅
10
−
4
{\displaystyle {\text{posterior numerator (female)}}={\text{their product}}=5.3778\cdot 10^{-4}}
女性の場合、事後分子が大きいため、サンプルは女性であると予測されます。
文書分類
文書分類 問題に対するナイーブベイズ分類の実例を示します 。文書をその内容によって分類する問題、たとえば スパム メールと非スパム メールに分類する問題を考えてみましょう。文書がいくつかの文書クラスから抽出され、単語の集合としてモデル化できるとします。ここで、ある文書の i 番目の単語がクラス C の文書に出現する (独立した) 確率は次 のように表すことができます。
p
(
w
i
∣
C
)
{\displaystyle p(w_{i}\mid C)\,}
(この処理では、単語が文書内でランダムに分布していると仮定することで、さらに簡略化されます。つまり、単語は文書の長さ、他の単語との関係における文書内の位置、または他の文書のコンテキストに依存しません。)
すると、クラス C が与えられた場合、文書 Dに すべての単語が含まれる確率 は
、
w
i
{\displaystyle w_{i}}
p
(
D
∣
C
)
=
∏
i
p
(
w
i
∣
C
)
{\displaystyle p(D\mid C)=\prod _{i}p(w_{i}\mid C)\,}
答えなければならない質問は、「特定の文書 D が 特定のクラス C に属する確率はどれくらいか?」ということです。言い換えれば、 とは何でしょうか ?
p
(
C
∣
D
)
{\displaystyle p(C\mid D)\,}
定義
上
、
p
(
D
∣
C
)
=
p
(
D
∩
C
)
p
(
C
)
{\displaystyle p(D\mid C)={p(D\cap C) \over p(C)}}
p
(
C
∣
D
)
=
p
(
D
∩
C
)
p
(
D
)
{\displaystyle p(C\mid D)={p(D\cap C) \over p(D)}}
ベイズの定理は、これらを 尤度 の観点から確率の記述に変換します。
p
(
C
∣
D
)
=
p
(
C
)
p
(
D
∣
C
)
p
(
D
)
{\displaystyle p(C\mid D)={\frac {p(C)\,p(D\mid C)}{p(D)}}}
現時点では、相互に排他的なクラスが S と ¬S (例:スパムと非スパム)の2つだけあり、すべての要素(電子メール)がどちらか一方に属すると
仮定します
。
p
(
D
∣
S
)
=
∏
i
p
(
w
i
∣
S
)
{\displaystyle p(D\mid S)=\prod _{i}p(w_{i}\mid S)\,}
p
(
D
∣
¬
S
)
=
∏
i
p
(
w
i
∣
¬
S
)
{\displaystyle p(D\mid \neg S)=\prod _{i}p(w_{i}\mid \neg S)\,}
上記のベイズの結果を使用すると、次のように書くことができます。
p
(
S
∣
D
)
=
p
(
S
)
p
(
D
)
∏
i
p
(
w
i
∣
S
)
{\displaystyle p(S\mid D)={p(S) \over p(D)}\,\prod _{i}p(w_{i}\mid S)}
p
(
¬
S
∣
D
)
=
p
(
¬
S
)
p
(
D
)
∏
i
p
(
w
i
∣
¬
S
)
{\displaystyle p(\neg S\mid D)={p(\neg S) \over p(D)}\,\prod _{i}p(w_{i}\mid \neg S)}
一方を他方で割ると次のようになります。
p
(
S
∣
D
)
p
(
¬
S
∣
D
)
=
p
(
S
)
∏
i
p
(
w
i
∣
S
)
p
(
¬
S
)
∏
i
p
(
w
i
∣
¬
S
)
{\displaystyle {p(S\mid D) \over p(\neg S\mid D)}={p(S)\,\prod _{i}p(w_{i}\mid S) \over p(\neg S)\,\prod _{i}p(w_{i}\mid \neg S)}}
これは次のようにリファクタリングできます。
p
(
S
∣
D
)
p
(
¬
S
∣
D
)
=
p
(
S
)
p
(
¬
S
)
∏
i
p
(
w
i
∣
S
)
p
(
w
i
∣
¬
S
)
{\displaystyle {p(S\mid D) \over p(\neg S\mid D)}={p(S) \over p(\neg S)}\,\prod _{i}{p(w_{i}\mid S) \over p(w_{i}\mid \neg S)}}
したがって、確率比 p( S | D ) / p(¬ S | D ) は、一連の 尤度 比で表すことができます 。実際の確率 p( S | D ) は、p( S | D ) + p(¬ S | D ) = 1 という観察に基づいて、log (p( S | D ) / p(¬ S | D ) ) から 簡単 に計算できます。
これらすべての比率の
対数 を取ると、次のようになります。
ln
p
(
S
∣
D
)
p
(
¬
S
∣
D
)
=
ln
p
(
S
)
p
(
¬
S
)
+
∑
i
ln
p
(
w
i
∣
S
)
p
(
w
i
∣
¬
S
)
{\displaystyle \ln {p(S\mid D) \over p(\neg S\mid D)}=\ln {p(S) \over p(\neg S)}+\sum _{i}\ln {p(w_{i}\mid S) \over p(w_{i}\mid \neg S)}}
(この「 対数尤度比 」の手法は、統計学では一般的な手法です。2 つの相互に排他的な選択肢がある場合 (この例など)、対数尤度比から確率への変換は シグモイド曲線 の形をとります。詳細については、 logit を 参照してください。)
最終的に、文書は次のように分類されます。 (つまり、 ) の場合、それはスパムであり、それ以外の場合はスパムではありません。
p
(
S
∣
D
)
>
p
(
¬
S
∣
D
)
{\displaystyle p(S\mid D)>p(\neg S\mid D)}
ln
p
(
S
∣
D
)
p
(
¬
S
∣
D
)
>
0
{\displaystyle \ln {p(S\mid D) \over p(\neg S\mid D)}>0}
参照
参考文献
^ McCallum, Andrew. 「グラフィカルモデル、講義2:ベイジアンネットワーク表現」 (PDF) 。 2022年10月9日時点のオリジナルより アーカイブ (PDF) 。 2019年 10月22日 閲覧 。
^ ab ラッセル、スチュアート 、 ノーヴィグ、ピーター (2003) [1995]。 人工知能:現代的アプローチ (第2版)。プレンティスホール 。ISBN 978-0137903955 。
^ abc Hand, DJ; Yu, K. (2001). 「Idiot's Bayes — not so stupid after all?」. International Statistical Review . 69 (3): 385–399. doi :10.2307/1403452. ISSN 0306-7734. JSTOR 1403452.
^ Zhang, Harry. ナイーブベイズの最適性 (PDF) . FLAIRS2004 カンファレンス。
^ Caruana, R.; Niculescu-Mizil, A. (2006). 教師あり学習アルゴリズムの実証的比較 。第23回国際機械学習会議論文集 。CiteSeerX 10.1.1.122.5901 。
^ 「なぜ、特徴の数 >> サンプルサイズの場合、より洗練された ML アルゴリズムと比較して Naive Bayes の方が効果的に機能するのか?」 Cross Validated Stack Exchange 。 2023 年 1 月 24 日 閲覧 。
^ Narasimha Murty, M.; Susheela Devi, V. (2011). パターン認識: アルゴリズム的アプローチ . ISBN 978-0857294944 。
^ ab John, George H.; Langley, Pat (1995). ベイズ分類器における連続分布の推定。人工知能における不確実性に関する第11回会議議事録。Morgan Kaufmann。pp . 338–345。arXiv : 1302.4964 。
^ abc McCallum, Andrew; Nigam, Kamal (1998). ナイーブベイズテキスト分類のイベントモデルの比較 (PDF) 。AAAI-98 テキスト分類の学習に関するワークショップ。第 752 巻 。2022 年 10 月 9 日のオリジナルからアーカイブ (PDF) 。
^ Metsis, Vangelis; Androutsopoulos, Ion; Paliouras, Georgios (2006)。Naive Bayes によるスパム フィルタリング - どの Naive Bayes か?。電子メールとスパム対策に関する第 3 回会議 (CEAS)。第 17 巻。
^ Piryonesi, S. Madeh; El-Diraby, Tamer E. (2020-06-01). 「インフラ資産管理におけるデータ分析の役割: データサイズと品質の問題の克服」. 交通工学ジャーナル、パートB: 舗装 . 146 (2): 04020022. doi :10.1061/JPEODX.0000175. S2CID 216485629.
^ Hastie, Trevor. (2001). 統計学習の要素: データマイニング、推論、予測: 200 枚のフルカラーイラスト付き 。Tibshirani, Robert.、Friedman, JH (Jerome H.)。ニューヨーク: Springer。ISBN 0-387-95284-5 . OCLC 46809224.
^ ジェームズ、ガレス; ウィッテン、ダニエラ; ハスティー、トレバー; ティブシラニ、ロバート (2021)。統計学習入門: R での応用 (第 2 版)。ニューヨーク、NY: シュプリンガー。p. 157。ISBN 978-1-0716-1418-1 . 2024年 11月10日 閲覧 。
^ ab Rennie, J.; Shih, L.; Teevan, J.; Karger, D. (2003). ナイーブベイズ分類器の誤った仮定への取り組み (PDF) . ICML. 2022-10-09 のオリジナルからアーカイブ (PDF) 。
^ ab Nigam, Kamal; McCallum, Andrew; Thrun, Sebastian; Mitchell, Tom (2000). 「EM を使用してラベル付きおよびラベルなしのドキュメントからテキストを分類する学習」 (PDF) . 機械学習 . 39 (2/3): 103–134. doi : 10.1023/A:1007692713085 . S2CID 686980. 2022-10-09 にオリジナルからアーカイブ (PDF) されました。
^ Niculescu-Mizil, Alexandru; Caruana, Rich (2005). 教師あり学習による良好な確率の予測 (PDF) . ICML. doi :10.1145/1102351.1102430. 2014-03-11 に オリジナル (PDF)からアーカイブ 。2016-04-24 に取得 。
^ Rish, Irina (2001). ナイーブベイズ分類器の実証的研究 (PDF) 。AIにおける実証的手法に関するIJCAIワークショップ。 2022年10月9日時点のオリジナルよりアーカイブ (PDF) 。
^ ab Ng, Andrew Y. ; Jordan, Michael I. (2002). 識別的分類器と生成的分類器について: ロジスティック回帰と単純ベイズの比較 。NIPS 。第14巻。
さらに読む
Domingos, Pedro; Pazzani, Michael (1997). 「ゼロ-1損失における単純なベイズ分類器の最適性について」. 機械学習 . 29 (2/3): 103–137. doi : 10.1023/A:1007413511361 .
Webb, GI; Boughton, J.; Wang, Z. (2005). 「それほど単純ではないベイズ: 1 依存推定量の集約」. 機械学習 . 58 (1): 5–24. doi : 10.1007/s10994-005-4258-6 .
Mozina, M.; Demsar, J.; Kattan, M.; Zupan, B. (2004). 単純ベイズ分類器の視覚化のためのノモグラム (PDF) . Proc. PKDD-2004. pp. 337–348.
Maron, ME (1961). 「自動インデックス作成: 実験的調査」 Journal of the ACM . 8 (3): 404–417. doi :10.1145/321075.321084. hdl : 2027/uva.x030748531 . S2CID 6692916.
ミンスキー, M. (1961). 人工知能へのステップ . Proc. IRE. Vol. 49. pp. 8–30.
外部リンク
本の章: ナイーブベイズテキスト分類、情報検索入門
不均衡なクラスを持つテキスト分類のためのナイーブベイズ