(57)【要約】【課題】入力される質問文に対して、種々のユーザからのフィードバックを反映させた回答候補を提示可能として回答の精度を高める。【解決手段】入力された質問文を解析する質問解析部１０１により生成されるキーワードを用いて文書データベース１０３から文書を検索し、検索した文書から質問解析部１０１により生成される回答パターンを用いて回答候補抽出部１０４により第１の回答候補を抽出する。一方、複数の質問文の各々に対してユーザにより選択または入力された回答データを記憶するユーザ回答データ記憶部１０８から、回答検索部１０９により入力の質問文に対応する回答データを第２の回答候補として検索する。これら第１の回答候補及び第２の回答候補の和集合に対して、回答候補順位付け部１０５により尤度による順位付けを行い、順位付けた回答候補を回答候補表示部１０６により表示してユーザに提示する。【選択図】図１
2006039881.tif 000002
【特許請求の範囲】
【請求項１】
入力された質問文に対して回答を提示する質問応答システムにおいて、
前記入力された質問文を解析することにより文書検索のためのキーワード、及び文書から抽出すべき回答の種類と単語配列を規定する回答パターンを生成する質問解析手段と、
文書集合を蓄積した文書データベースから前記質問解析手段により生成されたキーワードを検索キーワードとして文書を検索する文書検索手段と、
検索された文書から前記回答パターンを用いて第１の回答候補を抽出する回答候補抽出手段と、
複数の質問文の各々に対してユーザにより選択または入力された回答データを記憶するユーザ回答データ記憶手段と、
前記ユーザ回答データ記憶手段から前記入力された質問文に対応する回答データを第２の回答候補として検索する回答検索手段と、
前記第１の回答候補及び第２の回答候補の和集合に対して尤度による順位付けを行う回答候補順位付け手段と、
順位付けられた回答候補をユーザに提示するために表示する回答候補表示手段とを具備することを特徴とする質問応答システム。
【請求項２】
前記回答候補順位付け手段は、前記第１の回答候補及び前記第２の回答候補の和集合のうち、尤度が大きい順に予め定められた数の回答候補のみを前記回答候補表示手段に渡すことを特徴とする請求項１に記載の質問応答システム。
【請求項３】
前記回答候補順位付け手段は、前記第１の回答候補及び前記第２の回答候補の和集合のうち、尤度がある閾値以上の回答候補のみを前記回答候補表示手段に渡すことを特徴とする請求項１に記載の質問応答システム。
【請求項４】
前記文書検索手段は、前記検索キーワードとして前記質問解析手段により生成されたキーワードに加えて前記第２の回答候補を用いることを特徴とする請求項１に記載の質問応答システム。
【請求項５】
前記回答候補抽出手段は、前記文書検索手段により検索された文書のうち前記質問解析手段により生成されたキーワードの周囲のテキストから前記第１の回答候補を抽出することを特徴とする請求項１に記載の質問応答システム。
【請求項６】
前記回答候補順位付け手段は、前記ユーザ回答データ記憶部に記憶された回答データを選択または入力したユーザの数に応じた重みを前記第２の回答候補に付与して前記順位付けを行うことを特徴とする請求項１に記載の質問応答システム。
【請求項７】
前記入力された質問文を表す質問ログデータを記憶する質問ログデータ記憶部と、
前記質問ログデータから前記質問文毎の入力回数を示す質問頻度データを求める質問頻度計算手段と、
前記質問頻度データに基づいて前記入力回数が一定値以上の質問文に対して予め作成された正解の回答データを記憶するシステム回答データ記憶部とをさらに具備し、
前記回答検索手段は、前記ユーザ回答データ記憶部及びシステム回答データ記憶部から前記第２の回答候補を検索することを特徴とする請求項１乃至６のいずれか１項に記載の質問応答システム。
【請求項８】
前記文書データベースはインターネットであり、前記検索手段はインターネット検索エンジンであることを特徴とする請求項１記載の質問応答システム。
【請求項９】
入力された質問文に対して回答を提示する質問応答方法において、
前記入力された質問文を解析することにより文書検索のためのキーワード、及び文書から抽出すべき回答の種類と単語配列を規定する回答パターンを生成するステップと、
文書集合を蓄積した文書データベースから前記生成されたキーワードを検索キーワードとして文書を検索するステップと、
検索された文書から前記回答パターンを用いて第１の回答候補を抽出するステップと、
複数の質問文の各々に対してユーザにより選択または入力された回答データを記憶するステップと、
記憶された回答データのうちから前記入力された質問文に対応する回答データを第２の回答候補として検索するステップと、
前記第１の回答候補及び第２の回答候補の和集合に対して尤度による順位付けを行うステップと、
順位付けられた回答候補をユーザに提示するために表示するステップとを具備することを特徴とする質問応答方法。
【請求項１０】
入力された質問文に対して回答を提示する処理をコンピュータに実行させるプログラムにおいて、
前記入力された質問文を解析することにより文書検索のためのキーワード、及び文書から抽出すべき回答の種類と単語配列を規定する回答パターンを生成する処理と、
文書集合を蓄積した文書データベースから前記生成されたキーワードを検索キーワードとして文書を検索する処理と、
検索された文書から前記回答パターンを用いて第１の回答候補を抽出する回答候補抽出処理と、
複数の質問文の各々に対してユーザにより選択または入力された回答データを記憶する処理と、
記憶された回答データのうちから前記入力された質問文に対応する回答データを第２の回答候補として検索する処理と、
前記第１の回答候補及び第２の回答候補の和集合に対して尤度による順位付けを行う処理と、
順位付けられた回答候補をユーザに提示するために表示させる処理とを前記コンピュータに実行させるための質問応答プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、自然言語により表現された質問文に対して回答を提示する質問応答システム、方法及びプログラムに関する。さらに特定すれば、この発明はシステムが提示した複数の回答候補の中からユーザが正解を選択したり、正解が回答候補に存在しない場合にユーザが正解を入力するなどの方法により、ユーザからのフィードバックにより得られた質問文に対する正解を利用して回答の精度を高める技術に関するものである。
【背景技術】
【０００２】
一般に、文書検索システムでは例えば富士山の高さが知りたい場合、まずユーザは「富士山」「高さ」などのキーワード集合を選択し、次にキーワード検索により「富士山の高さ」に関する文書を検索し、最後に検索された文書をユーザが読んで「富士山の高さ」に関する記述を探すという手順を踏む必要がある。
【０００３】
これに対して、質問応答システムでは質問に対する回答を直接提示する。例えば、ユーザが「富士山の高さは何メートルですか？」という質問を入力すると、質問応答システムは「富士山の高さ」に関する文書の検索結果を提示するのではなく、「３７７６メートル」という回答を提示する。
【０００４】
このような質問応答システムの例は、例えば特許文献１に記載されている。特許文献１に記載された質問応答システムでは、ユーザが自然言語表現の質問文を入力すると、まず質問文から検索キーワード集合を抽出すると同時に、質問文の持つ質問タイプ（質問が要求する回答の種類）を判定する。次に、検索キーワード集合を用いて文書データベースの文書集合から関連する文書を検索し、この関連文書の中から質問タイプに合致する単語または単語列を回答として抽出する。
【０００５】
例えば、「富士山の高さは何メートルですか？」という質問文に対して、まず「富士山」「高さ」及び「メートル」というキーワード集合を抽出し、同時に、質問タイプを「数値（単位：メートル）」と判定する。次に、検索された文書集合における検索キーワードの周囲のテキストから、単位がメートルである数量表現を構成する単語列を回答候補として抽出する。最後に、検索キーワードと回答候補の距離や回答候補の出現回数などに基づいて各回答候補の尤度を求め、尤度の高い順に回答候補を表示してユーザに提示する。
【特許文献１】特開２００２−１３２８１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載された質問応答システムは、ユーザが入力した質問文に対してシステムが回答候補を提示するだけであり、システムに対してユーザが何らかのフィードバックを行うようなことは全く想定していない。
【０００７】
現状の質問応答システムは決して完壁なものではなく、例えばシステムが提示する全ての回答候補が誤っていたり、あるいは誤った回答候補に高い尤度が与えられ、正解の回答候補に低い尤度が与えられて提示されてしまうことが往々にしてある。
【０００８】
このように回答候補の提示が不適切になされている場合、ユーザがそれを認識しても従来の質問応答システムではユーザからのフィードバックの仕組みがないため、回答候補の提示に対するユーザの評価が以後の質問応答処理に反映されない。
【０００９】
従って、本発明は入力される質問文に対して、種々のユーザからのフィードバックを反映させた回答候補を提示可能として回答の精度を高めること目的とする。
【課題を解決するための手段】
【００１０】
上記の課題を解決するため、本発明は入力された質問文に対して回答を提示する質問応答システムにおいて、前記入力された質問文を解析することにより文書検索のためのキーワード、及び文書から抽出すべき回答の種類と単語配列を規定する回答パターンを生成する質問解析手段と、文書集合を蓄積した文書データベースから前記質問解析手段により生成されたキーワードを検索キーワードとして文書を検索する文書検索手段と、検索された文書から前記回答パターンを用いて第１の回答候補を抽出する回答候補抽出手段と、複数の質問文の各々に対してユーザにより選択または入力された回答データを記憶するユーザ回答データ記憶手段と、前記ユーザ回答データ記憶手段から前記入力された質問文に対応する回答データを第２の回答候補として検索する回答検索手段と、前記第１の回答候補及び第２の回答候補の和集合に対して尤度による順位付けを行う回答候補順位付け手段と、順位付けられた回答候補をユーザに提示するために表示する回答候補表示手段とを具備することを特徴とする。
【００１１】
また、本発明は入力された質問文に対して回答を提示する質問応答方法において、前記入力された質問文を解析することにより文書検索のためのキーワード、及び文書から抽出すべき回答の種類と単語配列を規定する回答パターンを生成するステップと、文書集合を蓄積した文書データベースから前記生成されたキーワードを検索キーワードとして文書を検索するステップと、検索された文書から前記回答パターンを用いて第１の回答候補を抽出するステップと、複数の質問文の各々に対してユーザにより選択または入力された回答データを記憶するステップと、記憶された回答データのうちから前記入力された質問文に対応する回答データを第２の回答候補として検索するステップと、前記第１の回答候補及び第２の回答候補の和集合に対して尤度による順位付けを行うステップと、順位付けられた回答候補をユーザに提示するために表示するステップとを具備することを特徴とする。
【００１２】
さらに、本発明によると上述した質問応答の処理をコンピュータに実行させるためのプログラムが提供される。
【発明の効果】
【００１３】
本発明によれば、種々の質問文に対する正解としてユーザが選択または入力した回答データをユーザ回答データ記憶手段に記憶しておき、入力された質問文に対応して文書データベースから抽出された第１の回答候補とユーザ回答データ記憶手段から検索された第２の回答候補の和集合に対して回答候補の尤度を求めることにより、文書データベースからの回答候補抽出の誤りを救済して回答の精度を向上させることができる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して本発明の実施形態を説明する。  
（第１の実施形態）  
図１に示されるように、本発明の第１の実施形態に係る質問応答システムは、質問解析部１０１、文書集合を蓄積した文書データベース１０３から検索キーワードに従って文書を検索する文書検索部１０２、回答候補抽出部１０４、回答候補順位付け部１０５、回答候補表示部１０６、ユーザ入力部１０７、ユーザ回答データ記憶部１０８及び回答検索部１０９を有する。
【００１５】
以下、図１の各部について説明すると、まず質問解析部１０１はユーザにより入力される質問文から文書検索のためのキーワード、及び文書から抽出すべき回答の種類と単語配列を規定した回答パターンを求める。質問解析部１０２により求められたキーワードは文書検索部１０２に送られ、回答パターンは回答候補検索部１０４に送られる。文書データベース１０３には、入力される質問文に対する回答候補を検索する対象の文書集合が記憶されている。
【００１６】
文書検索部１０２は、質問解析部１０１からキーワードを受け取ると、少なくともこれを検索キーワードとして用いて文書データベース１０２から検索キーワードを含む文書を検索し、検索した文書を回答候補抽出部１０４に渡す。回答候補抽出部１０４は、質問解析部１０１から渡された回答パターンを用いて、文書検索部１０３により検索された文書から回答候補（第１の回答候補）を抽出し、これを回答候補順位付け部１０５に渡す。
【００１７】
一方、回答検索部１０９はユーザにより入力された質問文を質問解析部１０１を介して受け取ると、入力された質問文に対応する回答データをユーザ回答データ記憶部１０８から検索し、これを第２の回答候補として回答候補順位付け部１０５に渡す。
【００１８】
回答候補順位付け部１０５は、第１の回答候補及び第２の回答候補の和集合の尤度、すなわち各回答候補が入力された質問文に対する正解の回答データである確率を計算し、尤度による順位付けを行う。言い替えれば、回答候補和集合を尤度の高い順に回答候補を並べる。こうして順位付けられた回答候補和集合は回答候補表示部１０６に送られ、ユーザに提示するために表示される。この際、回答候補和集合の全てを無条件に表示してもよいが、尤度が十分に大きい回答候補、例えば尤度が大きい順に予め定められた数（例えば５個）の回答候補のみ、あるいは尤度がある閾値以上の回答候補のみを回答候補検索部１０５から回答候補表示部１０６に渡して表示することが望ましい。
【００１９】
ユーザ入力部１０７は、ユーザが回答データを選択または入力するための入力装置である。すなわち、ユーザは回答候補表示部１０６上に表示された回答候補のうちから、質問文に対する正解と考える回答候補を選択して回答データを入力するか、あるいは回答データそのものを例えばキーボードにより入力する。こうして入力された回答データは、質問文と対応付けられてユーザ回答データ記憶部１０８に記憶される。このような処理を繰り返すことにより、ユーザ回答データ記憶部１０８には種々の質問文とそれに対応する回答データの組が記憶される。
【００２０】
次に、図２に示すフローチャートを用いて図１の質問応答システムの処理手順について説明する。
【００２１】
ユーザによって質問文が入力されると（ステップＳ２０１）、まず質問解析部１０１が入力された質問文から文書検索のためのキーワード及び回答パターンを生成する（ステップＳ２０２）。
【００２２】
次に、ステップＳ２０２で求められたキーワードを検索キーワードとして、文書データベース１０３に蓄積されている文書集合から検索キーワードを含む文書を検索する（ステップＳ２０３）。
【００２３】
次に、ステップＳ２０３で検索された文書から、回答候補抽出部１０４により回答パターンを用いて回答候補を抽出する（ステップＳ２０４）。
【００２４】
次に、ステップＳ２０１で入力された質問文に対する回答候補をユーザ回答データ記憶部１０８から検索する（ステップＳ２０５）。
【００２５】
次に、ステップＳ２０２で文書データベース１０３から検索された第１の回答候補とステップＳ２０５でユーザ回答データ記憶部１０８から検索された第２の回答候補の和集合に対して各回答候補の尤度を計算し、順位付けを行う（ステップＳ２０６）。
【００２６】
次に、ステップＳ２０６で順位付けがなされた回答候補集合を尤度順、すなわち尤度の高い順に並べて表示することにより、ユーザに対して回答データの選択または入力を促す（ステップＳ２０７）。
【００２７】
ユーザは、ステップＳ２０７で表示された回答候補の中から、ユーザ入力部１０７を用いて正解の回答データに相当する回答候補を選択するか、または入力した質問に対する正解の回答データを入力する。このようなユーザの回答データの選択または入力、すなわちユーザからのフィードバックは、質問応答システムの以降の処理に反映される。
【００２８】
次のステップＳ２０８では、このようなユーザからのフィードバック（正解の回答データの選択または入力）の有無を調べ、もしフィードバックがあれば、それを入力された質問文に対する回答候補としてユーザ回答データ記憶部に記憶し（ステップＳ２０９）、質問応答の処理を終了する。フィードバックがない場合は、ステップＳ２０７の表示をもって質問応答の処理を終了する。
【００２９】
上述した本実施形態に係る質問応答システムによると、以下の効果が得られる。
【００３０】
一般的に、質問応答システムが提示する回答候補は正しい場合と間違っている場合がある。適切なユーザインタフェースを用意すれば、質問文に対してシステムが提示した回答候補が正しいか否かをユーザが判定したり、質問文に対する回答をユーザが入力するなどの方法によりユーザからシステムにフィードバックを返すことで、質問応答の精度向上が期待できると考えられる。質問応答サービスを不特定多数のユーザがアクセス可能なポータルサイトの上で提供する場合、毎日数万件以上のアクセスが予想される。もし、上記のようなフィードバックを返してくれるユーザが全体の１％いれば、毎日数百件の正解の回答データが蓄積されることになる。
【００３１】
しかし、このようなフィードバックを利用して質問応答システムの回答の精度を高める方法に関する研究は、これまで全く行われていない。言い換えれば、従来の質問応答システムにおいては、システムが提示した回答候補の正誤をユーザが入力したり、質問文に対する回答をユーザが直接入力することによって、ユーザがシステムにフィードバックを返しても、このフィードバックを利用して質問応答の精度を高めることができない。
【００３２】
ユーザからのフィードバックにより得られた質問文に対する回答データを回答候補として利用する最も単純な方法は、それらの回答データを回答候補として予め記憶しておき、もし入力された質問文に対する回答候補が記憶されていれば、それを無条件に提示するという方法である。しかし、この方法は故意か否かにかかわらず、ユーザが誤った回答をシステムにフィードバックした場合、この誤った回答が無条件に提示されてしまうという問題点がある。
【００３３】
これに対し、本実施形態の質問応答システムでは、入力される質問文の解析により得られた検索キーワードに従って検索された文書から回答候補抽出部１０４により抽出された第１の回答候補に加えて、ユーザ回答データ記憶部１０８に記憶されている回答データを第２の回答候補として併用する。すなわち、本実施形態の質問応答システムでは回答候補順位付け部１０５により第１の回答候補と第２の回答候補の和集合について尤度による順位付けを行い、それらを回答候補表示部１０６で表示することによって、ユーザは尤度のより高い回答候補から適切な回答を見出すことになる。
【００３４】
ここで、第２の回答候補はユーザからのフィードバック、すなわちユーザ入力部１０７によるユーザの選択または入力に基づいてユーザ回答データ記憶部１０８に記憶されている回答データである。従って、回答候補表示部１０６で表示される回答候補集合は複数のユーザによるフィードバックを反映しているため、回答の精度（再現率）が向上する。
【００３５】
一方、もしユーザ回答データ記憶部１０８に誤った回答データが記憶されている場合、そのような回答データは回答候補順位付け部１０５において低尤度の回答候補として扱われる。従って、前述のように尤度が大きい順に予め定められた数の回答候補のみ、あるいは尤度がある閾値以上の回答候補のみを回答候補表示部１０６に渡して表示することによって、ユーザに提示される回答候補から誤った回答候補を排除することが可能となる。
【００３６】
（第２の実施形態）  
次に、本発明のより具体的な第２の実施形態について説明する。質問応答サービスを不特定多数のユーザがアクセス可能なボータルサイトで提供する場合、質問文の分布はいわいる「Ｚｉｐｆの法則」に従うと想定される。すなわち、「頻出質問」と呼ぶべき、少数だが出現頻度の大きい質問が存在する。このような頻出質問に対しては、システム管理者が予め正解を作成し、システム回答データベースに記憶しておくことが有効である。
【００３７】
しかし、システム回答データとユーザ回答データをどのように組み合わせて利用するかという問題に関する研究は従来なされていない。そこで、本実施形態ではシステム回答データとユーザ回答データを有効に組み合わせて利用することで、より効果的な質問応答を可能とする。
【００３８】
図３に示されるように、本実施形態の質問応答システムは質問解析部３０１、インターネット（Ｗｅｂ）３０３を検索するＷｅｂ検索部３０２、回答候補抽出部３０４、回答候補順位付け部３０５、回答候補表示部３０６、ユーザ入力部３０７、ユーザ回答データ記憶部３０８、回答検索部３０９、質問ログデータ記憶部３１０、質問頻度計算部３１１、質問頻度データ記憶部３１２、回答作成部３１３及びシステム回答データ記憶部３１４を有する。
【００３９】
すなわち、文書データベースとしてインタネット３０３を利用し、Ｗｅｂ検索部３０２を文書検索部としている。さらに、第２の実施形態では第１の実施形態の要素に加えて質問ログデータ記憶部３１０、質問頻度計算部３１１、質問頻度データ記憶部３１２、回答作成部３１３及びシステム回答データ記憶部３１４が追加されている。以下、図３の各部について詳細に説明する。
【００４０】
［質問解析部３０１］  
質問解析部３０１は、第１の実施形態と同様に入力された質問文から文書検索のためのキーワードを作成し、文書から抽出すべき回答の種類及び単語配列を規定した回答パターンを決定する。より具体的には、質問解析部３０１は質問文の単語分割及び品詞付与を行い、名詞・形容詞・副詞などの内容語、及びカタカナ列・英文字列・数字列などのキーワードになりやすい未知語を文書検索のためのキーワードとして抽出する。例えば、「鉄腕アトムの誕生日は？」という質問文に対しては、「鉄腕アトム」「誕生日」がキーワード集合として抽出される。
【００４１】
次に、質問解析部３０１は質問解析規則を用いて回答パターンを決定する。回答パターンとは、質問文が要求している回答が満たすべき条件のことであり、質問タイプと呼ぶこともある。図４に具体例を示すように、質問解析規則は質問パターンと回答パターンの組から構成される。
【００４２】
質問解析部３０１は、ある質問解析規則の質問パターンが入力された質問文と照合した場合、対応する回答パターンをその質問文の回答パターンとして選ぶ。質問パターン及び回答パターンは、表記・品詞・意味カテゴリ・固有表現クラスなどを構成要素とする正規表現を用いて記述される。図４では、意味カテゴリは記号‘［’と記号‘］’で囲んで表現し、また固有表現クラスは記号‘＜’と記号‘＞’で囲んで表現している。
【００４３】
例えば、“［組織］はどこ？”のように、もし質問文の最後の名詞の意味カテゴリが［組織］であれば、文書集合から固有表現クラスが＜組織名＞の固有表現を第１の回答候補として抽出する。もし質問文が“サイトはどこ？”または“URLはどこ？”という文字列と照合すれば、http://.+で始まる英数字列を第１の回答候補として抽出する。もし質問文が“どこ？”という文字列を含む以外に何も手掛かりがなければ、固有表現クラスが＜地名＞の固有表現を第１の回答候補として抽出する。
【００４４】
本実施形態では、固有表現クラスとして少なくとも「人名」「地名」「組織名」及び「固有物名」の４種類を使用する。また、単語の意味カテゴリとして、例えば参考文献１：ＮＴＴコミュニケーション科学研究所監修、「日本語語彙体系」岩波書店、１９９７発行、に記述されたものを使用する。
【００４５】
質問解析部３０１においてキーワードを作成する際に、質問文から抽出したキーワードに加えて、質問文に対してユーザ回答データ記憶部３０８から検索された回答候補（第２の回答候補）を利用し、これらを検索キーワード集合として用いてもよい。例えば、もしＷｅｂ検索部３０２において必須キーワード（文書中に必ず出現するという検索条件）と任意キーワード（文書中に出現しなくてもよいという検索条件）を検索キーワードとして指定できる場合には、質問文から抽出されたキーワードを必須キーワードとし、ユーザ回答データ記憶部３０８から検索された回答候補を任意キーワードとして文書検索を行ってもよい。
【００４６】
一般に、質問文から抽出されたキーワードと正解は近接して共起する可能性が高い。もしユーザ回答データ記憶部３０８から検索された第２の回答候補が正解ならば、それを任意キーワードに加えることによって、質問文から抽出されたキーワードとユーザ回答データ記憶部３０８から検索された回答候補が近接して共起する文書がＷｅｂ検索部３０２で検索される可能性が高くなる。その場合、ユーザ回答データ記憶部３０８から検索された回答候補は、回答候補順位付け部３０５により尤度は高いと判断される。逆に、ユーザ回答データ記憶部３０８から検索された第２の回答候補が正解でない場合には、近接する文書は検索されない可能性が高いので、検索された回答候補の尤度は低いと判断される。
【００４７】
［Ｗｅｂ検索部３０２］  
Ｗｅｂ検索部３０２は、質問解析部３０１が作成したキーワード集合を用いてインターネット(Web)３０３からＷｅｂ文書を検索する。すなわち、本実施形態では文書データベースとしてインターネット３０３を使用する。文書検索部に相当するＷｅｂ検索部３０２としては、キーワードの周囲のテキストを取得可能なインターネット検索エンジンを使用する。Ｗｅｂ検索部３０２は、キーワード検索が可能でかつキーワードの周囲のテキストを取得できるものならば何でもよい。キーワード検索が可能でかつ当該キーワードの周囲のテキスト(KWIC)を表示できるインターネット検索エンジンとしては、例えばgoo (http://goo.ne.jp)がある。
【００４８】
一般に、あるキーワードの周囲のテキストはKWIC(keyword in context)と呼ばれる。キーワードの周囲のKWICは、ユーザからのキーワードで表現された情報検索要求が、検索された文書と適合しているか否かをユーザが判定するのに役立つので、近年では多くのインターネット検索エンジンが文書のタイトル及びURLの他にKWICを検索結果の一部として表示している。以降では、検索エンジンが作成したキーワードの周囲のテキストのことを単にKWICまたは「概要文」と呼ぶことにする。
【００４９】
ちなみに、キーワードの周囲のテキストを抽出する技術、より一般的には長い文書の中からキーワードに関連する一部分を取り出す技術は、「パッセージ検索」と呼ばれる。質問応答のためのパッセージ検索の実現法については、例えば参考文献２：Stefanie Tellex, Boris Katz, Jimmy Lin, Aaron Fernandes, and Gregory Marton, “Quantitative Evaluation of Passage Retrieval Algorithms for Question Answering” , SIGIR-2003, pp. 41-47に詳しい。
【００５０】
［回答候補抽出部３０４］  
回答候補抽出部３０４は、質問解析部３０１により決定された回答パターンを用いて、Ｗｅｂ検索部３０２により検索された文書から回答候補（第１の回答候補）を抽出する。本実施形態では、インターネット検索エンジンにより検索された文書を当該文書を蓄積したURL(Uniform Resource Locater)からダウンロードし、文書全体から回答候補を抽出するのではなく、インターネット検索エンジンが検索結果の一部として表示した、当該文書中のキーワードの周囲のテキスト(KWIC)から回答候補を抽出する。
【００５１】
このように検索された文書をダウンロードせず、さらに文書全体ではなくKWIC、すなわち概要文だけを回答候補の抽出対象とすることにより、システムの応答時間を大幅に短縮できる。この場合、回答候補抽出部３０４はまず概要文の単語分割・品詞付与・固有表現抽出を実行し、次いで質問解析部３０１により決定された回答パターンと照合する単語列を回答候補として抽出する。
【００５２】
［回答検索部３０９］  
回答検索部３０９は、少なくともユーザ回答データ記憶部３０８から、入力された質問文に対する回答データを回答候補（第２の回答候補）として検索する。回答検索の対象としては、ユーザ回答データ記憶部３０８に記憶されている、ユーザにより選択または入力された回答データのみでなく、例えば質問応答システムのシステム管理者が予め作成してシステム回答データ記憶部３１４に記憶させた正解の回答データ（これをシステム回答データと呼ぶ）を用いてもよい。
【００５３】
［質問ログデータ記憶部３１０〜システム回答データ記憶部３１４］  
システム回答データ記憶部３１４には、例えば以下のような手順によって作成されるシステム回答データが記憶される。
【００５４】
まず、ユーザが過去に入力した全ての質問文を表す質問ログデータを質問ログデータ記憶部３１０に記憶しておく。次に、質問頻度計算部３１１によって質問ログデータ記憶部３１０に記憶されている質問ログデータから各質問文の頻度、すなわち同一の質問文が入力された回数を質問文毎に求め、この入力回数を示す質問頻度データを質問頻度データ記憶部３１２に記憶する。次に、質問頻度データから入力回数すなわち頻度が一定値以上の質問文から順に選択した予め指定された数の質問文に対する正解の回答データを回答作成部３１３により作成し、システム回答データ記憶部３１４に記憶する。
【００５５】
回答作成部３１３による回答データの作成方法は、質問文に対する正解が得られる方法であれば何でも良い。例えば、高頻度の質問文の集合に対して質問応答システムをバッチ的に使用し、得られる回答候補を人手でチェックして、正解を選択または入力する方法を用いることができる。
【００５６】
ポータルサイト上で質問応答サービスを提供する場合には、実時間（約１秒以内）で応答するために、回答候補抽出部３０４が回答候補を抽出する対象を限定する必要がある。このため、本実施形態では検索された文書をダウンロードせず、上位１０件の検査結果の概要文だけを回答候補の抽出対象としている。一方、システム回答データ記憶部３１４に記憶するシステム回答データの作成は実時間で行う必要はないので、システム回答データの作成時には回答候補の探索範囲を大幅に広げることが可能であり、より高精度な回答抽出を期待できる。従って、精度が高い分だけ人手によるチェックの手間を削減することができる。
【００５７】
［回答候補順位付け部３０５］  
回答候補順位付け部３０５は、基本的には第１の実施形態と同様であり、回答候補抽出部３０４により文書集合から抽出した第１の回答候補と回答検索部３０９によりユーザ回答データ記憶部３０８から検索した第２の回答候補の和集合を求める。次に、回答候補順位付け部３０５は以下の３つの観点から各回答候補の尤度を求める。
【００５８】
（１）検索結果のより上位の文書の概要文に出現する回答候補の方が尤もらしい；  
（２）検索キーワードの近くに出現する回答候補の方が尤もらしい；  
（３）何度も出現する回答候補の方が尤もらしい。
【００５９】
本実施形態では、上記の３つの観点を考慮した回答候補の尤度Saを以下のように定義する。
【数１】
2006039881.tif 000003
【００６０】
回答候補の尤度Saは、Ｗｅｂ検索部３０２であるインターネット検索エンジンによる検索結果の上位Nd個の文書を対象として計算する。ここでは、Nd＝10としている。数式（１）において、ｉはインターネット検索エンジンによる文書の順位である。Nsiはｉ番目の文書の概要文に含まれる文の数を表し、Nqwは検索キーワードの数を表す。Djkは文ｊにおける回答候補と検索キーワードｋ間の最短距離である。Wiはｉ番目の文書の概要文を重みであり（ΣWi＝１）、Cは回答候補と検索キーワード間の距離に対する重みである。
【００６１】
回答候補と検索キーワード間の距離は、単語数を単位として一つの文の中でのみ計測する。インターネット検索エンジンでは、一つの文書の異なる箇所から抽出した複数の文を連結して一つの概要文を作成する場合があるためである。exp(-ｄ2jk/C)の値域は[0, 1]（０以上、１以下）なので、尤度Saは０と１の間に正規化されている。尤度Saは厳密な意味では確率ではないが、実用的には確率と同様に使うことができる。
【００６２】
尤度を計算する回答候補集合に、ユーザ回答データ記憶部３０８から検索した第２の回答候補を加えることは、当該回答候補が正解であり、かつ検索された文書の概要文に当該回答候補が出現しているにもかかわらず、何らかの理由で回答候補抽出部３０４により回答候補として抽出されなかった場合の救済措置として非常に有効である。
【００６３】
文書の概要文から正解が抽出されない原因としては、  
（ａ）そもそも適切な回答パターンが存在しない；
（ｂ）質問解析規則の不備により、適切な回答パターンの選択に失敗した；
（ｃ）適切な回答パターンを選択したが、形態素解析または固有表現抽出の誤りや意味カテゴリ辞書の不備（単語に意味カテゴリが付与されていない）により、文書の概要文と回答パターンとの照合に失敗した；など、様々なケースが存在する。
【００６４】
ユーザ回答データ記憶部３０８から検索された第２の回答候補の文字列がＷｅｂ検索部３０２により検索された文書の概要文に出現していれば、その回答候補の尤度Saが計算される。もし尤度Saが大きければ、その回答候補は正解である可能性が高い。逆に、もしユーザ回答データ記憶部３０８から検索された第２の回答候補が誤りである場合、概要文の中で検索キーワードの周囲に出現する可能性は非常に低いので、尤度Saは小さな値となる。従って、ユーザが誤った回答候補をフィードバヅクした場合には、尤度Saがある閾値に満たない誤った回答候補を回答候補順位付け部３０５により排除できる。
【００６５】
ここで、ユーザ回答データ記憶部３０８から検索された第２の回答候補の尤度を計算する際に、その回答候補を正解として選択または入力してフィードバックしたユーザの数を考慮してもよい。一般に、より多くの異なったユーザがフィードバックした回答候補はより尤もらしい。従って、回答候補をフィードバックしたユーザの数が多いほど当該回答候補の尤度を高くする、すなわちフィードバックしたユーザの数に応じて尤度に重みを付けることが望ましい。
【００６６】
また、ユーザ回答データ記憶部３０８だけでなく、システム回答データ記憶部３１４も回答検索の対象とする場合、システム回答データ記憶部３１４から検索された回答候補に対して、無条件に高い尤度を与えてもよい。あるいは、システム回答データ記憶部３１４とユーザ回答データ記憶部３０８を区別せず、上述のように検索された文書の概要文における回答候補の出現状況に応じて尤度を決定してもよい。
【００６７】
［回答候補表示部３０６］  
回答候補表示部３０６は、尤度が大きい順に回答候補を表示してユーザに提示し、表示された回答候補の中から正解をユーザに選択してもらうか、または質問に対する正しい回答をユーザに直接入力してもらうように促す。
【００６８】
図５は、ユーザインタフェースの例を示す。「鉄腕アトムの誕生日は？」という質問文に対して、尤度の大きい順に５つの回答候補が表示されている。各回答候補の尤度Saの値は、「自信度」として棒グラフの形で表示されている。尤度Saの値は、各回答候補の直下に「かもしれない」「じゃないよね？」などの言語表現でも表示されている。
【００６９】
本実施形態における言語表現と尤度の対応の一例は、以下の通りである。  
・ちがいない（≧０．８）；  
・だよね？（≧０．６）；  
・かな？（≧０．４）；  
・かもしれない（≧０．２）；  
・じゃないよね？（≧０．０５）；  
・わけないか．．．（≧０）
図５においては、各回答候補の右端に「回答候補の評価」として「役に立った」というラベルを持つチェックボックスが表示されている。このチェックボックスをユーザがチェックすると、その回答候補が、入力された質問文に対する正解としてユーザ回答データ記憶部３０８に記憶される。
【００７０】
また、図５においては回答候補の下にテキストボックスを用意し、「正しい回答をご存じでしたら入力して下さい」というプロンプト、及び「回答の評価・正しい回答を送信」というボタンを表示している。例えば、質問応答システムの能力を試す目的で、正しい回答を知っている質問文をユーザが入力している場合には、ユーザが当該テキストボックスに文字列を入力すると、それが入力された質問文に対する正解としてユーザ回答データ記憶部３０８に記憶される。
【００７１】
ちなみに、図５において「正しい」でなく「役に立った」というラベルを使用している理由は、「世界で一番美しい女性は誰？」のように、明確な正解が存在しない質問が多数存在するためである。従って、ここではユーザに対して有用な情報を回答として提示できるものを広義の正解と考えている。
【００７２】
なお、本発明は上記した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変形することができる。例えば、実施形態に示される構成要素あるいは処理ステップのうち幾つかを省略してもよいし、異なる実施形態にわたる構成要素あるいは処理ステップを適宜組み合わせてもよい。
【図面の簡単な説明】
【００７３】
【図１】本発明の第１の実施形態に係る質問応答システムのブロック図
【図２】図１の質問応答システムの処理手順を示すフローチャート
【図３】本発明のより具体的な第２の実施形態に係る質問応答システムのブロック図
【図４】第２の実施形態における質問解析規則の例を示す図
【図５】第２の実施形態における回答候補の表示例を示す図
【符号の説明】
【００７４】
１０１…質問解析部
１０２…文書検索部
１０３…文書データベース
１０４…回答候補抽出部
１０５…回答候補順位付け部
１０６…回答候補表示部
１０７…ユーザ入力部
１０８…ユーザ回答データ記憶部
１０９…回答検索部
３０１…質問解析部
３０２…Ｗｅｂ検索部
３０３…インターネット
３０４…回答候補抽出部
３０５…回答候補順位付け部
３０６…回答候補表示部
３０７…ユーザ入力部
３０８…ユーザ回答データ記憶部
３０９…回答検索部
３１０…質問ログテータ記憶部
３１１…質問頻度計算部
３１２…質問頻度データ記憶部
３１３…システム回答データ記憶部
【図１】
2006039881.tif 000004
【図２】
2006039881.tif 000005
【図３】
2006039881.tif 000006
【図４】
2006039881.tif 000007
【図５】
2006039881.tif 000008