差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
| crm114:cpanel [2013/07/08 16:39] – [CRM114 本体] osamu | crm114:cpanel [2015/07/30 00:16] (現在) – [フィルタの設定] osamu | ||
|---|---|---|---|
| 行 5: | 行 5: | ||
| ==== CRM114 本体 ==== | ==== CRM114 本体 ==== | ||
| スパムフィルター(本当は、汎用のプログラマブルな統計的言語処理フィルター)の CRM114 ですが、C言語で書かれたソースコードで提供されているので、動作させたいコンピューターの上でコンパイルしてバイナリープログラムを作らないと使えません。cPanel ホスティング環境ではCコンパイラが使えないようになっているので、これをどうにかするのが第一の関門。 | スパムフィルター(本当は、汎用のプログラマブルな統計的言語処理フィルター)の CRM114 ですが、C言語で書かれたソースコードで提供されているので、動作させたいコンピューターの上でコンパイルしてバイナリープログラムを作らないと使えません。cPanel ホスティング環境ではCコンパイラが使えないようになっているので、これをどうにかするのが第一の関門。 | ||
| - | CRM114 のダウンロードページ | + | |
| - | http:// | + | [[http:// |
| - | を見ると、ありがたいことにコンパイル済みのバイナリーイメージ、それも静的リンクを使ってコンパイルしてあるので、サーバーにあるライブラリに依存せずに動くやつが公開されていますので、これを使います。 | + | |
| - | 上のダウンロードページで " | + | 上のダウンロードページで " |
| - | http://www.merl.com/people/yerazunis/ | + | [[http://crm114.sourceforge.net/tarballs/|tarball のインデックスページ]]から、http:// |
| - | tarball のインデックスページ | + | をダウンロードして展開(あるいはサーバー上のシェルで |
| - | http:// | + | |
| - | から、 | + | 場所はどこでもいいのですが、ここでは自分の home ディレクトリの下に bin/crm114 というディレクトリを作りました。 |
| - | crm114-20080326-BlameSentansoken.i386.tar.gz | + | |
| - | http:// | + | |
| - | をダウンロードして展開(サーバー上に wget して tar xvfz)します。場所はどこでもいいのですが、ここでは自分の home ディレクトリの下に bin/crm114 というディレクトリを作りました。 | + | |
| ==== 日本語対応のためのプログラム ==== | ==== 日本語対応のためのプログラム ==== | ||
| + | CRM114 と組み合わせて使う、日本語メールのいろんな文字コードエンコーディングを変換するプログラムには Ruby の中に標準で組み込まれている nkf を使います。また、日本語テキストを分かち書きプログラムには、工藤拓さんが作ったピュア JavaScript の分かち書きソフト [[http:// | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | bin/ | ||
| + | |||
| + | ディレクトリの内容はこんな感じになります。 | ||
| + | < | ||
| + | ~ | ||
| + | +/bin | ||
| + | bimyou_segmenter | ||
| + | +/crm114 | ||
| + | ... | ||
| + | +lib | ||
| + | bimyou_segmenter.rb | ||
| + | +/ | ||
| + | aozora_model.rb | ||
| + | version.rb | ||
| + | </ | ||
| + | |||
| + | bin/ | ||
| + | <code ruby> | ||
| + | require ' | ||
| + | </ | ||
| + | という行があるので、 | ||
| + | <code ruby> | ||
| + | require '/ | ||
| + | # この例では、/ | ||
| + | </ | ||
| + | というように、ライブラリのパスを、上でコピーした先の lib ディレクトリの下へのフルパスに書き換えます。 | ||
| + | |||
| + | できあがったら、動作確認してみましょう。 | ||
| + | < | ||
| + | [~]# bin/ | ||
| + | 上野発の夜行列車降りたときから ← 分かち書きしたい文章をなにか入力 | ||
| + | 上野 | ||
| + | 発の | ||
| + | 夜行 | ||
| + | 列車 | ||
| + | 降り | ||
| + | た | ||
| + | とき | ||
| + | から | ||
| + | EOS ← 分かち書きされて出力される | ||
| + | ^D ← Ctrl-D で入力終了 | ||
| + | [~]# | ||
| + | </ | ||
| ===== CRM114 を使う環境を整える ===== | ===== CRM114 を使う環境を整える ===== | ||
| + | 必要なプログラムが準備できたので、環境の設定と、日本語対応のための改造を行います。 | ||
| ==== 作業用ディレクトリにファイルを揃える ==== | ==== 作業用ディレクトリにファイルを揃える ==== | ||
| + | メールが送られてきたときに CRM114 を使ってスパムかどうかの判定をするための作業用ディレクトリを作ります。 | ||
| + | ここでは、home の下に .crm114 というディレクトリを作りました。 | ||
| + | その中に、先ほど CRM114 のプログラムを展開したディレクトリから以下のファイルをコピーしてきます。 | ||
| + | < | ||
| + | mailfilter.crm | ||
| + | mailfilter.cf | ||
| + | rewrites.mfp | ||
| + | priolist.mfp | ||
| + | whitelist.mfp | ||
| + | </ | ||
| ==== 環境設定 ==== | ==== 環境設定 ==== | ||
| ==== 日本語対応のための改造 ==== | ==== 日本語対応のための改造 ==== | ||
| 行 28: | 行 83: | ||
| ==== フィルタの設定 ==== | ==== フィルタの設定 ==== | ||
| + | < | ||
| + | #!/bin/sh | ||
| + | cat - | / | ||
| + | </ | ||
| + | ===== 育てながら運用 ===== | ||
| + | ==== スパム判定をトレーニングする ==== | ||
| + | http:// | ||

