株式会社オートプロジェクト

Columnコラム
2015年6月10日
ナイーブベイズ(単純ベイズ分類器)

ナイーブベイズは、テキスト分類等をベイズの定理を使って解決しようという方法。

ベイズの定理は、条件付き確率に関して成り立つ定理。

     事象Bのベイズ確率について、
     P(B) = 事象Aが起きる前の、事象Bの確率(事前確率, prior probability)
     P(B|A) = 事象Aが起きた後での、事象Bの確率
     (事後確率,条件付き確率, posterior probability,conditional probability)
     とする。 ベイズの定理を使えば、事後確率 P(B|A) は下記に従って計算される。 

d648dbc1

sckit-learnでは、ガウス分布、多項分布、ベルヌーイ分布のアルゴリズムが用意されている。
例えば、ガウス分布のアルゴリズムを使用する場合は以下のようにする。

※features_train、 labels_train、features_test は別で定義済。
from sklearn.naive_bayes import GaussianNB
clf = GaussianNB()
clf.fit(features_train, labels_train)
predict = clf.predict(features_test)

パラメーターやメソッドの詳細はこちら。

http://scikit-learn.org/stable/modules/generated/sklearn.naive_bayes.GaussianNB.html