(57)【要約】【課題】質問応答データベースに未登録の質問を自動的に検出する質問応答データベース拡張装置および質問応答データベース拡張方法を提供することを課題としている。【解決手段】質問と質問に対応する応答とが関連づけられて登録されている質問応答データベース１４と、音声入力部に入力された音声信号を質問応答データベースに基づく言語モデルを用いて音声認識を行い認識結果である第１の音声認識結果を出力する第１音声認識部１２と、入力された音声信号を大語彙データベースに基づく言語モデルを用いて音声認識を行い認識結果である第２の音声認識結果を出力する第２音声認識部１３と、第１の音声認識結果と第２の音声認識結果に基づき入力された音声の中から前記質問応答データベースに登録されていない未登録発話を検出し、検出した未登録発話を出力する質問検出部（１７，１８）とを備える。【選択図】図１
2011018327.tif 000002
【特許請求の範囲】
【請求項１】
質問と当該質問に対応する応答とが関連づけられて登録されている質問応答データベースと、
入力された音声信号を前記質問応答データベースに基づく言語モデルを用いて音声認識を行い、認識結果である第１の音声認識結果を出力する第１音声認識部と、
前記入力された音声信号を大語彙データベースに基づく言語モデルを用いて音声認識を行い、認識結果である第２の音声認識結果を出力する第２音声認識部と、
前記第１の音声認識結果と前記第２の音声認識結果に基づき、前記入力された音声の中から前記質問応答データベースに登録されていない未登録発話を検出し、検出した前記未登録発話を出力する質問検出部と、
を備えることを特徴とする質問応答データベース拡張装置。
【請求項２】
前記質問検出部は、前記入力された音声のうち前記質問応答データベースに登録されていない未登録発話を文章単位で検出する
ことを特徴とする請求項１に記載の質問応答データベース拡張装置。
【請求項３】
前記第１の音声認識結果に基づく質問と当該質問に対応した応答とが、前記質問応答データベースに登録されているか否かを判別する第１応答選択部と、
前記第２の音声認識結果に基づく質問と当該質問に対応した応答とが、前記質問応答データベースに登録されているか否かを判別する第２応答選択部と、
をさらに備え、
前記質問検出部は、前記第１の音声認識結果に基づく第１の特徴量を算出し、前記第２の音声認識結果に基づく第２の特徴量を算出し、算出した前記第１の特徴量と算出した前記第２の特徴量と前記第１応答選択部による判別結果と前記第２応答選択部による判別結果とを用いて前記質問応答データベースに含まれていない発話を検出する
ことを特徴とする請求項１または請求項２に記載の質問応答データベース拡張装置。
【請求項４】
前記質問検出部は、前記第１の特徴量と前記第２の特徴量と用いて学習を行い、学習結果に基づき、前記質問応答データベースに登録されているか否かの判別を行う判別関数を算出し、前記判別関数で算出した評価値に基づき、前記質問応答データベースに含まれていない発話を検出する
ことを特徴とする請求項３に記載の質問応答データベース拡張装置。
【請求項５】
前記第１の特徴量は、前記音声認識を行ったときに得られたあいづちに基づく発話の有無、発話の長さ、前記音声認識を行ったときに得られた音響スコア、前記音声認識を行ったときに得られた言語スコア、前記第１の音声認識結果の認識精度、前記第１の音声認識結果の信頼度に基づいて得られる値のうち一以上であり、または、前記第２の特徴量は、前記音声認識を行ったときに得られたあいづちの有無、発話の長さ、前記音声認識を行ったときに得られた音響スコア、前記音声認識を行ったときに得られた言語スコアに基づいて得られる値のうち一以上である
ことを特徴とする請求項３または請求項４に記載の質問応答データベース拡張装置。
【請求項６】
質問応答データベース拡張装置の質問応答データベース拡張方法において、
質問と当該質問に対応する応答とが関連づけられて登録されている質問応答データベースと、
第１音声認識部が、入力された音声信号を前記質問応答データベースに基づく言語モデルを用いて音声認識を行い、認識結果である第１の音声認識結果を出力する第１音声認識工程と、
第２音声認識部が、前記入力された音声信号を大語彙データベースに基づく言語モデルを用いて音声認識を行い、認識結果である第２の音声認識結果を出力する第２音声認識工程と、
質問検出部が、前記第１の音声認識結果と前記第２の音声認識結果に基づき、前記入力された音声の中から前記質問応答データベースに登録されていない未登録発話を検出し、検出した前記未登録発話を出力する質問検出工程と、
を備えることを特徴とする質問応答データベース拡張方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、質問応答データベース拡張装置および質問応答データベース拡張方法に関する。
【背景技術】
【０００２】
近年、質問者からの質問に対して、自動で応答するシステムが知られている。例えば、図１２のような質問文例と応答文例のペアからなるデータベースを用いた質問応答システムにおいては、質問に対して正確に応答するためには、データベースの作成者がありとあらゆる質問を想定して、それらをカバーする応答を有するデータベースを作成する必要がある。図１２は、質問応答データベースを有する質問応答システムの例を説明する図である。質問者からの質問がデータベースに対応する応答が存在しない場合、データベースを有するシステムは、質問の繰り返しを要求したり、または、質問と応答のペアの中から適切ではない応答を選択して間違った返答を行ってしまう場合がある。
【０００３】
このため、質問応答データベースを用いたシステムでは、回答の正答率の範囲を広げる必要がある。回答の正答率の範囲を広げるために、質問応答データベースを用いたシステムは複数のデータベースを有し、当該複数の言語データベースを探索して回答候補を選ぶ手法が提案されている（例えば、特許文献１参照）。データベース作成において、回答の正答率を上げるため、質問内容を全て録音しておき、データベース作成者が録音された質問を全て聞き、質問応答データベースの登録されていない質問を探し出す。そして、データベース作成者が、探し出した未登録の質問を質問応答データベースに登録していた。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−１１８７４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、データベース作成者が、録音された全ての質問を聞いて、この質問を書き起こし、質問データデースに未登録の質問（発話）を検出して登録していたので、未登録の質問を探し出すために多くの工数を必要とするという問題点があった。
【０００６】
本発明は、上記の問題点に鑑みてなされたものであって、質問応答データベースに未登録の質問を自動的に検出する質問応答データベース拡張装置および質問応答データベース拡張方法を提供することを課題としている。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の質問応答データベース拡張装置が、質問と当該質問に対応する応答とが関連づけられて登録されている質問応答データベースと、入力された音声信号を前記質問応答データベースに基づく言語モデルを用いて音声認識を行い、認識結果である第１の音声認識結果を出力する第１音声認識部と、前記入力された音声信号を大語彙データベースに基づく言語モデルを用いて音声認識を行い、認識結果である第２の音声認識結果を出力する第２音声認識部と、前記第１の音声認識結果と前記第２の音声認識結果に基づき、前記入力された音声の中から前記質問応答データベースに登録されていない未登録発話を検出し、検出した前記未登録発話を出力する質問検出部とを備えることを特徴としている。
【０００８】
また、本発明の質問応答データベース拡張装置において、前記質問検出部は、前記入力された音声のうち前記質問応答データベースに登録されていない未登録発話を文章単位で検出するようにしてもよい。
【０００９】
また、本発明の質問応答データベース拡張装置において、前記第１の音声認識結果に基づく質問と当該質問に対応した応答とが、前記質問応答データベースに登録されているか否かを判別する第１応答選択部と、前記第２の音声認識結果に基づく質問と当該質問に対応した応答とが、前記質問応答データベースに登録されているか否かを判別する第２応答選択部とをさらに備え、前記質問検出部は、前記第１の音声認識結果に基づく第１の特徴量を算出し、前記第２の音声認識結果に基づく第２の特徴量を算出し、算出した前記第１の特徴量と算出した前記第２の特徴量と前記第１応答選択部による判別結果と前記第２応答選択部による判別結果とを用いて前記質問応答データベースに含まれていない発話を検出するようにしてもよい。
【００１０】
また、本発明の質問応答データベース拡張装置において、前記質問検出部は、前記第１の特徴量と前記第２の特徴量と用いて学習を行い、学習結果に基づき、前記質問応答データベースに登録されているか否かの判別を行う判別関数を算出し、前記判別関数で算出した評価値に基づき、前記質問応答データベースに含まれていない発話を検出するようにしてもよい。
【００１１】
また、本発明の質問応答データベース拡張装置において、前記第１の特徴量は、前記音声認識を行ったときに得られたあいづちに基づく発話の有無、発話の長さ、前記音声認識を行ったときに得られた音響スコア、前記音声認識を行ったときに得られた言語スコア、前記第１の音声認識結果の認識精度、前記第１の音声認識結果の信頼度に基づいて得られる値のうち一以上であり、または、前記第２の特徴量は、前記音声認識を行ったときに得られたあいづちの有無、発話の長さ、前記音声認識を行ったときに得られた音響スコア、前記音声認識を行ったときに得られた言語スコアに基づいて得られる値のうち一以上であるようにしてもよい。
【００１２】
上記目的を達成するため、本発明の質問応答データベース拡張装置の質問応答データベース拡張方法は、質問と当該質問に対応する応答とが関連づけられて登録されている質問応答データベースと、第１音声認識部が、入力された音声信号を前記質問応答データベースに基づく言語モデルを用いて音声認識を行い、認識結果である第１の音声認識結果を出力する第１音声認識工程と、第２音声認識部が、前記入力された音声信号を大語彙データベースに基づく言語モデルを用いて音声認識を行い、認識結果である第２の音声認識結果を出力する第２音声認識工程と、質問検出部が、前記第１の音声認識結果と前記第２の音声認識結果に基づき、前記入力された音声の中から前記質問応答データベースに登録されていない未登録発話を検出し、検出した前記未登録発話を出力する質問検出工程とを備えることを特徴としている。
【発明の効果】
【００１３】
請求項１に記載した発明によれば、音声信号を質問応答データベースに基づく言語モデルを用いて音声認識を行った第１の音声認識結果と、音声信号を大語彙データベースに基づく言語モデルを用いて音声認識を行った第２の音声認識結果とを比較して、入力された音声の中から質問応答データベースに登録されていない未登録発話を検出して出力するようにしたので、質問応答データベースに未登録の発話を自動的に検出することができる。
請求項２に記載した発明によれば、質問応答データベースに未登録の発話を文章単位で自動的に検出することができる。
請求項３に記載した発明によれば、第１の音声認識結果に基づく質問と質問に対応した応答とが質問応答データベースに登録されているか否かの判別結果と、第２の音声認識結果に基づく質問と質問に対応した応答とが質問応答データベースに登録されているか否かの判別結果と、第１の音声認識結果に基づく第１の特徴量と、第２の音声認識結果に基づく第２の特徴量とを用いて質問応答データベースに含まれていない発話を検出するようにしたので、質問応答データベースに未登録の発話を精度良く自動的に検出することができる。
請求項４に記載した発明によれば、第１の特徴量と第２の特徴量と用いて行った学習結果に基づき、質問応答データベースに登録されているか否かの判別を行う判別関数を算出し、判別関数で算出した評価値に基づき質問応答データベースに含まれていない発話を検出するようにしたので、質問応答データベースに未登録の発話を精度良く自動的に検出することができる。
請求項５に記載した発明によれば、質問応答データベースに未登録の発話にみられる複数の特徴量を用いて質問応答データベースに含まれていない発話を検出するようにしたので、質問応答データベースに未登録の発話を精度良く自動的に検出することができる。
【図面の簡単な説明】
【００１４】
【図１】第１実施形態に係る質問応答データベース拡張装置のブロック図である。
【図２】同実施形態における質問応答ＤＢ１４に登録されている質問文、応答文およびキーフレーズの一例を示す図である。
【図３】質問者（ユーザ）の発話（質問）に対する初期データベースに基づく応答選択と拡張データベースに基づく応答選択の例を示す図である。
【図４】同実施形態に係る特徴量の例を説明する図である。
【図５】同実施形態に係る図４の特徴量の概略を説明する図である。
【図６】２つの２次元正規母集団に対する線形判別関数の概略を説明する図である。
【図７】第２実施形態に係る質問応答データベース拡張装置のブロック図である。
【図８】質問応答データベース拡張装置を適用した質問応答システムと適用していない質問応答システムによる評価値を示す図である。
【図９】特徴量を１つ削除した場合の評価値の一例を示す図である。
【図１０】学習データ量を変化させた場合の判別精度の一例を示す図である。
【図１１】図１０の結果をグラフに示した図である。
【図１２】従来技術に係る質問応答データベースを有する質問応答システムの例を説明する図である。
【発明を実施するための形態】
【００１５】
以下、図面を用いて本発明の実施形態について詳細に説明する。なお、本発明は斯かる実施形態に限定されず、その技術思想の範囲内で種々の変更が可能である。
【００１６】
［第１実施形態］
図１は、第１実施形態における質問応答データベース拡張装置のブロック図である。図１のように、質問応答データベース拡張装置１は、マイク１１と、第１音声認識部１２と、第２音声認識部１３と、質問応答ＤＢ１４と、第１応答選択部１５と、第２応答選択部１６と、特徴量算出部１７と、ＤＢ外の質問検出部１８と、提示部１９とを備えている。
【００１７】
マイク１１は、ユーザの発話（以下、ユーザ発話という）を集音し、集音したユーザ発話の音声信号を第１音声認識部１２と第２音声認識部１３とに出力する。
【００１８】
第１音声認識部１２は、マイク１１から入力された音声信号を、初期質問ＤＢ（データベース）から作成した言語モデルを用いて解析することでユーザ発話の認識を行う。なお、言語モデルは、例えば、どのような単語が発話されやすいのか確率的なモデル等である。ここで、第１音声認識部１２は、隠れマルコフモデルによる音響モデルと、トライグラム（３単語の連鎖確率）による初期質問ＤＢから生成した言語モデルｄｂを利用した公知の音声認識を用いる。第１音声認識部１２は、入力された音声信号から単語列を抽出し、音響スコアと言語スコアを算出する。第１音声認識部１２は、各単語の信頼度を算出する。第１音声認識部１２は、後述するように、入力された音声信号に基づき認識結果列を生成して、生成した認識結果列を第１応答選択部１５と特徴量算出部１７に出力する。なお、音響スコアとは、観測された音声波形と単語との音響的な類似度であり、言語スコアとは、単語と単語のつながりやすさを表すものである。また初期質問ＤＢとは、予めデータベース作成者が想定される質問と応答とのペア（以下、質問応答ペアという）を関連づけて質問応答データベースに登録して作成したデータベースである。
【００１９】
第２音声認識部１３は、マイク１１から入力された音声信号を、大語彙ＤＢから作成した言語モデルを用いて解析することでユーザ発話の認識を行う。ここで、第２音声認識部１３は、隠れマルコフモデルによる音響モデルと、トライグラム（３単語の連鎖確率）による大語彙ＤＢから生成した言語モデルｌｖを利用した公知の音声認識を用いる。第２音声認識部１３は、入力された音声信号から単語列を抽出し、音響スコアと言語スコアを算出する。第２音声認識部１３は、各単語の信頼度を算出する。第２音声認識部１３は、後述するように、入力された音声信号に基づき認識結果列を生成して、生成した認識結果列を特徴量算出部１７と第２応答選択部１６とに出力する。
以上のように、第１音声認識部１２は、確率的なデータベースから生成した言語モデルを用いてユーザ発話の認識を行い、一方、第２音声認識部１３は、多数の語彙から生成したモデルを用いてユーザ発話の認識を行っている。
【００２０】
質問応答ＤＢ１４は、データベース作成者が予め作成し、質問文と質問文に対応した応答文、キーフレーズとが関連づけられて登録されている。なお、キーフレーズとは、単語、または１つの意味をなす複数の単語である。
【００２１】
第１応答選択部１５は、第１音声認識部１２から認識結果が入力される。また、第１応答選択部１５は、入力された認識結果の組み合わせからキーフレーズを抽出する。さらに、第１応答選択部１５は、抽出したキーフレーズに基づき質問応答ＤＢ１４にユーザ発話に対応した質問応答ペアが登録されているか否かを判別する。第１応答選択部１５は、質問応答ＤＢ１４に質問応答ペアが登録されていると判別された場合、判別結果として「登録有り」情報を特徴量算出部１７に出力し、質問応答ＤＢ１４に質問応答ペアが登録されていない判別された場合、判別結果として「登録無し」情報を特徴量算出部１７に出力する。
【００２２】
第２応答選択部１６は、第２音声認識部１３から認識結果が入力される。また、第２応答選択部１６は、入力された認識結果の組み合わせからキーフレーズを抽出する。さらに、第２応答選択部１６は、抽出したキーフレーズに基づき質問応答ＤＢ１４にユーザ発話に対応した質問応答ペアが登録されているか否かを判別する。第２応答選択部１６は、質問応答ＤＢ１４に質問応答ペアが登録されていると判別された場合、判別結果として「登録有り」情報を特徴量算出部１７に出力し、質問応答ＤＢ１４に質問応答ペアが登録されていない判別された場合、判別結果として「登録無し」情報を特徴量算出部１７に出力する。
【００２３】
特徴量算出部１７には、第１音声認識部１２が生成した認識結果列と第２音声認識部１３が生成した認識結果列と第１応答選択部１５の判定結果と第２応答選択部１６の判定結果とが入力される。また、特徴量算出部１７は、後述するように、入力された認識結果列と第１応答選択部１５の判定結果と第２応答選択部１６の判定結果に基づき、後述する特徴量を算出し、算出した特徴量をＤＢ外の質問検出部１８に出力する。
【００２４】
ＤＢ外の質問検出部１８（質問検出部）には、特徴量算出部１７が算出した特徴量が入力される。さらに、ＤＢ外の質問検出部１８は、訓練データおよび入力された特徴量を用いて、ｗｅｋａ（I. H. Witten and E.Frank. Data Mining: Practical machine learning tools and techniques, 2nd Edition. Morgan Kaufmann, San Francisco, 2005.）を用いて学習する。また、分類のアルゴリズムには、ＮａｖｉｅＢａｙｅｓ（吉見、南角、李、徳田  音声対話システムにおける条件付確率場に基づく自動応答文選択  日本音響学会２００８年春季研究発表会論文集、２００８）を用いる。さらに、ＤＢ外の質問検出部１８は、学習結果に基づき、線形評価関数を算出する。さらに、ＤＢ外の質問検出部１８は、算出した線形評価関数の判断得点に基づき、ユーザ発話が質問応答ＤＢ１４内にあるグループと質問応答ＤＢ１４外にあるグループとに分類し、分類結果に基づきユーザ発話が質問応答ＤＢ１４内にあるか質問応答ＤＢ外にあるか判別する。さらに、ＤＢ外の質問検出部１８は、質問応答ＤＢ１４外と判別した場合、判別結果と質問応答ＤＢ１４外と判別された質問文を提示部１９に出力し、質問応答ＤＢ内と判別した場合、判別結果を提示部１９に出力する。すなわち、ＤＢ外の質問検出部１８は、質問応答ＤＢ１４外の質問文を検出する。
【００２５】
提示部１９は、ＤＢ外の質問検出部１８から入力された質問応答ＤＢ１４外の質問を表示する。
【００２６】
図２は、本実施形態における質問応答ＤＢ１４に登録されている質問文、応答文およびキーフレーズの一例を示す図である。図２のように、質問応答ＤＢ１４は、質問と応答を文章で記述し、認識を行うときのマッチングに用いるキーフレーズを、波括弧で囲んだ情報がキーフレーズ情報として登録されている。質問文は、「仙川にある公園について教えてください」と「仙川に広場はありますか」であり、応答文は、「仙川には武者小路実篤の公園があります。」。また、質問文「仙川にある公園について教えてください」において「仙川」と「公園」とがキーフレーズに指定されていて、質問文「仙川に広場はありますか」において、「仙川」と「広場」とがキーフレーズに指定されている。
さらに、質問文「仙川にある公園について教えてください」と「仙川に広場はありますか」に対して、応答文「仙川には武者小路実篤の公園があります」が関連づけられ、ペアで登録されている。このように、質問応答ペアは、質問文１つに対して応答文１つではなく、１つの応答分と複数の応答文とを関連づけて質問応答ペアとして登録してもよい。
【００２７】
次に、図２のような質問応答データベースを有する質問応答システムにおける動作の概略を説明する。質問者からの質問から、予め質問応答ＤＢ１４に登録されているキーフレーズを抽出し、抽出されたキーフレーズとマッチングする質問文を探索する。このため、例えば、「仙川にどんな公園があるか教えて」や「仙川に大きい広場はありますか」などキーフレーズを含む質問が、図２の質問応答ペアにマッチする。質問者からの質問とマッチする応答のあるペアが存在する場合、質問に対する応答を提示部１９または非図示のスピーカに出力する。一方、質問にマッチする応答が存在しない場合、データベース中に登録されている予め用意された応答である「もう一度おっしゃってください」、または「その質問には答えられないかもしれません」等の応答を提示部１９または非図示のスピーカに出力する。
また、図２のように、応答文と、応答文に対応する画像データ（武者小路実篤公園の写真）とを関連づけて登録しておいてもよく、この場合、提示部１９に応答文に合わせて登録されている画像データを表示するようにしてもよい。
【００２８】
本実施形態では、データベースに存在しない質問を効率よく抽出し、抽出した質問をデータベース作成者に提示する。そして、データベース作成者は、提示されたデータベース外の質問をデータベースに登録して更新することで、質問応答データベース拡張を行う。
【００２９】
［データベースに追加すべき発話］
図３は、質問者（ユーザ）の発話（質問）に対する初期データベースに基づく応答選択と拡張データベースに基づく応答選択の例を示す図である。使用したコンテンツは、タウン情報であり、２３２個の質問応答ペアを予め作成し、データベース作成者が質問応答ＤＢ１４に登録を行った。また、質問文例の数は８９０、言語モデルの語彙サイズは４６０である。データ収集は、質問者は、提示部１９上に表示されているキャラクターエージェントに向かって質問し、質問者が知りたい情報を聞き出すという形態で行った。また、評価は２５人の話者（ユーザ、質問者）にしてもらった質問のうち最初の２５発話分を用い、すなわち２５発話×２５人分＝６２５発話のデータを用いた。
【００３０】
次に、図３における用語の説明と定義を行う。「書き起こし」とは、ユーザ発話を書き起こした文章である。初期ＤＢ（データベース）とは、予め想定される質問と応答とがデータベース作成者により登録されたデータベースである。拡張ＤＢとは、初期ＤＢに質問応答のペアが存在しない場合、データベースにペアの存在しなかった質問と、その質問に応じた応答のペアを追加登録することで拡張されたデータベースである。すなわち、データベース作成者は、初期ＤＢになかった質問に対する応答を生成し、生成した応答をデータベースに存在しなかった質問とペアにして順次、登録することで拡張していく。そして、この確証されたデータベースに基づき応答選択を繰り替えし、拡張されたデータベースに質問応答が存在しない場合は、さらに更新を繰り返すことで拡張していく。
「Ｔｒａｎｓ＋ＩｎｉＤＢ」は、ユーザ発話から書き起こした発話（Ｔｒａｎｓ）を用いて、初期ＤＢ（ＩｎｉＤＢ）に基づき応答選択を行った結果である。「Ｔｒａｎｓ＋ＥｘｐＤＢ」は、ユーザ発話から書き起こした発話（Ｔｒａｎｓ）を用いて、拡張ＤＢ（ＥｘｐＤＢ）に基づき応答選択を行った結果である。「ＡＳＲ＋ＩｎｉＤＢ」は、ユーザ発話から音声認識により得られた発話（ＡＳＲ）を用いて、初期ＤＢ（ＩｎｉＤＢ）に基づき応答選択を行った結果である。
【００３１】
図３において、符号の欄１１１は、「ユーザ発話から書き起こした発話を用いて初期ＤＢに基づき応答選択を行った結果」と「ユーザ発話から書き起こした発話を用いて拡張ＤＢに基づき応答選択を行った結果」とが一致し、且つ「ユーザ発話から音声認識により得られた発話を用いて初期ＤＢに基づき応答選択を行った結果」が全て一致した場合であり、このような発話が２４６発話あったことを示している。
符号の欄１１４は、「ユーザ発話から書き起こした発話を用いて初期ＤＢに基づき応答選択を行った結果」と「ユーザ発話から書き起こした発話を用いて拡張ＤＢに基づき応答選択を行った結果」とが一致し、且つ音声認識を用いての発話が誤認識した場合であり、このような発話が１５発話あったことを示している。
符号の欄１１５は、「ユーザ発話から書き起こした発話を用いて初期ＤＢに基づき応答選択を行った結果」と「ユーザ発話から書き起こした発話を用いて拡張ＤＢに基づき応答選択を行った結果」とが一致し、且つ「ユーザ発話から音声認識により得られた発話を用いて初期ＤＢに基づき応答選択を行った結果」、質問応答ペアが初期ＤＢに存在しなかった場合であり、このような発話が３１発話あったことを示している。
「ユーザ発話から書き起こした発話を用いて初期ＤＢに基づき応答選択を行った結果」と「ユーザ発話から書き起こした発話を用いて拡張ＤＢに基づき応答選択を行った結果」とが一致する場合とは、質問応答システムから応答があり、その応答がユーザ発話の意図と合致するもの、すなわち適切な応答であった発話が２９２発話（欄１１１〜１１５の合計発話数）あったことを示している。
【００３２】
符号の欄１２２は、「ユーザ発話から書き起こした発話を用いて初期ＤＢに基づき応答選択を行った結果」と「ユーザ発話から書き起こした発話を用いて拡張ＤＢに基づき応答選択を行った結果」とが一致せず、且つ「ユーザ発話から音声認識により得られた発話を用いて初期ＤＢに基づき応答選択を行った結果」と「ユーザ発話から書き起こした発話を用いて初期ＤＢに基づき応答選択を行った結果」は一致した場合であり、このような発話が４４発話あったことを示している。
符号の欄１２３は、「ユーザ発話から書き起こした発話を用いて初期ＤＢに基づき応答選択を行った結果」と「ユーザ発話から書き起こした発話を用いて拡張ＤＢに基づき応答選択を行った結果」とが一致せず、且つ「ユーザ発話から音声認識により得られた発話を用いて初期ＤＢに基づき応答選択を行った結果」と「ユーザ発話から書き起こした発話を用いて拡張ＤＢに基づき応答選択を行った結果」は一致した場合であり、このような発話が２発話あったことを示している。
符号の欄１２４は、「ユーザ発話から書き起こした発話を用いて初期ＤＢに基づき応答選択を行った結果」と「ユーザ発話から書き起こした発話を用いて拡張ＤＢに基づき応答選択を行った結果」とが一致せず、且つ「ユーザ発話から音声認識により得られた発話を用いて初期ＤＢに基づき応答選択を行った結果」、誤認識した場合であり、このような発話が２６発話あったことを示している。
符号の欄１２５は、「ユーザ発話から書き起こした発話を用いて初期ＤＢに基づき応答選択を行った結果」と「ユーザ発話から書き起こした発話を用いて拡張ＤＢに基づき応答選択を行った結果」とが一致せず、且つ「ユーザ発話から音声認識により得られた発話を用いて初期ＤＢに基づき応答選択を行った結果」、質問応答ペアが初期ＤＢに存在しなかった場合であり、このような発話が４発話あったことを示している。
そして、「ユーザ発話から書き起こした発話を用いて初期ＤＢに基づき応答選択を行った結果」と「ユーザ発話から書き起こした発話を用いて拡張ＤＢに基づき応答選択を行った結果」とが一致しない場合とは、質問応答システムから応答があったが、ユーザ発話の意図と異なるもの、すなわち適切な応答でなかった発話が７６発話（欄１２２〜１２５の合計発話数）あったことを示している。
【００３３】
符号の欄１３３は、「ユーザ発話から書き起こした発話を用いて初期ＤＢに基づき応答選択を行った結果」、質問応答ペアが初期ＤＢに存在せず、且つ「ユーザ発話から音声認識により得られた発話を用いて初期ＤＢに基づき応答選択を行った結果」と「ユーザ発話から書き起こした発話を用いて拡張ＤＢに基づき応答選択を行った結果」は一致した場合であり、このような発話が６発話あったことを示している。
符号の欄１３４は、「ユーザ発話から書き起こした発話を用いて初期ＤＢに基づき応答選択を行った結果」、質問応答ペアが初期ＤＢに存在せず、且つ「ユーザ発話から音声認識により得られた発話を用いて初期ＤＢに基づき応答選択を行った結果」、誤認識した場合であり、このような発話が３８発話あったことを示している。
符号の欄１３５は、「ユーザ発話から書き起こした発話を用いて初期ＤＢに基づき応答選択を行った結果」、質問応答ペアが初期ＤＢに存在せず、且つ「ユーザ発話から音声認識により得られた発話を用いて初期ＤＢに基づき応答選択を行った結果」、質問応答ペアが初期ＤＢに存在しなかった場合であり、このような発話が９１発話あったことを示している。
「ユーザ発話から書き起こした発話を用いて初期ＤＢに基づき応答選択を行った結果」質問応答ペアが初期ＤＢに存在しない場合の合計発話数は、１３５発話（欄１３欄１２３〜１３５の合計発話数）あったことを示している。
さらに、拡張ＤＢを用いても応答が得られなかった場合、ノイズ、区間誤りを含む発話数が１２２発話（欄１４３〜１４５の合計発話数）あったことを示している。
【００３４】
また、「Ｔｒａｎｓ＋ＩｎｉＤＢ」と「Ｔｒａｎｓ＋ＥｘｐＤＢ」とが一致するものが（Ｔ１）である。質問応答システムによる応答はあったがユーザ発話の意図と異なるものが（Ｔ２）である。ユーザ発話をデータベース作成者が書き起こしたものを元にデータベースから応答選択を行ったときに質問応答ペアが見つからなかったものが（Ｔ３）である。拡張データベースを用いても応答選択で質問応答システムの応答が得られなかったものやノイズや区間検出誤りを含む発話であったものが（Ｔ４）である。
【００３５】
次に、質問応答ＤＢ１４の拡張のために、図３の中で、どの発話をデータベースに入れるべきかを検討する。
「Ｔｒａｎｓ＋ＩｎｉＤＢ」の認識と「Ｔｒａｎｓ＋ＥｘｐＤＢ」の認識の結果が異なるが、理解結果が正解と一致する場合、データベース内にその質問に対しての質問応答ペアが存在するため応答を行う。なお、理解結果とは、検討に用いた質問応答ＤＢ１４を有する質問応答システムが、質問に対する応答を選択した結果である。キーフレーズが一致するかだけではキーフレーズが適切に登録されていない場合、ユーザ意図であるユーザが聞きたかった応答が得られないこともあり得る。すなわち、「Ｔｒａｎｓ＋ＩｎｉＤＢ」と「Ｔｒａｎｓ＋ＥｘｐＤＢ」が一致していないことよりユーザが意図した応答とは異なるため、キーフレーズの指定方法に修正の必要があるか、または、ユーザがその内容についてより詳しい内容を要求している場合が考えられる。
【００３６】
また、「Ｔｒａｎｓ＋ＩｎｉＤＢ」の認識の結果、発話がデータベース外と認識されているのに、応答選択結果でデータベース内のものに一致していると判定された場合、ユーザ発話がデータベース外であってもデータベース内に類似した発話があることを示している。すなわち、データベース外の発話であるのに、音声認識の結果、データベース内にある単語を誤って認識してしまった場合を表している。
すなわち、ユーザ発話の意図とシステムの理解が異なる場合、またユーザの発話がもともとデータベースに存在しない場合、データベースのコンテンツに追加すべきと考えられる。
以上のように、データベースに追加すべき発話は、欄１２３のデータベース外の発話がデータベース内にあると誤って分類された場合と、欄１３３〜１３５の実際にデータベース外の発話である。
【００３７】
［音声認識の説明］
次に、第１音声認識部１２と第２音声認識部１３が行う音声認識について説明する。第１音声認識部１２は、隠れマルコフモデルによる音響モデルと、トライグラム（３単語の連鎖確率）による初期質問ＤＢから生成した言語モデルｄｂを利用した公知の音声認識を用いる。そして、第１音声認識部１２は、入力された音声信号から単語列を抽出し、音響スコアと言語スコアを算出する。さらに、第１音声認識部１２は、各単語の信頼度を算出する。さらに、第１音声認識部１２は、入力された音声信号と所定の整数ｎ（結果の最大数）に対して、次式（１）の認識結果列を生成して、生成した認識結果列を、第１応答選択部１５と特徴量算出部１７に出力する。また、入力された音声信号における音声の長さをｄとする。
【００３８】
【数１】
2011018327.tif 000003
【００３９】
式（１）において、ｌｍは言語モデルであり、Ｒｌｍ，ｉは、単語列ｓｌｍ，ｉと音響スコアａｍｓｃｏｒｅｌｍ，ｉと言語スコアｌｍｓｃｏｒｅｌｍ，ｉから構成されている。また、単語列ｓｌｍ，ｉは、次式（２）のように単語ｗｌｍ，ｉとその単語の信頼度ｃｍｉｍ，ｉとの組の列である。
【００４０】
【数２】
2011018327.tif 000004
また、入力された音声信号における音声の長さをｄとする。以下、ユーザ発話の質問が、『仙川の本屋について教えてください』であったとして説明する。
この場合、第１音声認識部１２は、次式（３）〜（７）の認識結果Ｒｄｂ，ｉを認識結果として第１応答選択部１５と特徴量算出部１７に出力する。
【００４１】
【数３】
2011018327.tif 000005
【００４２】
【数４】
2011018327.tif 000006
【００４３】
【数５】
2011018327.tif 000007
【００４４】
【数６】
2011018327.tif 000008
【００４５】
【数７】
2011018327.tif 000009
【００４６】
式（３）〜（７）において、（仙川、０．５７）は単語とその単語の信頼度の区組み合わせを表している。単語の信頼性は、音声認識エンジンであるＪｕｌｉｕｓ（http://julius.sourceforge.jp/）を用いて算出する。単語の信頼性とは、音声認識結果である単語を、どの程度、信頼して良いかを示す尺度である。単語の信頼性は、値の範囲は０〜１．０であり、数値が１．０に近いほど、その単語に似たスコアを有する他の競合候補がほとんどなかったことを表し、数値が０に近いほど、その単語に似たスコアを有する他の単語候補が多いことを表している。なお、式（３）〜（７）は、認識結果の一例であり、さらに多くの組み合わせについて、各々の場合について、単語とその単語の信頼度の区組み合わせで表した単語列を認識結果として第１応答選択部１５と特徴量算出部１７に出力する。なお、単語の信頼度をＪｕｌｉｕｓにより算出する例を説明したが、音声信号から、その音声に含まれる単語とその信頼度を算出する他の公知の手法を用いて算出してもよい。
【００４７】
同様に、第２音声認識部１３は、隠れマルコフモデルによる音響モデルと、トライグラム（３単語の連鎖確率）によるＪｕｌｉｕｓ付属の大語彙ＤＢから生成した言語モデルｌｖを利用した公知の音声認識を用いる。そして、第２音声認識部１３は、入力された音声信号と所定の整数ｎ（結果の最大数）に対して、式（１）の認識結果列を生成して、生成した認識結果列を、第２応答選択部１６と特徴量算出部１７に出力する。なお、大語彙ＤＢから生成した言語モデルを用いる理由は、大語彙ＤＢから生成した言語モデルによる音声認識の認識結果は、誤った認識も発生するが、音韻を正しく認識している場合が多い。このため、大語彙ＤＢから生成した言語モデルを用いた音声認識の結果を用いることにより、質問応答ＤＢ１４から生成した言語モデルを用いて音声認識した結果の確からしさを推定することができるからである。
【００４８】
第１応答選択部１５には、第１音声認識部１２から認識結果Ｒｄｂ，ｉが入力される。また、第１応答選択部１５は、入力された認識結果の組み合わせからキーフレーズを抽出し、抽出したキーフレーズを用いて、質問応答ＤＢ１４に各単語列Ｓｓｂが登録されているか否かを判別する。この結果、第１応答選択部１５は、式（３）〜（７）の単語列にも基づく質問とペアの応答が質問応答ＤＢ１４に登録されていると判別し、応答結果として応答が存在していたことを特徴量算出部１７に出力する。以下の例では、説明を簡略化するため、キーフレーズは、１単語であるとして説明する。また、各キーフレーズを、Ｋ１、Ｋ２、・・・、Ｋｐとする。
【００４９】
第２応答選択部１６には、第２音声認識部１３から認識結果Ｒｌｖ，ｉが入力される。また、第２応答選択部１６は、入力された認識結果の組み合わせからキーフレーズを抽出し、抽出したキーフレーズを用いて、質問応答ＤＢ１４に各単語列Ｓｓｂが登録されているか否かを判別する。質問応答ＤＢに単語列に対応する質問文が登録されていると判別された場合、第２応答選択部１６は、単語列に対応する質問文とペアの応答が質問応答ＤＢ１４に登録されていると判別する。質問に対する応答が登録されていた場合、第２応答選択部１６には、応答結果として応答が存在していたことを特徴量算出部１７に出力する。
【００５０】
［特徴量の算出の説明］
次に、特徴量算出部１７が行う特徴量の算出方法について説明する。特徴量算出部１７には、第１音声認識部１２が生成した式（１）の認識結果列と第２音声認識部１３が生成した認識結果列と第１応答選択部１５の判定結果と第２応答選択部１６の判定結果とが入力される。
図４は、本実施形態における特徴量の例を説明する図である。図４において、Ｆｄｂ１〜Ｆｄｂ１８は、第１音声認識部１２による初期質問応答ＤＢに基づく認識結果から抽出される特徴量であり、Ｆｌｖ１〜Ｆｌｖ９は、第２音声認識部１３による大語彙ＤＢに基づく認識結果から抽出される特徴量であり、Ｆｄｂｌｖ１とＦｄｂｌｖ２は、第１音声認識部１２による認識結果と第２音声認識部１３による認識結果との差である。なお、図４において、システムとは、本実施形態における質問応答データベース拡張装置を適用した質問応答システムである。
【００５１】
Ｆｄｂ１は、システムが質問応答DB１４外と判断したか否か（選択された応答の有無）である。Ｆｄｂ２は、認識結果の第一候補の音響スコア÷発話長である。なお、発話長とは、１文の長さであり、１文の文構成素数（文節数または形態素数）である。Ｆｄｂ３は、認識結果の第一候補の言語スコアである。Ｆｄｂ４は、(応答選択に利用したキーフレーズの認識結果の第n候補に出現する個数÷第ｎ候補の単語数) ÷認識結果の候補数の総和である。Ｆｄｂ５は、(応答選択に用いたキーフレーズｉの全認識結果での出現回数)の最小値である。Ｆｄｂ６は、(応答選択に用いたキーフレーズｉの全認識結果での出現回数)の最大値である。Ｆｄｂ７は、（認識結果の第一候補に含まれる質問応答DB１４内のキーフレーズ数）−（応答選択に用いたキーフレーズ数）である。Ｆｄｂ８は、(応答選択に利用したキーフレーズｉの認識結果の第n候補に出現する個数÷第n候補の単語数)の最小値である。Ｆｄｂ９は、(応答選択に利用したキーフレーズｉの認識結果の第n候補に出現する個数÷第n候補の単語数)の最大値である。Ｆｄｂ１０は、認識結果があいづちリストに含まれているか否かである。Ｆｄｂ１１は、認識結果の第一候補の単語数である。Ｆｄｂ１２は、認識結果全ての単語数である。Ｆｄｂ１３は、（応答選択に用いたキーフレーズの第一候補のＪｕｌｉｕｓ  ｃｏｎｆｉｄｅｎｃｅ（認識信頼度））の平均値である。Ｆｄｂ１４は、（応答選択に用いたキーフレーズｉの第一候補のＪｕｌｉｕｓ  ｃｏｎｆｉｄｅｎｃｅ）の最大値である。Ｆｄｂ１５は、（応答選択に用いたキーフレーズｉの第一候補のＪｕｌｉｕｓ  ｃｏｎｆｉｄｅｎｃｅ）の最小値である。Ｆｄｂ１６は、認識結果の候補数である。Ｆｄｂ１７は、認識結果の第一候補に含まれる名詞の数÷認識結果の第一候補の単語数である。Ｆｄｂ１８は、認識結果の全候補に含まれる名詞の数÷認識結果の全候補の単語数である。
【００５２】
Ｆｌｖ１は、システムが質問応答DB外と判断したか否か（選択された応答の有無）である。Ｆｌｖ２は、認識結果の第一候補の音響スコア÷発話長である。Ｆｌｖ３は、認識結果の第一候補の言語スコアである。Ｆｌｖ４は、認識結果があいづちリストに含まれているか否かである。Ｆｌｖ５は、認識結果の第一候補の語彙数である。Ｆｌｖ６は、認識結果全ての語彙数である。Ｆｌｖ７は、認識結果の候補数である。Ｆｌｖ８は、認識結果の第一候補に出現する名詞の数÷認識結果の第一候補の単語数である。Ｆｌｖ９は、認識結果の全候補に出現する名詞の数÷認識結果の全候補の単語数である。
【００５３】
Ｆｄｂｌｖ１は、第１音声認識部１２が算出した音響スコアと第２音声認識部１３が算出した音響スコアとの差である。Ｆｄｂｌｖ２は、第１音声認識部１２が算出した言語スコアと第２音声認識部１４が算出した言語スコアとの差である。
【００５４】
また、「あいづちリスト」とは、あいづちや、ユーザが質問応答システムに対する反応として期待しない発話などのリストであり、データベース作成者が手動で作成するか、または、質問応答システムが自動的に生成する。Ｆｄｂ１０は、入力された発話があいづちリストに一致する場合、質問応答ＤＢ１４外であることを示唆している。また、発話の中の名詞の数や出現頻度を比較することで、トピック量などを判別でき、例えば、発話に含まれる単語に対して、名詞の数が多い場合、複数のトピックを含んだ発話であることが示唆される。
【００５５】
次に、特徴量算出部１７による特徴量の算出方法の例を説明する。
Ｆｄｂ１は、第１応答選択部１５の判定結果そのものであり、システムが質問応答ＤＢ１４外と判断したかどうかの判別結果（選択された応答の有無）である。すなわち、第１応答選択部１５が、質問文に対応する応答が質問応答ＤＢ１４に登録されているか否かを判別した結果である。質問文に対応する応答が質問応答ＤＢ１４に登録されていた場合、特徴量算出部１７が第１応答選択部１５は質問応答ＤＢ１４内に応答が存在する（有）と設定する。質問文に対応する応答が質問応答ＤＢ１４に登録されていない場合、特徴量算出部１７が第１応答選択部１５は質問応答ＤＢ１４内に応答が存在しない（無）、すなわち、応答が質問応答ＤＢ１４外と設定する。応答が、質問応答ＤＢ１４に存在していなかった場合、第１音声認識部１２による誤認識、またはユーザ発話が質問応答ＤＢ１４外である可能性が高い。
【００５６】
Ｆｄｂ２は、特徴量算出部１７が（認識結果の第一候補の音響スコア）÷（発話長）により算出する。すなわち、特徴量算出部１７が、認識結果列に含まれている音響スコアａｍｓｃｏｒｅと音声の長さｄを用いて、（ａｍｓｃｏｒｅｄｂ，１）÷ｄにより算出する。なお、ａｍｓｃｏｒｅｄｂは、初期質問データベースから作成した言語モデルｄｂによる音響スコアを表している。すなわち、Ｆｄｂ２は、認識結果の精度を表している。
【００５７】
Ｆｄｂ３は、認識結果の第一候補の言語スコアであり、認識結果の精度を表している。すなわち、認識結果列に含まれている言語スコアｌｍｓｃｏｒｅｄｂである。
【００５８】
Ｆｄｂ５は、応答選択に用いたキーフレーズｉの全認識結果での出現回数における最小値ｍｉｎｉである。ここで、キーフレーズを波括弧で囲って示すと、質問文『仙川の本屋について教えてください』のうち、｛仙川｝と｛本屋｝がキーフレーズであり、Ｋ１＝｛仙川｝、Ｋ２＝｛本屋｝である。このため、各単語列である次式（８）に出現する単語ｗｄｂ，ｉ，ｊ＝Ｋｋとなるような（ｉ，ｊ）の組み合わせは、Ｋ１＝仙川に対して、（ｉ，ｊ）＝（１，１），（２，１），（３，１），（５，１）の４つが存在する。
【００５９】
同様に、各単語列である次式（８）に出現する単語ｗｄｂ，ｉ，ｊ＝Ｋｋとなるような（ｉ，ｊ）の組み合わせは、Ｋ２＝本屋に対して、（ｉ，ｊ）＝（１，３），（２，３），（４，３）の３つが存在する。すなわち、Ｋ１の方がＫ２より大きいため、ｗｄｂ，ｉ，ｊ＝Ｋ１となる（ｉ，ｊ）の組み合わせ数の方が、ｗｄｂ，ｉ，ｊ＝Ｋ２となる（ｉ，ｊ）の組み合わせ数より大きいことを意味している。このため、特徴量算出部１７は、Ｆｄｂ５として、最小値ｍｉｎｉであるｗｄｂ，ｉ，ｊ＝Ｋ２となる（ｉ，ｊ）の組み合わせ数＝３を算出する。
【００６０】
【数８】
2011018327.tif 000010
【００６１】
Ｆｄｂ６は、第１応答選択部１５が応答選択に用いたキーフレーズｉの全認識結果での出現回数における最大値ｍａｘｉである。このため、特徴量算出部１７が、Ｆｄｂ６＝４として、最大値ｍａｘｉであるｗｄｂ，ｉ，ｊ＝Ｋ１となる（ｉ，ｊ）の組み合わせ数＝４を算出する。このように、Ｆｄｂ４〜Ｆｄｂ９は、応答選択に用いたキーフレーズに関しての認識精度を表している。
【００６２】
Ｆｄｂ１４は、第１応答選択部１５による応答選択の際に一致したキーフレーズの認識信頼度の最大値ｍａｘｉであり、特徴量算出部１７が求める。このため、式（３）〜（７）において、全てのｋに対して、認識結果の第一候補の単語がｗｄｂ，ｉ，ｊ＝Ｋｋであるｊは、ｗｄｂ，ｉ，１＝Ｋ１（仙川）、ｗｄｂ，ｉ，３＝Ｋ２（本屋）となるｊ＝１，３である。次に、選択された全てのｊに対し、信頼度ｃｍｓｂ，１，ｊを比較すると、ｃｍｓｂ，１，１＝０．５７でありｃｍｓｂ，１，３＝０．４５のため、ｃｍｓｂ，１，１の方がｃｍｓｂ，１，３より大きい。このため、特徴量算出部１７が、Ｆｄｂ１４として、最大値ｍａｘｉであるｃｍｓｂ，１，１＝０．５７を算出する。
【００６３】
Ｆｄｂ１５は、第１応答選択部１５による応答選択した際に一致したキーフレーズの認識信頼度の最小値ｍｉｎｎである。このため、特徴量算出部１７は、Ｆｄｂ１５として、最小値ｍｉｎｎであるｃｍｓｂ，１，３＝０．４５を算出する。
【００６４】
Ｆｌｖ１は、システムが質問応答ＤＢ１４外と判断したかどうかの判別結果（選択された応答の有無）である。すなわち、第２応答選択部１６が、質問文に対応する応答が質問応答ＤＢ１４に登録されているか否かを判別した結果である。質問文に対応する応答が質問応答ＤＢ１４に登録されていた場合、特徴量算出部１７が質問応答ＤＢ１４内に応答が存在する（有）と設定する。質問文に対応する応答が質問応答ＤＢ１４に登録されていない場合、特徴量算出部１７が質問応答ＤＢ１４内に応答が存在しない（無）、すなわち、応答が質問応答ＤＢ１４外と設定する。
【００６５】
Ｆｌｖ２は、特徴量算出部１７が（認識結果の第一候補の音響スコア）÷（発話長）により算出する。すなわち、特徴量算出部１７が、認識結果列に含まれている音響スコアａｍｓｃｏｒｅと音声の長さｄを用いて、（ａｍｓｃｏｒｅｌｖ，１）÷ｄにより算出する。なお、ａｍｓｃｏｒｅｌｖは、大語彙データベースから作成した言語モデルｌｖによる音響スコアを表している。
【００６６】
Ｆｌｖ３は、認識結果の第一候補の言語スコアである。すなわち、認識結果列に含まれている言語スコアｌｍｓｃｏｒｅｌｖである。
【００６７】
図５は、本実施形態における図４の特徴量の概略を説明する図である。図５のように、「キーフレーズの出現頻度」（Ｆｄｂ５，Ｆｄｂ６）は、キーフレーズの認識の正確さを表している。また、「応答選択に用いたキーフレーズ以外の名刺の存在の有無」（Ｆｄｂ１７，Ｆｄｂ１８）は、応答選択が誤っている可能性を表している。さらに、「キーフレーズの認識精度」（Ｆｄｂ４〜Ｆｄｂ９）は、キーフレーズの認識の正確さ（精度）を表している。さらに「あいづちかどうか」（Ｆｄｂ１０）は、質問応答ＤＢ１４に追加すべきかの判断材料となる情報であることを表している。例えば、ユーザ発話に「あいづち」が含まれていた場合、ユーザの質問に対して、適正な応答が行われたことを意味している。
特徴量算出部１７は、以上のように算出した特徴量をＤＢ外の質問検出部１８に出力する。
【００６８】
次に、ＤＢ外の質問検出部１８が行うＤＢ外の質問検出方法について説明する。ＤＢ外の質問検出部１８には、特徴量算出部１７が算出した特徴量が入力される。
ＤＢ外の質問検出部１８は、まず訓練データを、ｗｅｋａを用いて学習させて、入力された特徴量を、ｗｅｋａを用いて学習させる。また、分類のアルゴリズムには、ＮａｖｉｅＢａｙｅｓを用いる。なお、学習に用いるツールは他の手法でも良く、また分類のアルゴリズムも他の手法でも良い。
ＤＢ外の質問検出部１８が行う質問応答ＤＢ１４外の質問検出は、図３で説明したように質問応答ＤＢ１４に追加すべき発話を検出することである。すなわち、質問応答ＤＢ１４外の発話であるのに、質問応答ＤＢ１４内にあると誤って認識された発話や、実際の質問応答ＤＢ１４外の発話を検出する。
【００６９】
そして、ＤＢ外の質問検出部１８は、このように発話から抽出された特徴量を用いて学習を行い、ＤＢ外の質問か否かを判別する判別関数を自動的に生成する。そして、ＤＢ外の質問検出部１８は、生成した判別関数の評価得点を用いて、ＤＢ外の質問か否かを検出し、ＤＢ外の質問と判別された質問を提示部１９に出力する。
【００７０】
次に、ＤＢ外の質問検出部１８が行うＤＢ外の質問か否かの判別方法の一例を説明する。学習した発話毎の特徴量（Ｆｄｂ１〜Ｆｄｂ１８、Ｆｌｖ１〜Ｆｌｖ９、Ｆｄｂｌｖ１、Ｆｄｂｌｖ２）について、ＤＢ外の質問検出部１８は、次式（９）の線形判別関数を算出する。なお、線形判別関数の算出は公知の手法を用いて行い、まず、訓練データの発話を用いて学習させる。
【００７１】
ｗ１×Ｆｄｂ１＋ｗ２×Ｆｄｂ２＋・・・＋ｗ２９×Ｆｄｂｌｖ２  ・・・（９）
【００７２】
式（９）において、ｗ１〜ｗ２９は、各特徴量の重み係数である。重み係数は、例えば、ＤＢ内であると予め分かっている訓練データの発話と、ＤＢ外であると予め分かっている訓練データの発話とが判別できるように設定する。この式（９）を用いて算出された値は、判断得点（線形結合の値）である。次に、ＤＢ外の質問検出部１８は、算出した判断得点に基づき、ユーザ発話がＤＢ内にあるかグループとＤＢ外にあるグループとに分類し、分離結果に基づきユーザ発話がＤＢ内にあるかＤＢ外にあるか判別する。
図６は、２つの２次元正規母集団に対する線形判別関数の概略を説明する図である。図６において、線形判別関数１０１により、母集団１１１と母集団１１２とに分類されていることを表している。例えば、この母集団１１１がＤＢ外の発話に相当し、母集団１１２がＤＢ内の発話に相当する。なお、判別関数として線形判別関数を用いる例を説明したが、他の判別関数でもよく、学習の方法や判別方法はこれに限られず、他の公知の手法を用いても良い。
【００７３】
提示部１９は、入力されたＤＢ外の質問と判別された質問を、提示部の表示部に表示し、質問応答ＤＢの作成者に提示する。質問応答ＤＢの作成者は、提示部１９に提示されたＤＢ外の質問と判別された質問、その質問に対応する応答等を関連づけて質問応答ＤＢに登録することで、質問応答ＤＢの拡張を行う。
一例として、『仙川の本屋について教えてください』が、すでに質問応答ＤＢ１４に登録されていて、キーフレーズとして｛仙川｝と｛本屋｝が登録されているとする。次に、『仙川の本屋さんはどこにありますか』という発話が入力された場合、この発話のキーフレーズとして｛仙川｝と｛本屋｝と｛どこ｝が抽出される。この発話から抽出された３つのキーフレーズのうち、すでに２つのキーフレーズ｛仙川｝と｛本屋｝が質問応答ＤＢ１４に登録されているので、『仙川の本屋さんはどこにありますか』という質問文とキーフレーズ｛どこ｝、および質問に対する応答を、データベース作成者が質問応答ＤＢ１４に登録する。また、提示部１９に提示する情報は、質問者毎に提示しても良く、または、複数の質問者についてまとめて提示するようにしてもよい。質問応答ＤＢに登録されていない質問文が複数存在していると判断された場合、質問者順に提示してもよく、または、質問応答ＤＢに登録されているキーフレーズと質問に含まれるキーフレーズとが一致している割合に基づき優先順位を提示部１９が算出して表示するようにしてもよい。
【００７４】
以上のように、ユーザ発話を初期質問ＤＢから生成した言語モデルで音声認識し、さらにユーザ発話を公知の大語彙ＤＢから生成した言語モデルで音声認識する。そして、音声認識された認識結果から、各々特徴量を算出し、算出した特徴量に基づき、ユーザ発話の中から、質問応答ＤＢに追加すべき発話を抽出するようにしたので、データベース外の発話を適切かつ自動的に検出することができる。そして、データベース作成者は、検出された発話をデータベースに登録することでデータベースを拡張する。
この結果、データベース作成者が、全てのユーザ発話を聞き取ってデータベースの拡張を行うことなく、または全てのユーザ発話を書き起こすことなくデータベースの拡張を行うことができる。
【００７５】
［第２実施形態］
第１実施形態では、検出した質問応答ＤＢに追加すべき発話を提示部１９に提示し、提示された発話を質問応答ＤＢの作成者が登録する方法について説明した。検出された発話の登録は、質問応答データベース拡張装置が自動的に行うことも可能である。図７は、本実施形態おける質問応答データベース拡張装置のブロック図である。第１実施形態と同じ機能部は、同じ符号を用いて説明は省略する。第１実施形態における構成との差異は質問応答ＤＢ１４ａとＤＢ外の質問検出部１８ａと登録部２０１である。
【００７６】
ＤＢ外の質問検出部１８ａには、特徴量算出部１７が算出した特徴量が入力される。また、ＤＢ外の質問検出部１８ａは、入力された特徴量を用いて、ｗｅｋａを用いて学習させて分類部を生成する。また、分類のアルゴリズムには、ＮａｖｉｅＢａｙｅｓを用いる。さらに、ＤＢ外の質問検出部１８ａの分類部は、学習結果に基づき、線形評価関数を算出する。さらに、ＤＢ外の質問検出部１８ａの判別部は、算出した線形評価関数の判断得点に基づき、ユーザ発話が質問応答ＤＢ１４ａ内にあるかグループと質問応答ＤＢ１４ａ外にあるグループとに分類し、分類結果に基づきユーザ発話が質問応答ＤＢ１４ａ内にあるか質問応答ＤＢａ外にあるか判別する。さらに、ＤＢ外の質問検出部１８ａは、質問応答ＤＢ１４ａ外と判別された場合、判別結果と質問応答ＤＢ１４ａ外と判別された質問文を提示部１９に出力し、質問応答ＤＢ１４ａ内と判別された場合、判別結果を提示部１９と登録部２０１に出力する。
【００７７】
登録部２０１には、質問応答ＤＢ１４ａ外と判別された場合、判別結果と質問応答ＤＢ１４ａ外と判別された質問文が入力され、質問応答ＤＢ１４ａ内と判別された場合、判別結果が入力される。また、登録部２０１は、入力された判別結果が質問応答ＤＢ１４ａ外であるか否かを判別し、質問応答ＤＢ１４ａ外の場合、質問応答ＤＢ１４ａ外と判別された質問文を質問応答ＤＢ１４ａに登録する。さらに、登録部２０１は、質問応答ＤＢ１４ａ外と判別された質問文から所定の規則に従ってキーフレーズを抽出し、抽出したキーフレーズの中で質問応答ＤＢ１４ａに未登録のキーフレーズを質問応答ＤＢ１４ａに対して探索する。さらに、登録部２０１は、未登録のキーフレーズが存在する場合、未登録のキーフレーズを質問応答ＤＢ１４ａに登録する。
【００７８】
以上のように、質問応答ＤＢに登録されていないユーザ発話による質問文を検出し、検出された質問文およびその質問文に含まれるキーフレーズを自動的に質問応答ＤＢに登録することでデータベースを拡張する。
この結果、データベース作成者が、全てのユーザ発話を聞き取ってデータベースの拡張を行うことなく、または全てのユーザ発話を書き起こすことなくデータベースの拡張を行うことができる。
【００７９】
また、本実施形態では、２９種類の特徴量を用いる例を説明したが、特徴量の個数はこれに限られず、また、特徴量の種類も説明したものに限られず、他のものであってもよい。
【００８０】
また、本実施形態では、質問応答データベース拡張装置を質問応答システムに適用する例を説明したが、例えば、ユーザ発話に対して応答する受付システムやヒト型ロボットなどに適用してもよい。
【００８１】
また、本実施形態では、質問応答データベース拡張装置の内部にデータベースを備える例を説明したが、データベースは無線または有線で接続されていてもよい。
【００８２】
なお、本実施形態では、大語彙ＤＢとして、Ｊｕｌｉｕｓ付属の大語彙ＤＢを用いる例を示したが、例えば１万語程度備える一般的な他の大語彙ＤＢでもよい。また、音声認識にＪｕｌｉｕｓを用いる例を説明したが、他の一般的な音声認識手法を用いるようにしてもよい。
【００８３】
なお、実施形態の図１または図７の各部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＣＤ−ＲＯＭ等の可搬媒体、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）  Ｉ／Ｆ（インタフェース）を介して接続されるＵＳＢメモリー、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリーのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【００８４】
［実験結果］
次に、本実施形態の質問応答データベース拡張装置を適用した質問応答システムを用いて実験を行った結果を説明する。
実験は、質問応答データベースを拡張するための検討を行った６２５発話（２５人、各２５発話）のうち、書き起こしの発話分類でも該当する応答のなかったノイズなど（Ｔ４）を除いた５０５発話を用いた。また、分類器は、抽出した特徴量をデータマイニングツールであるｗｅｋａを用いて学習させて生成した。また、分類のアルゴリズムには、ＮａｖｉｅＢａｙｅｓを用いた。
【００８５】
次に、実験結果の評価に用いた評価値Ｐｒｅｃｉｓｉｏｎ、Ｒｅｃａｌｌ、Ｆ値について説明する。各評価値は、次式（１０）〜（１２）により算出する。
【００８６】
Ｐｒｅｃｉｓｉｏｎ＝（データベース外発話と分類された中のデータベース外発話数）／（データベース外発話と分類された数）・・・（１０）
【００８７】
Ｒｅｃａｌｌ＝（データベース外発話と分類された中のデータベース外発話数）／（データベース外発話の数）・・・（１１）
【００８８】
Ｆ値＝２／（（１／Ｐｒｅｃｉｓｉｏｎ）＋（１／Ｒｅｃａｌｌ））・・・（１２）
【００８９】
図８は、質問応答データベース拡張装置を適用した質問応答システムと適用していない質問応答システムによる評価値を示す図である。実験は、ベースライン１、ベースライン２、実施形態による方法（提案手法）により行った。
ベースライン１の「全てデータベース外発話と判断」とは、全ての発話をデータベース外と判別することであり、質問応答データベース拡張装置を適用していない質問応答システムである。ベースライン２の「ｉｎｉＤＢ」とは、全ての発話を初期データベースで判断することであり、質問応答データベース拡張装置を適用していない質問応答システムである。なお、実施形態による方法（提案手法）においては、ＮａｖｉｅＢａｙｅｓを用いて学習を行い、１０−ｆｏｌｄ  ｃｒｏｓｓ  ｖａｌｉｄａｔｉｏｎ（交差検定）を用いて学習と評価を行った。
図８のように、ベースライン１の手法による結果は、Ｆ値は高くなっているが、実際検出をしているわけではないので良い結果ではない。ベースライン２の手法の結果は、ＬＭｄｂの結果を、ＩｎｉＤＢ（初期データベース）を用いて応答選択を行ったとき、その結果がデータベース外となっているかどうかという情報のみを用いたものであるが、分類精度は高くないことがわかる。さらに、実施形態による方法（提案手法）の評価結果は、ベースラインより高い判別精度が得られた。
【００９０】
［有効な特徴量の検討］
次に，判別精度向上に最も効果のある特徴量について検討した結果を説明する。検討は、１つの特徴量を削除し評価値を求めるという手順を、それぞれの特徴量について行うことで、どの特徴量が最も寄与しているかを検討した。質問文が質問応答ＤＢ外であることを検出する上で有効な特徴量の上位５個と、その特徴量を削除した場合のF 値は、図９のような結果であった。図９は、特徴量を１つ削除した場合の評価値の一例を示す図である。
図９のように、有効だった特徴量は、発話分類に使用したキーフレーズの音声認識信頼度の最小値であるＦｄｂ１５であり、特徴量Ｆｄｂ１５を削除した場合のＦ値は０．６８５であった。また、有効だった特徴量は、ＬＭｄｂとＬＭｌｖの第一候補の音響モデルの差Ｆｄｂｌｖ１であり、特徴量Ｆｄｂｌｖ１を削除した場合のＦ値は０．６８５であった。さらに、有効だった特徴量は、ＬＭｄｂの認識結果の候補数であるＦｄｂ１６であり、特徴量Ｆｄｂ１６を削除した場合のＦ値は０．６８５であった。さらに、有効だった特徴量は、ＬＭｄｂの認識結果の単語数であるＦｄｂ１１であり、特徴量Ｆｄｂ１１を削除した場合のＦ値は０．６８８であった。さらに、有効だった特徴量は、ＬＭｄｂのキーフレーズのＪｕｌｉｕｓ  ｃｏｎｆｉｄｅｎｃｅ（信頼度）の平均値であるＦｄｂ１３であり、特徴量Ｆｄｂ１３を削除した場合のＦ値は０．６８８であった。
Ｆｄｂ１５とＦｄｂ１３は，キーフレーズの音声認識結果がどれくらい正しいかを示唆している。Ｆｄｂ１１は、認識の精度を示し、Ｆｄｂ１６は、単語数が多ければ複数のトピックについての質問の可能性であるということを示唆している。さらに、差Ｆｄｂｌｖ１は、ＬＭｄｂとＬＭｌｖの認識結果が、どれくらい実際の音声発話とずれているかを示唆している。以上により、キーフレーズが正しく認識されたかの推定が有効な特徴量であることが確認できた。
【００９１】
［データ量に対する精度の検討］
ＤＢ外の質問検出部１８の判別部が行う学習において、大量のデータが必要であるならば、学習データを構築する際に書き起こし等が必要となるため，データベース拡張の際に、データベース作成者の労力削減にならない。このため、ＤＢ外の質問検出部１８の判別部の訓練データ数が少ない場合の判別精度を確認した。図１０は、学習データ量を変化させた場合の判別精度の一例を示す図であり、図１１は、図１０の結果をグラフに示した図である。図１０のように、図８に結果を示した実験結果で用いた１０−ｆｏｌｄ  ｃｒｏｓｓ  ｖａｌｉｄａｔｉｏｎの場合のＦ値０．６９８と比較すると学習データ数を削減した場合のＦ値（０．６０２〜０．６６５）は低い。しかしながら、ベースラインの手法によるＦ値０．４０１よりは高い。このため、本実施形態による方法は、学習データ数を削減した場合においても有効である。
【符号の説明】
【００９２】
１・・・質問応答データベース拡張装置
１１・・・マイク
１２・・・第１音声認識部
１３・・・第２音声認識部
１４・・・質問応答ＤＢ
１５・・・第１応答選択部
１６・・・第２応答選択部
１７・・・特徴量算出部
１８・・・ＤＢ外の質問検出部
１９・・・提示部
【図１】
2011018327.tif 000011
【図２】
2011018327.tif 000012
【図３】
2011018327.tif 000013
【図４】
2011018327.tif 000014
【図５】
2011018327.tif 000015
【図６】
2011018327.tif 000016
【図７】
2011018327.tif 000017
【図８】
2011018327.tif 000018
【図９】
2011018327.tif 000019
【図１０】
2011018327.tif 000020
【図１１】
2011018327.tif 000021
【図１２】
2011018327.tif 000022