Taku Kudo
taku****@chase*****
2012年 9月 19日 (水) 23:46:26 JST
原田様 工藤です src/common.h の #define DEFAULT_MAX_GROUPING_SIZE 24 に最大長が定義されています。試してはいませんが、これを長くすることで目的の結果が得られるとおもいます。 2012年9月15日 17:24 原田 寛之 <hiros****@yahoo*****>: > 原田と申します。 > > 初めて質問させていただきます。よろしくお願い致します。 > > -------------------------------- > ・使用バージョン > -------------------------------- > > Ubuntu 12.04.1にてmecabを使用しております。バージョンは、 > > 0.98-1 (Ubuntuに含まれるパッケージ) > 0.0.994 (ソースからビルドしたもの) > > の両方で試してみましたがどちらでも上手くいきませんでした。 > > -------------------------------- > ・質問内容 > -------------------------------- > > メールのスパムフィルタリングにmecabを利用しています。メールをmecabにて分かち > 書きし、それをBogofilterに渡してスパム判定・学習させています。 > > 運用を開始してしばらく経つのですが、精度が悪いためBogofilterの辞書を覗いてみ > ました。すると、辞書には意味のない英数字の単語が多くありました。 > > そこで、試しに以下の文、 > > X-Apparently-To: abcde****@yahoo***** via 183.79.100.222; Sat, 15 Sep 2012 15:53:37 +0900 > > をmecabで分かち書きしてみたところ、 > > X - Apparently - To : a bcdefghijklmnopqrstuvwxyz @ yahoo . co . jp via 183 . 79 . 100 . 222 ; Sat , 15 Sep 2012 15 : 53 : 37 + 0900 > > のように、 > > ・英字 > ・数字 > ・記号 > > で分離されていることがわかりました。 > > これがBogofilterの精度が上がらない理由の一つと考え、mecab が半角英数字で分割 > しないよう変更することにしました。 > > 期待する出力結果は、 > > X-Apparently-To: abcde****@yahoo***** via 183.79.100.222; Sat, 15 Sep 2012 15:53:37 +0900 > > です。そこで、char.defを > > # ASCII > 0x0021..0x002F SYMBOL > 0x0030..0x0039 NUMERIC > 0x003A..0x0040 SYMBOL > 0x0041..0x005A ALPHA > 0x005B..0x0060 SYMBOL > 0x0061..0x007A ALPHA > 0x007B..0x007E SYMBOL > > ↓(修正) > > # ASCII > 0x0021..0x002F ALPHA > 0x0030..0x0039 ALPHA > 0x003A..0x0040 ALPHA > 0x0041..0x005A ALPHA > 0x005B..0x0060 ALPHA > 0x0061..0x007A ALPHA > 0x007B..0x007E ALPHA > > のように変更し、 > > /usr/lib/mecab/mecab-dict-index -d /usr/share/mecab/dic/juman/ -o /var/lib/mecab/dic/juman/ > > として辞書を再作成しました。 > > すると今度は、 > > X-Apparently-To: a b c d e f g h i j k l m nopqr****@yahoo***** via 183.79.100.222; Sat, 15 Sep 2012 15:53:37 +0900 > > のようになってしまいました。メールアドレス部分が、 > > abcde****@yahoo***** > ↓ > a b c d e f g h i j k l m nopqr****@yahoo***** > > のように前半が1文字づつに分かれてしまっています。 > > どうも、25文字を超える単語がこのようになっているようです。25文字を超える部分 > が先頭から1文字づつに分かれています。 > > -------------------------------- > ・回避策 > -------------------------------- > > なぜ25文字を超えると分割されるのでしょうか。回避策を教えていただきたく。 > > -------------------------------- > ・他の方法 > -------------------------------- > > 目的は英数字が分割されないことですので、他にも方法があれば、ご教授いただきた > く思います。 > > 以上 > > _______________________________________________ > mecab-users mailing list > mecab****@lists***** > http://lists.sourceforge.jp/mailman/listinfo/mecab-users