説明

対話型質問方法、対話型質問システム、対話型質問プログラム及びそのプログラムを記録した記録媒体

【課題】質問を対話的に継続させることにより娯楽や知識の習得に役立てることができる対話型質問方法を提供する。
【解決手段】対話型質問システムは、予め定められた正答を当てるための複数のヒント文を所定の優先順に並べて予め作成されたヒント文リストの中から優先順にしたがってヒント文を選択し(S15)、回答と正答とが一致しない場合(S17:No)、Webデータにおいて、正答を含む文書数と、回答を含む文書数と、その両方を含む文書数とを検索し(S18)、検索結果に基づいて、Webデータにおける回答と正答との共起性の高さを類似度として算出し(S19)、回答と正答とが一致するまで質問に対応する回答に応じて異なる質問を出力し、類似度に基づいた応答文を生成出力する(S20)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、正答に対応するヒントを質問として出力すると共に、質問に対応する回答に応じる対話型質問方法、対話型質問システム、対話型質問プログラム及びそのプログラムを記録した記録媒体に関する。
【背景技術】
【0002】
従来、クイズ(ゲーム)の自動作成システムが知られている(例えば、非特許文献1参照)。非特許文献1に記載されたシステムは、駄洒落なぞなぞを生成するものである。また、「辞書の定義文を提示することにより逆に見出し語を当てる」クイズを生成するシステムが知られている。また、例えば、数字当てゲームのように、利用者(以下、ユーザという)の入力数字が、予め定められた正答の数字よりも大きいか小さいかという情報(正答に導く情報一般のこと:以下、ヒントという)を対話形式で自動的に与えるクイズ生成システムが知られている。
【0003】
また、クイズに限らず、ユーザとの対話を可能とする情報を生成する対話システムが知られている(例えば、非特許文献2参照)。非特許文献2に記載された対話システムは、ユーザと協同で予め決められたタスクを実行する目的指向型の対話システムであり、音声による気象情報案内を目的としている。また、対話システムの1つとして、質問応答(QA:Question Answering)システムが知られている(例えば、非特許文献3参照)。非特許文献3に記載されたQAシステムは、新聞記事などの大量の文書集合(データベース)から質問に対する解答を探し出して、要約を作成し、ユーザに提示するものである。また、ゲームの分野では、ユーザに複数(例えば20個)の質問を対話的に提示して回答を受け付けることで、ユーザの考えている事物を推定するシステム(商品名「20Q」、会社名「RADICA GAMES LTD.」)が知られている(例えば、非特許文献4参照)。
【非特許文献1】キムビンステッド、滝澤修、「日本語駄洒落なぞなぞ生成システム“BOKE”」、人工知能学会誌、1998年11月、vol.13、No.6、p.920−927
【非特許文献2】堂坂浩二、外4名、「音声対話システム「飛遊夢(ひゅうむ)」」電子情報通信学会2001年総合大会講演論文集、2001年、p.506−507
【非特許文献3】佐々木裕、外7名、「SAIQA:大量文書に基づく質問応答システム」、自然言語処理研究会/情報学基礎研究会、FI64/NL145−12、情報処理学会、2001年9月11日、p.77−82
【非特許文献4】[online]、[平成18年5月31日検索]、インターネット<URL:http://www.asovision.com/20q/top.html>
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、従来のクイズシステムは、ヒントを生成しないため、対話形式のクイズを実現できなかった。また、たとえ対話形式であったとしても、現状では、クイズの正答が単純な数字や記号であることを前提としている。また、非特許文献2に記載された対話システムは、目的指向型の対話システムなので対話を長引かせるような無駄な対話を避ける必要がある。また、QAシステムは、一問一答であり、ヒントの生成を前提とするものではない。また、ユーザの考えている事物を推定するゲームは、「はい」や「いいえ」などしか受け付けず、ヒントを生成するものではない。
【0005】
そこで、本発明では、前記した問題を解決し、質問を対話的に継続させることにより、娯楽や知識の習得に役立てることができる対話型質問方法、対話型質問システム、対話型質問プログラムおよび記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0006】
前記課題を解決するため、請求項1に記載の対話型質問方法は、予め定められた正答を当てる問題における正答に対応するヒントを示す文である複数のヒント文を質問として出力し、前記質問に対応する回答に応じて異なる質問を出力する対話型質問システムの対話型質問方法であって、前記複数のヒント文が予め定められた優先順に並べられたヒント文リストの中から、前記優先順にしたがって前記ヒント文を選択するヒント文選択ステップと、前記回答と前記正答とが一致するか否かを判定する一致判定ステップと、前記回答と前記正答とが一致しない場合に、予め定められたテキストデータ群において、前記正答を含むデータ群と、前記回答を含むデータ群と、前記回答と前記正答との両方を含むデータ群とを検索する検索ステップと、前記検索された結果に基づいて、前記テキストデータ群における前記回答と前記正答との共起性の高さを、前記回答と前記正答との類似度として算出する類似度算出ステップと、前記算出された類似度に基づいて、前記回答に対する応答文を生成する応答文生成ステップと、前記回答と前記正答とが一致するまで前記異なる質問を繰り返し出題する出題管理ステップとを有することを特徴とする。
【0007】
かかる手順によれば、対話型質問システムは、ヒント文選択ステップで、優先順にしたがってヒント文を選択する。ここで、ユーザにとって正答がすぐに分かるようなヒント文は、優先順が低く、ヒントリストにおいて、なるべく後でユーザに提示するような順番に配置される。また、対話型質問システムは、回答と正答とが一致するまで異なる質問を繰り返し出題し、その間、回答と正答とが一致しない場合には、テキストデータ群における回答と正答との共起性の高さを基準にした類似度に基づいた応答文が生成される。ここで、テキストデータ群としては、インターネット等から取得可能なweb情報(webデータ)や専門家によって構築された辞書(辞書データ)を利用することができる。
【0008】
また、請求項2に記載の対話型質問方法は、請求項1に記載の対話型質問方法において、複数の正答候補を格納した正答候補データベースから所定の正答候補を選択し、前記選択した正答候補を正答として生成する正答生成ステップと、前記生成された正答に対応するヒントとして、キーワードまたはフレーズで表現された複数のヒント表現を、前記テキストデータ群から取得するヒント表現取得ステップと、前記取得されたヒント表現を含む文を示すヒント文候補を生成するヒント文候補生成ステップと、前記生成された各ヒント文候補からキーワードを抽出するヒントキーワード抽出ステップと、前記テキストデータ群において、前記正答と前記抽出されたキーワードとの両方を含む文書に関する特徴量と、前記テキストデータ群におけるすべての文書に関する特徴量とを含む複数の特徴量を抽出する特徴量抽出ステップと、前記抽出された特徴量に基づいて、前記テキストデータ群における前記正答と前記抽出されたキーワードとの共起頻度と、前記テキストデータ群における前記抽出されたキーワードの一般性とを用いて、前記各ヒント文候補に対するスコアを算出するスコア算出ステップと、前記各ヒント文候補のスコアに基づいて、前記各ヒント文候補の優先順を決定し、前記決定された優先順で前記ヒント文候補を並べて、前記ヒント文リストを生成するソートステップとをさらに有することを特徴とする。
【0009】
かかる手順によれば、対話型質問システムは、ヒント文リストを以下の方法で予め生成しておく。すなわち、対話型質問システムは、予め生成した正答に対応するキーワードやフレーズをテキストデータ群から取得してヒント文候補を生成し、テキストデータ群における正答とヒント文候補に含まれるキーワードとの共起頻度を用いたスコアを算出する。ここで、抽出されたキーワードがユーザにとって分かりにくい特定の単語の場合には、ヒントたり得ないので、スコアには、テキストデータ群におけるキーワードの一般性を反映する。これにより、対話型質問システムでは、スコアから、ユーザにとって分かり易い順番を知見できるので、この順番を逆順とすることで、各ヒント文候補の優先順を適切に決定することができる。そして、対話型質問システムは、この優先順にしたがった順番でヒント文を並べ、ヒント文リストを生成する。
【0010】
また、請求項3に記載の対話型質問方法は、請求項2に記載の対話型質問方法において、前記ヒント表現取得ステップが、前記複数のヒント表現を、ネットワークまたは/および前記対話型質問システムに備えられたテキストデータ群から取得し、前記特徴量抽出ステップが、前記ヒントキーワード抽出ステップで抽出されたキーワードの特徴量を前記ネットワークまたは/および前記対話型質問システムに備えられたテキストデータ群から抽出することを特徴とする。
【0011】
かかる手順によれば、対話型質問システムは、ネットワーク上のテキストデータ群からキーワードやフレーズを取得した場合には、ヒント表現の多様性が増し、ユーザが興味を持ち易くなりヒント文にふさわしくなる。また、対話型質問システムに備えるテキストデータ群からキーワードやフレーズを取得する場合には、対話型質問システムを利用するユーザ(一般、会社員、学生等)や利用する目的(娯楽、社内教育、学校教育等)に応じて、所望のテキスト群を、対話型質問システムの記憶手段に予め格納しておく。これにより、ユーザや利用目的に適切なヒント表現が含まれるヒント文を生成することが可能となる。また、対話型質問システムでは、ヒント文から抽出されるキーワードの特徴量を、例えば、ネットワーク上のテキストデータ群または対話型質問システムに備えられたテキストデータ群に含まれる文書数における当該キーワードを含む文書数の割合とすることができる。ここで、キーワードとは、例えば、名詞などの一般的な単語である。したがって、キーワードの特徴量が、優先順を決定するためのスコアにおけるキーワードの一般性の指標となり得る。
【0012】
また、請求項4に記載の対話型質問方法は、請求項2に記載の対話型質問方法において、前記ヒント表現取得ステップが、前記複数のヒント表現を、ネットワークまたは/および前記対話型質問システムに備えられた予め作成された辞書データベースのテキストデータ群から取得し、前記特徴量抽出ステップが、前記ヒントキーワード抽出ステップで抽出されたキーワードの特徴量を前記辞書データベースのテキストデータ群から抽出し、前記検索ステップによって、前記辞書データベースのテキストデータ群から前記回答に関する情報として前記回答に付随した付随データが検索された場合に、前記応答文生成ステップが、前記検索された付随データに基づいて、前記回答に対する応答文を生成することを特徴とする。
【0013】
かかる手順によれば、対話型質問システムは、辞書データベースのテキストデータ群からキーワードやフレーズを取得した場合には、ヒント表現が正答に対して正確で良質なものとなり、ユーザにとって分かり易くなりヒント文にふさわしくなる。また、対話型質問システムでは、ヒント文から抽出されるキーワードの特徴量を、例えば、辞書データベースの見出し語等のエントリ数における当該キーワードを含むエントリ数の割合とすることができる。また、対話型質問システムは、辞書データベースのテキストデータ群から検索された付随データに基づいて、回答に対する応答文を生成する。ここで、付随データは、正答をその事物の名称とすると、その事物に付随する性質や関連する事物の情報を指す。例えば、回答が人名であれば、付随データには、職業、生没年、居住地等の情報が含まれる。これにより、応答文生成ステップは、回答と正答の付随データをそれぞれ比較した応答文を生成することが可能となる。
【0014】
また、請求項5に記載の対話型質問方法は、請求項2ないし請求項4のいずれか一項に記載の対話型質問方法において、前記回答を、前記正答候補データベースから抽出する回答抽出ステップをさらに有することを特徴とする。
【0015】
かかる手順によれば、対話型質問システムは、ユーザの代わりに回答を抽出し、抽出した回答が正答と一致するか否かを判別し、抽出した回答と正答との類似度を求め、適切な応答文を生成すると共に、抽出した回答が正答と一致するまで、質問を出題し続ける。つまり、対話型質問システムは、質問側と、擬似ユーザとしての回答側との2役を演じて対話を実現する。したがって、この一連の過程をユーザに提示することにより、娯楽や知識の習得に役立てることができる
【0016】
また、請求項6に記載の対話型質問方法は、請求項1ないし請求項5のいずれか一項に記載の対話型質問方法において、前記出題管理ステップは、前記回答と前記正答との類似度が所定値以上であるか否かを判別する判別ステップを有し、前記ヒント文選択ステップは、前記回答と前記正答との類似度に基づいて、前記ヒント文リストを前記優先順と異なる順序に並べ替え、前記並べ替えた順序にしたがって前記ヒント文を選択することを特徴とする。
【0017】
かかる手順によれば、対話型質問システムは、回答と正答との類似度に基づいてヒント文を並べ替える。例えば、類似度が所定値よりも小さい場合に、ヒント文リストを優先順と異なる順序に並べ替える。当初、ヒント文リストは、当初、ユーザにとって分かりにくい順番に並べられているので、途中で並べ替えることにより、ユーザにとって分かり易いヒント文を当初よりも早く出題することが可能となる。ここで、並べ替えには、中抜き(スキップ)も含む。また、例えば、類似度が所定値よりも大きい場合に、ヒント文リストを優先順と異なる順序に並べ替えるようにしてもよい。これによれば、ヒント文の提示順序を、ユーザの個人差に合わせて動的に変更させることができる。
【0018】
また、前記課題を解決するため、請求項7に記載の対話型質問システムは、予め定められた正答を当てる問題における正答に対応するヒントを示す文である複数のヒント文を質問として出力し、前記質問に対応する回答に応じて異なる質問を出力する対話型質問システムであって、前記複数のヒント文が予め定められた優先順に並べられたヒント文リストの中から、前記優先順にしたがって前記ヒント文を選択するヒント文選択手段と、前記回答と前記正答とが一致するか否かを判定する一致判定手段と、前記回答と前記正答とが一致しない場合に、予め定められたテキストデータ群において、前記正答を含むデータ群と、前記回答を含むデータ群と、前記回答と前記正答との両方を含むデータ群とを検索する検索手段と、前記検索された結果に基づいて、前記テキストデータ群における前記回答と前記正答との共起性の高さを、前記回答と前記正答との類似度として算出する類似度算出手段と、前記算出された類似度に基づいて、前記回答に対する応答文を生成する応答文生成手段と、前記回答と前記正答とが一致するまで前記異なる質問を繰り返し出題する出題管理手段とを備えることを特徴とする。
【0019】
かかる構成によれば、対話型質問システムは、ヒント文選択手段によって、優先順にしたがってヒント文を選択する。ここで、ユーザにとって正答がすぐに分かるようなヒント文は、優先順が低く、ヒントリストにおいて、なるべく後でユーザに提示するような順番に配置される。また、対話型質問システムは、出題管理手段によって、回答と正答とが一致するまで異なる質問を繰り返し出題する。また、対話型質問システムは、応答文生成手段によって、回答と正答とが一致しない場合には、テキストデータ群における回答と正答との共起性の高さを基準にした類似度に基づいた応答文を生成する。ここで、テキストデータ群としては、インターネット等から取得可能なweb情報(webデータ)や専門家によって構築された辞書(辞書データ)を利用することができる。
【0020】
また、請求項8に記載の対話型質問システムは、請求項7に記載の対話型質問システムにおいて、複数の正答候補を格納した正答候補データベースから所定の正答候補を選択し、前記選択した正答候補を正答として生成する正答生成手段と、前記生成された正答に対応するヒントとして、キーワードまたはフレーズで表現された複数のヒント表現を、前記テキストデータ群から取得するヒント表現取得手段と、前記取得されたヒント表現を含む文を示すヒント文候補を生成するヒント文候補生成手段と、前記生成された各ヒント文候補からキーワードを抽出するヒントキーワード抽出手段と、前記テキストデータ群において、前記正答と前記抽出されたキーワードとの両方を含む文書に関する特徴量と、前記テキストデータ群におけるすべての文書に関する特徴量とを含む複数の特徴量を抽出する特徴量抽出手段と、前記抽出された特徴量に基づいて、前記テキストデータ群における前記正答と前記抽出されたキーワードとの共起頻度と、前記テキストデータ群における前記抽出されたキーワードの一般性とを用いて、前記各ヒント文候補に対するスコアを算出するスコア算出手段と、前記各ヒント文候補のスコアに基づいて、前記各ヒント文候補の優先順を決定し、前記決定された優先順で前記ヒント文候補を並べて、前記ヒント文リストを生成するソート手段とをさらに備えることを特徴とする。
【0021】
かかる構成によれば、対話型質問システムは、ヒント文候補生成手段によって、正答に対応するキーワードやフレーズをテキストデータ群から取得してヒント文候補を生成し、スコア算出手段によって、テキストデータ群における正答とヒント文候補に含まれるキーワードとの共起頻度を用いたスコアを算出する。ここで、スコア算出手段は、スコアには、テキストデータ群におけるキーワードの一般性を反映する。そして、対話型質問システムは、ソート手段によって、スコアから導かれるユーザにとって分かり易い順番を逆順とすることで、各ヒント文候補の優先順を適切に決定した順番でヒント文を並べ、ヒント文リストを生成する。
【0022】
また、請求項9に記載の対話型質問プログラムは、請求項1ないし請求項6のいずれか一項に記載の対話型質問方法をコンピュータに実行させることを特徴とする。このように構成されることにより、このプログラムをインストールされたコンピュータは、このプログラムに基づいた各機能を実現することができる。
【0023】
また、請求項10に記載のコンピュータ読み取り可能な記録媒体は、請求項9に記載の対話型質問プログラムが記録されたことを特徴とする。このように構成されることにより、この記録媒体を装着されたコンピュータは、この記録媒体に記録されたプログラムに基づいた各機能を実現することができる。
【発明の効果】
【0024】
本発明によれば、質問を対話的に継続させることにより、娯楽や知識の習得に役立てることができる。
【発明を実施するための最良の形態】
【0025】
以下、図面を参照して本発明の対話型質問方法および対話型質問システムを実施するための最良の形態(以下「実施形態」という)について、第1実施形態ないし第3実施形態に分けて詳細に説明する。
【0026】
(第1実施形態)
[対話型質問システム]
図1は、本発明の第1実施形態に係る対話型質問システムに含まれるヒント生成装置の構成を示す機能ブロック図である。
対話型質問システム1は、予め定められた正答を当てる問題における正答に対応するヒントを示す文である複数のヒント文を質問として出力し、質問に対応する回答に応じて異なる質問を出力するものである。
以下の説明では、対話型質問システム1は、正答を人名として、人名を当てるヒントを質問として出力するものとする。
【0027】
対話型質問システム1は、ヒント生成装置2と、対話型質問装置3とを備えている。
ヒント生成装置2は、正答を生成し、生成した正答に対応する複数のヒント文を生成し、ヒント文リストとして対話型質問装置3に出力するものである。
対話型質問装置3は、ヒント生成装置2から取得したヒント文リストからヒント文を選択して質問として出力し、質問に対応する回答に応じて異なる質問を出力するものである。
【0028】
ヒント生成装置2および対話型質問装置3は、例えば、CPU(Central Processing Unit)と、RAM(Random Access Memory)と、ROM(Read Only Memory)と、HDD(Hard Disk Drive)と、通信を行うためのNIC(Network Interface Card)等から構成される。
【0029】
ヒント生成装置2は、ネットワークNを介して、ネットワークデータサーバ4に接続されている。ネットワークNは、例えば、インターネットである。ネットワークデータサーバ4は、ネットワークデータベース4aを備えている。ネットワークデータベース4aは、テキストデータ群として、ヒント文に用いられる各種情報を格納している。なお、ネットワークデータサーバ4は、複数存在する。また、対話型質問装置3もネットワークNを介して、ネットワークデータサーバ4に接続されている(図3参照)。
【0030】
ヒント生成装置2は、質問応答システム5に接続されている。質問応答システム5は、公知のQA(Question Answering)システムであり、例えば、新聞記事などの大量の文書集合(データベース)を図示しない記憶手段に記憶し、データベースから質問に対する解答を探し出すものである。ここで、質問は、例えば、「○○の関連語は?」、「○○と関連のある場所は?」、「○○と関連のある人物は?」等である。
【0031】
[ヒント生成装置の構成]
ヒント生成装置2は、図1に示すように、通信インタフェース11と、記憶手段12と、正答生成手段13と、ヒント表現取得手段14と、ヒント文候補生成手段15と、ヒント文リスト生成手段16とを備えている。
【0032】
通信インタフェース11は、ネットワークデータサーバ4から、所定の情報(キーワードまたはフレーズなどのヒント表現等)を入力するものである。
記憶手段12は、例えば、CPUによる演算処理等に利用されるRAMや、例えば、所定のプログラム、各種データベース、処理結果等を格納するROMやHDDを備えている。
【0033】
記憶手段12は、正答候補データベース121と、ヒント文候補データベース122と、ヒント文リストデータベース123とを備えている。
正答候補データベース121は、複数の正答候補を格納するものであり、例えば、複数の人名が記録された人名リストである。
ヒント文候補データベース122は、ヒント文候補生成手段15で生成されたヒント文候補を格納するものである。ここで、ヒント文候補は、キーワードまたはフレーズなどのヒント表現を含む文である。
ヒント文リストデータベース123は、ヒント文リスト生成手段16で生成されたヒント文リストを格納するものである。ここで、ヒント文リストは、ヒント文候補から出題用に選択されて所定の順番に並べられた文(ヒント文)からなる。
【0034】
正答生成手段13は、正答候補データベース121から所定の正答候補を選択し、選択した正答候補を正答として生成し、ヒント表現取得手段14に出力するものである。
ここでは、一例として、人名を当てるクイズを取り上げる。例えば、正答生成手段13が、人名として「織田信長」を選択した場合、「織田信長」を当てるという問題となり、ユーザは、順次出されるヒントが誰のことを指しているのかを当てることとなる。以下では、例えば、「織田信長」という人名を当てるためのヒント文が生成されることとして説明する。なお、正答を作成する方法は、辞書の定義文提示による見出し語当てクイズの問題作成法と同様なので、公知の問題作成法を利用する。
【0035】
ヒント表現取得手段14は、正答生成手段13で生成された正答に対応するヒントとして、複数のヒント表現を、ネットワークNを介してネットワークデータサーバ4に格納されたデータベースから取得するものである。ここで、ヒント表現とは、キーワードまたはフレーズで表現されたヒントを示す。以下では、ネットワークNを介して取得可能なテキストデータ群をWebデータという。Webデータには、例えば、インターネット上の人物事典が含まれる。インターネット上では、例えば、「織田信長」であれば、「戦国武将」といったカテゴリ情報がメタデータとして付与されている人物事典も存在するのが現状である。したがって、Webデータという場合に、このようなデータを想定する。なお、Webデータに、ネットワークN以外の様々なソースから得られたデータを含めてもよい
【0036】
本実施形態では、ヒント表現取得手段14は、正答を説明していると考えられるヒント表現を取得するために、第1表現取得手段141と、第2表現取得手段142と、第3表現取得手段143と、第4表現取得手段144とを備えている。
第1表現取得手段141は、図示を省略するが、公知のフレーズ検索を実行する手段と、形態素解析を実行する手段とを備え、ネットワークNから得られるWebデータから特徴的な表現(キーワード)をヒント表現として抽出するものである。
第2表現取得手段142は、第1表現取得手段141による形態素解析から得られる正答の読み仮名をヒント表現として抽出するものである。
第3表現取得手段143は、ネットワークNから得られるWebデータからフレーズをヒント表現として抽出するものである。ここで、フレーズは、動詞句である。
第4表現取得手段144は、質問応答システム5に質問を出力し、質問応答システム5の応答をヒント表現として取得するものである。
なお、ヒント表現取得手段14の内部構成は、これに限定されるものではなく、前記した第1表現取得手段141ないし第4表現取得手段144以外に、さらに、1以上の表現取得手段(第5表現取得手段等)を備えるようにしてもよい。例えば、文書中に正答と共に出現する頻度の高い表現を、ヒント表現として取得する手段を第5表現取得手段としてもよい。また、ヒント表現取得手段14の内部構成は、前記した第1表現取得手段141ないし第4表現取得手段144のうちの少なくとも1つを備えるように構成してもよい。以下、第1表現取得手段141ないし第4表現取得手段144の詳細を説明する。
【0037】
<第1表現取得手段>
人物を説明するのに特徴的なパターンを捉えて、「織田信長などの戦国大名」といった文から、「戦国大名」というヒント表現を獲得する。特徴的な表現を用いて、人物などの定義を獲得する従来手法には次のものが挙げられる
Joho, H. and Sanderson, M. (2000)”Retrieving Descriptive Phrases from Large Amounts of Free Text”. In: Agah, A.,Callan, J.& Rundenstenier, E. (eds), Proceedings of the 9th International Conference on Information and Knowledge Management, 180-186, McLean, VA: ACM.
【0038】
本実施形態でいうところの特徴的な表現とは以下のとおりである。ただし、Aは正答、例えば「織田信長」、であり、Bは求めようとするヒント表現である。
(1)AというB、(2)AといったB、(3)A以外のB、(4)AなどのB、(5)AのようなB、(6)AというとB、(7)AといえばB、(8)AによるB、(9)AやB、(10)BやA
【0039】
具体的な手続きとしては、テキストデータ中から、「Aというと」という文字列でフレーズ検索を行い、「Aというと」という表現を含む文を取得する。その後、形態素解析と係り受け解析を行い、「Aというと」に係られる句を求める。例えば、「織田信長というと」という表現で、フレーズ検索を行い、「織田信長というと敦盛ですが…(後略)」という文が取得された場合、「織田信長というと」の係り先は「敦盛」であるため、「敦盛」がBとして、求められる。
【0040】
特徴的な表現は、以下のように4つに分けられる。
前記した(1)−(5)は、BがAのカテゴリ(例えば、「戦国大名」)を表すと考えられるものである。
前記した(6)−(7)は、BがAの連想(例えば、「敦盛」)を表すと考えられるものである。
前記した(8)は、BがAによって作られたもの・なされたこと(例えば、「安土城」)を表すと考えられるものである。
前記した(9)−(10)は、BがAと同じカテゴリに属する(例えば、「豊臣秀吉」)ことを表すと考えられるものである。
【0041】
前記した(1)−(5)は、Bの上位語を用いることでさらにヒントを増やすことができる。例えば、織田信長についてのヒント表現として「武将」が取得された場合、例えば、「日本語語彙体系CD-ROM版」(NTTコミュニケーション科学基礎研究所監修、池原悟ほか編集、岩波書店)の概念辞書を用いることで、「武将」の上位語に「人間」があることが分かる。この場合、「人間」というヒント表現が得られたものとすることができる。なお、本実施形態では、Bの精度を高めるために、Bが「人間」の下位語でなかった場合、用いないこととする。
【0042】
また、本実施形態では、Bの形態素解析結果に、「接続詞」や「副詞」を含むものはヒント表現として用いないこととした。その理由は、形態素解析や係り受け解析の誤りなどから、Bが必ずしもヒントとして適切であるとは限らないことと、ヒントとしてユーザに提示するときには文脈から独立して使われるため、Bに文脈依存性があってはならないためである。
【0043】
<具体例>
表1は、正答「織田信長」に関して、フレーズ検索に検索エンジンgoo(登録商標)を用いたときの検索結果と共に表示されるsnippetと呼ばれる要旨のテキストをWebデータとして用いて作成されたヒント表現である。
【0044】
【表1】

【0045】
<第2表現取得手段>
第2表現取得手段142は、正答(人名)の表記(最初の文字、最後の文字)からヒント文を作成する。対象となる人名を形態素解析すると、読み仮名が取得できるため、この最初の文字、最後の文字を取得する。
【0046】
<第3表現取得手段>
第3表現取得手段143は、特徴的な表現を用いず、A(正答)を含む文自体からヒント文を作成する。この場合、「Aが」という表現の係り先の動詞句が見つかれば、その動詞句をヒント表現として用いる。例えば、「織田信長が楽市楽座を開いた」とあれば、「織田信長が」は「楽市楽座を開いた」に係るため、「楽市楽座を開いた」をヒント表現とする。正答が「織田信長」の場合、例えば、以下の表2に示すヒント表現を取得することができる。この中で、「た」で終わるものだけを使用することとする。
【0047】
【表2】

【0048】
<第4表現取得手段>
第4表現取得手段144は、「○○の関連語は?」、「○○に関連する場所は?」、「○○に関連する人物は?」という3つの質問文を生成し、それらを質問応答システム5に送り、その応答をヒント表現とする。正答が「織田信長」の場合、例えば、以下の表3に示すヒント表現を質問応答システム5から取得することができる。
【0049】
【表3】

【0050】
ヒント文候補生成手段15は、ヒント表現取得手段14で取得されたヒント表現を含む文を示すヒント文候補を生成するものであり、第1候補生成手段151と、第2候補生成手段152と、第3候補生成手段153と、第4候補生成手段154とを備えている。
【0051】
第1候補生成手段151は、第1表現取得手段141で取得されたヒント表現に対して、「○○だよ」、「○○だね」というテンプレートを用いてヒント文を作成する。例えば、その人物に関するカテゴリ情報が「戦国武将」である場合、第1候補生成手段は、「戦国武将だよ」というヒント文を作成する。
また、その人物に関する生年/没年情報が付与されている場合、第1候補生成手段151は、「○○よ」というテンプレートを用いてヒント文を作成する。例えば、その人物に関する生年/没年が「1534年/1582年」ならば、「1534年に生まれたよ」や「1582年に死んだよ」といったヒント文を生成する。
ヒント表現を取得する際に用いた特徴的な表現が、前記した(6)−(7)の場合には、第1候補生成手段151は、例えば、「○○といえば?」というテンプレートを用いてヒント文を作成する。
ヒント表現を取得する際に用いた特徴的な表現が、前記した(8)−(10)の場合には、第1候補生成手段151は、例えば、「○○に関係があるよ」というテンプレートを用いてヒント文を作成する。
【0052】
第2候補生成手段152は、第2表現取得手段142で取得されたヒント表現に対して、テンプレートを用いてヒント文を作成する。第2候補生成手段152は、人名から、「最初の文字は○だよ」と、「最後の文字は○だよ」というテンプレートを用いてヒント文を作成する。
【0053】
第3候補生成手段153は、第3表現取得手段143で取得されたヒント表現に対して、テンプレートを用いてヒント文を作成する。この第3候補生成手段153は、文章の語尾に対して、統語的なルールを適用することで最終の動詞を過去形にしてから、「よ」を付与する。つまり、「○○○たよ」というテンプレートを用いてヒント文を作成する。例えば、ヒント表現が「明智光秀に殺される」の場合、「明智光秀に殺されたよ」というヒント文になる。ただし、「○○○ったよ」、「○○○だよ」というテンプレートの方が適切な場合テンプレートを変更する。なお、最終の動詞を過去形にするのは、通例、人物に関する事実は過去のことが多いという知見に基づいている。
【0054】
第4候補生成手段154は、第4表現取得手段144で取得されたヒント表現に対して、テンプレートを用いてヒント文を作成する。この第4候補生成手段154は、第3候補生成手段153と同様に、文章の語尾に対して、シンクタクティックなルールを適用することで最終の動詞を過去形にしてから、「よ」を付与するものである。
なお、ヒント文候補生成手段15の内部構成は、これに限定されるものではなく、前記した第1候補生成段151ないし第4候補生成手段154以外に、さらに、1以上の候補生成手段(第5候補生成手段等)を備えるようにしてもよい。例えば、第5候補生成手段が前記した第5表現取得手段に対応する場合には、第5表現取得手段で取得されたヒント表現を用いて、例えば、「○○に関係あるよ。」というテンプレートを用いてヒント文を作成する。
【0055】
ヒント文リスト生成手段16は、図1に示すように、ヒントキーワード抽出手段161と、特徴量抽出手段162と、スコア算出手段163と、ソート手段164と、格納手段165とを備えている。
ヒントキーワード抽出手段161は、ヒント文候補データベース122に格納された各ヒント文候補からキーワードを抽出するものである。以下では、ヒントキーワード抽出手段161で抽出されたキーワードのことを、単にキーワードという。キーワードは、例えば、形態素解析の結果、名詞とされたものである。例えば、ヒント文候補が「明智光秀に殺されたよ」ならば、「明智光秀」がキーワードとなる。また、ヒント文候補が「武将だよ」の場合には、「武将」がキーワードとなる。
【0056】
特徴量抽出手段162は、Webデータにおいて、正答を含む文書(例えば、html文書)の個数(文書に関する特徴量)Eと、正答とキーワードとの両方を含む文書の個数(文書に関する特徴量)Fと、対象とするWebデータにおけるすべての文書の個数(文書に関する特徴量)Gと、対象とするWebデータにおけるキーワードのヒット数(文書に関する特徴量)Hとを抽出するものである。なお、特徴量Gを非常に大きな数値で代用してもよい。
【0057】
スコア算出手段163は、特徴量抽出手段162で抽出された各特徴量(E,F,G,H)に基づいて、Webデータにおける正答とキーワードとの共起頻度と、Webデータにおけるキーワードの一般性とを用いて、各ヒント文候補に対するスコア(第1スコア)S1を、式(1)に基づいて算出するものである。
【0058】
1=log(F/E)+log(H/G) …式(1)
【0059】
式(1)では、正答とキーワードとの共起頻度に、正答と回答との関連度F/Eを用いた。関連度F/Eが高いヒント文候補は、ユーザにとって正答がすぐに分かるものであると考えられる。ただし、キーワードの中には、正答とは共起が強いが、滅多に使用されずユーザには分かりにくいものが混じる可能性がある。そこで、式(1)では、Webデータにおけるキーワードの一般性をH/Gとした。このH/Gの値が大きいほど、キーワードは、ユーザになじみがあるものとなる。つまり、式(1)は、第1スコアS1の値が大きいほど、正答が分かりにくいことを示す。例えば、織田信長の場合、「武将だよ」というヒントよりも「明智光秀に殺されたよ」というヒントの方が、内容において、織田信長と関連が高く、答えに直結すると思われる。
【0060】
なお、スコア算出手段163は、例えば「日本語の語彙特性CD-ROM版」(NTTコミュニケーション科学基礎研究所監修、天野成昭ほか編、三省堂)におけるキーワードの親密度と、前記した「日本語語彙体系CD-ROM版」の概念木をキーワードから上位にたどって行き、いくつのノードを経るかといったルート概念までのパス長の情報とを求めておく。これらの情報を求めておく理由は、一般性を求める上で、これらの情報が必要となる場合があると考えられるからである。
【0061】
ソート手段164は、各ヒント文候補のスコア(第1スコアS1)に基づいて、各ヒント文候補の優先順を決定し、決定された優先順でヒント文候補を並べて、ヒント文リストを生成するものである。ここでは、ソート手段164は、第1スコアS1の値が小さいヒント文候補ほど優先的にヒント文リストの上位(始め)に配置する。このように配置することで、正答がなるべくすぐに分からないような並べ方を実現できる。このように並べる理由は、すぐに正答が分かってしまったのでは、対話にならず、ユーザもクイズの過程を楽しめないと考えられるからである。
【0062】
具体的には、ヒント文候補が多数ある場合、ランキングが低いヒント文候補(第1スコアS1の値が低いキーワード)は、関連度が低く、一般性も低いと考えられる。そのため、ランキングが低いヒント文候補は、ヒント文として必要ではない可能性が高い。そこで、ソート手段164は、多数のヒント文候補のうち、ランキングがトップJ位(例えばJ=10)のものだけを残す。そして、ソート手段164は、トップJ位までのヒント文を逆順にし、ヒント文リストとする。
【0063】
本実施形態では、ソート手段164は、いくつかのヒント文候補を別扱いにして、第1のスコアS1として所定の規定値を与え、経験則によりヒント文リストに加えることとする。例えば、第2表現取得手段142で取得された「読みを用いたヒント文候補」は、正答に直結しているため分かりやすい。そこで、ソート手段164は、「読みを用いたヒント文候補」をヒント文リストの末尾(最後)に追加する。また、ネットワークN上の人物事典から得られる「カテゴリ情報(例えば、「戦国武将」)」や「生年/没年」は、その人物の大まかな情報を表し、ユーザにとってクイズの答えを考え始めるのに役に立つ情報である。そこで、ソート手段164は、「カテゴリ情報」や「生年/没年」を用いたヒント文をヒント文リストの先頭(最初)に追加する。また、ネットワークN上の人物事典によって、ヒント文候補のキーワードに親密度が定義されている場合には、ソート手段164は、正規の第1のスコアS1の値を調整して、それらのヒント文をヒント文リストの最初の方に移動する。これにより、ソート手段164は、最終的なヒント文リストを生成する。
【0064】
格納手段165は、ソート手段164で生成されたヒント文リストを正答別にヒント文リストデータベース123に格納する。
なお、正答生成手段13、ヒント表現取得手段14、ヒント文候補生成手段15、およびヒント文リスト生成手段16は、CPUが記憶手段12のHDD等に格納された所定のプログラムをRAMに展開して実行することにより実現されるものである。
【0065】
[ヒント生成装置の動作]
図1に示したヒント生成装置の動作について図2を参照(適宜図1参照)して説明する。図2は、図1に示したヒント生成装置の動作を示すフローチャートである。ヒント生成装置2は、正答生成手段13によって、正答候補を選択して正答を生成し(ステップS1)、ヒント表現取得手段14によって、正答に対応するヒント表現を取得する(ステップS2)。そして、ヒント生成装置2は、ヒント文候補生成手段15によって、取得したヒント表現でヒント文候補を生成し(ステップS3)、ヒントキーワード抽出手段161によって、各ヒント文候補からキーワードを抽出する(ステップS4)。そして、ヒント生成装置2は、特徴量抽出手段162によって、キーワードに関する複数の特徴量をネットワークNを介してWebデータから抽出し(ステップS5)、スコア算出手段163によって、抽出した特徴量に基づいて、各ヒント文候補に対する第1スコアを算出する(ステップS6)。続いて、ヒント生成装置2は、ソート手段164によって、各ヒント文候補のスコアと出題ルールとに基づいて、ヒント文リストを生成し(ステップS7)、格納手段165によって、ヒント文リストを問題別に格納する(ステップS8)。
【0066】
<具体例>
表4および表5は、正答「織田信長」に関して、検索エンジンgoo(登録商標)を用いて取得されたWebデータによって作成されたヒント文リストである。ヒント文リストには、ヒント文ごとに、ヒント番号、ヒント文の内容およびキーワードと、type、score、HitCount、targetHitCount、psy、pathlenのそれぞれの数値が、この順番に記載されている。
typeの数値は、ヒント表現がどこから取得されたかを示すものである。
type=「1」は、表1の「カテゴリ情報」から取得されたものである。
type=「2」は、表1の「連想」から取得されるものである(該当なし)。
type=「3」は、表1の「作られたもの」から取得されたものである。
type=「4」は、表1の「同じカテゴリ」から取得されたものである。
type=「5」は、表2から取得されたものである。
type=「6」は、正答の読み(最初の1文字)から取得されたものである。
type=「7」は、正答の読み(最後の1文字)から取得されたものである。
type=「8」は、表3の「関連語」から取得されたものである。
type=「9」は、表3の「場所」から取得されたものである。
type=「10」は、表3の「人物」から取得されたものである。
scoreは、第1スコアS1の値である。HitCount、targetHitCountは、それぞれ、キーワードのヒット数、キーワードと答えを両方含むヒット数である。なお、psyとはキーワードの日本語語彙特性における親密度であり、pathlenとは日本語語彙体系におけるキーワードからルート概念までのパス長である。
【0067】
【表4】

【0068】
【表5】

【0069】
[対話型質問装置の構成]
図3は、本発明の第1実施形態に係る対話型質問システムに含まれる対話型質問装置の構成を示す機能ブロック図である。
対話型質問装置3は、図3に示すように、通信インタフェース31と、記憶手段32と、一致判定手段33と、検索手段34と、類似度算出手段35と、ヒント文選択手段36と、応答文生成手段37と、出題管理手段38とを備えている。
【0070】
通信インタフェース31は、ネットワークデータサーバ4から、所定の検索情報(正答、回答、あるいは、その両方が含まれる文書数等)を入力するものである。
記憶手段32は、例えば、CPUによる演算処理等に利用されるRAMや、例えば、所定のプログラム、各種データベース、処理結果等を格納するROMやHDDを備えている。
【0071】
記憶手段32は、ヒント文リストデータベース321と、応答文データベース322とを備えている。
ヒント文リストデータベース321は、ヒント生成装置2で生成されたヒント文リストを格納するものである。
応答文データベース322は、回答に対する応答文を格納するものである。応答文として、出題開始宣言文、回答が正答と一致するときの応答文、回答が正答と不一致のときの応答文等が準備される。それぞれの応答文は、例えば、「なぞなぞスタート!」、「あたり!」、「惜しい!」、「全然違う!」等である。
【0072】
一致判定手段33は、回答(入力)がある場合に、回答と正答とが一致するか否かを判定するものである。この一致判定手段33は、回答と正答とが一致する場合には、応答文生成手段37にその旨を通知し、回答と正答とが一致しない場合には、検索手段34と類似度算出手段にその旨を通知する。
【0073】
検索手段34は、一致判定手段33から、回答と正答とが一致しない旨を通知された場合に、Webデータにおいて、正答を含むデータ群と、回答を含むデータ群と、回答と正答との両方を含むデータ群とのそれぞれの文書数を検索するものである。検索結果は、類似度算出手段35に出力される。
具体的には、検索手段34は、例えば、ネットワークN上の人物事典を利用して、回答と正答とをそれぞれ示す2つの人名に関する記事(説明ページ)が、その人物事典の記事全体からどのようにハイパーリンクによって参照されているかを検索する。すなわち、
検索手段34は、回答を示す人名に関する記事(説明ページ)と、正答を示す人名に関する記事(説明ページ)とに対して、これら両方を参照する共通の記事(人名に限らない)がどれくらいあるか検索する。
【0074】
類似度算出手段35は、検索手段34で検索された結果に基づいて、ネットワークN(テキストデータ群)における回答と正答との共起性の高さを、回答と正答との類似度として算出するものである。算出された類似度は、応答文生成手段37および出題管理手段38に出力される。本実施形態では、例えば、類似度算出手段35は、共起性の高さを、フィッシャー直接検定(フィッシャーの正確確率検定、FET:Fisher’s Exact Test)によって検定し、検定結果であるp値を類似度として算出する。類似度算出手段35がFETにより類似度を算出する場合に、例えば、正答が「織田信長」で、回答が「豊臣秀吉」であり、「織田信長」に関する記事のページ数と、「豊臣秀吉」に関する記事のページ数と、対象とする人物事典のページ数Qとが、表6に示すように求められた場合には、FETのp値は、式(2)で示される。なお、FETについては、「Agresti A,(1992), A Survey of Exact Inference for Contingencey Tables, Statical Science,7,131-153」に記載されている。ここで、類似度の算出は、FETに限定されるものではなく、統計量の検定に用いられるカイ二乗値(χ2)、カイ二乗値を0〜1の範囲に正規化した値であるφ2などを用いることができる。
【0075】
【表6】

【0076】
【数1】

【0077】
ヒント文選択手段36は、ヒント文リストデータベース321に正答ごとに格納されたヒント文リストの中から優先順にしたがってヒント文を選択するものである。
ヒント文選択手段36は、出題管理手段38の指示に基づいて、ヒント文リストの並べ替え処理をした場合には、並べ替えられた順番に基づいて、ヒント文を選択すると共に、並び替えられた順序の情報を出題管理手段38に通知する。
【0078】
例えば、ヒント文リストに記録されたヒント文の数が10個で、6問出題された後に、並び替え処理をすると、出題順が当初「9」番目であったヒント文が、新たに「7」番目となった後に、当初「7」番目であったヒント文が、新たに「8」番目となる。ここで、並べ替えには、中抜きも含まれる。例えば、当初「7」〜「9」番目であったヒント文を中抜き(スキップ)して、出題順が当初「10」番目であったヒント文を新たに「7」番目として、スキップしたヒント文をキャンセルする。
【0079】
応答文生成手段37は、類似度算出手段35で算出された類似度に基づいて、回答に対する応答文を生成するものである。この場合の応答文は、回答が正答にどれだけ近いのかをユーザに知らせるためのものである。
また、応答文生成手段37は、回答と正答とが一致する場合に、回答に対する応答文を生成する。この場合の応答文は、回答が正答であることをユーザに知らせるためのものである。なお、応答文は、所定の規則にしたがって生成される。
本実施形態では、応答文生成手段37は、応答文データベース322から応答文を選択することにより、応答文を生成する。この応答文生成手段37は、出題管理手段38から、ヒント文リストの並べ替え処理が行われたことを通知されると、通知された情報に基づいた応答文を生成する。ヒント文を単に並べ替えたときの応答文は、例えば、「これなら分かるかな?」などである。また、ヒント文の並べ替えの結果、中抜きをして最後のヒント文を出題するときの応答文は、例えば、「これが最後のヒントだよ。」などとなる。
【0080】
出題管理手段38は、回答が入力されたか判定し、入力された回答と正答とが一致するまで異なる質問を繰り返し出題するものである。この出題管理手段38は、入力装置Mから受け付けた回答を一致判定手段33に出力し、応答文生成手段37で生成された応答文と、ヒント文選択手段36で選択されたヒント文とを出力装置Dに出力する。ここで、入力装置Mは、例えば、キーボードやマウス等であり、出力装置Dは、例えば、液晶ディスプレイ等である。
【0081】
出題管理手段38は、クイズの開始時には、初期状態の応答文(出題開始宣言文)を出力してから、第1番目のヒント文を出力する。出題管理手段38は、クイズの開始後は、回答が正解ならば、正解に対応した応答文を出力し、不正解ならば類似度に対応した応答文を出力してから次のヒント文を出力する。このため、出題管理手段38は、出題数(回答数)を管理し、出題数に応じて、応答文生成手段37と、ヒント文選択手段36とを制御する。
【0082】
また、本実施形態では、出題管理手段38は、類似度算出手段38から取得した類似度(p値)が所定値γ以上であるか否かを判別し、所定値γよりも小さい場合に、ヒント文リストの並べ替え処理をするようにヒント文選択手段36に指示する。なお、所定値γを例えば、0.01としてもよい。また、出題管理手段38は、ヒント文選択手段36から並べ替え処理の結果を取得し、応答文生成手段37に通知する。
【0083】
[対話型質問装置の動作]
図3に示した対話型質問装置の動作について図4を参照(適宜図3参照)して説明する。図4は、図3に示した対話型質問装置の動作を示すフローチャートである。対話型質問装置3は、出題管理手段38によって、制御変数iを初期化(i=0)し(ステップS11)、応答文生成手段37によって、出題開始宣言文(i=0)を生成する(ステップS12)。そして、対話型質問装置3は、出題管理手段38によって、制御変数iの現在の値に「1」を加算し(ステップS13)、類似度(p値)が所定値γ以上であるか否かを判別する(ステップS14)。そして、類似度(p値)が所定値γ以上である場合(ステップS14:No)、対話型質問装置3は、ヒント文選択手段36によって、i番目のヒント文を選択し(ステップS15)、出題管理手段38によって、ヒント文を表示させる。そして、対話型質問装置3は、出題管理手段38によって、入力があるか否かを判別する(ステップS16)。入力がある場合(ステップS16:Yes)、対話型質問装置3は、一致判定手段33によって、一致するか否かを判別する(ステップS17)。一方、一致しない場合(ステップS17:No)、対話型質問装置3は、検索手段34によって、Webデータにおいて、正答を含むデータ群と、回答を含むデータ群と、回答と正答との両方を含むデータ群とのそれぞれの文書数を検索する(ステップS18)。そして、対話型質問装置3は、類似度算出手段35によって、類似度を算出し(ステップS19)、応答文生成手段37によって、応答文を生成する(ステップS20)。
【0084】
一方、ステップS17において、一致する場合(ステップS17:Yes)、対話型質問装置3は、ステップS20に進む。ステップS20に続いて、対話型質問装置3は、出題管理手段38によって、クイズの終了であるか否かを判別する(ステップS21)。クイズの終了である場合(ステップS21:Yes)、対話型質問装置3は、処理を終了する。一方、クイズの終了ではない場合(ステップS21:No)、対話型質問装置3は、ステップS13に戻る。
【0085】
また、ステップS14において、類似度(p値)が所定値γよりも小さい場合(ステップS14:Yes)、対話型質問装置3は、ヒント文選択手段36によって、並び替え処理を実行し(ステップS22)、ヒント文を選択する(ステップS23)。
また、ステップS16において、入力がない場合(ステップS16:No)、対話型質問装置3は、出題管理手段38によって、所定時間Tが経過したか否かを判別する(ステップS24)。所定時間Tが経過した場合(ステップS24:Yes)、対話型質問装置3は、テップS20に進む。一方、所定時間Tが経過しない場合(ステップS24:No)、対話型質問装置3は、ステップS16に戻る。
【0086】
<具体例>
表7は、正答「織田信長」を例に取ったユーザと対話型質問装置3との対話例である。
対話型質問装置3は、表4および表5に示したヒント文を順次提示し、ユーザの回答に応じて、正答との類似度に基づく応答文を生成する。
【0087】
【表7】

【0088】
なお、対話型質問装置3は、一般的なコンピュータに、前記した各ステップを実行させる対話型質問プログラムを実行することで実現することもできる。これらのプログラムは、通信回線を介して配布することも可能であるし、CD−ROM等の記録媒体に書き込んで配布することも可能である。
【0089】
第1の実施形態によれば、クイズに対するヒントを生成する際に、クイズの正答とヒント文中のキーワードの共起頻度と、キーワードの一般性とを用いて、順位付けを行うとともに順位の逆順にヒントをユーザに提示することができる。その結果、質問を対話的に継続させることにより、娯楽や知識の習得に役立てることができる。また、コストをかけずにヒント付きクイズが実現できる。さらに、従来の目的指向型の対話システムとは異なり雑談等を行う話し相手となるシステムとして利用できる。
【0090】
(第2実施形態)
第2実施形態に係る対話型質問システム1Aは、ヒント生成装置2Aと、対話型質問装置3Aとを備えている。
[ヒント生成装置の構成]
図5は、本発明の第2実施形態に係る対話型質問システムに含まれるヒント生成装置の構成を示す機能ブロック図である。
ヒント生成装置2Aの構成において、図1に示したヒント生成装置2と同一の構成には同一の符号を付して説明を省略する。
ヒント生成装置2Aは、図5に示すように、通信インタフェース11と、記憶手段12と、正答生成手段13と、ヒント表現取得手段14Aと、ヒント文候補生成手段15Aと、ヒント文リスト生成手段16Aとを備えている。
【0091】
記憶手段12は、他のデータベースと共に、正答候補事典データベース124をさらに備えている。正答候補事典データベース124は、複数の正答候補に関する情報を有した事典を格納するものであり、例えば、人物事典である。以下では、正答候補事典データベース124に格納されたデータを辞書データと呼ぶ。なお、辞書データには、ネットワークN上の人物事典のデータも含む。
【0092】
ヒント表現取得手段14Aは、正答候補事典データベース124から、正答に関するすべての文を抜き出し、抜き出した文をヒント文候補としてヒント文候補生成手段15Aに出力するものである。ただし、ヒント表現取得手段14Aは、抜き出した文のうち、以下の条件に当てはまるものは、ヒント文として不適切なものとして除外する。ヒント文として不適切なものとは、文脈依存性があるもの、文長が極端に短すぎる/長すぎるもの(例えば、20形態素以上もしくは5形態素以下の文)、正答(人名)を含む文、その他特定の条件(例えば、動詞またはサ変接続の名詞を含まない文)である。ここで、文脈依存性があるものとは、「接続詞や接続助詞や副詞を含む文」、「代名詞を含む文」、「参照表現(「この」、「その」、「これ」、「それ」、「これら」、「それら」)を含む文」などである。これら文脈依存性がある文は、それぞれ、その文だけでは文の意味が分からないような文である。なお、正答候補事典データベース124に正答(人物)の記述がない場合は、ネットワークNを介してWebデータからヒント表現を取得し、ヒント文候補生成手段15Aに出力する。この場合のヒント表現取得方法は、図1に示したヒント表現取得手段14と同様なので説明を省略する。
【0093】
ヒント文候補生成手段15Aは、ヒント表現取得手段14Aから取得するヒント文候補をヒント文候補データベース122に格納するものである。このヒント文候補生成手段15Aは、正答候補事典データベース124に正答(人物)の記述がない場合には、図1に示したヒント文候補生成手段15と同様な動作を行う。
【0094】
ヒント文リスト生成手段16Aは、図5に示すように、ヒントキーワード抽出手段161と、特徴量抽出手段162Aと、スコア算出手段163Aと、ソート手段164と、格納手段165とを備えている。
特徴量抽出手段162Aは、辞書データにおいて、キーワードを含むエントリ(見出し語)の個数(文書に関する特徴量)Lと、正答とキーワードとの両方を含むエントリの個数(文書に関する特徴量)Kと、対象とする辞書データにおけるすべてのエントリの個数(文書に関する特徴量)Wとを抽出するものである。
【0095】
スコア算出手段163Aは、特徴量抽出手段162Aで抽出された各特徴量(L,K,W)から導かれる、辞書データにおける正答とキーワードとの共起頻度と、辞書データにおけるキーワードの一般性とを用いて、各ヒント文候補に対するスコア(第2スコア)S2を、式(3)に基づいて算出するものである。ここでは、正答とキーワードとの共起頻度に関連度K/Wを用いて、辞書データにおけるキーワードの一般性をL/Wとした。このように表記した場合、関連度と一般性との分母(F)が等しいので、式(3)では、Wを省略した。なお、ソート手段164は、式(3)に示した第2スコアS2に基づいて、各ヒント文候補の優先順を決定することとなる。
【0096】
2=log(α×K+β×L) …式(3)
ここで、αとβとは、共起頻度と一般性とのどちらを優先するかという優先度に基づく所定の重みである。例えば、一般性を重視する場合には、αを「1」、βを「1000.0」としてもよい。また、第2スコアS2は、式(3)に限定されるものではなく、自動文書要約に用いられるようなTF*IDFを用いてもよい。
【0097】
[ヒント生成装置の動作]
図6は、図5に示したヒント生成装置の動作を示すフローチャートである。
ヒント生成装置2Aが実行する処理であるステップS31〜ステップS38は、図1に示したヒント生成装置2が実行する処理であるステップS1〜ステップS8(図2参照)と同様なので説明を省略する。ただし、ステップS35では、ヒント生成装置2Aは、特徴量抽出手段162Aによって、キーワードに関する複数の特徴量を正答候補事典データベース124から抽出する。また、ステップS36では、ヒント生成装置2Aは、スコア算出手段163Aによって、抽出した特徴量に基づいて、各ヒント文候補に対する第2スコアを算出する。
【0098】
<具体例>
表8は、正答「織田信長」に関して、ネットワークN上の人物事典を用いて作成されたヒント文リストである。ヒント文リストには、ヒント文ごとに、ヒント番号、ヒント文の内容および第2スコアS2が、この順番に記載されている。ここで、J=10として、ヒント文のトップ10を決定し、さらに、その後に、読みから得たヒントを追加した。また、ヒント文のトップ10の前に、カテゴリ情報、生年/没年からそれぞれ得られたヒント文を追加した。そのため、ヒント文リストには、合計15個のヒント文が記録されている。なお、後から追加したヒント文の第2スコアS2は、規定値を「0.0」とした。
【0099】
【表8】

【0100】
[対話型質問装置の構成]
図7は、本発明の第2実施形態に係る対話型質問システムに含まれる対話型質問装置の構成を示す機能ブロック図である。
対話型質問装置3Aは、記憶手段12に正答候補事典データベース323を備えると共に、検索手段34Aおよび応答文生成手段37Aの機能が異なる点を除いて、図3に示した対話型質問装置3と同一の構成なので、図3と同一の構成には同一の符号を付して説明を省略する。
【0101】
正答候補事典データベース323は、ヒント生成装置2Aに格納された正答候補事典データベース124と同様なものであり、例えば、人物事典である。この正答候補事典データベース323は、ヒント生成装置2Aから取得してもよいし、別のものであってもよい。
【0102】
検索手段34Aは、正答候補事典データベース323から、回答に付随した付随データを検索する機能をさらに有している。例えば、人名に付随したデータは、その人物の職業(カテゴリ)、生没年、業績等の関連する情報などがある。正答が「織田信長」であり、回答が「聖徳太子」である場合には、カテゴリが「政治家」で共通である。この場合、生没年は、「安土桃山時代」と「飛鳥時代」であるため異なる。これらの付随データは、類似度算出手段35を介して応答文生成手段37Aに出力される。
【0103】
応答文生成手段37Aは、検索手段34Aで検索された付随データに基づいて、回答に対する付随ヒント(応答文)を生成する。例えば、正答が「織田信長」であり、回答が「聖徳太子」である場合には、回答の付随データは、「政治家」や「飛鳥時代」等である。
応答文生成手段37Aは、回答の付随データと正答の付随データとを用いて、例えば、「政治家というのは合ってるよ。」、「飛鳥・奈良時代の皇族じゃないよ。もう少し後の時代だよ。」などの応答文を生成する。
【0104】
[対話型質問装置の動作]
図8は、図7に示した対話型質問装置の動作を示すフローチャートである。
対話型質問装置3Aが実行する処理であるステップS41〜ステップS48およびステップS51〜ステップS56は、図3に示した対話型質問装置3が実行する処理であるステップS11〜ステップS18およびステップS19〜ステップS24(図4参照)と同様なので説明を省略する。
【0105】
ステップS48に続いて、対話型質問装置3Aは、応答文生成手段37Aによって、検索手段34Aから付随データを取得したか否かを判別する(ステップS49)。付随データがある場合には(ステップS49:Yes)。対話型質問装置3Aは、応答文生成手段37Aによって、付随ヒントを生成し(ステップS50)、ステップS51に進む。一方、付随データがない場合には(ステップS49:No)。対話型質問装置3Aは、ステップS50をスキップしてステップS51に進む。
<具体例>
【0106】
表9は、正答「織田信長」を例に取ったユーザと対話型質問装置3Aとの対話例である。
対話型質問装置3Aは、表6に示したヒント文を順次提示し、ユーザの回答に応じて、正答との類似度に基づく応答文を生成する。また、応答文として、職業(カテゴリ情報:戦国大名)が同じことを指摘した付随ヒントをユーザに提示する。これにより、ユーザは、正答を考えやすくなる。また、対話型質問装置3Aは、正答と回答のそれぞれの人名の生年が両方とも分かる場合、それらを比較し、応答文として、時代が後か先かをユーザに伝える付随ヒントを生成する。
【0107】
【表9】

【0108】
第2の実施形態によれば、ヒント生成装置2Aは、正答候補事典データベース124から、ヒント表現を取得する。そのため、ヒント表現が正答に対して正確で良質なものとなる。その結果、ユーザにとって分かり易くなるので、ヒント文としてふさわしくなる。また、対話型質問装置3Aは、検索された付随データに基づいて、回答に対する応答文を付随ヒントとして生成するので、ユーザの思考を補助することができる。
【0109】
(第3実施形態)
第3実施形態に係る対話型質問システム1Bは、ヒント生成装置2(または2A)と、対話型質問装置3Bとを備えている。
[対話型質問装置の構成]
図9は、本発明の第3実施形態に係る対話型質問システムに含まれる対話型質問装置の構成を示す機能ブロック図である。対話型質問装置3Bは、擬似ユーザと対話をするものである。擬似ユーザとは、実際のユーザの代わりとなって対話を行うプログラムのことである。対話型質問装置3Bは、回答抽出手段39および正答候補データベース324を備えると共に、出題管理手段38Bの機能が異なる点を除いて、図7に示した対話型質問装置3Aと同一の構成なので、図7と同一の構成には同一の符号を付して説明を省略する。
【0110】
正答候補データベース324は、ヒント生成装置2(または2A)に格納された正答候補データベース121と同様なものであり、例えば、人名リストである。この正答候補データベース324は、ヒント生成装置2(または2A)から取得してもよいし、別のものであってもよい。
【0111】
回答抽出手段39は、回答を正答候補データベース121から抽出し、抽出した回答を出題管理手段38Bに出力するものである。
出題管理手段38Bは、回答抽出手段39から受け付けた回答を一致判定手段33に出力する。なお、出題管理手段38Bは、入力装置Mから、所定の命令(クイズの開始、終了、ヒント文のスキップ等)を受け付ける。
【0112】
[対話型質問装置の動作]
図10は、図9に示した対話型質問装置の動作を示すフローチャートである。
対話型質問装置3Bが実行する処理であるステップS61〜ステップS75は、図7に示した対話型質問装置3Aが実行する処理であるステップS41〜ステップS55(図8参照)と同様なので説明を省略する。ただし、ステップS66では、対話型質問装置3Bは、回答抽出手段39によって、回答を正答候補データベース121から抽出し、抽出した回答を出題管理手段38Bに出力し、ステップS67に進む。
【0113】
<具体例>
表10は、対話型質問システム1Bにおいて擬似ユーザに対するヒント文の例である。
【0114】
【表10】

【0115】
表11は、対話型質問装置3Bにおける擬似ユーザとの対話例である。
【0116】
【表11】

【0117】
なお、擬似ユーザが、最初のヒント文を受け取った後、回答(人名)を正答候補データベース324から抽出し、類似度算出手段35を用いて、正答に近い回答を複数得た後、それらを回答として順次用いることで対話を行うように構成してもよい。
【0118】
第3の実施形態によれば、対話型質問装置3Bにおける擬似ユーザとのクイズのやり取りを視聴することで、間接的に情報を取得できる。ユーザが直接対話をしなくても正答についての知識を得ることができる。
【0119】
以上、本発明の各実施形態について説明したが、本発明はこれらに限定されるものではなく、その趣旨を変えない範囲で実施することができる。例えば、各実施形態では、人名当てクイズとして説明したが、これに限定されるものではない。例えば、動物名や植物名などの生物名、地名などの無生物名、商品名、学習用語名、学術専門用語名等でもよい。
また、本実施形態では、ヒント文選択手段36は、類似度(p値)が所定値γよりも小さい場合に、ヒント文リストの並べ替え処理をするものとして説明したが、例えば、類似度が所定値よりも大きい場合に、ヒント文リストを優先順と異なる順序に並べ替えるようにしてもよい。この場合には、ヒント文選択手段36は、例えば、第1番目のヒント文を、ヒント文リストの順番に関わらず途中から選択して出題し、類似度が所定値よりも大きい場合には、続いて、出題済みのヒント文よりも難易度の高いヒント文を出題できるようにヒント文を並べ替える。ここで、出題済みのヒント文よりも難易度の高いヒント文は、元のヒント文リストの上位(前方)に配置されていたものである。そして、類似度が所定値よりも大きい場合に、出題済みのヒント文よりも難易度の高いヒント文を出題することにより、正答と回答との類似度が下がり易くなる。その結果、対話を長期間継続させることが可能となる。さらに、類似度が所定値よりも小さい場合の処理と組み合わせるようにしてもよい。
【0120】
また、ヒント生成装置2とヒント生成装置2Aの機能を併せ持つようにヒント生成装置を構成してもよい。この場合、問題の正答に合わせてヒント表現の取得先や特徴量(文書数/エントリ数)の取得先を、Webデータと辞書データとで適宜切り替えるようにしてもよい。また、ヒント生成装置2(または2A)を対話型質問装置3(または3A,3B)に含めて構成するようにしてもよい。この場合、各種データベースを共用することができる。さらに、公知の音声対話手段を用いて音声による対話を行うように構成してもよい。ここで、音声対話手段には、音響モデルと言語モデルを備えた音声認識装置と、音声データベース等を含む音声合成手段とを含む。この場合には、入力装置Mにはマイクが含まれ、出力装置Dには、スピーカが含まれる。
【図面の簡単な説明】
【0121】
【図1】本発明の第1実施形態に係る対話型質問システムに含まれるヒント生成装置の構成を示す機能ブロック図である。
【図2】図1に示したヒント生成装置の動作を示すフローチャートである。
【図3】本発明の第1実施形態に係る対話型質問システムに含まれる対話型質問装置の構成を示す機能ブロック図である。
【図4】図3に示した対話型質問装置の動作を示すフローチャートである。
【図5】本発明の第2実施形態に係る対話型質問システムに含まれるヒント生成装置の構成を示す機能ブロック図である。
【図6】図5に示したヒント生成装置の動作を示すフローチャートである。
【図7】本発明の第2実施形態に係る対話型質問システムに含まれる対話型質問装置の構成を示す機能ブロック図である。
【図8】図7に示した対話型質問装置の動作を示すフローチャートである。
【図9】本発明の第3実施形態に係る対話型質問システムに含まれる対話型質問装置の構成を示す機能ブロック図である。
【図10】図9に示した対話型質問装置の動作を示すフローチャートである。
【符号の説明】
【0122】
1(1A,1B) 対話型質問システム
2(2A) ヒント生成装置
3(3A,3B) 対話型質問装置
4 ネットワークデータサーバ
4a データベース
5 質問応答システム
11 通信インタフェース
12 記憶手段
121 正答候補データベース
122 ヒント文候補データベース
123 ヒント文リストデータベース
124 正答候補事典データベース
13 質問生成手段
14(14A) ヒント表現取得手段
141 第1表現取得手段
142 第2表現取得手段
143 第3表現取得手段
144 第4表現取得手段
15(15A) ヒント文候補生成手段
151 第1候補生成手段
152 第2候補生成手段
153 第3候補生成手段
154 第4候補生成手段
16(16A) ヒント文リスト生成手段
161 ヒントキーワード抽出手段
162 特徴量抽出手段
163 スコア算出手段
164 ソート手段
165 格納手段
162A 特徴量抽出手段
163A スコア算出手段
31 通信インタフェース
32 記憶手段
321 ヒント文リストデータベース
322 応答文データベース
323 正答候補事典データベース
324 正答候補データベース
33 一致判定手段
34(34A) 検索手段
35 類似度算出手段
36 ヒント文選択手段
37(37A) 応答文生成手段
38(38B) 出題管理手段
39 回答候補抽出手段
N ネットワーク
M 入力装置
D 出力装置

【特許請求の範囲】
【請求項1】
予め定められた正答を当てる問題における正答に対応するヒントを示す文である複数のヒント文を質問として出力し、前記質問に対応する回答に応じて異なる質問を出力する対話型質問システムの対話型質問方法であって、
前記複数のヒント文が予め定められた優先順に並べられたヒント文リストの中から、前記優先順にしたがって前記ヒント文を選択するヒント文選択ステップと、
前記回答と前記正答とが一致するか否かを判定する一致判定ステップと、
前記回答と前記正答とが一致しない場合に、予め定められたテキストデータ群において、前記正答を含むデータ群と、前記回答を含むデータ群と、前記回答と前記正答との両方を含むデータ群とを検索する検索ステップと、
前記検索された結果に基づいて、前記テキストデータ群における前記回答と前記正答との共起性の高さを、前記回答と前記正答との類似度として算出する類似度算出ステップと、
前記算出された類似度に基づいて、前記回答に対する応答文を生成する応答文生成ステップと、
前記回答と前記正答とが一致するまで前記異なる質問を繰り返し出題する出題管理ステップと、
を有することを特徴とする対話型質問方法。
【請求項2】
複数の正答候補を格納した正答候補データベースから所定の正答候補を選択し、前記選択した正答候補を正答として生成する正答生成ステップと、
前記生成された正答に対応するヒントとして、キーワードまたはフレーズで表現された複数のヒント表現を、前記テキストデータ群から取得するヒント表現取得ステップと、
前記取得されたヒント表現を含む文を示すヒント文候補を生成するヒント文候補生成ステップと、
前記生成された各ヒント文候補からキーワードを抽出するヒントキーワード抽出ステップと、
前記テキストデータ群において、前記正答と前記抽出されたキーワードとの両方を含む文書に関する特徴量と、前記テキストデータ群におけるすべての文書に関する特徴量とを含む複数の特徴量を抽出する特徴量抽出ステップと、
前記抽出された特徴量に基づいて、前記テキストデータ群における前記正答と前記抽出されたキーワードとの共起頻度と、前記テキストデータ群における前記抽出されたキーワードの一般性とを用いて、前記各ヒント文候補に対するスコアを算出するスコア算出ステップと、
前記各ヒント文候補のスコアに基づいて、前記各ヒント文候補の優先順を決定し、前記決定された優先順で前記ヒント文候補を並べて、前記ヒント文リストを生成するソートステップと、
をさらに有することを特徴とする請求項1に記載の対話型質問方法。
【請求項3】
前記ヒント表現取得ステップは、前記複数のヒント表現を、ネットワークまたは/および前記対話型質問システムに備えられたテキストデータ群から取得し、
前記特徴量抽出ステップは、前記ヒントキーワード抽出ステップで抽出されたキーワードの特徴量を前記ネットワークまたは/および前記対話型質問システムに備えられたテキストデータ群から抽出することを特徴とする請求項2に記載の対話型質問方法。
【請求項4】
前記ヒント表現取得ステップは、前記複数のヒント表現を、ネットワークまたは/および前記対話型質問システムに備えられた予め作成された辞書データベースのテキストデータ群から取得し、
前記特徴量抽出ステップは、前記ヒントキーワード抽出ステップで抽出されたキーワードの特徴量を前記辞書データベースのテキストデータ群から抽出し、
前記検索ステップによって、前記辞書データベースのテキストデータ群から前記回答に関する情報として前記回答に付随した付随データが検索された場合に、前記応答文生成ステップは、前記検索された付随データに基づいて、前記回答に対する応答文を生成することを特徴とする請求項2に記載の対話型質問方法。
【請求項5】
前記回答を、前記正答候補データベースから抽出する回答抽出ステップをさらに有することを特徴とする請求項2ないし請求項4のいずれか一項に記載の対話型質問方法。
【請求項6】
前記出題管理ステップは、前記回答と前記正答との類似度が所定値以上であるか否かを判別する判別ステップを有し、
前記ヒント文選択ステップは、前記回答と前記正答との類似度に基づいて、前記ヒント文リストを前記優先順と異なる順序に並べ替え、前記並べ替えた順序にしたがって前記ヒント文を選択する、
ことを特徴とする請求項1ないし請求項5のいずれか一項に記載の対話型質問方法。
【請求項7】
予め定められた正答を当てる問題における正答に対応するヒントを示す文である複数のヒント文を質問として出力し、前記質問に対応する回答に応じて異なる質問を出力する対話型質問システムであって、
前記複数のヒント文が予め定められた優先順に並べられたヒント文リストの中から、前記優先順にしたがって前記ヒント文を選択するヒント文選択手段と、
前記回答と前記正答とが一致するか否かを判定する一致判定手段と、
前記回答と前記正答とが一致しない場合に、予め定められたテキストデータ群において、前記正答を含むデータ群と、前記回答を含むデータ群と、前記回答と前記正答との両方を含むデータ群とを検索する検索手段と、
前記検索された結果に基づいて、前記テキストデータ群における前記回答と前記正答との共起性の高さを、前記回答と前記正答との類似度として算出する類似度算出手段と、
前記算出された類似度に基づいて、前記回答に対する応答文を生成する応答文生成手段と、
前記回答と前記正答とが一致するまで前記異なる質問を繰り返し出題する出題管理手段と、
を備えることを特徴とする対話型質問システム。
【請求項8】
複数の正答候補を格納した正答候補データベースから所定の正答候補を選択し、前記選択した正答候補を正答として生成する正答生成手段と、
前記生成された正答に対応するヒントとして、キーワードまたはフレーズで表現された複数のヒント表現を、前記テキストデータ群から取得するヒント表現取得手段と、
前記取得されたヒント表現を含む文を示すヒント文候補を生成するヒント文候補生成手段と、
前記生成された各ヒント文候補からキーワードを抽出するヒントキーワード抽出手段と、
前記テキストデータ群において、前記正答と前記抽出されたキーワードとの両方を含む文書に関する特徴量と、前記テキストデータ群におけるすべての文書に関する特徴量とを含む複数の特徴量を抽出する特徴量抽出手段と、
前記抽出された特徴量に基づいて、前記テキストデータ群における前記正答と前記抽出されたキーワードとの共起頻度と、前記テキストデータ群における前記抽出されたキーワードの一般性とを用いて、前記各ヒント文候補に対するスコアを算出するスコア算出手段と、
前記各ヒント文候補のスコアに基づいて、前記各ヒント文候補の優先順を決定し、前記決定された優先順で前記ヒント文候補を並べて、前記ヒント文リストを生成するソート手段と、
をさらに備えることを特徴とする請求項7に記載の対話型質問システム。
【請求項9】
請求項1ないし請求項6のいずれか一項に記載の対話型質問方法をコンピュータに実行させることを特徴とする対話型質問プログラム。
【請求項10】
請求項9に記載の対話型質問プログラムが記録されたことを特徴とするコンピュータ読み取り可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2007−322836(P2007−322836A)
【公開日】平成19年12月13日(2007.12.13)
【国際特許分類】
【出願番号】特願2006−153961(P2006−153961)
【出願日】平成18年6月1日(2006.6.1)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】