小学2年生の問題を解く−電脳優子2年生国語

関根 聡, 齋藤 真実, 岡田 美江, 井佐原 均. 小学2年生の問題を解く−電脳優子2年生国語・概要. 言語処理学会第11回年次大会, pp.1068-1071 (2005)
齋藤 真実, 岡田 美江, 関根 聡, 井佐原 均. 小学2年生の問題を解く−電脳優子2年生国語・デモ. 言語処理学会第11回年次大会, pp.715-718 (2005)

1.はじめに

2.目的
  • 自然言語処理の技術を一般の人にも分かりやすい形で実現すること
    • 自然言語処理の能力は一般の人に分かりやすく伝えることが難しい
    • この課題は、システムの能力を分かりやすい「得点」で表現できる
    • 2年生のレベルは優し過ぎず難し過ぎず、総合的に70点くらいとれると見込んで設定
  • 自然言語処理の対象のレベルを下げ、問題を見つめ直すこと
    • 新聞記事や技術文書などのテキストは難しい
    • 対象となるテキストのレベルを下げると、問題点がより明確的に見えるのではないか
    • この課題なら、特定の問題に偏ることなく、言葉について幅広く対象にできる

3.問題の分類と解法
  • 漢字の問題
    • 読み
      • 形態素解析
      • 訓練:100問中96問に正解
      • テスト:8問中8問を対象として6問に正解
    • 書き
      • 単語辞書、大規模コーパス(辞書より得た解答候補中から答えを選ぶ)
      • 訓練:222問中200問に正解
      • テスト:66問中66問を対象として63問に正解
    • 書き順、部首
      • 電子化が難しいため、本システムでは対応していない
  • 言葉の問題
    • 漢字の問題でも読解問題でもなく、語彙や文の構造に関する問題
    • 細かく分けて29種類もあり、それぞれに対応するサブシステムを作成するとコストが膨大になるという問題がある
    • 反対語(反対語を答える)
      • 反義語辞書、大規模コーパス
      • 訓練:27問中26問に正解
      • テスト:21問中15問を対象として12問に正解
    • なかまの言葉(上位下位の関係を求める、違うなかまの言葉を選ぶ)
      • シソーラス
      • 訓練:17問中14問に正解
      • テスト:83問中44問を対象として34問に正解
    • 助詞(文章に合う助詞を選択する)
      • 大規模コーパス
      • 訓練:28問中25問に正解
      • テスト:17問中17問を対象として16問に正解
    • カタカナ(ひらがなの言葉をカタカナに直す)
      • 単語辞書、形態素解析
      • 訓練:37問中18問に正解
      • テスト:52問中22問を対象として19問に正解
    • ようすを表す言葉(文章中に適切な言葉を選んで入れる)
      • 大規模コーパス、形態素解析
      • 訓練:29問中18問に正解
      • テスト:31問中20問を対象として16問に正解
  • 読解問題
    • 散文
      • 説明文や物語文の読み取り問題
      • セリフから推測する問題は非常に難しい
      • パターンマッチング
        • 特に穴埋め問題で使用
        • 完全に一致しない場合は、マッチングに利用する文字列を減らして繰り返す
        • 異なる言い回しで書かれた問題はマッチングに合わず、うまく正解を取り出せない
      • NEや直後にくる助詞の種類(NE:固有表現)
        • いつ、どこ、のような問題で使用
        • NEタイプの語のうち、最初に本文中に出現するものを答える
      • 手がかり語を用いた部分マッチ
        • 何のA、どれくらいのB、のような問題で使用
        • なぜ、どうして、など理由を聞く問題では、「それで」「だから」等を手がかり語とする
      • コーパス中での頻度の計算
        • 接続詞の問題でのみ使用
        • 接続詞と、直前の文の文末の一文節との共起の相互情報量をコーパスから求める
        • この手法はあまり有効でない→より広い素性を使った談話解析が必要
      • 問題文中のキーワードの利用
        • 以上の手法によって解答候補が複数見つかったときに使用
        • 本文中でのキーワードとの距離の総和が最小のものを解答とする
    • 韻文
      • 詩の問題
      • 本システムでは対応していない
  • 作文問題
    • 本システムでは対応していない

4.使用した知識・ツール
  • 単語辞書
    • 難しい単語の入っていない子供用の辞書を作成
    • JUMAN辞書、くもんの国語辞書、オノマトペ辞書、固有表現辞書を参考にした
  • 漢字辞書
    • 漢字の読み、書きに利用
  • 形態素解析
    • JUMANを基に自作
    • 子供用の文章を対象とするための自作だが、結果として自作する必要はなかった
  • 同義語、反意語、シソーラス
    • これら意味的な辞書は、単語辞書に連携するように自作
  • 大規模コーパス
    • 38年分の新聞記事と350GB相当のWEBコーパスを利用

5.評価
  • 訓練データ:公文出版「学力チェックテスト国語2年生」
  • 評価用データ:公文出版「くもんの小学ドリル」
  • プログラムが対処できる問題の割合
    • 漢字の問題:97.4%
    • 言葉の問題:57.1%→半分近くの問題に対応できていない
      →問題を細分化し、サブシステムを多数作ることで対応しようとしたのが原因
      →問題形式にとらわれない柔軟な対応が必要
    • 読解問題:64.7%
  • 正解率
    • 漢字の問題
      • 対象の問題のみでは93.2%
      • 全体では90.8%
    • 言葉の問題
      • 対象の問題のみでは83.6%
      • 全体では47.8%
    • 読解問題
      • 対象の問題のみでは45.5%
        →テストデータが少ないのも原因
        →穴埋め問題において、文節を単位に処理したため、うまくパターンにマッチしなかった
      • 全体では29.4%
    • 全体(合計)
      • 対象の問題のみでは83.4%
      • 全体では55.2%
  • 対象とした問題での全体的な正解率は高い
    →特に、漢字や言葉の問題では、対象とした問題では安定して正解を出すことが可能

6.考察
  • 問題の認識、分類
    • 分類が適切か?未知の分類がないか?
      →評価結果より、今回の分類ではカバーできていない問題が多いことがわかる
      →問題を分類するプログラムの精度おちう問題もある
  • 漢字の読み
    • 漢字の読みは複数あり、辞書を引けば常に答えが得られるわけではない
    • 読みがそのまま載っている大規模なコーパスは存在しない
  • 大規模コーパスの有用性→以下に示すように、非常に有用であった
    • 漢字の書き取り
      • 候補となる漢字の頻度をコーパスで調べれば、かなり正確に解ける
    • 助詞の補完
      • 候補となる助詞の頻度をコーパスで調べれば解ける
    • 反意語の選択
      • 候補となる語の頻度をコーパスで調べれば解ける
    • 関連語の選択
      • コーパス内での共起頻度を調べて解いた
      • 当たり前の表現はコーパスにも載っていないという問題がある
  • 言葉の問題
    • 問題がバラエティにとみ、それぞれの問題に対処するのが難しい
  • 世界知識の必要性
    • 予想に反し、小学2年生のレベルでも様々な世界知識が必要であった
    • 言葉それぞれの属性を設計し、その知識を埋め、それを柔軟に利用する方法が必要
  • 読解問題と質問応答の違い
    • 質問応答が対象とする、名詞句が答えであるようなシンプルな問題ばかりではない
    • しかし、きちんと文章理解をしないと解けないというわけでもない
      →人間は文章を理解しなくても、かなりの問題が解ける
  • その他の種類の技術
    • 談話解析
      • 段落ごとに切られた塊を順番に並び替える問題
      • 文と文をつなぐ接続詞を選択する問題など
    • 照応解析
      • 問題が聞いている対象を特定する
      • 代名詞のリンクを辿って解ける問題もある

Comments