## 意見（評価表現）抽出ツール: 修正、変更点

### 2012/2/6 Ver 1.2アップデートに伴う修正、変更点

- 評価表現抽出ツールの修正点
  - 入力ファイルの解析でエラーが生じた場合、途中で処理が止まってしまう問題を修正し、エラーが起きた行をスキップして最後まで入力文を解析するように修正しました。また、どこでエラーが生じたか、入力ファイルの当該行数を表示するように修正しました。
  - KNPが出力するエラーとその他のエラーを切り分けて表示するように修正しました。
  - 入力ファイルに半角文字や空行が含まれると、エラーが起きてその時点で処理が止まる問題を、対応する全角文字に変換し、空行はスキップするように修正しました。
  - 入力ファイル中にEUC-JPで表現できない文字が含まれていた時、これまではnkfを使って取り除いていましたが、中国語の一部の文字などでnkfでも取り除くことができない文字が存在したため、iconvを利用してEUC-JPに変換してJUMAN, KNPに渡すように修正しました。また、入力ファイルの内容とEUC-JPに変換した内容を比較できるように、入力ファイルをEUC-JPに変換した中間ファイルを生成するように修正しました。
  - Perl 5.8.9 以降で、split関数の仕様変更が原因で入力ファイルを解析時に空白文字を適切に処理できないエラーが生じる問題を修正しました。
  - 評価保持者が"[著者]"以外で、他に候補となる文字列が抽出されなかった場合、空白で出力される問題を"[不定]"と表示するように修正しました。
  - 評価表現抽出時に入力ファイルのある行で評価表現が抽出され、それ以降最終行まで評価表現が抽出されなかった場合、最後の評価表現が出力された後、文書IDや文IDも含めて何も出力されない問題を修正しました。
  - 環境変数LC_ALLが指定されているような環境では、LC_ALL=Cとしないと評価表現が全く抽出されなくなる問題に対してextract.shにおいて、明示的にLC_ALL=C と指定するように修正しました。
  - ユーザがgawkなどを、/usr/bin以外にインストールしていた場合でも、/usr/bin/ 以下のプログラムが使されていた問題を解決するため、各スクリプトの1行目においてインタプリタの場所を指定する際、PATHで検索されるインタプリタが起動されるように/usr/bin/env とするよう修正しました。
  - 出力される評価表現を文節単位に修正しました。
  - 評価極性の肯定、否定の記号をこれまで全角で出力していましたが、UTF- 8での全角のマイナス記号は"−"、"ー"など類似する記号が複数あり、エラーを引き起こしやすいため、半角の"+", "-" に統一しました。（あわせて、学習コーパスの仕様、モデル生成ツールを変更しました）
- モデル生成ツールの修正点
  - 機械学習用コーパス (csv) をモデル生成ツールでモデル学習用スクリプトの入力ファイル (tsv) に変換する時にエラーが検出された場合、これまではその時点で処理が終了していた問題を、エラーが検出された行の処理をスキップするよう修正しました。その際に、エラー内容と、エラーが検出された機械学習用コーパス (csv) の行数が表示されるように修正しました。
  - 機械学習用コーパス (csv) において、一文中に複数の評価表現が含まれていた場合、モデル生成ツールでモデル学習用スクリプトの入力ファイル(tsv) に変換する際に改行箇所を"\n"に変換しないことによって、複数の評価表現を処理できなかった問題を修正しました。
  - モデル構築時に「機械学習用コーパス (csv)」から「評価情報処理用tsvファイル」に変換する時、抽出された評価表現を文節単位に調整するように修正。それに合わせて、上記のように本ツールが出力する評価表現も文節単位になるように修正しました。
  - 上記の通り、学習コーパス中の評価極性の肯定否定の記号は半角の"+", "-"に統一しました。
  - 学習パラメータを変更（学習時のCRF++の パラメータ"-c"を調整）し、F値の改善を行いました。

情報分析研究室（2011年度より言語基盤グループから改称）
独立行政法人 情報通信研究機構
Copyright 2007-2012 NICT All Rights Reserved.