導入してみました。
参考にさせていただいたスクリプト配布元の「しののんだいあり~」によれば、
学習させるメール数の目安としては、だいたいSPAMメールの5倍程度のCLEANメールを用意することでしょうか? CLEAN の学習が少ないと、CLEANなメールをSPAMとして判定される確率が増えてしまいます。私はSPAM 100通、CLEAN 500通(購読しているMLから数十通ずつピックアップして、あとは個人メールを100通程度)を学習させました。
とある。
うちではこういう時が来るだろうと思って溜めに溜めておいたSPAMメールを1000通、そしてCLEANメールを6000通学習させてみた。
このBecky!向けスクリプトの元になったnabekenさんのbsfilterは、起動オプションによって判定アルゴリズムをPaul Graham方式、Gary Robinson方式、Gary Robinson-Fisher方式に切り替えられるようになっている。日本語のtokenizerについてはbigramか、もしくは別途MeCab、Chasen、KAKASI等を利用して形態素解析を用いることも可能だ。デフォルトでは連続する漢字2文字(bigram)、カタカナをtokenとして扱う。
ただし、このBecky!用スクリプトでは簡単に利用することを目標にしているため、bigram、Gary Robinson-Fisher方式固定となっている。
しかし、うちに送られてくるSPAMの90%以上が海外からのものであるため、これでも十分な効果が得られるのではないか、と期待している。
今のところまだ2日程しか利用していないが、その間届いたSPAMが10通程度、そのうち誤判定は2通と、概ね良好な結果を出してくれている。