CLuPes
手がかり表現自動獲得プログラム(CLue Phrases Extraction Software)
CEES(Causal expression extraction system)で使用した手がかり表現を自動抽出するプログラムです。
- プログラム本体: clupes.pl
- CaboCha解析: bnstCabo.pm
インストール
本プログラムの動作には、Linuxにおいて以下のプログラムがインストールされている必要があります。
本プログラムはUbuntu 12.04にて動作確認をしています。
- MeCab 0.994 以降、および、MeCab の perlバインド
- CaboCha 0.64 以降、および、CaboCha の perlバインド
- Perl の Encode、XML::Simple、Parallel::ForkManager モジュール
インストール手順
Ubuntu 12.04のインストール直後から,本プログラムが動作するまでの手順を示します。
・ C++コンパイラ
・ 必要なPerlモジュールのインストール
- sudo cpan -i Encode
- sudo cpan -i Encode::Detect::Detector
- sudo apt-get install libxml-perl
- sudo cpan -i XML::Simple
- sudo cpan -i Parallel::ForkManager
・ MeCab
- tar -xvzpf mecab-0.994.tar.gz
- cd mecab-0.994
- make clean
- ./configure
- make
- make check
- sudo make install
- sudo ldconfig
・ mecab-ipadic(UTF-8)
- tar -xvzpf mecab-ipadic-2.7.0-20070801.tar.gz
- cd mecab-ipadic-2.7.0-20070801
- make clean
- ./configure --with-charset=utf8
- make
- sudo make install
・ MeCabのperlバインド
- tar -xvzpf mecab-perl-0.994.tar.gz
- cd mecab-perl-0.994
- make clean
- perl Makefile.PL
- make
- sudo make install
・ CRF++
- tar -xvzpf CRF++-0.57.tar.gz
- cd CRF++-0.57
- make clean
- ./configure
- make
- sudo make install
- sudo ldconfig
・ CaboCha
- cd cabocha-0.64.tar.gz
- cd cabocha-0.64
- make clean
- ./configure --with-charset=utf8
- make
- sudo make install
- sudo ldconfig
・ CaboChaのPerlバインド
- cd cabocha-0.64/perl
- perl Makefile.PL
- make
- sudo make install
使用方法
clupes.pl と bnstCabo.pm を同一ディレクトリに置き、入力文ファイル(sentence.txt)、初期表現リスト(posi.list)、拒否表現リスト(nega.list)を用意したうえで、以下のように実行
perl clupes.pl -s sentence.txt -p posi.list -n nega.list -b 0.5 -t 5
- -s : 入力文ファイル
- -p : 初期(手がかり or 共通頻出)表現リスト
- -n : 拒否(手がかり or 共通頻出)表現リスト
- -b [0.1..1.0] : 閾値
- -t [2..10] : 繰り返し回数
入力文ファイル(sentence.txt)
「文ID 文」(間は半角スペース)のように記述します。文IDは必ず文ごとに固有のものにして下さい。
- 920909-0179:1 エフ社は八日、業績予想の修正を発表した。
- 920909-0179:2 九二年九月中間期の経常損益はこれまでの四千万円の黒字予想から一転して五億一千万円の赤字に転落する見通し。
- 920909-0179:3 主力の通信事業部門の不振などで売上高が落ち込むことが響く。
- 920909-0179:4 中間配当は見送る方針だ。
- 920909-0179:5 中間期の売上高はこれまでの予想を十億円ほど下回り、前年同期比八%減の百億円になる見込み。
- 920909-0179:6 通信事業部門は大口需要家の設備投資抑制のため計画を下回りそう。
- 920909-0179:7 モデム装置などの情報端末関連機器や電源装置なども金融機関などの設備投資抑制が響き減少する。
- 971114-0231:1 エヌ社が十三日発表した九七年九月中間決算は、経常利益が二十億円と前年同期に比べ七%増加した。
- 971114-0231:2 液晶部品が携帯電話向けなどに大きく伸びたうえ、円安で自動車用計器の輸出採算が改善した。
- 971114-0231:3 売上高は四百二十億円と八%増。
初期表現リスト(posi.list)
初期手がかり表現と共通頻出表現のリストです。以下のようなフォーマットのファイルを用意します。タグ([Particle], [Common], [Clue])と表現の間は半角スペース。また、#はコメントです。
- # ---- 格助詞リスト
- [Particle] が
- [Particle] で
- # ---- 共通頻出表現 初期リスト
- [Common] 売り上げ
- # ----- 手がかり表現 初期リスト
- [Clue] 好調
- [Clue] 不振
初期手がかり表現は「格助詞リスト+[Clue]タグの表現」となります。上記の例では、「が好調」「が不振」「で好調」「で不振」が初期手がかり表現となります。
拒否表現リスト(nega.list)
ノイズとして除去する手がかり表現、共通頻出表現のリストです。以下のようなフォーマットのファイルを用意します。タグ([Particle], [Common], [Clue])と表現の間は半角スペース。また、#はコメントです。
- # ---- 格助詞 拒否リスト
- [Particle] を
- [Particle] に
- [Particle] と
- # ---- 共通頻出表現 拒否リスト
- [Common] 事が
- [Common] ことが
- [Common] こと
- [Common] ことなど
- [Common] もの
- # ----- 手がかり表現 拒否リスト
- [Clue] ある
- [Clue] あった
- [Clue] なる
- [Clue] なった
- [Clue] なされる
- [Clue] なり
- [Clue] なったが
- [Clue] する
- [Clue] した
- [Clue] なく
- [Clue] なっている
- [Clue] あり
- [Clue] ない
- [Clue] いう
- [Clue] なって
- [Clue] なるが
- [Clue] なると
[Particle]タグで指定された格助詞を先頭にもつ手がかり表現は全て除去されます。
また、「全ての格助詞+[Clue]タグで指定された表現」の手がかり表現を除去します。
拒否リストを増やすことで、劇的に精度が向上します。
実行結果
cause.list というファイルが実行結果として生成されます。
- [Common] 暖房器具 暖房器具 2
- [Common] パソコン販売 パソコン販売 3.49922754713269
- [Common] ゲーム ゲーム 1.91829583405449
- [Common] 消費税率引き上げ前の駆け込み需要 駆け込み需要 4.34964891257875
- [Clue] が苦戦した。 苦戦した。 4.60913044683635
- [Clue] 伸びた。 6.63071202883265
- [Clue] がかさみ かさみ 4.59675052403467
- [Clue] が落ち込んでいる。 落ち込んでいる。 4.36497353563087
- [Clue] が伸び悩んでいる 伸び悩んでいる 4.16274027764049
- [Clue] が回復。 回復。 4.98022174605125
- [Clue] が貢献する。 貢献する。 4.45188518023749
- [Clue] が寄与する 寄与する 5.11154495333388
- [Clue] でカバーし、 カバーし、 4.4641571147866
ファイルのフォーマットは以下のようになります。(核文節とは、共通頻出表現を構成する文節の最後尾の文節です。)
- [Common] 共通頻出表現 核文節 エントロピー値
- [Clue] 手がかり表現 格助詞を除去した手がかり表現 エントロピー値
関連文献
-
Hiroyuki Sakai, Shigeru Masuyama,
Cause Information Extraction from Financial Articles Concerning Business Performance,
IEICE Trans. Information and Systems,
ED,
4,
pp.959-968,
2008.
[PDF]
-
酒井 浩之, 野中 尋史, 増山 繁,
特許明細書からの技術課題情報の抽出,
人工知能学会論文誌,
24,
6,
pp.531-540,
2009.
[PDF]
-
酒井 浩之, 梅村 祥之, 増山 繁,
交通事故事例に含まれる事故原因表現の新聞記事からの抽出,
自然言語処理,
13,
2,
pp.99-123,
2006.
[PDF]