(57)【特許請求の範囲】
【請求項１】
入力された質問文を受け付ける受付手段と、
前記受付手段で受け付けた質問文から、複数の単語からなる句を検索文字列として含む第１の検索文字列群と、該複数の単語それぞれを検索文字列として含む第２の検索文字列群と、を抽出する抽出手段と、
前記抽出手段で抽出した前記第１又は第２の検索文字列群を構成する各検索文字列を含む文を回答文候補として検索対象文書から検索する検索手段と、
前記検索手段で検索した回答文候補から、前記質問文に対する回答を抽出して出力する出力手段と、
を備え、
前記検索手段は、前記第１の検索文字列群を用いた検索により前記検索対象文書から前記回答文候補が得られなかった場合、前記第２の検索文字列群を用いて該検索対象文書に再検索を行う、
ことを特徴とする質問応答装置。
【請求項２】
入力された質問文を受け付ける受付手段と、
前記受付手段で受け付けた質問文から、複数の単語からなる句を検索文字列として含む第１の検索文字列群と、該複数の単語それぞれを検索文字列として含む第２の検索文字列群と、を抽出する抽出手段と、
前記抽出手段で抽出した前記第１又は第２の検索文字列群を構成する各検索文字列を含む文を回答文候補として検索対象文書から検索する検索手段と、
前記検索手段で検索した回答文候補から、前記質問文に対する回答を抽出して出力する出力手段と、
を備え、
前記検索手段は、
前記検索対象文書が見出し語と該見出し語に対する説明文とからなる集合文を含む文書の場合、該集合文単位で前記第１又は第２の検索文字列群を構成する各検索文字列を含むか否か検索を行う単位検索手段と、
前記単位検索手段で検索した集合文において、前記第１又は第２の検索文字列群を構成する各検索文字列の出現位置を特定する特定手段と、
前記特定手段で特定した出現位置に基づいて、前記集合文から見出し語及び／又は説明文を回答文候補として選択する選択手段と、
を備えたことを特徴とする質問応答装置。
【請求項３】
前記特定手段が前記各検索文字列の出現位置を前記集合文における単一の説明文と特定した場合、前記選択手段は、該集合文から見出し語及び該単一の説明を回答文候補として選択する、
ことを特徴とする請求項２に記載の質問応答装置。
【請求項４】
前記特定手段が前記各検索文字列の出現位置を前記集合文における複数の説明文と特定した場合、前記選択手段は、該集合文から見出し語のみを回答文候補として選択する、
ことを特徴とする請求項２に記載の質問応答装置。
【請求項５】
前記第１の検索文字列群は、前記質問文中の疑問詞に対する付加的な名詞を検索文字列として含む、
ことを特徴とする請求項１乃至４の何れか一項に記載の質問応答装置。
【請求項６】
前記出力手段は、前記質問文中の疑問詞から判別した回答種別に基づいて、前記回答文候補から回答を抽出して出力する、
ことを特徴とする請求項１乃至５の何れか一項に記載の質問応答装置。
【請求項７】
質問応答装置により実行される質問応答方法であって、
入力された質問文を受け付ける受付ステップと、
前記受付ステップにおいて受け付けた質問文から、複数の単語からなる句を検索文字列として含む第１の検索文字列群と、該複数の単語それぞれを検索文字列として含む第２の検索文字列群と、を抽出する抽出ステップと、
前記抽出ステップにおいて抽出した前記第１又は第２の検索文字列群を構成する各検索文字列を含む文を回答文候補として検索対象文書から検索する検索ステップと、
前記検索ステップにおいて検索した回答文候補から、前記質問文に対する回答を抽出して出力する出力ステップと、
を備え、
前記検索ステップにおいて、前記第１の検索文字列群を用いた検索により前記検索対象文書から前記回答文候補が得られなかった場合、前記第２の検索文字列群を用いて該検索対象文書に再検索を行う、
ことを特徴とする質問応答方法。
【請求項８】
質問応答装置により実行される質問応答方法であって、
入力された質問文を受け付ける受付ステップと、
前記受付ステップにおいて受け付けた質問文から、複数の単語からなる句を検索文字列として含む第１の検索文字列群と、該複数の単語それぞれを検索文字列として含む第２の検索文字列群と、を抽出する抽出ステップと、
前記抽出ステップにおいて抽出した前記第１又は第２の検索文字列群を構成する各検索文字列を含む文を回答文候補として検索対象文書から検索する検索ステップと、
前記検索ステップにおいて検索した回答文候補から、前記質問文に対する回答を抽出して出力する出力ステップと、
を備え、
前記検索ステップは、
前記検索対象文書が見出し語と該見出し語に対する説明文とからなる集合文を含む文書の場合、該集合文単位で前記第１又は第２の検索文字列群を構成する各検索文字列を含むか否か検索を行う単位検索ステップと、
前記単位検索ステップで検索した集合文において、前記第１又は第２の検索文字列群を構成する各検索文字列の出現位置を特定する特定ステップと、
前記特定ステップで特定した出現位置に基づいて、前記集合文から見出し語及び／又は説明文を回答文候補として選択する選択ステップと、
を備えたことを特徴とする質問応答方法。
【請求項９】
コンピュータを、
入力された質問文を受け付ける受付手段、
前記受付手段で受け付けた質問文から、複数の単語からなる句を検索文字列として含む第１の検索文字列群と、該複数の単語それぞれを検索文字列として含む第２の検索文字列群と、を抽出する抽出手段、
前記抽出手段で抽出した前記第１又は第２の検索文字列群を構成する各検索文字列を含む文を回答文候補として検索対象文書から検索する検索手段、
前記検索手段で検索した回答文候補から、前記質問文に対する回答を抽出して出力する出力手段、
として機能させ、
前記検索手段を、前記第１の検索文字列群を用いた検索により前記検索対象文書から前記回答文候補が得られなかった場合、前記第２の検索文字列群を用いて該検索対象文書に再検索を行うように、
機能させるためのプログラム。
【請求項１０】
コンピュータを、
入力された質問文を受け付ける受付手段、
前記受付手段で受け付けた質問文から、複数の単語からなる句を検索文字列として含む第１の検索文字列群と、該複数の単語それぞれを検索文字列として含む第２の検索文字列群と、を抽出する抽出手段、
前記抽出手段で抽出した前記第１又は第２の検索文字列群を構成する各検索文字列を含む文を回答文候補として検索対象文書から検索する検索手段、
前記検索手段で検索した回答文候補から、前記質問文に対する回答を抽出して出力する出力手段、
として機能させ、
前記検索手段を、
前記検索対象文書が見出し語と該見出し語に対する説明文とからなる集合文を含む文書の場合、該集合文単位で前記第１又は第２の検索文字列群を構成する各検索文字列を含むか否か検索を行う単位検索手段、
前記単位検索手段で検索した集合文において、前記第１又は第２の検索文字列群を構成する各検索文字列の出現位置を特定する特定手段、
前記特定手段で特定した出現位置に基づいて、前記集合文から見出し語及び／又は説明文を回答文候補として選択する選択手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、質問応答装置、質問応答方法、プログラムに関する。
【背景技術】
【０００２】
近年、ユーザが入力した質問文を受け付けて、その質問文に対する回答を出力する質問応答装置が知られている。
例えば、特許文献１には、入力された質問文から検索に用いる検索文字列群と質問種別とを抽出する質問解析部と、検索対象文書から検索文字列群を含む文を回答文候補として検索する検索部と、質問種別に基づいて回答文候補から回答を抽出する回答抽出部と、を備えた質問応答装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−１３２８１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、質問文中の記述表現と検索対象文書の記述表現とに相違がある場合、質問文中の記述表現のまま検索をかけると検索漏れが発生してしまうことがあった。具体的には、質問文中の連続する名詞（例えば、「太平洋横断」など）を一つのまとまった名詞句の検索文字列として検索した場合、検索対象文書が名詞間に助詞を挟んでいると（例えば、「太平洋の横断」だった場合）、検索漏れが発生してしまうことがあった。
このようなことから、質問文中の記述表現と検索対象文書の記述表現とに相違がある場合に、検索漏れを防ぐことが可能な質問応答装置が望まれている。
【０００５】
そこで、本発明は、上述した事情に鑑みてなされたものであり、質問文と検索対象文書との間の記述表現の違いで生じる検索漏れを防ぐことが可能な質問応答装置等を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、この発明の質問応答装置の一態様は、
入力された質問文を受け付ける受付手段と、
前記受付手段で受け付けた質問文から、複数の単語からなる句を検索文字列として含む第１の検索文字列群と、該複数の単語それぞれを検索文字列として含む第２の検索文字列群と、を抽出する抽出手段と、
前記抽出手段で抽出した前記第１又は第２の検索文字列群を構成する各検索文字列を含む文を回答文候補として検索対象文書から検索する検索手段と、
前記検索手段で検索した回答文候補から、前記質問文に対する回答を抽出して出力する出力手段と、
を備え、
前記検索手段は、前記第１の検索文字列群を用いた検索により前記検索対象文書から前記回答文候補が得られなかった場合、前記第２の検索文字列群を用いて該検索対象文書に再検索を行う、
ことを特徴とする。
また、上記目的を達成するため、この発明の質問応答装置の他の態様は、
入力された質問文を受け付ける受付手段と、
前記受付手段で受け付けた質問文から、複数の単語からなる句を検索文字列として含む第１の検索文字列群と、該複数の単語それぞれを検索文字列として含む第２の検索文字列群と、を抽出する抽出手段と、
前記抽出手段で抽出した前記第１又は第２の検索文字列群を構成する各検索文字列を含む文を回答文候補として検索対象文書から検索する検索手段と、
前記検索手段で検索した回答文候補から、前記質問文に対する回答を抽出して出力する出力手段と、
を備え、
前記検索手段は、
前記検索対象文書が見出し語と該見出し語に対する説明文とからなる集合文を含む文書の場合、該集合文単位で前記第１又は第２の検索文字列群を構成する各検索文字列を含むか否か検索を行う単位検索手段と、
前記単位検索手段で検索した集合文において、前記第１又は第２の検索文字列群を構成する各検索文字列の出現位置を特定する特定手段と、
前記特定手段で特定した出現位置に基づいて、前記集合文から見出し語及び／又は説明文を回答文候補として選択する選択手段と、
を備えたことを特徴とする。
【発明の効果】
【０００７】
本発明によれば、質問文と検索対象文書との間の記述表現の違いで生じる検索漏れを防ぐことができる。
【図面の簡単な説明】
【０００８】
【図１】質問応答装置の構成を示すブロック図である。
【図２】形態素解析結果の一例を示す図である。
【図３】質問解析処理の流れの一例を示すフローチャートである。
【図４】検索処理の流れの一例を示すフローチャートである。
【図５】回答抽出処理の流れの一例を示すフローチャートである。
【図６】質問応答装置の変形例の構成を示すブロック図である。
【図７】出現パターン判別テーブルの一例を示す図である。
【図８】回答文候補選択テーブルの一例を示す図である。
【図９】検索処理の流れの変形例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、この発明の実施形態を図面に基づいて説明する。
図１に示すように、質問応答装置１００は、質問解析部１１０、検索部１２０、記憶部1３０、回答抽出部１４０を備える。この質問応答装置１００は、自然言語で書かれた質問文に対する回答を出力する装置である。上記各部（質問解析部１１０、検索部１２０及び回答抽出部１４０）の機能は、質問応答装置１００のＣＰＵ（Central Processing Unit）がＲＯＭ（Read Only Memory）に記憶されている質問応答に係るプログラムを読み出して実行することにより実現される。
【００１０】
ここで、ユーザは、キーボードなどの入力手段を介して質問文を入力する。この質問文は、自然言語で書かれた５Ｗ１Ｈ型のテキストである。この実施形態においては、質問文としてユーザが平仮名、片仮名、漢字からなる日本語で「日本のアマチュアレスリングの育ての親と言われる人物は、誰ですか？」と入力した場合を例にとって説明する。なお、この質問文は、単にＱ１とも称して以下説明する。
【００１１】
質問解析部１１０は、受付部１１１、形態素解析部１１２、抽出部１１３を備える。
受付部１１１は、ユーザにより入力された質問文を受け付ける。なお、受付部１１１は、受付手段に相当する。
形態素解析部１１２は、受け付けた質問文に対して形態素解析を行う。具体的には、形態素解析部１１２は、質問文を複数の単語に分割し、単語辞書を参照して分割した単語毎に品詞を付与する。例えば、Ｑ１に対して形態素解析を行うと図２のような形態素解析結果が得られる。なお、単語は、意味を持つ最小の言語単位である。
【００１２】
抽出部１１３は、形態素解析結果に基づいて、質問文から検索文字列郡と回答種別とを抽出する。ここで、検索文字列とは検索キーワードとして用いる単語を意味する。この実施形態では、一例として、名詞などの自立語を検索文字列として用いる。また、検索文字列郡とは、複数の検索文字列を含んだグループを意味する。この実施形態において、抽出部１１３は、検索漏れがなくなるように２以上の異なるタイプの検索文字列郡を質問文から抽出する。この抽出部１１３における具体的な抽出手法については後述する。
【００１３】
また、抽出部１１３は、疑問詞に基づいて、ユーザが所望する回答の種別を示す回答種別を抽出する。具体的には、抽出部１１３は、疑問詞が「どこですか？」の「どこ」であれば「場所」を、疑問詞が「誰ですか？」の「誰」であれば「人物」を、疑問詞が「何ですか？」の「何」であれば「物」を、それぞれ回答種別として抽出する。この実施形態においては、抽出部１１３は、質問文Ｑ１の疑問詞が「誰」であることから、「人物」を回答種別とする。なお、抽出部１１３は、抽出手段に相当する。
【００１４】
検索部１２０は、２以上の異なるタイプの検索文字列郡のうち、検索対象文書１３１から何れかのタイプの検索文字列郡の各検索文字列を全て含む文を回答文候補として検索する。具体的には、検索部１２０は、まず、一方のタイプの検索文字列郡を構成する各検索文字列によりＡＮＤ検索を実行する。そして、検索対象文書１３１から回答文候補が得られなかった場合、次に、他方のタイプの検索文字列郡を構成する各検索文字列により検索対象文書１３１にＡＮＤ検索を実行する。つまり、検索部１２０は、異なるタイプの検索文字列郡により、同一の検索対象文書１３１に対して階層型検索を実行する。この検索部１２０による具体的な階層型検索については後述する。なお、検索部１２０は、検索手段に相当する。
【００１５】
記憶部１３０は、検索対象文書１３１を記憶するＨＤＤ（Hard Disk Drive）などの不揮発性メモリである。検索対象文書１３１は、複数の文（文章）からなるテキストデータである。この実施形態においては、検索対象文書１３１は、見出し語とその見出し語に対する説明文を含む辞書以外の文書のテキストデータである。
【００１６】
回答抽出部１４０は、検索部１２０で検索した回答文候補から、質問文に対する回答を抽出して出力する。この回答文候補は、検索文字列郡を構成する各検索文字列を全て含む１文（文頭から句点までの１センテンス）である。回答抽出部１４０は、この回答文候補に対して、まず形態素解析を行って単語毎に品詞と付加情報（例えば、品詞が固有名詞であれば付加情報として地名や人物など）を判別する。そして、回答抽出部１４０は、回答種別に基づいて、回答文候補から回答を抽出する。具体的には、回答抽出部１４０は、回答種別が「人物」であれば、回答文候補のうち固有名詞の人物を示す単語を回答として、ディスプレイなどの出力手段に出力する。なお、回答抽出部１４０は、出力手段に相当する。
【００１７】
次に、図１を参照しながら説明した各部の機能のうち、質問解析部１１０が行う質問解析処理の流れについて図３のフローチャートを参照しながら説明する。この質問解析処理は、ユーザが入力した質問文を受付部１１１が受け付けたことを契機として開始される。
【００１８】
まず、形態素解析部１１２は、質問文に対する形態素解析を行う（ステップＳ１１）。具体的には、形態素解析部１１２は、単語辞書を参照して、質問文を単語に区切って品詞を付与する（図２参照）。
【００１９】
次に、抽出部１１３は、形態素解析結果に基づいて、検索文字列群の抽出を行う（ステップＳ１２）。具体的には、抽出部１１３は、２以上の異なるタイプの検索文字列群として、以下の検索文字列群を質問文から抽出する。なお、何れのタイプの検索文字列群であっても、疑問詞（Ｑ１における「誰」）は、検索文字列としない。一般的に、疑問文（Ｑ１における「誰ですか？」）を作成するための疑問詞は、質問の内容と直接関係せず検索キーワードとして有効ではないからである。
【００２０】
（１）検索文字列群タイプＡ
２以上の連続した名詞からなる名詞句を検索文字列として含む検索文字列群である。この実施形態においては、「日本」、「アマチュアレスリング」、「育て」、「親」及び「人物」が検索文字列群タイプＡとなる。この検索文字列群タイプＡのうち、疑問詞（Ｑ１における「誰」）に対する付加的な名詞「人物」をサブ検索文字列とし、このサブ検索文字列「人物」を除く検索文字列（「日本」、「アマチュアレスリング」、「育て」及び「親」）をメイン検索文字列とする。このサブ検索文字列は質問文の内容に影響を与えない単語であり、メイン検索文字列は質問文の内容に影響を与える単語である。このことから、検索文字列群タイプＡは、メインとサブの検索文字列から構成され、名詞句を検索文字列として含む。
【００２１】
（２）検索文字列群タイプＢ
２以上の連続した名詞それぞれを検索文字列として含み、メイン検索文字列から構成される検索文字列群である。この実施形態においては、名詞句をばらして、かつサブ検索文字列を除いた「日本」、「アマチュア」、「レスリング」、「育て」及び「親」が検索文字列群タイプＢとなる。
このように抽出部１１３は、形態素解析結果に基づいて、検索文字列群タイプＡ及びＢを質問文から抽出する。
【００２２】
図３に戻って、抽出部１１３は、形態素解析結果に基づいて、回答種別の抽出を行う（ステップＳ１３）。具体的には、抽出部１１３は、Ｑ１の疑問詞が「誰」であることから、回答種別は「人物」とする。
以上、ステップＳ１１乃至Ｓ１３の後、質問解析処理を終了し、検索処理に移る。
【００２３】
次に、検索部１２０が行う検索処理の流れについて図４のフローチャートを参照しながら説明する。
まず、検索部１２０は、検索文字列群タイプＡで検索を行う（ステップＳ２１）。具体的には、検索部１２０は、「日本」、「アマチュアレスリング」、「育て」、「親」及び「人物」で、検索対象文書１３１にＡＮＤ検索を行う。
【００２４】
次に、検索部１２０は、検索結果数が０か否か判定する（ステップＳ２２）。検索結果数が０でなかった場合（ステップＳ２２；Ｎｏ）、すなわち検索文字列群タイプＡを構成する各検索文字列（「日本」、「アマチュアレスリング」、「育て」、「親」及び「人物」）を全て含む回答文候補があった場合、回答抽出処理に移る。なお、この回答抽出処理については、後述する。
【００２５】
一方、検索結果数が０だった場合（ステップＳ２２；Ｙｅｓ）、すなわち検索文字列群タイプＡを構成する各検索文字列を全て含む回答文候補がなかった場合、検索部１２０は、検索文字列群タイプＡのメイン検索文字列で検索を行う（ステップＳ２３）。具体的には、検索部１２０は、サブ検索文字列「人物」を除くメイン検索文字列（「日本」、「アマチュアレスリング」、「育て」及び「親」）で、検索対象文書１３１にＡＮＤ検索を行う。
【００２６】
次に、検索部１２０は、検索結果数が０か否か判定する（ステップＳ２４）。検索結果数が０でなかった場合（ステップＳ２４；Ｎｏ）、すなわちメイン検索文字列（「日本」、「アマチュアレスリング」、「育て」及び「親」）を全て含む回答文候補があった場合、回答抽出処理に移る。
【００２７】
一方、検索結果数が０だった場合（ステップＳ２４；Ｙｅｓ）、すなわちメイン検索文字列を全て含む回答文候補がなかった場合、検索部１２０は、検索文字列群タイプＢで検索を行う（ステップＳ２５）。具体的には、検索部１２０は、検索文字列群タイプＢ（「日本」、「アマチュア」、「レスリング」、「育て」及び「親」）で、検索対象文書１３１にＡＮＤ検索を行う。
【００２８】
次に、検索部１２０は、検索結果数が０か否か判定する（ステップＳ２６）。検索結果数が０でなかった場合（ステップＳ２６；Ｎｏ）、すなわち検索文字列群タイプＢを構成する各検索文字列（「日本」、「アマチュア」、「レスリング」、「育て」及び「親」）を全て含む回答文候補があった場合、回答抽出処理に移る。
一方、検索結果数が０だった場合（ステップＳ２６；Ｙｅｓ）、検索処理を終了する。
【００２９】
以上の検索処理において、検索部１２０は、検索文字列群タイプＡ及びＢのうち、一方のタイプ（名詞句を検索文字列として含むタイプ）の検索で検索対象文書１３１から回答文候補が得られなかった場合、他方のタイプ（名詞句を構成する各名詞それぞれを検索文字列として含むタイプ）で検索対象文書１３１に対して再検索を行う階層型検索を実行する。
【００３０】
次に、回答抽出部１４０が行う回答抽出処理の流れについて図５のフローチャートを参照しながら説明する。検索処理の何れかで検索結果数が０でない（ステップＳ２２、２４又は２６；Ｎｏ）、すなわち回答文候補があった場合、回答抽出部１４０は以下の処理を順に行う。
【００３１】
まず、回答抽出部１４０は、回答文候補の形態素解析を行う（ステップＳ３１）。具体的には、回答抽出部１４０は、単語辞書を参照して、回答文候補の単語毎に品詞と付加情報（例えば、地名や人物など）を付与する。
【００３２】
次に、回答抽出部１４０は、回答種別に基づいて、回答文候補から回答抽出可能か否か判定する（ステップＳ３２）。具体的には、回答抽出部１４０は、回答種別である「人物」を示す単語が形態素解析結果後の回答文候補に含まれるか否か判定する。この判定の際、回答抽出部１４０は、検索文字列の単語と同じ単語が回答文候補に含まれる場合は、その単語を回答文候補から除外して回答抽出を試みるとよい。検索文字列とした各単語は回答になり得ないからである。
【００３３】
ここで、回答文候補から回答抽出できなかった場合（ステップＳ３２；Ｎｏ）、次の検索を行うために検索処理に戻るか（ステップＳ２３又は２５）、又は検索処理を終了する。検索処理を終了した場合、回答抽出部１４０は、質問文に対する回答が検索対象文書１３１になかったことを示すメッセージをディスプレイなどの出力手段に出力する。
【００３４】
一方、回答文候補から回答抽出できた場合（ステップＳ３２；Ｙｅｓ）、回答抽出部１４０は、抽出した回答を出力して（ステップＳ３３）、回答抽出処理を終了する。回答抽出部１４０は、回答が２以上ある場合（例えば、回答種別「人物」の単語が２以上ある場合）、全回答をディスプレイなどの出力手段に出力する。なお、検索処理において複数の回答文候補があった場合、回答抽出処理の各ステップにおいては回答文候補毎に形態素解析、回答抽出可能か否かの判定を行うようにする。
【００３５】
以上、この実施形態においては、質問応答装置１００が質問解析部１１０、検索部１２０及び回答抽出部１４０を備えたことにより、名詞句を検索文字列として含む検索文字列群タイプＡを用いた検索で検索対象文書１３１から回答文候補が得られなかった場合、名詞句を構成する名詞それぞれを検索文字列として含む検索文字列タイプＢを用いてその検索対象文書１３１に再検索を行う。つまり、検索文字列群タイプＡとＢとで同一の検索対象文書１３１に対して階層型検索を行う。このため、検索文字列群タイプＡ又はＢ何れか一方を構成する各検索文字列を全て含む回答文候補を検索対象文書１３１から検索することができる。したがって、質問文と検索対象文書１３１との間の記述表現の違いによって生じる検索漏れを防ぐことができる。
【００３６】
なお、この実施形態においては、質問文と検索対象文書１３１との間における記述表現の相違が連続する名詞間の助詞の有無であることを想定して、名詞句とそれを構成する各名詞とで別々に検索をかけるようにしたが、これに限られない。例えば、名詞以外でも記述表現上の相違が生じる場合を考慮して、品詞に依らずに複数の単語からなる句を一まとめにした検索文字列と、その複数の単語それぞれの検索文字列と、で別々に検索をかけるようにするとよい。
【００３７】
また、サブ検索文字列（この実施形態では「人物」）は、質問文の内容に影響を与えない単語であるものの、削除して検索をかけた場合、検索ノイズが増えるので回答文候補が増えてしまい、回答抽出の処理効率が下がってしまう。そこで、この実施形態においては、検索文字列群タイプＡは、サブ検索文字列である「人物」を含めるようにしている。これにより、検索処理における最初の検索文字列タイプＡによる検索では、メインとサブの検索文字列両方を用いて絞り込んだ検索を行いつつ、検索ノイズを抑えることができる。そして、最初の検索文字列タイプＡによる検索で回答文候補が得られなかった場合に、サブ検索文字列である「人物」を除いて検索をかけるようにしているので、質問文の内容に影響を与えない範囲において検索対象を広げて検索することができる。
【００３８】
また、この実施形態においては、検索対象文書１３１が一つであることを前提として説明したが複数の検索対象文書に対して検索を行ってもよい。また、この実施形態の検索処理においては、検索文字列群タイプＡのメイン検索文字列で検索を行った後（ステップＳ２３）、検索文字列群タイプＢで検索を行うようにしたが（ステップＳ２５）、この順序は逆でもよい。
【００３９】
以上で実施形態の説明を終了するが、質問応答装置１００の具体的な構成や図３乃至図５の各処理の内容が上述の実施形態で説明したものに限られないことはもちろんである。
【００４０】
（変形例）
上述した実施形態においては、検索対象文書１３１が複数の文からなるテキストデータでことを前提に説明したが、この変形例における検索対象文書１３１′は、見出し語とその見出し語に対する（複数の）説明文とからなる集合文を複数含む百科事典などの辞書データであることを前提として説明する。この場合、集合文単位で回答文候補とすると、その回答文候補から回答を抽出する際、回答文候補が見出し語とその見出し語に対する複数の説明文とからなるので回答を絞り込むことが困難になってしまう。また、説明文単位で検索しても検索文字列群を含まない他の説明文に回答があると検索漏れが起こり、回答を抽出できない。
【００４１】
そこで、図６に示す質問応答装置１００′では、辞書データである検索対象文書１３１′に対して検索をかける場合、回答抽出部１４０において回答文候補から回答を絞り込みやすくするための機能を追加している。質問応答装置１００′が上述した実施形態における質問応答装置１００と異なる点は、検索部１２０と記憶部１３０の構成である。そこで、この異なる点を中心に以下説明する。
【００４２】
質問応答装置１００′の検索部１２０は、単位検索部１２１、出現パターン判別部１２２及び回答文候補選択部１２３を備える。
単位検索部１２１は、検索対象文書１３１′中の見出し語とその見出し語に対する複数の説明文とから構成される集合文単位で検索を行う。具体的には、単位検索部１２１は、その集合文単位で検索文字列群タイプＡ又はＢを構成する各検索文字列を全て含むか否か検索を行う。なお、単位検索部１２１は、単位検索手段に相当する。
【００４３】
出現パターン判別部１２２は、単位検索部１２１で検索した集合文において、検索文字列群タイプＡ又はＢを構成する各検索文字列の出現位置を特定する。そして、その特定した各検索文字列の出現位置に基づいて出現パターンを判別する。具体的には、出現パターン判別部１２２は、特定した各検索文字列の出現位置に基づいて出現パターン判別テーブル１３２を参照することにより、出現パターン番号を判別する。ここで、図７を参照しながら、出現パターン判別テーブル１３２について説明する。
【００４４】
出現パターン判別テーブル１３２では、各検索文字列の出現位置に応じた出現パターン番号が対応付けられている。例えば、検索文字列群タイプＡの各検索文字列（「日本」、「アマチュアレスリング」、「育て」、「親」及び「人物」）の出現位置が集合文中の単一の説明文である場合出現パターン番号は１、出現位置が集合文中の見出し語と複数の説明文の場合出現パターン番号は３、とそれぞれなる。なお、出現パターン判別部１２２は、特定手段に相当する。
【００４５】
図６に戻って、回答文候補選択部１２３は、出現パターン判別部１２２で特定した各検索文字列の出現位置に基づいて、集合文から見出し語及び／又は説明文を回答文候補として選択する。具体的には、回答文候補選択部１２３は、各検索文字列の出現位置に応じた出現パターン番号に基づいて回答文候補選択テーブル１３３を参照することにより、集合文全て（すなわち、見出し語と全説明文）を回答文候補としないように回答文候補を選択する。ここで、図８を参照しながら、回答文候補選択テーブル１３３について説明する。
【００４６】
回答文候補選択テーブル１３３では、各検索文字列の出現位置に応じて回答が存在する確率が高い文を選択するように、出現パターン番号と回答文候補とを対応づけている。例えば、各検索文字列の出現位置が見出し語のみである場合（出現パターン番号０）、その見出し語に対する説明文中に回答が存在する確率が高いので、全説明文を回答文候補とする。一方で、各検索文字列の出現位置が複数の説明文にまたがっている場合（出現パターン番号４）、その複数の説明文に対する見出し語に回答が存在する確率が高いので、見出し語のみを回答文候補とする。
【００４７】
ここで、例えば、検索文字列群タイプＢの各検索文字列（「日本」、「アマチュア」、「レスリング」、「育て」及び「親」）が見出し語と単一の説明文に出現した場合（出現パターン番号２）、見出し語中には回答が存在しない確率が高いので単一の該当説明文のみを回答文候補とする。なお、回答文候補選択部１２３は、選択手段に相当する。
【００４８】
次に、図９を参照しながら、検索処理の変形例について説明する。なお、質問解析処理は図３で説明したものと同じである。また、変形例における検索処理はステップＳ２７及びＳ２８を追加した点が図４の検索処理と異なる。そこで、この異なる点を中心に以下説明する。
【００４９】
階層型検索において何れかの検索文字列群（検索文字列群タイプＡ、タイプＡのメイン検索文字列グループ又は検索文字列群タイプＢ）で検索結果数が０でない場合（ステップＳ２２、２４又は２６；Ｎｏ）、すなわち検索文字列群を構成する各検索文字列を全て含む集合文が１以上の場合、出現パターン判別部１２２は、各検索文字列の集合文中の出現位置に基づいて、出現パターン番号を判別する（ステップＳ２７）。具体的には、出現パターン判別部１２２は、出現パターン判別テーブル１３２を参照して、特定した出現位置に対応する出現パターン番号を判別する。
【００５０】
次に、回答文候補選択部１２３は、出現パターン番号に基づいて、回答文候補を選択する（ステップＳ２８）。具体的には、回答文候補選択部１２３は、回答文候補選択テーブル１３３を参照して、出現パターン番号に対応する回答文候補を集合文から選択する。なお、集合文が複数ある場合は、集合文毎に出現パターン番号を判別し、集合文毎に回答文候補を選択する。
【００５１】
この検索処理の後、回答抽出処理に移る。この回答抽出処理においては、集合文から選択された回答文候補に対して回答抽出を試みる。具体的な回答抽出処理は図５で説明したものと同じである。例えば、集合文から選択された回答文候補が全説明文であれば（出現パターン番号０又は３）、回答抽出部１４０は、全説明文を構成する説明文毎に形態素解析を行って（ステップＳ３１）、回答種別に基づいて、回答文候補（全説明文を構成する各説明文）から回答抽出可能か否か判別して（ステップＳ３２）、回答抽出ができれば（ステップＳ３２；Ｙｅｓ）、抽出した回答を出力する（ステップＳ３３）。他の出現パターン番号１、２における回答文候補（単一の説明文のみや見出し語と単一の説明文など）の場合も同様である。
【００５２】
なお、出現パターン番号４の回答文候補（見出し語のみ）の場合において、回答抽出できない場合（ステップＳ３２；Ｎｏ）、その見出し語に対する全説明文に対して図５に示す回答抽出処理を再度行うとよい。見出し語にない場合は、説明文中に回答が存在する可能性があるからである。
【００５３】
また、回答文候補から回答抽出可能か否か判別する際、上述した実施形態と同様に、回答文候補において検索文字列と重複するものについては除外した上で（例えば、回答文候補である単一の説明文中に検索文字列「レスリング」がある場合は、それを除外した上で）、回答抽出可能か否か判別するとよい。これにより、回答抽出処理の効率をあげることができる。
【００５４】
以上、変形例における質問応答装置１００′においては、検索部１２０が単位検索部１２１、出現パターン判別部１２２及び回答文候補選択部１２３を備えたことにより、集合文中の各検索文字列の出現位置を特定して出現パターンを判別し、その出現パターンに基づいて集合文の一部（見出し語及び／又は説明文）を回答文候補として選択するようにしている。このため、辞書データに検索をかける場合の回答文候補の数を少なくすることができる。したがって、回答抽出処理において回答の絞り込みが容易になるとともに、選択された回答文候補における回答の存在確率が高いので回答抽出精度あげることができる。
【００５５】
なお、変形例における検索処理では、異なるタイプＡ及びＢの検索文字列群を用いた階層型検索を例にとって説明したが、これに限られない。辞書データを検索対象とする場合であれば、タイプに依らずにどのような検索文字列群であっても、変形例における検索処理を適用することができる。
【００５６】
また、上述した実施形態における質問応答装置１００及び変形例における質問応答装置１００′は、ユーザが自然言語で質問文を入力して、その質問文に対する回答を出力するような技術分野であれば広く適用することができる。例えば、質問応答装置１００、１００′をＰＣ（Personal Computer）とし、ユーザが入力した質問文に対する回答を自身が記憶する検索対象文書から検索して応答するスタンドアロン型としてもいいし、ＰＣをインターネットに接続してネット中の検索対象文書から回答を抽出して応答するオンライン型としてもよい。
【００５７】
また、変形例における質問応答装置１００′は、電子辞書などの複数の辞書データを記憶する装置に適用する場合に特に好適である。この場合、ユーザは電子辞書の入力手段（キーボードやタッチパネルなど）により質問文を入力する。すると、質問応答装置１００′は、質問解析処理、検索処理、回答抽出処理を順に行って、自身の記憶する複数の辞書データから抽出した回答を出力手段（ディスプレイなど）に出力する。
また、上述した質問応答装置１００、１００′においては、質問文の入力と回答の出力はいずれもテキストベースとしたが、質問文と回答の入出力は音声ベースでも構わない。また、質問文は日本語を前提として説明したが、他の言語（例えば、英語など）でも構わない。
【００５８】
また、この発明の質問応答装置１００、１００′の各処理（質問解析処理、検索処理、回答抽出処理）は、ＰＣなどのコンピュータによっても実施することができる。
具体的には、上述した実施形態では、質問応答に係る各機能を実現するためのプログラムが、ＲＯＭに予め記憶されているものとして説明した。しかし、各機能を実現させるためのプログラムを、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＤＶＤ（Digital Versatile Disc）及びＭＯ（Magneto-Optical Disc）などのコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータにインストールすることにより、上述の各部の機能を実現することができるコンピュータを構成してもよい。
また、プログラムをインターネットなどの通信ネットワーク上のサーバ装置が有するディスク装置等に格納しておき、例えば、コンピュータがダウンロードすることができるようにしてもよい。
【００５９】
以上、本発明の実施形態について説明したが、この実施形態は、例示に過ぎず、本発明の技術的範囲を限定するものではない。本発明はその他の様々な実施形態をとることが可能であり、さらに、本発明の要旨を逸脱しない範囲で、省略や置換等種々の変更を行うことができる。これら実施形態やその変形は、特許請求の範囲に記載された発明とその均等の範囲に含まれる。以下に、本願出願当初の特許請求の範囲に記載された発明を付記する。
【００６０】
（付記１）
入力された質問文を受け付ける受付手段と、
前記受付手段で受け付けた質問文から、複数の単語からなる句を検索文字列として含む第１の検索文字列群と、該複数の単語それぞれを検索文字列として含む第２の検索文字列群と、を抽出する抽出手段と、
前記抽出手段で抽出した前記第１又は第２の検索文字列群を構成する各検索文字列を含む文を回答文候補として検索対象文書から検索する検索手段と、
前記検索手段で検索した回答文候補から、前記質問文に対する回答を抽出して出力する出力手段と、
を備えたことを特徴とする質問応答装置。
【００６１】
（付記２）
前記第１の検索文字列群は、２以上の連続した名詞からなる名詞句を検索文字列として含み、
前記第２の検索文字列群は、前記２以上の連続した名詞それぞれを検索文字列として含む、
ことを特徴とする付記１に記載の質問応答装置。
【００６２】
（付記３）
前記検索手段は、
前記検索対象文書が見出し語と該見出し語に対する説明文とからなる集合文を含む文書の場合、該集合文単位で前記第１又は第２の検索文字列群を構成する各検索文字列を含むか否か検索を行う単位検索手段と、
前記単位検索手段で検索した集合文において、前記第１又は第２の検索文字列群を構成する各検索文字列の出現位置を特定する特定手段と、
前記特定手段で特定した出現位置に基づいて、前記集合文から見出し語及び／又は説明文を回答文候補として選択する選択手段と、
を備えたことを特徴とする付記１又は２に記載の質問応答装置。
【００６３】
（付記４）
前記特定手段が前記各検索文字列の出現位置を前記集合文における単一の説明文と特定した場合、前記選択手段は、該集合文から見出し語及び該単一の説明を回答文候補として選択する、
ことを特徴とする付記３に記載の質問応答装置。
【００６４】
（付記５）
前記特定手段が前記各検索文字列の出現位置を前記集合文における複数の説明文と特定した場合、前記選択手段は、該集合文から見出し語のみを回答文候補として選択する、
ことを特徴とする付記３に記載の質問応答装置。
【００６５】
（付記６）
前記検索手段は、前記第１の検索文字列群を用いた検索により前記検索対象文書から前記回答文候補が得られなかった場合、前記第２の検索文字列群を用いて該検索対象文書に再検索を行う、
ことを特徴とする付記１乃至５の何れか一つに記載の質問応答装置。
【００６６】
（付記７）
前記第１の検索文字列群は、前記質問文中の疑問詞に対する付加的な名詞を検索文字列として含む、
ことを特徴とする付記１乃至６の何れか一つに記載の質問応答装置。
【００６７】
（付記８）
前記出力手段は、前記質問文中の疑問詞から判別した回答種別に基づいて、前記回答文候補から回答を抽出して出力する、
ことを特徴とする付記１乃至７の何れか一つに記載の質問応答装置。
【００６８】
（付記９）
入力された質問文を受け付ける受付ステップと、
前記受付ステップにおいて受け付けた質問文から、複数の単語からなる句を検索文字列として含む第１の検索文字列群と、該複数の単語それぞれを検索文字列として含む第２の検索文字列群と、を抽出する抽出ステップと、
前記抽出ステップにおいて抽出した前記第１又は第２の検索文字列群を構成する各検索文字列を含む文を回答文候補として検索対象文書から検索する検索ステップと、
前記検索ステップにおいて検索した回答文候補から、前記質問文に対する回答を抽出して出力する出力ステップと、
を備えたことを特徴とする質問応答方法。
【００６９】
（付記１０）
コンピュータを、
入力された質問文を受け付ける受付手段、
前記受付手段で受け付けた質問文から、複数の単語からなる句を検索文字列として含む第１の検索文字列群と、該複数の単語それぞれを検索文字列として含む第２の検索文字列群と、を抽出する抽出手段、
前記抽出手段で抽出した前記第１又は第２の検索文字列群を構成する各検索文字列を含む文を回答文候補として検索対象文書から検索する検索手段、
前記検索手段で検索した回答文候補から、前記質問文に対する回答を抽出して出力する出力手段、
として機能させるためのプログラム。
【符号の説明】
【００７０】
１００，１００′…質問応答装置、１１０…質問解析部、１１１…受付部、１１２…形態素解析部、１１３…抽出部、１２０…検索部、１２１…単位検索部、１２２…出現パターン判別部、１２３…回答文候補選択部、１３０…記憶部、１３１，１３１′…検索対象文書、１３２…出現パターン判別テーブル、１３３…回答文候補選択テーブル、１４０…回答抽出部
【図１】
0006451151.tif 000002
【図２】
0006451151.tif 000003
【図３】
0006451151.tif 000004
【図４】
0006451151.tif 000005
【図５】
0006451151.tif 000006
【図６】
0006451151.tif 000007
【図７】
0006451151.tif 000008
【図８】
0006451151.tif 000009
【図９】
0006451151.tif 000010