Research and reviews in question answering system

走り書きです.

  • conference CIMTA 2013
  • Sanjay and Vaishali

概要

QAのサーベイ. QAは現在のクエリを投入したら適合文書のリストが渡されて,そこから正確な情報をクエリ投入者が探すというパラダイムを超える可能性を持っている.

QAシステムは時間をかけて大変進歩してきたが,まだ幾つかの挑戦的な課題を残している.

  1. 自然文の質問を理解すること
  2. 質問タイプの分類
  3. 適切なクエリ化
  4. 曖昧性解消
  5. 意味的類似語の検出
  6. identification of temporal relationship in complex questions

  7. QAシステムの3つのステップ

  8. 質問解析
    • パージング
    • 質問分類
    • クエリ構築
  9. 文書解析
    • 候補抽出
    • 解答特定
  10. 解答解析

    • 解答候補のランク付け
  11. QAシステムの分類

  12. Linguistic Approach

    • tokenization and parsing
      • 異なる分野では異なる文法が必要になるなど,可搬性に乏しい
      • 適切なKBを作るのは時間がかかる
    • knowledge information is organized in the form of production rules, logics, frames, templates(triple relations), ontologies and semantic networks
  13. Statistical Approach

    • 近年の爆発的な情報の増加を背景に発展してきたアプローチ
    • 大規模,不均質なデータをうまく扱うことができる
    • 特定のクエリ言語に依存しないし,自然言語でクエリをかける
    • 言語に依存しないし新しいドメインにも適応しやすいが,語彙的に意味のあるフレーズなどに弱い
  14. Pattern Matching Approach

Ling

データベースに問い合わせるための自然言語インターフェース

自然言語文をクエリにする

  • BASEBALL
  • LUNAR

DIALOG

  • ELIZA
  • GUS

これらの手法では,データを構造化データベースに格納するため,解答能力に制約がある.

これらの制約を許容して,構造化データベースから得られる情報をもとに推論を行うタイプの質問応答システムが現れた.

STARTはWEBを知識源としている.経験則的な情報を用いてWeb上の情報を知識ベースに格納する.

Rule

Auarc,Carqは経験則にもとづいて質問文中から質問のタイプを分類する語彙的,意味的なヒントを探す.

  • who, what, which, where,...
  • others

Statistical

Answer finding task(クエリに対応する解答を統計的に探す)に使ってみたところ,パフォーマンスはデータセットの語彙数に依存することがわかった.

IBMが作った質問応答システムでは,Okapi(BM25?)とTREC-9のQAコーパスを使ったクエリの拡張の2つを採用していた.

Statistical methodでは,クエリと文書,もしくは一文との類似度をどのように計算するかがキモになっていて,キーワードの類似度やクエリや文書の長さ,出現単語の語順の類似など,様々な尺度が考えられ適用されている.

Pattern Matching

「Where was Cricket World Cup 2012 held ?」という質問に対して,「where was held ?」というテンプレートをマッチさせる(同時に,解答タイプが「場所」であることも予め定義しておく),というアプローチを取るものたち.

現在の質問応答システムの多くは上記のようなパターンをテキストから自動的に学習することが多い(言語学的な知識やオントロジー,言語資源(WordNetなど)を用いる複雑な手法は採用されない傾向がある).

あまり複雑な質問に応答することはできない(パターンが膨大になる)ため,小-中規模の比較的簡単かつ限られた質問をされるような場面で使いやすい.

Surface Pattern based

大量の正規表現を使って解答を抽出する.

正規表現を大量に作成するのは非常に手間のかかる作業であるが,それらによって抽出される解答は非常に精度が高い.

得られた解答の信頼度を定量的に示すためにsurface patternを用いる手法もある.それらは高精度かつ低再現度である.

Template based

slotを埋めていくアプローチ.slotを埋めるタイプの質問応答は音声系の研究で多いと指導教官に教えてもらった記憶がある.

新しいデータが入ってきたとき,新しいテンプレートを作らなくてはそのデータに対応することができない.

Summary

linguistic approachは限定的なドメインをスコープに持つときにきわめて良いパフォーマンスを発揮する. 知識ベースを人でで作るのは分野の専門家が必要であり,手間もかかる. 最近の研究では,Webを知識源とすることによって知識ベースを強化したりオープンドメイン質問応答をしようという試みがある.

Statistical approachは充分な語彙数の大規模なデータ(= データ間が比較可能)が得られているときに良いパフォーマンスを発揮する. Statisticalなアプローチを取るときには,充分な訓練データがなければいけないが,一度適切に学習することができれば複雑な質問に対しても良い解答を生成することができる.

Pattern based approachは言語学的な分析をする代わりにテキストの特徴的な表現を活用する.Pattern basedな手法はその「浅さ」(表面情報しか加味しない点)ゆえに失敗することもあるが,Webをデータ源として活用するための効率的なテクニックでもある.Pattern basedな手法は,言語学的な情報への依存を減少させるだけでなく,不均質なデータをうまく扱える.だが,しばしばこの手法は意味的におかしい解釈や判断を行うことがある)(「浅さ」ゆえに).

これらの基本的なアプローチは,単体ではそれぞれに異なる制約がある.これらの手法を組み合わせることでより精度,再現率の良いシステムを構築する試みもあり,ASQAやIBM Watsonなどが有名.

結び

QAシステムを実装するにあたって,どの技術を用いるべきかは想定される問題のタイプにきわめて強く依存している. 複数のアプローチのハイブリッドが良い結果を出しているが,以前として基本的な手法の研究も重要であり続けるだろう.