APOP パッチ適用済みインストーラ

APOP への対応要望が強いようなので、rei0 さんが本家のパッチに登録されている APOP 対応パッチを 0.21.1 に適用したものをインストーラとして作成してみた。(※ 日本語化プロジェクトの 日本語化パッチに取り込まれたので、公開停止。入手は、ファイルリストから)
ひとつ断っておかなければいけないことがある。私は APOP 対応のメールアカウントを所有していないため、上記のパッチ適用後の動作についてはまったく保証できない(POP3 で受信するのには問題なし)。試される場合は、このことをわかった上で試してほしい。
このインストーラは、より多くの方がパッチ適用後のバージョンを動かしてみることができれば問題点の発見もはやいのではないか、という意図で作成している。ということなので、

  • 試される場合はリスクを承知の上で
  • うまく動いた/動かないのどちらの場合でも、フィードバックを

の2点をお願いしたいと思う。フィードバックについては、POPFile のフォーラムか、インストーラに関してはこの日記にコメントという形で。
(追記)
使い方を書いていなかった。APOP で受信するためには、メールソフトの設定で、アカウント欄を「POP3サーバ:アカウント:apop」として、メールソフトの APOP 機能は無効にする(APOP の処理は POPFile がおこなうため)。また、APOP 経由で受信されたかどうかについては、ログファイルに「banner='......'」というログが出力されるので、これを確認する。

分類されたバケツに含まれる確率をヘッダに追加

POPFile がメッセージをあるバケツに分類したとき、そのバケツに含まれる確率がどのくらいだったかをヘッダに追加するというパッチを作成してみた。(関連
作る前にはおもしろそうかなと思ったのだけど、これまで試した限りでは、どのメールも 0.999999 以上の確率でそのバケツ、というふうに決められてしまってあまりおもしろい結果は得られていない。たしかにこのところ unclassified になるメールもほとんどないような気もする。これはいいことなのだろうけど、せっかく作ったのにちょっと寂しいかも(汗)。
もう少し様子をみてみないとなんとも言えないと思うけど、考えていたほどには意味はないのかもしれない。
実は、確率をヘッダに追加しなくても、バケツに分類するかしないかをわけるしきい値というのが存在している。POPFile は、すべてのメッセージをどのバケツに分類するかを決めるのではなく、判断が難しいものについては、unclassified という分類にするのだ。これによって、微妙なメッセージを誤って分類してしまうことを防いでいる。
私の環境では、1番可能性の高いバケツと2番目に可能性が高いバケツの確率の比が100倍以上であれば分類し、それ以下ならば unclassified とするように設定してあるので、分類された場合には 99% 以上(正確には99.0099....%か)の確率でそのバケツ、という場合にだけ振り分けられる。
この(100 倍という)値を変更したいと思えば、POPFile UI の「詳細設定」タブで、「bayes_unclassified_weight」の値を変更すればよい(例えば、10000 倍以上でなければ分類しない、というのであれば 10000 とする)。要するに、spam である確率が、非spam である確率よりも 10000 倍高ければ spam に分類、ということができるわけだ。そうすると、その条件を充たしたら即削除……といったことにも使えるのかも知れない。
とはいえ、これまでの傾向から 99.99% 以上の確率で spam だと判別されたとしても、実際にはそれは spam ではないかもしれない。絶対確実、という条件はなかなかないだろうから、結局のところ内容を見ずに削除する、というところまでの判断は難しいのではないかな、と思ったりもするのだけど。