Googleの研究者らは、より良い回答つながる質問をすることを学習する強化学習用いた自然言語ベースのQAシステム「ActiveQA(Active Question Answering)」をリリースしました。TensorFlow用のパッケージ形式で提供されます。
論文:Ask the Right Questions: Active Question Reformulation with Reinforcement Learning
著者:Christian Buck, Jannis Bulian, Massimiliano Ciaramita, Wojciech Gajewski, Andrea Gesmundo, Neil Houlsby, Wei Wang
GitHub:google/active-qa
本論文は、最良の回答を引き出すために質問を再構成することを学ぶエージェントを提案します。メインの質問に対して、さらに複数のサブ質問を再定式化して、サブ質問の回答を使用して、メイン質問に答えるというものです。
従来のQAシステムでは、任意の質問に答えるシステムを訓練するために、教師付き学習技術をラベル付きデータと組み合わせて使用します。この手法は効果的ですが、人間のような不確実性に対処する能力、質問を再定式化する、回答を評価して集計する能力などに欠けています。
そこで、本システムでは、エージェントが可能な限り最良の答えを見つけるために、元の質問を複数回再定式化することを行います。
上では、ユーザの質問と最終的な回答のやり取りが表示され、下では、エージェントが質問を再定式化するQAシステムが表示されている。
例えば、「テスラ(Nikola Tesla:発明家)はいつ生まれたのですか?」という質問を考えます。エージェントは、「テスラの誕生日はいつですか」と「テスラが生まれた年はいつですか」という2つの異なる方法で問題を再定式化し、QAシステムから両方の質問に対する回答を取得します。 このすべての情報を使用して、最初の質問に対して「1856年7月10日」と回答します。
メイン質問から再定式化された各サブ質問は、対応する答えがどれほど良いかという点で評価(報酬となる)され、次のサブ質問の生成に対しての質を高めることに繋げます。
これにより、エージェントはQAシステムとの動的なやりとりを行い、ユーザへ返す回答の質を向上させます。