PHP Naive Bayesian Filter メモ
参考:http://castor.s26.xrea.com/blog/2008/02/18
パターンの登録
- train: 文章から分類用のデータを登録する。文章をトークンに分割してupdateWord、その後saveReference。
- updateWord: {カテゴリ、単語}別に文章中の単語の出現回数を追加する。
- saveReference: カテゴリと文章を関連付ける。
- updateProbabilities: probabilityを保存する。probabilityは(カテゴリ別の全単語数)/(全カテゴリの全単語数)。
分類
- categorize: スコアを付けたカテゴリを返す。
- while カテゴリ:
- カテゴリ別スコア = probability。
- while 単語: カテゴリ別スコア *=(({カテゴリ、単語}別の単語出現回数 / カテゴリ別の単語出現回数) ^ 単語出現回数)*((全カテゴリの全単語数/カテゴリ数)^ 単語出現回数)
- _rescale: スコアを0〜1の間に調整。
- while カテゴリ:
計算部分はソースを見るより説明を探した方がいいかな。