bsfilter で spam 判定をしているのだけど,どうも直感に反する挙動をしていることに気づいた.で,よく考えてみたところ使い方を完全に間違えていたっぽい.
(どうして気づいたかというと,ここ数日,(ほぼ完全に) 同じ文面の spam が大量に送られて来ていて,それらは最初は無事に spam と判定されていたのだけど,新しいのが届くごとに spam 確率が単調減少していって,終いには clean と判定されるようになってしまったからである)
結論を先に書くと,
さて,どんな設定をしていたかというと, 本家サイト にある「~/.procmailrc から呼ぶ場合のサンプルレシピ その2」をベースにしていた.「その1」ではなく「その2」を選んだのは,spam 確率をヘッダに残したかったから.
:0 fw | /home/swk/bin/bsfilter --pipe --insert-flag --insert-probability :0 * ^X-Spam-Probability: *(1|0\.[89]) SPAM/.
で,この設定に単純に --auto-update を追加したのが敗因.その後いろいろ調整して,SPAM フォルダへの振り分け基準 (P1) をどんどん小さくして行って (今は何と 0.1 だ),一方で P2 は元のまま (えーと,デフォルトの Robinson-Fisher のまま使っているから,0.95?) 今回のような事態に至ったと.
おそらく,P1 をこんなに小さくしなければならなかったのも,そもそもこの設定ミスが原因なんだろうな.
というわけで,一度データベースを構築し直した上で,--spam-cutoff オプションを設定して P1 = P2 になるようにしてみます.
最終更新時間: 2009-01-04 15:31