なんか、ペース速い?

1日放置していたら、こんなにも家が
隕石も早速落ちたようだし、なかなか油断ならないかも

ずいぶん前にコロニナはやめてしまっていましたが、コロプラが始まったと聞いて、再び参加することにしました。
コロニーの愛称はコロ番から、ご苦労なコロです
最近、またしてもスパムメールの振り分けが不調。
何度か書いているが、スパムメールの振り分けにはベイジアンフィルタのbogofilterを使っている。
これが、届いたメールを過去の学習からスパムかそうでないかを判断し、さらにその結果を今後のメールの判定にも使うということをしている。
つまり、一度スパムメールを非スパムと判定してしまうと、芋づる式に非スパムと判定されてしまうスパムメールが増えてしまうのだ。
メール単位で誤判定の修正はできるのだが、あまりにもありすぎて、修正できないくらいなってしまった。
そういうわけで、データベースの作り直し。
非スパムのフォルダで、
find . -type f -exec sh -c ‘cat {} | bogofilter -n –bogofilter_dir ~/ ‘ ‘;’
–bogofilter_dir ~/ を付けたのは、現在運用中のデータベースとは別の場所に一旦作成し、後で差し替えようとしているから。
同様にスパムのフォルダで
find . -type f -exec sh -c ‘cat {} | bogofilter -s –bogofilter_dir ~/ ‘ ‘;’
一日放置していたら、新しいデータベースが出来上がったので、元のwordlist.dbと差し替え。
とりあえずは自動で学習しないようにして、運用を再開した。
新しいデータベースで運用を始めると、日本語スパムもほぼ弾いてくれる。ちょっと調子よすぎかもと思っていたら、案の定非スパムもスパム判定していた。
誤判定された非スパムを特定のメールフォルダに置いておくと、再学習して学習が終わったら受信ボックスに戻すようにした。
cronで、
35 * * * * cd [誤判定された非スパムの置き場] && find . -type f -exec sh -c ‘cat {
} | bogofilter -n ‘ ‘;’ && mv [誤判定された非スパムの置き場]/cur/* [メールディレクトリ(受信ボックス)]/cur/
てな感じで。
定期的にデータベースの再作成をする羽目になりそうな予感。まあ、それならそれで、それすら自動化という手もあるな。
HTML convert time: 5.289 sec. Powered by WordPress ME