1. googlebayes -- google検索結果を学習データとするベイジアンフィルタ -------------------------------- このモジュールは、ベイジアンフィルタから、学習データ構築の手間を省いたお手軽なベイジアンフィルタです。 学習データとして、Googleの検索結果を用います。 2. インストール ------------------------------- % sudo python setup.py install 3. テスト実行 -------------------------------- インストール完了すると、コマンド gblearn.py と、 gbbayes.pyがインストールされます。 3-1 学習 -------------------------------- 本パッケージにサンプルの学習用ファイル sample.txt を同梱しています。 % gblearn.py -o sample.dat < sample.txt を実行すると、学習が始まり、学習結果がsample.datに保存されます。 このコマンドgblearn.pyは、テスト用のみならず、一般的な学習コマンドとして使うことができます。 学習ファイルは二行からなるテキストファイルで、一行目には非SPAM用語をタブ区切りで列挙し、二行目にはSPAM用語をタブ区切りで列挙します。 列挙された各語に対してGoogle blog検索を行い、取得されたテキストを学習に使用します。 3-2 判定 -------------------------------- 本パッケージにサンプル判定用のファイル sample_ok.txt と、sample_spam.txt を同梱しています。 以下のコマンドでOKの場合の判定実験と、SPAMの場合の判定実験を行うことができます。 % gbbayes.py -l sample.data < sample_ok.txt OK 3.87910866207e-247 4.80160443031e-296 % gbbayes.py -l sample.data < sample_spam.txt SPAM 5.70005971191e-282 1.58439406574e-273 4. API -------------------------------- プログラムから使うのは以下のAPIです。 googlebayes.learn.learn(okwords, spamwords, fname) 学習を行います。学習結果はファイルfnameに保存されます。 引数 okwords Unicodeで書かれた、OK語のリスト spamwords Unicodeで書かれた、SPAM語のリスト fname 学習結果を保存するファイル名 クラス googlebayes.bayes.Bayes コンストラクタ Bayes(fname) Bayesオブジェクトを作成します。 引数 fname 学習結果ファイルのファイル名 使い方 >>> bayes = Bayes("sample.dat") >>> bayes(u"とってもいかがわしい文章") (False, OK確率, SPAM確率) >>> bayes(u"まともな文章") (False, OK確率, SPAM確率)