(57)【要約】【課題】現在のことについて尋ねる質問であっても適切な回答を出力する。【解決手段】質問解析部１１が、質問文に対する回答タイプを解析し、リアルタイム判定部１２が、質問文に含まれる各単語と、カレントワードリスト２０、バーストワードリスト２１、及びデイリーワードリスト２２に含まれるいずれかの単語とが一致するか否かを照合することにより、質問文がリアルタイム質問か否かを判定し、文書検索部１３が、質問文がリアルタイム質問の場合には、逐次更新されるウェブサイトから収集されて逐次更新される複数の文書からなる第１文書ＤＢ２４を、質問文がリアルタイム質問ではない場合には、第１文書ＤＢ２４より更新頻度が低い第２文書ＤＢ２５を優先的に用いて文書を検索し、回答候補抽出部１４が、検索された文書集合から、回答タイプに対応する固有表現を回答候補として抽出し、回答評価部１５が、各回答候補を評価して回答を出力する。【選択図】図１
2014085947.tif 000002
【特許請求の範囲】
【請求項１】
自然言語による質問文に対する回答の種類を示す回答タイプを解析する解析手段と、
前記質問文に、現在を含む所定期間に含まれる時点または期間を表す単語、インターネット上で注目されている単語、及び表す対象が時間の経過に応じて変わる単語の少なくとも１つが含まれるか否かに基づいて、前記質問文が現在を含む所定期間のことについて尋ねる質問か否かを判定する判定手段と、
前記質問文が現在を含む所定期間のことについて尋ねる質問の場合には、逐次更新されるウェブサイトから収集されて逐次更新される複数の文書からなる第１文書群を優先的に用いて、前記質問文に含まれる単語を検索条件として文書を検索し、前記質問文が現在を含む所定期間のことについて尋ねる質問ではない場合には、前記第１文書群より低い頻度で更新される複数の文書からなる第２文書群を優先的に用いて、前記質問文に含まれる単語を検索条件として文書を検索する検索手段と、
前記検索手段により検索された文書に含まれる固有表現から、前記解析手段により解析された回答タイプに対応し、かつ前記質問文の回答としての確からしさを示す評価値が高い固有表現を前記質問文に対する回答として出力する出力手段と、
を含む質問応答装置。
【請求項２】
前記第１文書群に含まれる文書を、マイクロブログサイトから収集した文書とした請求項１記載の質問応答装置。
【請求項３】
前記検索手段は、前記第１文書群から文書を検索する際、前記逐次更新されるウェブサイトの特性に基づいて、検索される文書数を低下させる単語として予め定められた除外単語リストを参照し、前記質問文に含まれる単語のうち、前記除外単語に該当しない単語を論理積で結合した検索条件、または前記除外単語に該当しない単語を論理積で結合し、かつ前記除外単語に該当する単語を論理和で結合した検索条件により文書を検索する請求項１または請求項２記載の質問応答装置。
【請求項４】
解析手段と、判定手段と、検索手段と、出力手段とを含む質問応答装置における質問応答方法であって、
前記解析手段が、自然言語による質問文に対する回答の種類を示す回答タイプを解析し、
前記判定手段が、前記質問文に、現在を含む所定期間に含まれる時点または期間を表す単語、インターネット上で注目されている単語、及び表す対象が時間の経過に応じて変わる単語の少なくとも１つが含まれるか否かに基づいて、前記質問文が現在を含む所定期間のことについて尋ねる質問か否かを判定し、
前記検索手段が、前記質問文が現在を含む所定期間のことについて尋ねる質問の場合には、逐次更新されるウェブサイトから収集されて逐次更新される複数の文書からなる第１文書群を優先的に用いて、前記質問文に含まれる単語を検索条件として文書を検索し、前記質問文が現在を含む所定期間のことについて尋ねる質問ではない場合には、前記第１文書群より低い頻度で更新される複数の文書からなる第２文書群を優先的に用いて、前記質問文に含まれる単語を検索条件として文書を検索し、
前記出力手段が、前記検索手段により検索された文書に含まれる固有表現から、前記解析手段により解析された回答タイプに対応し、かつ前記質問文の回答としての確からしさを示す評価値が高い固有表現を前記質問文に対する回答として出力する
質問応答方法。
【請求項５】
コンピュータを、請求項１〜請求項３のいずれか１項記載の質問応答装置を構成する各手段として機能させるための質問応答プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、質問応答装置、方法、及びプログラムに係り、特に、自然言語による質問文に対する回答を出力する質問応答装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
自然言語による質問文について、ずばり回答を出力するシステムを質問応答システムと呼ぶ。このような質問応答システムによれば、例えば、「世界一高い山は」という質問に対して、「エベレスト」のような回答を出力する。
【０００３】
質問応答システムの回答は、一般にシステムが持つ文書データベース（ＤＢ）から抽出される。文書ＤＢは、複数の文書（テキストデータ）が登録されたもので、この文書ＤＢに含まれる文書が、質問に対する回答を適切に含んでいれば、より精度の高い回答を出力することができる。従って、どのような文書ＤＢを持ち、そこからどのように回答を抽出するかということは、質問応答システムの重要な課題である。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】奥村学（監修）、磯崎秀樹、東中竜一郎、永田昌明、加藤恒明（共著）、“自然言語処理シリーズ２質問応答システム”、ISBN:978-4-339-02752-5、コロナ社、2009.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ユーザからの質問の中には、現在のことについて尋ねる質問がある。例えば、「今日の株価は」、「今日のチームＡの先発は」、「今テレビに出ている人は」、「番組Ｂのゲストは誰」等の質問が該当する。従来の質問応答システムは、システム内部に更新頻度の低い固定的な文書ＤＢを持つため、回答を抽出する際には、文書ＤＢに含まれる文書が有する情報が古くなっている場合がある。
【０００６】
また、Ｗｅｂページをクロールすることにより収集した文書で文書ＤＢを構成する方法もあるが、Ｗｅｂページのクロール周期が長い場合、結果として、文書ＤＢに含まれる文書が有する情報が、時間的に少し前の情報となることが多い。
【０００７】
このようなことから、現在のことについて尋ねる質問については、従来の質問応答システムでは適切な回答を得ることが難しい、という問題があった。
【０００８】
本発明は上記事実を考慮して成されたもので、現在のことについて尋ねる質問であっても適切な回答を出力することができる質問応答装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明の質問応答装置は、自然言語による質問文に対する回答の種類を示す回答タイプを解析する解析手段と、前記質問文に、現在を含む所定期間に含まれる時点または期間を表す単語、インターネット上で注目されている単語、及び表す対象が時間の経過に応じて変わる単語の少なくとも１つが含まれるか否かに基づいて、前記質問文が現在を含む所定期間のことについて尋ねる質問か否かを判定する判定手段と、前記質問文が現在を含む所定期間のことについて尋ねる質問の場合には、逐次更新されるウェブサイトから収集されて逐次更新される複数の文書からなる第１文書群を優先的に用いて、前記質問文に含まれる単語を検索条件として文書を検索し、前記質問文が現在を含む所定期間のことについて尋ねる質問ではない場合には、前記第１文書群より低い頻度で更新される複数の文書からなる第２文書群を優先的に用いて、前記質問文に含まれる単語を検索条件として文書を検索する検索手段と、前記検索手段により検索された文書に含まれる固有表現から、前記解析手段により解析された回答タイプに対応し、かつ前記質問文の回答としての確からしさを示す評価値が高い固有表現を前記質問文に対する回答として出力する出力手段と、を含んで構成されている。
【００１０】
本発明の質問応答装置によれば、解析手段が、自然言語による質問文に対する回答の種類を示す回答タイプを解析し、判定手段が、質問文に、現在を含む所定期間に含まれる時点または期間を表す単語、インターネット上で注目されている単語、及び表す対象が時間の経過に応じて変わる単語の少なくとも１つが含まれるか否かに基づいて、質問文が現在を含む所定期間のことについて尋ねる質問か否かを判定する。また、所定の記憶手段には、逐次更新されるウェブサイトから収集されて逐次更新される複数の文書からなる第１文書群と、第１文書群より低い頻度で更新される複数の文書からなる第２文書群とが記憶されている。
【００１１】
そして、検索手段が、質問文が現在を含む所定期間のことについて尋ねる質問の場合には、第１文書群を優先的に用いて、質問文に含まれる単語を検索条件として文書を検索し、質問文が現在を含む所定期間のことについて尋ねる質問ではない場合には、第２文書群を優先的に用いて、質問文に含まれる単語を検索条件として文書を検索する。そして、出力手段が、検索手段により検索された文書に含まれる固有表現から、解析手段により解析された回答タイプに対応し、かつ質問文の回答としての確からしさを示す評価値が高い固有表現を質問文に対する回答として出力する。
【００１２】
このように、質問文が現在を含む所定期間のことについて尋ねる質問か否かを判定し、現在を含む所定期間のことについて尋ねる質問の場合には、逐次更新されるウェブサイトから収集されて逐次更新される複数の文書からなる第１文書群を優先的に用いて検索された文書から回答を抽出することにより、現在のことについて尋ねる質問であっても適切な回答を出力することができる。
【００１３】
また、前記第１文書群に含まれる文書を、マイクロブログサイトから収集した文書とすることができる。このような文書は、現在の事象について有益な情報を含んでいると考えられ、質問文が現在のことについて尋ねる質問に対して適切な回答を出力できる可能性を高めることができる。
【００１４】
また、前記検索手段は、前記第１文書群から文書を検索する際、前記逐次更新されるウェブサイトの特性に基づいて、検索される文書数を低下させる単語として予め定められた除外単語リストを参照し、前記質問文に含まれる単語のうち、前記除外単語に該当しない単語を論理積で結合した検索条件、または前記除外単語に該当しない単語を論理積で結合し、かつ前記除外単語に該当する単語を論理和で結合した検索条件により文書を検索することができる。逐次更新されるウェブサイトでは、現在を含む所定期間に関する単語が省略されるような場合も多いため、このような検索条件とすることにより、検索される文書数の低下を防止することができる。
【００１５】
また、本発明の質問応答方法は、解析手段と、判定手段と、検索手段と、出力手段とを含む質問応答装置における質問応答方法であって、前記解析手段が、自然言語による質問文に対する回答の種類を示す回答タイプを解析し、前記判定手段が、前記質問文に、現在を含む所定期間に含まれる時点または期間を表す単語、インターネット上で注目されている単語、及び表す対象が時間の経過に応じて変わる単語の少なくとも１つが含まれるか否かに基づいて、前記質問文が現在を含む所定期間のことについて尋ねる質問か否かを判定し、前記検索手段が、前記質問文が現在を含む所定期間のことについて尋ねる質問の場合には、逐次更新されるウェブサイトから収集されて逐次更新される複数の文書からなる第１文書群を優先的に用いて、前記質問文に含まれる単語を検索条件として文書を検索し、前記質問文が現在を含む所定期間のことについて尋ねる質問ではない場合には、前記第１文書群より低い頻度で更新される複数の文書からなる第２文書群を優先的に用いて、前記質問文に含まれる単語を検索条件として文書を検索し、前記出力手段が、前記検索手段により検索された文書に含まれる固有表現から、前記解析手段により解析された回答タイプに対応し、かつ前記質問文の回答としての確からしさを示す評価値が高い固有表現を前記質問文に対する回答として出力する方法である。
【００１６】
また、本発明の質問応答プログラムは、コンピュータを、上記の質問応答装置を構成する各手段として機能させるためのプログラムである。
【発明の効果】
【００１７】
本発明の質問応答装置、方法、及びプログラムによれば、質問文が現在を含む所定期間のことについて尋ねる質問か否かを判定し、現在を含む所定期間のことについて尋ねる質問の場合には、逐次更新されるウェブサイトから収集されて逐次更新される複数の文書からなる第１文書群を優先的に用いて検索された文書から回答を抽出することにより、現在のことについて尋ねる質問であっても適切な回答を出力することができる、という効果を有する。
【図面の簡単な説明】
【００１８】
【図１】本実施の形態に係る質問応答装置の機能的構成を示すブロック図である。
【図２】本実施の形態における質問応答処理ルーチンを示すフローチャートである。
【発明を実施するための形態】
【００１９】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００２０】
本実施の形態に係る質問応答装置１０は、ＣＰＵと、ＲＡＭと、後述する質問応答処理ルーチンを実行するためのプログラム及び各種データを記憶したＲＯＭとを備えたコンピュータで構成されている。また、記憶手段としてＨＤＤを設けてもよい。
【００２１】
質問応答装置１０を構成するコンピュータは、機能的には、図１に示すように、質問解析部１１と、リアルタイム判定部１２と、文書検索部１３と、回答候補抽出部１４と、回答評価部１５とを含んだ構成で表すことができる。なお、質問解析部１１は本発明の解析手段の一例であり、リアルタイム判定部１２は本発明の判定手段の一例であり、文書検索部１３は本発明の検索手段の一例であり、回答候補抽出部１４及び回答評価部１５は本発明の出力手段の一例である。また、質問応答装置１０を構成するコンピュータの所定の記憶領域には、カレントワードリスト２０と、バーストワードリスト２１と、デイリーワードリスト２２と、除外ワードリスト２３と、第１文書データベース（ＤＢ）２４と、第２文書ＤＢ２５とが記憶されている。
【００２２】
質問解析部１１は、入力された自然言語からなる質問文（テキストデータ）を受け付け、質問文を形態素解析すると共に、質問文に対する回答タイプを解析する。回答タイプとは、質問が何を聞いているかを指し、例えば、人名や地名などである。「世界一高い山は」という質問であれば、「地名」や「山」などが回答タイプとなる。質問解析部１１は、例えば、質問がどの固有表現を回答として求めているかを推定することにより、回答タイプを解析することができる。固有表現とは、固有名詞、数量表現、日付表現など特定の事物を指す表現のことである。回答タイプの解析には、一般的な機械学習の手法を用いることができる。また、回答タイプの粒度は適宜設定可能である。例えば、ＩＲＥＸと呼ばれる会議で提案された８種類を用いて回答タイプを分類してもよいし、ニューヨーク大の関根らが提案の固有表現の分類体系である拡張固有表現の分類に従った２００種類を用いて回答タイプを分類してもよい。２００種類の分類を用いた場合には、例えば、「世界一高い山は」の質問文に対しては、「Ｍｏｕｎｔａｉｎ」が回答タイプとして解析される。
【００２３】
リアルタイム判定部１２は、質問文が現在のことについて尋ねる質問か否かを判定する。ここでいう「現在」には、現在を含む所定期間に含まれる時点または期間を含む概念である。なお、以下では、現在のことについて尋ねる質問を「リアルタイム質問」という。
【００２４】
質問文には、「現在」、「今」、「今日」などの現在を表現する単語が必ず含まれているとは限らないため、リアルタイム質問かどうかを適切に判定することは単純ではない。例えば、オリンピックが開催されている期間中であれば、「金メダル取ったのは誰」という質問文がユーザによって入力されることが想定される。この質問については、過去に開催されたオリンピックの金メダリストの名前を回答するより、現在開催中のオリンピックで金メダルを取った人の名前を回答することがより適切であると考えられる。また、「番組Ｂのゲストは誰」という質問に対しても、何年も前の番組Ｂのゲストを回答するよりも、直近の番組Ｂのゲストの名前を回答することがより適切であると考えられる。
【００２５】
そこで、リアルタイム判定部１２は、質問文に、カレントワード、バーストワード、及びデイリーワードの少なくとも１つが含まれるか否かに基づいて、質問文がリアルタイム質問かどうかを判定する。
【００２６】
カレントワードとは、時間、特に、現在を含む所定期間に含まれる時点または期間を表す単語のことである。例えば、下記に示すような単語群をカレントワードリスト２０として記憶しておく。
【００２７】
今、現在、今頃、今朝、今晩、今夜、昨夜、先程、さっき、今日、明日、
昨日、あさって、おととい、しあさって、今週、来週、週末
【００２８】
質問文にカレントワードが含まれる場合には、質問の対象も現在のことである可能性が高く、リアルタイム質問であると判定することができる。
【００２９】
バーストワードとは、インターネット上で注目されている単語のことで、例えば、インターネット上でユーザによって書き込まれる数が急激に増加した単語や、検索エンジンなどの検索ワードとして用いられる回数が急激に増加した単語のことである。例えば、オリンピック期間中であれば「オリンピック」や「金メダル」などがバーストワードになると考えられる。バーストワードに該当する単語群をバーストワードリスト２１として記憶しておく。質問文にバーストワードが含まれる場合には、ユーザは、現在注目されている事象について質問している可能性が高く、リアルタイム質問であると判定することができる。
【００３０】
バーストワードのリスト化の一例について説明する。例えば、マイクロブログサービスであるＴｗｉｔｔｅｒ（登録商標）のデータから、直近の出現回数が急激に多くなった単語を自動的に獲得する。より具体的には、現在からｎ時間前までのある単語の出現頻度と、ｎ時間より以前の当該単語の出現頻度とを比較し、その出現頻度の比が一定値（例えば、１０倍）よりも大きい単語を抽出することにより、バーストワードをリスト化することができる。バーストワードリスト２１は、例えば、２０分毎といったように、一定時間毎に更新する。以下に、２０１２年９月２１日０８：００現在におけるバーストワードの一部を示す。
【００３１】
船主、ボレー、カチカチッ、カカヒアカ、きびう、阪急京都線、オルグ、
富田、変幻自在、交通安全週間、秘境駅、補助金、雨女、中国当局、
岩国基地、セレモニー、アフィリエイター、おはあり
【００３２】
デイリーワードとは、日替わり単語という意味で、その単語の表す対象が時間の経過に応じて変わる単語である。例えば、今日の「チームＡの先発」と明日の「チームＡの先発」とでは、「先発」が表す人物は異なるであろう。このように、「先発」や、同様の性質を持つ「ゲスト」などの単語がデイリーワードとなる。例えば、下記に示すような単語群をデイリーワードリスト２２として記憶しておく。
【００３３】
ゲスト、価格、天気、時刻、お客様、時間、主役、テーマ、一枚、ライブ、
曲、ネイル、試合、誕生石、話題、予想、気温、御天気、収録、ＭＶＰ、
寒さ、日没、ラジオ、季節、コーディネート、イベント、日付、オススメ、
衣装、髪型、終り値、スタッフ、冷え込み、ネタ、アレンジ、先発、トップ、
注目、競馬、ニュース、おすすめ、一面、服、トピック、テレビ、音楽、
レート、スタジオ、司会、コーデ、映画、湿度、発売、撮影、登場、発表、
結婚、誕生、デビュー、死去、開催、参加、完成、放送、出演、終了、急死、
発生、実施、到着、活躍、発足、参戦、引退、リリース、開業、来日、訪問、
退職、発行、公開、帰国、合意、掲載、解散、開幕、開通、急逝、他界
【００３４】
質問文にデイリーワードが含まれている場合には、ユーザは、その単語が表す対象の中でも最新のものを知りたい可能性が高く、リアルタイム質問であると判定することができる。
【００３５】
リアルタイム判定部１２は、質問解析部１１による形態素解析結果を受け付けて、質問文に含まれる各単語と、上述したカレントワードリスト２０、バーストワードリスト２１、及びデイリーワードリスト２２に含まれるいずれかの単語とが一致するか否かを照合する。なお、バーストワードは複数の単語からなる場合がある。そのような場合を考慮し、バーストワードについては、これらの単語が文字列として含まれているか否かを、例えば正規表現によるマッチングにより照合する。照合の結果に基づいて、質問文に、各ワードリストに含まれるいずれかの単語と一致する単語が含まれている場合には、その質問文はリアルタイム質問であると判定する。
【００３６】
例えば、「今の気温は」という質問文であれば、「今」、「の」、「気温」、「は」のように単語に分割された形態素解析結果を受け付ける。ここでは、「今」がカレントワードに一致するため、「今の気温は」という質問文は、リアルタイム質問であると判定される。
【００３７】
なお、リアルタイム判定部１２は、質問文がリアルタイム質問か否かの判定に、機械学習の手法を適用してもよい。具体的には、複数の質問文を準備し、これらの質問がリアルタイム質問であるか否かを示す二値のラベルを人手で付与する。そして、一般的な機械学習の手法（例えば、単純ベイズ分類器やＳＶＭ）を用いて、リアルタイム質問か否かの二値判定を行う分類器を構築すればよい。ここで、学習に用いる特徴量は、テキスト分類で一般的な単語のｕｎｉｇｒａｍ特徴量や、カレントワード、バーストワード、及びデイリーワードがそれぞれ含まれるか否かを表す特徴量を用いればよい。
【００３８】
文書検索部１３は、質問文に含まれる重要な単語を抽出し、抽出した単語を検索キーワードとして検索条件を作成し、第１文書ＤＢ２４及び第２文書ＤＢ２５から文書を検索する。重要な単語は、例えば、内容語（名詞、動詞、形容詞、未知語）に該当する単語とすることができる。例えば、「世界一高い山は」という質問文から「世界一」、「高い」、「山」という内容語を抽出し、抽出した内容語を検索キーワードとする「“世界一”ＡＮＤ“高い”ＡＮＤ“山”」という検索条件を作成して、文書を検索する。
【００３９】
文書検索部１３は、文書検索の際、質問文がリアルタイム質問の場合には、第１文書ＤＢ２４を優先的に用いて文書検索を行い、質問文がリアルタイム質問ではない場合には、第２文書ＤＢ２５を優先的に用いて文書検索を行う。
【００４０】
第１文書ＤＢ２４は、逐次更新されるウェブサイトから収集されて逐次更新される複数の文書で構成されている。逐次更新されるウェブサイトとは、ユーザが現状について大量の書き込みを行うマイクロブログサイト（例えば、Ｔｗｉｔｔｅｒ（登録商標））のようなウェブサイトである。マイクロブログサイトのような逐次更新されるウェブサイトでは、ユーザが日々現在の様々な話題について書き込みを行っており、現在の事象について有益な情報を含んでいる。第１文書ＤＢ２４は、逐次更新されるウェブサイトに投稿された文書データ、例えばＴｗｉｔｔｅｒ（登録商標）のツイートを逐次読み込んで登録することにより構成され、最新の情報が常に検索可能となるようにしたデータベースである。
【００４１】
第２文書ＤＢ２５は、従来の質問応答システムにおける文書ＤＢと同様に、固定的なデータベースである。例えば、新聞記事を収集した文書ＤＢや、Ｗｅｂ検索エンジンが内部に持つような、Ｗｅｂページをクロールして構築した文書ＤＢである。
【００４２】
文書検索部１３は、例えば、単語の出現頻度（ｔｆ）と逆文書頻度（ｉｄｆ）との２つの指標で表されるＴＦＩＤＦによる単語重みを用いたベクタースペースモデルを用いて文書を検索することができる。これは、質問文と検索対象の文書とをそれぞれ単語ベクトルで表し、これらのベクトルの類似度の大きい順で文書を検索する手法である。また、この単語ベクトルはＴＦＩＤＦによって重みが与えられている。なお、文書検索の手法は、この方法に限定されず、従来既知の手法を用いることができる。
【００４３】
また、文書検索部１３は、第１文書ＤＢ２４から文書を検索する際、質問文に含まれる内容語から、除外ワードリスト２３に含まれている除外ワードに該当する内容語を除外して検索条件を作成する。除外ワードリスト２３は、例えば、「今」、「今日」、「現在」といった単語を除外ワードとしてリスト化したものである。例えば、「今の気温は」という質問であれば、まず形態素解析結果から、内容語である「今」及び「気温」を抽出する。「今」は除外ワードに該当する単語であるので検索条件から除外し、検索条件（検索キーワード）は「気温」となる。
【００４４】
これは、マイクロブログのような逐次更新されるウェブサイトでは、今日や現在に関する話題を投稿する場合が多く、わざわざ「今日」や「現在」という単語を文書に含めるユーザは少ない、という特性を考慮したものである。例えば、マイクロブログでは、「今日の横浜の降水確率は○○です」のような投稿ではなく、「今日の」を省略した「横浜の降水確率は○○です」という形で投稿されることが多い。逐次更新されるウェブサイトの上記のような特性から、「今日」や「現在」といった単語を検索条件に含めてしまうと、文書検索でヒットする文書の数を大きく減らしてしまう可能性があるため、これを防止するものである。「今日」や「現在」以外にも、逐次更新されるウェブサイトの特性上、検索ヒット数の低下につながる可能性がある単語を除外ワードリスト２３に登録しておく。
【００４５】
なお、除外ワードに該当する単語を検索条件から除外するのではなく、除外ワードに該当しない単語をＡＮＤ条件の検索キーワードとし、除外ワードに該当する単語をＯＲ条件の検索キーワードとする検索条件を作成してもよい。
【００４６】
また、文書検索部１３は、リアルタイム判定部１２の判定結果に応じて、第１文書ＤＢ２４または第２文書ＤＢ２５を優先的に用いて文書検索を行が、検索対象のデータベースの切り替えの一例について説明する。例えば、質問文がリアルタイム質問であると判定され、第１文書ＤＢ２４から文書検索を行った結果、検索された文書数が一定の件数（例えば、１０件）以上であれば、第２文書ＤＢ２５からの文書検索は行わない。一方、検索された文書数が一定の件数に満たない場合には、後段で回答候補を抽出できる可能性が低いとみなし、第２文書ＤＢ２５からも文書検索を行う。この処理により、文書検索部１３は１つの質問文について、第１文書ＤＢ２４から最大Ｎ件の文書、または第２文書ＤＢ２５から最大Ｍ件の文書を返す。ＮやＭは、例えば５０とすることができる。
【００４７】
また、第１文書ＤＢ２４及び第２文書ＤＢ２５の両方を検索対象とし、これらの両方の検索結果を統合してもよい。この際、質問文がリアルタイム質問の場合にはＮ＞Ｍとし、質問文がリアルタイム質問ではない場合にはＮ＜Ｍとするとよい。
【００４８】
回答候補抽出部１４は、文書検索部１３で検索された文書集合から、質問解析部１１で解析された回答タイプに対応する固有表現を回答候補として抽出する。固有表現の抽出には、サポートベクトルマシン（ＳＶＭ）や条件付き確率場（ＣＲＦ）などの一般的な機械学習の手法を用いることができる。例えば、質問解析部１１で解析された質問文の回答タイプが「Ｍｏｕｎｔａｉｎ」の場合、検索された文書集合から「Ｍｏｕｎｔａｉｎ」に該当する固有表現を抽出する。検索された文書集合に「エベレストは世界で一番高い山です」といった文章が存在する場合には、「Ｍｏｕｎｔａｉｎ」の固有表現として「エベレスト」が抽出できる。文書検索部１３により検索された全ての文書から、回答タイプに対応する全ての固有表現を抽出し、回答評価部１５に送出する。
【００４９】
回答評価部１５は、回答候補抽出部１４により回答候補として抽出された固有表現が、質問文の回答としてどの程度確からしいかを示す評価値に基づいて、回答候補を評価する。例えば、抽出された回答候補が含まれる文脈が検索キーワードをどの程度含むかによって、評価することができる。より具体的には、評価対象の回答候補が含まれる文脈に検索キーワードが多く含まれるほど、または重要と思われる検索キーワードが多く含まれるほど高くなるスコアを、その評価対象の回答候補に付与して評価することができる。
【００５０】
さらに具体的には、回答評価部１５は、単語密度による手法を用いて回答候補を評価することができる。これは、回答候補の周辺Ｋ単語について、検索キーワードがどの程度含まれているかによってスコアを付与する手法である。例えば、文書検索部１３による検索結果が上位の文書に含まれている回答候補であって、重要な単語がなるべく近くにある回答候補の方がより回答としての確からしさが高いことを表す下記（１）式に示すスコアを付与することができる。
【００５１】
【数１】
2014085947.tif 000003
【００５２】
ここで、Ｃは回答候補（Ｃａｎｄｉｄａｔｅ）を表す。ｓｃｏｒｅ（Ｃ）は回答候補Ｃのスコアを返す関数である。ｒａｎｋ（Ｃ）は回答候補Ｃが含まれる文書の文書検索結果の順位を返す関数である。ｒａｎｋ（Ｃ）の逆数を取ることで、文書検索での検索順位が低くなるほど、スコアが低くなるようにする。Ｗは回答候補Ｃの周辺Ｋ単語に含まれる検索キーワードと一致する単語の集合である。Ｋは、例えば２０とすることができる。ｄｉｓｔ（Ｃ，ｗ）はＣとｗとの単語間距離に基づく重みを返す関数である。Ｃとｗとの単語間距離が近いほど大きな値が返る関数であればよく、例えば、ハニング窓関数を用いることができる。ｉｄｆはｗのＩＤＦ（Ｉｎｖｅｒｓｅ  Ｄｏｃｕｍｅｎｔ  Ｆｒｅｑｕｅｎｃｙ）を返す関数である。このようにして、全ての回答候補についてそれぞれスコアを求め、このスコアの上位Ｌ件（例えば、２０件）を入力された質問文に対する回答として出力する。
【００５３】
次に、本実施の形態に係る質問応答装置１０の作用について説明する。質問応答装置１０に質問文（テキストデータ）が入力されると、質問応答装置１０において、図２に示す質問応答処理ルーチンが実行される。
【００５４】
ステップ１００で、質問解析部１１が、質問文を受け付け、次のステップ１０２で、質問文を形態素解析し、質問文に含まれる固有表現に基づいて、質問文に対する回答タイプを解析する。
【００５５】
次に、ステップ１０４で、リアルタイム判定部１２が、上記ステップ１０２で解析された質問文の形態素解析結果に基づいて、質問文に含まれる各単語と、カレントワードリスト２０、バーストワードリスト２１、及びデイリーワードリスト２２に含まれるいずれかの単語とが一致するか否かを照合することにより、質問文がリアルタイム質問か否かを判定する。質問文がリアルタイム質問の場合には、ステップ１０６へ移行し、リアルタイム質問ではない場合には、ステップ１１０へ移行する。
【００５６】
ステップ１０６では、文書検索部１３が、上記ステップ１０２で解析された質問文の形態素解析結果に基づいて、質問文に含まれる重要な単語を抽出し、抽出した単語を検索キーワードとして検索条件を作成し、作成した検索条件に基づいて、第１文書ＤＢ２４から文書を検索する。
【００５７】
次に、ステップ１０８で、文書検索部１３が、上記ステップ１０６の文書検索結果がＪ件以上か否かを判定する。Ｊ件以上の場合には、ステップ１１２へ移行し、Ｊ件未満の場合には、ステップ１１０へ移行する。
【００５８】
ステップ１１０では、文書検索部１３が、上記ステップ１０２で解析された質問文の形態素解析結果に基づいて、質問文に含まれる重要な単語を抽出し、抽出した単語を検索キーワードとして検索条件を作成し、作成した検索条件に基づいて、第２文書ＤＢ２５から文書を検索して、ステップ１１２へ移行する。
【００５９】
ステップ１１２では、回答候補抽出部１４が、上記ステップ１０６または１１０で検索された文書集合から、上記ステップ１０２で解析された回答タイプに対応する固有表現を回答候補として抽出する。
【００６０】
次に、ステップ１１４で、回答評価部１５が、上記ステップ１１２で抽出された回答候補に、例えば（１）式に示すようなスコアを付与し、次のステップ１１６で、スコアが上位Ｌ件となる回答候補を、入力された質問文に対する回答として出力し、質問応答処理ルーチンを終了する。
【００６１】
なお、図２に示す質問応答処理ルーチンは一例であり、これに限定されない。特に、ステップ１０６〜１１０では、リアルタイム質問か否かの判定結果を受けて第１文書ＤＢ２４及び第２文書ＤＢ２５のいずれかを優先的に用いて文書を検索すればよく、上記の例に限定されない。
【００６２】
ここで、実際のテレビ番組Ｃについて、「番組Ｃのゲストは誰」という質問を入力し、本実施の形態に係る質問応答装置１０により質問応答を行った結果について説明する。上記の質問文は、「ゲスト」というデイリーワードに一致する単語を含むことから、リアルタイム判定部１２により、リアルタイム質問であると適切に判定され、第１文書ＤＢ２４から文書検索を行い、以下に示す回答が出力された（２０１２年９月２１日時点）。なお、以下の出力結果において、１つ目のカラムは回答の順位、２つ目のカラムは回答、３つ目のカラムはスコアである。なお、回答は実際に出力された回答の一部をアルファベットで表記している。また、４つ目のカラムのかっこ内の数字は、文書検索結果における回答の出現回数であり、参考として表示している。下記の出力結果において、１位の回答「Ｋ谷Ｓり」は、上記の質問文に対する正解の回答であった。
【００６３】
Ｑ：番組Ｃのゲストは誰［リアルタイム検索をしました］
１  Ｋ谷Ｓり    12.7701503014849  （１０）
２  Ｎ野Ｋナ    12.7651503014849  （１８）
３  Ｍ田Ｋ義    12.7626503014849  （８）
４  Ｙ沢Ｔ      12.7601503014849  （１）
５  Ｅちゃん    11.0056199324983  （１）
６  Ｋ柳Ｔ子    8.81151916200213  （４）
７  Ｔ中Ｍ保    8.74868394709205  （２）
８  Ｍ井Ｒ奈    8.40785198455885  （８）
９  Ｍ坂        8.1526876875445   （１）
１０  Ｐるる      7.8206270864018   （１）
【００６４】
比較として、リアルタイム判定部１２を持たない構成の質問応答装置に、同じ質問を入力して質問応答を行った結果を下記に示す。下記の出力結果において、１位の回答は確かに番組Ｃのゲストであったが、半年前の出演であり、ユーザが期待する回答である可能性が低いものであった。
【００６５】
Ｑ：番組Ｃのゲストは誰
１  Ｍ．Ｄ．    11.5617746915704  （１）
２  Ｔ山Ｔ二    10.8033227735609  （６）
３  Ｔ本Ｍ織    10.3915227682527  （２）
４  Ｓ藤Ｋ義    10.1827909377348  （４）
５  Ｈ．Ｋ．    9.12006017831084  （２）
６  Ｍ浦Ｓ平    9.00368052796257  （３）
７  Ｎ川Ｎお    8.54764187093268  （２）
８  Ｍ迫        8.53526485667341  （１）
９  Ｙ田Ａ子    8.40894906719973  （２）
１０  Ｋ出        8.35377665340663  （１）
【００６６】
以上説明したように、本実施の形態に係る質問応答装置によれば、質問文がリアルタイム質問か否かを判定し、リアルタイム質問の場合には、マイクロブログサイトのように逐次更新されるウェブサイトから収集されて逐次更新される文書ＤＢを優先的に用いて検索された文書から回答を抽出することにより、現在のことについて尋ねる質問であっても適切な回答を出力することができる。
【００６７】
なお、上記実施の形態では、リアルタイム判定部の判定結果に応じて、優先的に文書を検索する文書ＤＢを切り替える場合について説明したが、両方の文書ＤＢを用いてＭ＋Ｎ件の文書を取得する場合において、回答評価部で回答候補に付与するスコアにリアルタイム判定部の判定結果を反映させるようにしてもよい。例えば、質問文がリアルタイム質問の場合には、第１文書ＤＢを用いて検索された文書から抽出された回答候補に高いスコアを付与し、質問文がリアルタイム質問ではない場合には、第２文書ＤＢを用いて検索された文書から抽出された回答候補に高いスコアを付与するようにすることができる。
【００６８】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【００６９】
また、上述の質問応答装置は、内部にコンピュータシステムを有しているが、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
【００７０】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。また、本発明は、周知のコンピュータに媒体もしくは通信回線を介して、プログラムをインストールすることによっても実現可能である。
【符号の説明】
【００７１】
１０  質問応答装置
１１  質問解析部
１２  リアルタイム判定部
１３  文書検索部
１４  回答候補抽出部
１５  回答評価部
２０  カレントワードリスト
２１  バーストワードリスト
２２  デイリーワードリスト
２３  除外ワードリスト
２４  第１文書ＤＢ
２５  第２文書ＤＢ
【図１】
2014085947.tif 000004
【図２】
2014085947.tif 000005