単純ベイズ古典アルゴリズムの理解

1 アルゴリズムの概要説明

ナイーブ ベイズ アルゴリズムとも呼ばれるナイーブ ベイズ アルゴリズムは、ベイズの定理と特徴条件の独立した仮定に基づく分類方法です。

名前の由来:単純さ、つまり、特性と条件が独立している、ベイジアン:ベイズの定理に基づく。いわゆる単純さとは、形式化プロセス全体で最も原始的な仮定のみが行われることを意味します。

単純ベイズはベイジアン決定理論の一部です. ベイジアン決定理論の説明は次のとおりです.

例 1:

2 つのカテゴリからなるデータ セットがあると仮定すると (単純化された問題)、各サンプルの分類が明確に定義されており、データの分布は次のようになります。

 

ここで、分類が不明な新しい点 new_point(x,y) があり、p1(x,y) を使用して、データ点 (x,y) が赤のカテゴリに属する​​確率を表すことができます。 p2(x,y) で表されるデータ ポイント (x,y) が青のクラスに属する確率。では、new_point はどのカテゴリに属しているのでしょうか?

ルールは次のとおりです。

p1(x,y) > p2(x,y) の場合、(x,y) は赤です。

p1(x,y) < p2(x,y) の場合、(x,y) は青色です。

つまり、確率の高いカテゴリが new_point の分類として選択されます。これがベイジアン決定理論の核となる考え方で、最も確率の高い決定を選択するというものです。

ベイジアン分類基準が条件付き確率の形式で定義されている場合、次のようになります。

p(red|x,y) > p(blue|x,y) の場合、(x,y) は赤のカテゴリに属します。

p(red|x,y) < p(blue|x,y) の場合、(x,y) は青のカテゴリに属します。

つまり、新しいポイントを分類する必要がある場合は、

max(p(c1 | x, y), p(c2 | x, y), p(c3 | x, y)...p(cn| x, y)) は、最大確率ラベルに対応します。 new point 所属するクラス。

重要な問題は、カテゴリ i の p(ci | x,y) をどのように解決するかということです。これはベイズの式です。

 

例 2:

例 1 で使用されている赤と青の分類は 2 次元の状況です. 次に、多次元の用語を使用して、上記の式の変換の重要性を理解します: WeChat の友達の輪が広告であるかどうかを判断するには?

前提条件: 平日に大多数のユーザーのモーメントのコンテンツ ライブラリが既にあります.これらのモーメントの中で、本当に広告である場合は、「熱狂的なネチズン」によって「広告」とラベル付けされます.コンテンツを一つ一つ単語に変換し、各単語が次元に対応し、高次元空間を構築します。

新しい友達の輪 new_post が出現したら、それを単語に分割して、友達の輪のシソーラス空間に入れます。

ここで、X は複数の特徴 (単語) x1、x2、x3 で構成される特徴ベクトルを表します。

p(ad|x) 意味: 友達の輪の内容が知られており、この友達の輪が広告である確率

ベイジアン式を使用して変換します。

p(広告|X) = p(X|広告)p(広告) / p(X)

p(広告なし|X)=p(X|広告なし)p(広告なし)/p(X)

上記の 2 つの確率を比較すると、p(ad|X)>not-ad|X) の場合、この友達の輪は広告として分類され、それ以外の場合は広告ではありません。

この時点で、問題は実際に数学的問題に変換されています。これは、次の式の導出によってさらに説明されます。

2 式の導出

1. デックス
= a 1 , a 2 , … , amx={a_1,a_2,…,a_m}
x=a 
1
,    
 a 
2
,    
 …,a  m    


 

は分類対象項目、各 a は x の固有属性

2.有类别集合
C = y 1 , y 2 , … , y n C={y_1,y_2,…,y_n}
C=y 
1
​    
 ,y 
2
​    
 ,…,y 
n
​    
 

3.
P ( y 1 ∣ x ) , P ( y 2 ∣ x ) , ... , P ( yn ∣ x ) P(y_1|x),P(y_2|x),...,P(y_n |x)
P (y 
1
∣x    
 ),P(y 
2
∣x    
 ),...,P(y 
n
∣x    
 )

4.如果
P ( yk ∣ x ) = max P ( y 1 ∣ x ) , P ( y 2 ∣ x ) , … , P ( yn ∣ x ) P(y_k|x)=max{P(y_1|x) ,P(y_2|x),…,P(y_n|x)}
P(y 
k
∣x    
 )=maxP(y 
1
∣x    
 ),P(y 
2
∣x    
 ),…,P(y 
n
∣x    
 )

すると
x ∈ ykx∈y_k
x∈y  k    


 

したがって、ここで重要なのは、ステップ 3 で条件付き確率を計算する方法です。できるよ:

1. トレーニング サンプル セットと呼ばれる、既知の分類で分類されるアイテムのセットを見つけます。
2. 各カテゴリの下の各特性属性の条件付き確率推定、つまり事前確率を統計的に取得します。
3. 各特性属性が条件付きで独立している場合、ベイズの定理によれば、次の導出が可能です。

 

分子を最大化するだけでよいため、分母はすべてのカテゴリで一定です。また、各フィーチャ属性は条件付きで独立しているため、次の属性があります。

 

単純ベイジアン仮定がここで導入されます。各単語が独立した特徴であると見なされる場合、Moments コンテンツ ベクトルを単語分割 (x1、x2、x3...xn) に拡張できるため、次の式が導き出されます。

P(ad|X) = p(X|ad)p(ad) = p(x1, x2, x3, x4...xn | ad) p(ad)

すべての単語が条件付きで互いに独立していると仮定すると、さらに分割:
P(ad|X) = p(x1|ad)p(x2|ad)p(x3|ad)…p(xn|ad) p(ad)

実際には、私たちの自然言語は文脈╮(╯▽╰)╭に注意を払うため、友達の輪の中の単語は互いに比較的独立していませんが、これはナイーブベイズの単純さでもあります。問題を見てください。単に。

3 アルゴリズムの具体的な処理のまとめ

(1) 与えられたトレーニング データ セットについて、入力と出力の結合確率分布が、特性条件の独立した仮定に基づいて最初に学習されます (ここでの結合確率は、実際には事前確率と条件付き確率の積です)。

(2) 次に、このモデルに基づいて、特定の入力 x に対して、ベイズの定理を使用して、最大の事後確率を持つ出力 y を見つけます。


Naive Bayesian は実装が簡単で、学習と予測の効率が高いため、一般的に使用される方法です。

おすすめ

転載: blog.csdn.net/joely1/article/details/128722651