(57)【特許請求の範囲】
【請求項１】
ユーザによる発話及び入力文の少なくとも一方を入力する入力手段と、
前記入力手段への入力がない状態が継続する時間を計測する無入力時間計測手段と、
前記入力手段に入力された前記発話及び入力文の少なくとも一方が、前記ユーザの要求又は質問を表わしているか否かを判定する要求質問判定手段と、
ユーザと自装置との対話における、自装置が自発的に情報を提供する情報提供型、自装置が自発的に質問する情報獲得型、ユーザの要求又は質問に対して自装置が回答する質問応答型、及びユーザが自発的に提供する情報を自装置が受理する情報受理型からなる対話型分類の遷移履歴を記憶する遷移履歴記憶手段と、
前記無入力時間計測手段によって計測された時間が所定時間以上である場合には、過去の判別結果及び前記遷移履歴に基づいて、前記ユーザとの対話が、前記情報提供型及び情報獲得型の何れかであると判別し、前記要求質問判定手段によって前記ユーザの要求又は質問を表わしていると判定された場合には、前記ユーザとの対話が、前記質問応答型であると判別し、前記要求質問判定手段によって前記ユーザの要求又は質問を表わしていないと判定された場合には、前記ユーザとの対話が、前記情報受理型であると判別する対話型判別手段と、
前記発話及び入力文の少なくとも一方に対して、前記対話型判別手段による判別結果に応じた応答文を生成する応答生成手段と、
前記応答生成手段によって生成された応答文を出力する出力手段と、
を含む対話装置。
【請求項２】
前記対話型判別手段は、前記要求質問判定手段によって前記ユーザの要求又は質問を表わしていないと判定された場合には、過去の判別結果及び前記遷移履歴に基づいて、前記ユーザとの対話が、前記情報受理型及び前記情報獲得型の何れかであると判別する請求項１記載の対話装置。
【請求項３】
前記応答生成手段は、前記情報提供型であると判別された場合、ユーザに提供するための情報を複数記憶した情報データベースに記憶された前記複数の情報から選択した情報を用いて、前記応答文を生成する請求項１、又は２記載の対話装置。
【請求項４】
前記応答生成手段は、前記質問応答型であると判別された場合、質問文又は要求文と前記質問文又は要求文に対する回答文とを対応させて記憶した質問回答データベースに記憶された前記質問文又は要求文から、前記発話及び入力文の少なくとも一方が表わす前記要求又は質問に対応する質問文又は要求文を検索し、検索された前記質問文又は要求文に対する回答文を用いて、前記応答文を生成する請求項１〜請求項３の何れか１項記載の対話装置。
【請求項５】
前記入力手段によって入力された前記発話及び入力文の少なくとも一方の構造を解析する解析手段を更に含み、
前記応答生成手段は、前記情報受理型であると判別された場合、前記構造と前記構造に対する応答文とを対応させて記憶した応答データベースに記憶され、かつ、前記解析手段によって解析された前記構造に対応する応答文を用いて、前記応答文を生成する請求項１〜請求項４のいずれか１項記載の対話装置。
【請求項６】
前記応答生成手段は、前記情報獲得型であると判別された場合、ユーザへの質問文又は要求文を複数記憶した質問要求データベースに記憶された前記複数の質問文から選択した質問文を用いて、前記応答文を生成する請求項１又は２記載の対話装置。
【請求項７】
前記入力手段は、ユーザによる発話を入力し、
前記要求質問判定手段は、前記入力手段から入力された前記発話について、音声の特徴量を抽出し、前記抽出した前記特徴量と、予め求められた質問又は要求を表わす発話の前記特徴量とを比較して、前記発話及び入力文の少なくとも一方が、ユーザの要求又は質問を表わしているか否かを判定する請求項１〜請求項６の何れか１項記載の対話装置。
【請求項８】
コンピュータを、
ユーザによる発話及び入力文の少なくとも一方を入力する入力手段への入力がない状態が継続する時間を計測する無入力時間計測手段、
前記入力手段に入力された前記発話及び入力文の少なくとも一方が、前記ユーザの要求又は質問を表わしているか否かを判定する要求質問判定手段、
ユーザと自装置との対話における、自装置が自発的に情報を提供する情報提供型、自装置が自発的に質問する情報獲得型、ユーザの要求又は質問に対して自装置が回答する質問応答型、及びユーザが自発的に提供する情報を自装置が受理する情報受理型からなる対話型分類の遷移履歴を記憶する遷移履歴記憶手段、
前記無入力時間計測手段によって計測された時間が所定時間以上である場合には、過去の判別結果及び前記遷移履歴に基づいて、前記ユーザとの対話が、前記情報提供型及び情報獲得型の何れかであると判別し、前記要求質問判定手段によって前記ユーザの要求又は質問を表わしていると判定された場合には、前記ユーザとの対話が、前記質問応答型であると判別し、前記要求質問判定手段によって前記ユーザの要求又は質問を表わしていないと判定された場合には、前記ユーザとの対話が、前記情報受理型であると判別する対話型判別手段、及び
前記発話及び入力文の少なくとも一方に対して、前記対話型判別手段による判別結果に応じた応答文を生成する応答生成手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対話装置及びプログラムに係り、特に、ユーザによる発話又は入力文に応答して対話する対話装置及びプログラムに関する。
【背景技術】
【０００２】
従来より、利用者の音声に対する制限を行わずとも、精度よく利用者の要求内容を把握して、利用者とのやりとりをスムーズに行えるようにする音声対話装置が知られている（特許文献１）。この音声対話装置は、システム主導型の対話システムとユーザ主導型の対話システムとを混在させ、認識結果や対話履歴に応じて、２種類の対話システムを適切に切り替えることで、システム主導型対話の頑健性を保ちつつ、ユーザ主導型対話の柔軟性を有している。
【特許文献１】特開２００３−２２８３９３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記の特許文献１に記載の技術では、想定外の入力に対しては、適切に応答することができない、という問題がある。例えば、音声認識の認識結果と共に出力される信頼度などを利用して、想定外の入力らしい時は、「もう一度言って下さい」などの定型文を応答することができるが、ユーザがシステムとは対話ができないと判断し、対話を中断してしまうため、対話を継続させることができない。
【０００４】
本発明は、上記の問題点を解決するためになされたもので、任意の入力に対して適切に応答することができ、対話を継続させることができる対話装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１９】
第１の発明に係る対話装置は、ユーザによる発話及び入力文の少なくとも一方を入力する入力手段と、前記入力手段への入力がない状態が継続する時間を計測する無入力時間計測手段と、前記入力手段に入力された前記発話及び入力文の少なくとも一方が、前記ユーザの要求又は質問を表わしているか否かを判定する要求質問判定手段と、ユーザと自装置との対話における、自装置が自発的に情報を提供する情報提供型、自装置が自発的に質問する情報獲得型、ユーザの要求又は質問に対して自装置が回答する質問応答型、及びユーザが自発的に提供する情報を自装置が受理する情報受理型からなる対話型分類の遷移履歴を記憶する遷移履歴記憶手段と、前記無入力時間計測手段によって計測された時間が所定時間以上である場合には、過去の判別結果及び前記遷移履歴に基づいて、前記ユーザとの対話が、前記情報提供型及び情報獲得型の何れかであると判別し、前記要求質問判定手段によって前記ユーザの要求又は質問を表わしていると判定された場合には、前記ユーザとの対話が、前記質問応答型であると判別し、前記要求質問判定手段によって前記ユーザの要求又は質問を表わしていないと判定された場合には、前記ユーザとの対話が、前記情報受理型であると判別する対話型判別手段と、前記発話及び入力文の少なくとも一方に対して、前記対話型判別手段による判別結果に応じた応答文を生成する応答生成手段と、前記応答生成手段によって生成された応答文を出力する出力手段とを含んで構成されている。
【００２０】
第２の発明に係るプログラムは、コンピュータを、ユーザによる発話及び入力文の少なくとも一方を入力する入力手段への入力がない状態が継続する時間を計測する無入力時間計測手段、前記入力手段に入力された前記発話及び入力文の少なくとも一方が、前記ユーザの要求又は質問を表わしているか否かを判定する要求質問判定手段、ユーザと自装置との対話における、自装置が自発的に情報を提供する情報提供型、自装置が自発的に質問する情報獲得型、ユーザの要求又は質問に対して自装置が回答する質問応答型、及びユーザが自発的に提供する情報を自装置が受理する情報受理型からなる対話型分類の遷移履歴を記憶する遷移履歴記憶手段、前記無入力時間計測手段によって計測された時間が所定時間以上である場合には、過去の判別結果及び前記遷移履歴に基づいて、前記ユーザとの対話が、前記情報提供型及び情報獲得型の何れかであると判別し、前記要求質問判定手段によって前記ユーザの要求又は質問を表わしていると判定された場合には、前記ユーザとの対話が、前記質問応答型であると判別し、前記要求質問判定手段によって前記ユーザの要求又は質問を表わしていないと判定された場合には、前記ユーザとの対話が、前記情報受理型であると判別する対話型判別手段、及び前記発話及び入力文の少なくとも一方に対して、前記対話型判別手段による判別結果に応じた応答文を生成する応答生成手段として機能させるためのプログラムである。
【００２１】
第１の発明及び第２の発明によれば、入力手段に、ユーザによる発話及び入力文の少なくとも一方が入力される。また、無入力時間計測手段によって、入力手段への入力がない状態が継続する時間を計測する。
【００２２】
また、要求質問判定手段によって、入力手段に入力された発話及び入力文の少なくとも一方が、ユーザの要求又は質問を表わしているか否かを判定する。
【００２３】
そして、対話型判別手段によって、無入力時間計測手段によって計測された時間が所定時間以上である場合には、過去の判別結果及び遷移履歴に基づいて、ユーザとの対話が、情報提供型及び情報獲得型の何れかであると判別する。また、要求質問判定手段によってユーザの要求又は質問を表わしていると判定された場合には、ユーザとの対話が、質問応答型であると判別する。また、要求質問判定手段によってユーザからの要求又は質問を表わしていないと判定された場合には、ユーザとの対話が、情報受理型であると判別する。
【００２４】
そして、応答生成手段によって、発話及び入力文の少なくとも一方に対して、対話型判別手段による判別結果に応じた応答文を生成する。出力手段によって、応答生成手段によって生成された応答文を出力する。
【００２５】
このように、無入力時間、対話型分類の遷移履歴、及び入力された発話又は入力文が要求又は質問を表わしているか否かに基づいて、ユーザとの対話の対話型分類が、情報提供型、情報獲得型、質問応答型、及び情報受理型の何れであるかを判別し、応答文を生成することにより、任意の入力に対して適切に応答することができ、対話を継続させることができる。
【００２６】
第１の発明に係る対話型判別手段は、要求質問判定手段によってユーザの要求又は質問を表わしていないと判定された場合には、過去の判別結果及び遷移履歴に基づいて、ユーザとの対話が、情報受理型及び情報獲得型の何れかであると判別することができる。これによって、入力された発話又は入力文が要求又は質問を表わしていない場合に、情報受理型及び情報獲得型の何れかであるかを更に判別することにより、任意の入力に対してより適切に応答することができる。
【００２７】
第１の発明に係る応答生成手段は、情報提供型であると判別された場合、ユーザに提供するための情報を複数記憶した情報データベースに記憶された複数の情報から選択した情報を用いて、応答文を生成することができる。
【００２８】
上記の応答生成手段は、質問応答型であると判別された場合、質問文又は要求文と質問文又は要求文に対する回答文とを対応させて記憶した質問回答データベースに記憶された質問文又は要求文から、発話及び入力文の少なくとも一方が表わす要求又は質問に対応する質問文又は要求文を検索し、検索された前記質問文又は要求文に対する回答文を用いて、応答文を生成することができる。
【００２９】
上記の対応装置は、入力手段によって入力された発話及び入力文の少なくとも一方の構造を解析する解析手段を更に含み、応答生成手段は、情報受理型であると判別された場合、構造と構造に対する応答文とを対応させて記憶した応答データベースに記憶され、かつ、解析手段によって解析された構造に対応する応答文を用いて、応答文を生成することができる。
【００３０】
第１の発明に係る応答生成手段は、情報獲得型であると判別された場合、ユーザへの質問文又は要求文を複数記憶した質問要求データベースに記憶された複数の質問文から選択した質問文を用いて、応答文を生成することができる。
【００３１】
上記の入力手段は、ユーザによる発話を入力し、要求質問判定手段は、入力手段から入力された発話について、音声の特徴量を抽出し、抽出した特徴量と、予め求められた質問又は要求を表わす発話の特徴量とを比較して、発話及び入力文の少なくとも一方が、ユーザの要求又は質問を表わしているか否かを判定することができる。
【発明の効果】
【００３２】
以上説明したように、本発明の対話装置及びプログラムによれば、無入力時間、及び入力された発話又は入力文が要求又は質問を表わしているか否かに基づいて、ユーザとの対話の対話型分類を判別し、応答文を生成することにより、任意の入力に対して適切に応答することができ、対話を継続させることができる、という効果が得られる。
【発明を実施するための最良の形態】
【００３３】
以下、図面を参照して本発明の実施の形態を詳細に説明する。なお、本実施の形態では、ユーザの発話に対して音声を利用して応答する対話装置に本発明を適用した場合について説明する。
【００３４】
図１に示すように、第１の実施の形態に係る対話装置１０は、マイクロホンで構成され、かつ、ユーザ発話を集音して音声信号を生成する入力部１２と、入力部１２によって入力された音声信号に基づいて、応答発話を生成するコンピュータ１４と、スピーカで構成され、かつ、生成された応答発話を音声出力する音声出力部１６とを備えている。
【００３５】
コンピュータ１４は、ＣＰＵと、ＲＡＭと、後述する応答生成処理ルーチンを実行するためのプログラムを記憶したＲＯＭとを備え、機能的には次に示すように構成されている。コンピュータ１４は、入力部１２から入力された信号から、入力音声を示す音声信号を切り出す音声切り出し部２０と、入力部１２から入力される信号に基づいて、入力音声が入力されない状態が継続している無入力時間を計測する無入力時間カウンタ２２と、認識用辞書データベース（図示省略）に登録された単語を参照して、音声信号に基づいて、ユーザ発話を認識する音声認識部２４と、音声信号に基づいて、音声の特徴量（例えば、継続長や基本周波数など）を抽出する特徴量抽出部２６と、遷移履歴として、ユーザとの対話における後述する４種類の対話型分類の遷移確率を記憶した遷移確率記憶部２８と、後述する対話型分類判別部３４によって前回判別された結果を記憶する判別結果記憶部３０と、記憶された遷移確率と前回の判別結果とに基づいて、現在の対話が各対話型分類である確率を算出する確率算出部３２と、無入力時間カウンタ２２によって計測された無入力時間、音声認識部２４による認識結果、特徴量抽出部２６によって抽出された特徴量、及び確率算出部３２によって算出された確率に基づいて、ユーザとの対話を、４種類の対話型分類の何れかに判別する対話型分類判別部３４とを備えている。
【００３６】
ここで、４種類の対話型分類について説明する。ユーザとの対話は、対話装置１０がユーザに対して自発的に情報を提供する情報提供型対話、対話装置１０がユーザに対して自発的に質問する情報獲得型対話、ユーザの要求又は質問に対して対話装置１０が回答する質問応答型対話、及びユーザが自発的に提供する情報を対話装置１０が受理する情報受理型対話の４種類の対話型分類に分類される。
【００３７】
情報提供型対話は、対話装置１０側に対話の主導権があり、かつ、対話装置１０が情報を提供することを想定した対話であり、対話装置１０の状態や対話装置１０に記憶された情報を、対話装置１０が自発的にユーザに提供する対話である。例えば、ユーザが対話装置１０に接近した場合や、対話装置１０の前でユーザが無言でいる場合に、対話装置１０が保持している情報（ニュースや、天気情報、対話装置１０の扱い方に関する情報など）をユーザに提供する。
【００３８】
情報獲得型対話は、対話装置１０側に対話の主導権があり、かつ、ユーザが対話装置１０に対して情報を提供することを想定した対話であり、ユーザ自身の情報や要求、あるいは、ユーザが知っている情報に関して、対話装置１０が自発的に質問する対話である。例えば、対話装置１０が、ユーザに提供すべき情報を絞り込むために必要なユーザ情報を取得するための対話（「何について知りたい？」や「今日は何見に来たの？」など）をしたり、対話を継続させるための対話をしたりする。
【００３９】
質問応答型対話は、ユーザ側に対話の主導権があり、かつ、対話装置１０がユーザに対して情報を提供することを想定した対話であり、対話装置１０が、ユーザからの質問に対する回答を検索して回答する対話である。例えば、ユーザからの質問又は要求（「トイレはどこ？」や「何時までやってるの？」など）に対し、質問や要求の答えとなる情報をデータベースから検索して、ユーザに提供する。
【００４０】
情報受理型対話は、ユーザ側に対話の主導権があり、かつ、ユーザが対話装置１０に対して情報を提供することを想定した対話であり、ユーザ自身の情報やユーザが知っている情報など、ユーザが自発的に提供する情報を、対話装置１０が受理する対話である。例えば、ユーザからの質問又は要求以外の入力に対し、相槌を返したり（例えば、「僕、あっくんです。」に対して「へぇそうなんだ。」と応答する。）、問い返したり（例えば、「遊びに来たよ。」に対して「誰と来たの？」と応答する。）、話題を広げたり（例えば、「今日は天気がいいね。」に対して「洗濯物が良く乾くね。」と応答する。）して、上記の情報提供型対話、情報獲得型対話、及び質問応答型対話では想定していない入力に対して、可能な限り広く待ち受け、対話を継続させるための対話をする。
【００４１】
音声認識部２４は、入力音声に基づいて、ユーザ発話を認識すると共に、各認識結果に対する信頼度を出力する。例えば、入力された発話が「今日の天気は？」であるとき、認識結果として、「今日の天気は？」、「今日天気。」、及び「今日天気がいい。」が得られると共に、「今日の天気は？」に対する信頼度「０．８」、「今日天気。」に対する信頼度「０．５」、及び「今日天気がいい。」に対する信頼度「０．３」が得られる。
【００４２】
特徴量抽出部２５は、入力された音声信号から、音声の特徴量として基本周波数を抽出する。特徴量抽出部２５により抽出される基本周波数に基づいて、音声の韻律が上がっているか否かを判断することができる。
【００４３】
遷移確率記憶部２８は、図２に示すような、上記の４種類の対話型分類の遷移確率が遷移履歴を示す情報として記憶されている。ここで、遷移確率ａ_ｘｙは、以下のように算出される。
【００４４】
まず、ＷＯＺ（Ｗｉｚａｒｄ ｏｆ ＯＺ）実験などで、以下に示すような正解の対話遷移履歴データを作成する。
ユーザ：遊びに来たよ。
対話装置：こんにちは、誰と来たの？（情報受理型対話）
ユーザ：友達と来たよ。
対話装置：へぇそうなんだ。（情報受理型対話）
対話装置：今日は○○が展示してあるよ。（情報提供型対話）
ユーザ：○○って何？
対話装置：今話題の××だよ。あの有名な△△が製作したものだよ。（質問応答型対話）
対話装置：○○に興味ある？（情報獲得型対話）
そして、上記のような対話遷移履歴データ（初期状態→情報受理型対話→情報受理型対話→情報提供型対話→質問応答型対話→情報獲得型対話）から、以下に（１）式に従って、対話型分類ｘ→対話型分類ｙに遷移する遷移確率ａ_ｘｙを計算する。
ａ_ｘｙ＝
（対話型分類ｘから対話型分類ｙに遷移した回数）／（対話型分類ｘにいた回数）
・・・（１）
ただし、情報提供型対話を対話型分類１とし、情報獲得型対話を対話型分類２とし、質問応答型対話を対話型分類３とし、情報受理型対話を対話型分類４とする。
【００４５】
複数の対話遷移履歴データから、上記（１）式を用いて、４種類の対話型分類の遷移の全組み合わせについて遷移確率を算出して、遷移確率記憶部２８に記憶する。
【００４６】
確率算出部３２は、遷移確率記憶部２８に記憶された遷移確率と、判別結果記憶部３０に記憶された前回の判別結果としての対話型分類とに基づいて、前回の判別結果の対話型分類から所定の対話型分類への遷移確率を、現在の判別対象の対話の対話型分類が所定の対話型分類である確率として算出する。
【００４７】
対話型分類判別部３４は、無入力時間カウンタ２２によって計測された無入力時間が、５秒以上であると、確率算出部３２によって算出された情報提供型対話である確率及び情報獲得型対話である確率に基づいて、現在のユーザとの対話が、情報提供型対話及び情報獲得型対話の何れかであると判別する。また、音声切り出し部２０によって入力音声が切り出された場合には、音声認識部２４の結果及び特徴量抽出部２６によって抽出された音声の特徴量に基づいて、ユーザからの発話が、質問又は要求であるか否かを判定する。
【００４８】
質問又は要求であるか否かの判定では、音声認識部２４で得られた信頼度が最も高い音声認識結果の文末の構造が、質問文又は要求文の構造（例えば、「〜か？」、「〜教えて」、又は「〜したい」）と同一であれば、ユーザからの発話が、質問又は要求であると判定する。また、音声の特徴量としての基本周波数を、予め求められた質問又は要求であるときの基本周波数（音声の最後で右上りになる基本周波数）と比較して、抽出された基本周波数と、質問又は要求であるときの予め求められた基本周波数とが類似していれば、ユーザからの発話が、質問又は要求であると判定する。
【００４９】
上記のように、ユーザからの発話が、質問又は要求であると判定された場合には、現在のユーザとの対話が、質問応答型対話であると判別し、質問又は要求でないと判定された場合には、確率算出部３２によって算出された情報獲得型対話である確率及び情報受理型対話である確率に基づいて、現在のユーザとの対話が、情報獲得型対話及び情報受理型対話の何れかであると判別する。
【００５０】
また、対話装置１０のコンピュータ１４は、音声認識部２４によって認識されたユーザからの発話、及び後述する応答生成部３８によって生成された応答文を対話履歴として記憶する対話履歴記憶部３６と、対話型分類判別部３４によって判別された対話型分類、音声認識部２４によって認識されたユーザからの発話、及び対話履歴記憶部３６に記憶された対話履歴に基づいて、ユーザからの発話に対する応答文を生成する応答生成部３８とを備えている。
【００５１】
応答生成部３８は、図３に示すように、対話型分類判別部３４により情報提供型対話であると判別されたときに、情報提供型対話に応じた応答文を生成する情報提供型応答生成部４２と、対話型分類判別部３４により情報獲得型対話であると判別されたときに、情報獲得型対話に応じた応答文を生成する情報獲得型応答生成部４４と、対話型分類判別部３４により質問応答型対話であると判別されたときに、質問応答型対話に応じた応答文を生成する質問応答型応答生成部４６と、対話型分類判別部３４により情報受理型対話であると判別されたときに、情報受理型対話に応じた応答文を生成する情報受理型応答生成部４８とを備えている。
【００５２】
情報提供型応答生成部４２は、ユーザに提供する情報を複数記憶した情報データベース４２Ａと、対話履歴記憶部３６に記憶された対話履歴と情報データベース４２Ａの情報とに基づいて、情報提供型対話に応じた応答文を生成する応答文生成部４２Ｂとを備えている。応答文生成部４２Ｂは、対話履歴を利用して、情報データベース４２Ａからまだ出力されていない情報を選出し、選出された情報から、対話履歴から得られる前回のユーザからの発話に含まれる単語と最も関連深い情報を選択し、選択された情報を用いて応答文を生成する。
【００５３】
例えば、まだ出力されていない情報が、「今日は天気がいいね」や「今日は○○○が展示してあるよ」などであり、前回のユーザからの発話が「こんにちは」である場合には、「今日は天気がいいね」を選択して応答文を生成する。
【００５４】
情報獲得型応答生成部４４は、ユーザへの質問文を複数記憶した質問データベース４４Ａと、対話履歴記憶部３６に記憶された対話履歴と質問データベース４４Ａの質問文とに基づいて、情報獲得型対話に応じた応答文を生成する応答文生成部４４Ｂとを備えている。応答文生成部４４Ｂは、対話履歴を利用して、質問データベース４４Ａからまだ出力されていない質問文を選出し、選出された質問文から、対話履歴から得られる前回のユーザからの発話に含まれる単語と最も関連深い質問文を選択し、選択された質問文を用いて応答文を生成する。また、質問データベース４４Ａの中に、対話装置１０が最も知りたい質問を示す質問文が存在する場合には、最も知りたい質問を示す質問文を選択し、選択された質問文を用いて応答文を生成する。
【００５５】
例えば、まだ出力されていない質問文が、「何について知りたい？」や「○○○（例えば、展示物の名称）に興味ある？」などであり、最も知りたい質問を示す質問文が「○○○（展示物の名称）に興味ある？」である場合には、「○○○（展示物の名称）に興味ある？」を選択して応答文を生成する。
【００５６】
質問応答型応答生成部４６は、ユーザからの質問文又は要求文と質問文又は要求文に対する回答文とを対応させて複数記憶した質問回答データベース４６Ａと、対話履歴記憶部３６に記憶された対話履歴と質問回答データベース４６Ａの回答文とに基づいて、質問応答型対話に応じた応答文を生成する応答文生成部４６Ｂとを備えている。応答文生成部４６Ｂは、対話履歴を利用して、質問回答データベース４６Ａからまだ出力されていない回答文を選出し、選出された回答文に対応する質問文から、音声認識部２４から得られたユーザからの発話に最も一致する質問文を選択し、選択された質問文に対する回答文を用いて応答文を生成する。
【００５７】
例えば、まだ出力されていない回答文が、「案内カウンタの右奥にあるよ」や「２Ｆ特別展示室にあるよ」であり、これらの回答文に対する質問文「トイレはどこ？」及び「○○（展示物の名称）はどこにある？」から、音声認識結果である「トイレは？」に最も類似する質問文「トイレはどこ？」を選択し、選択された質問文に対応する回答文「案内カウンタの右奥にあるよ」を用いて応答文を生成する。
【００５８】
情報受理型応答生成部４８は、文構造と文構造に対する応答文とを対応させて複数記憶した応答データベース４８Ａと、音声認識部２４から得られたユーザからの発話の構造を解析する構造解析部４８Ｃと、構造解析部４８Ｃによって解析されたユーザからの発話の構造と応答データベース４８Ａの応答文とに基づいて、情報受理型対話に応じた応答文を生成する応答文生成部４８Ｂとを備えている。
【００５９】
構造解析部４８Ｃは、音声認識部２４から得られたユーザからの発話に対して形態素解析を行い、また、単語辞書を用いて、ユーザからの発話の構造（品詞や意味）を解析する。応答文生成部４８Ｂは、応答データベース４８Ａを利用して、構造解析部４８Ｃにより解析された構造に対する応答文の候補を複数生成し、対話履歴を利用して、最も自然な応答文の候補を選択して、ユーザ発話に対する応答文を生成する。
【００６０】
例えば、「○○（人名）」というキーワードに対する応答文が「へぇそうなんだ。」であり、「天気」や「良い」というキーワードに対する応答文が「選択物がよく乾くね」であり、「来たよ」という述語に対する応答文が「誰と来たの？」であり、「見たよ」という述語に対する応答文が「いつ見たの？」である場合、音声認識結果であるユーザ発話「あっくんと遊びに来たよ」から、「あっくん」という人名と、「来たよ」という述語とが構造として得られると、応答文の候補として「誰と来たの？」及び「へぇそうなんだ。」が生成される。そして、対話履歴を利用して、最も自然な応答文として、「へぇそうなんだ。」が選択され、応答文が生成される。
【００６１】
次に、本実施の形態の原理について説明する。ユーザと対話装置との対話には、対話の主導権がユーザ側及び対話装置型の何れにあるかで、対話装置主導型の対話とユーザ主導型の対話の２種類がある。対話装置主導型の対話装置は、対話装置が応答できる応答をユーザに示すことができるが、ユーザが入力したいことを直接入力することができない、という問題がある。そこで、本実施の形態に係る対話装置１０では、ユーザが入力したいことを直接入力した場合に、質問応答型対話に応じた応答文を生成して、ユーザの発話に対して応答する。
【００６２】
また、ユーザ主導型の対話装置は、ユーザの入力を待ち受け、入力に応じた応答を返すことができるが、ユーザの入力がない場合には、対話が成立しない、という問題がある。そこで、本実施の形態では、情報提供型対話に応じた応答文を生成して、ユーザの入力がない場合であっても対話を成立させる。
【００６３】
また、対話装置主導型及びユーザ主導型のどちらの対話装置においても、擬人化された対話装置（２次元キャラクタ、動物・人型ロボットなどの形状をしていて、人間的な言葉を発する対話装置）を用いた場合には、対話装置として任意の入力を受け付けることができないにもかかわらず、ユーザは対人と同等の入力を対話装置に対して行なうことがある。例えば、展示場などに設置された音声入力可能な館内案内システム（展示場に関する発声「トイレはどこ？」や「何時までやってるの？」などを待ち受けている）に、館内案内システムとしては受け付けていない入力（例えば、「僕は、あっくんです。」、「遊びに来たよ。」、及び「今日は天気がいいね。」）があると（人間の心理的傾向で志向姿勢と呼ばれる。）、想定外の入力により、システムが誤応答したり、受け付けない発話として破棄（リジェクション）してしまう、という問題がある。システムが誤応答したり、「別の言い方で言って下さい。」などのリジェクション時の定型文を返すと、ユーザは、対話装置とは対話ができないと判断して、対話をやめてしまう。
【００６４】
想定外発話の多くがユーザからの情報提供である場合が多いため、本実施の形態の対話装置１０では、ユーザから任意の入力が行なわれる場合に、情報獲得型対話又は情報受理型対話に応じた応答文を生成して、ユーザからの発話に応答する。
【００６５】
上記のように、本実施の形態では、任意の入力に対し、ユーザとの対話を対話型分類に判別し、判別された対話型分類に応じた応答生成を行ことにより、想定外発話に対しても適切に受け付けることができる。
【００６６】
以下、上記のコンピュータ２２で実行される応答生成処理ルーチンについて図４を用いて説明する。まず、ステップ１００において、無入力時間の測定を開始し、次のステップ１０２において、入力部１２から入力された信号から、入力音声を示す音声信号が切り出されたか否かを判定する。入力部１２によってユーザによる発話に応じた音声信号が生成され、入力音声を示す音声信号が切り出されると、ステップ１０４において、認識用辞書データベースに登録された単語を参照して、入力された音声信号に基づいて、ユーザ発話を認識すると共に、認識されたユーザ発話の各々について信頼度を算出する。
【００６７】
そして、ステップ１０６では、音声の特徴量として、入力された音声信号の基本周波数を抽出し、ステップ１０８において、上記ステップ１０４で認識された信頼度が最も高いユーザ発話、及び上記ステップ１０６で抽出された音声信号の基本周波数に基づいて、ユーザからの発話が、質問又は要求を表わしているか否かを判定する。
【００６８】
上記ステップ１０８で、ユーザからの発話が、質問又は要求を表わしていると判定されると、ユーザとの対話が質問応答型対話であると判別し、ステップ１１０において、上記ステップ１０４で認識されたユーザからの発話、及び質問回答データベース４６Ａに基づいて、ユーザからの発話に対して、質問応答型対話に応じた応答文を生成して、音声出力部１６に出力して、応答生成処理ルーチンを終了する。
【００６９】
また、上記ステップ１０８で、ユーザからの発話が、質問又は要求を表わしていないと判定されると、ステップ１１２において、遷移確率記憶部２８に記憶された遷移確率と前回の判別結果とに基づいて、現在のユーザとの対話が情報獲得型対話である確率及び情報受理型対話である確率の各々を算出する。そして、ステップ１１４で、上記ステップ１１２で算出された情報受理型対話である確率が情報獲得型対話である確率より大きいか否かを判定する。上記ステップ１１４で、情報受理型対話である確率が情報獲得型対話である確率より大きい場合には、ユーザとの対話が情報受理型対話であると判別し、ステップ１１６において、上記ステップ１０４で認識されたユーザからの発話の構造を解析し、解析されたユーザからの発話の構造及び応答データベース４８Ａに基づいて、ユーザからの発話に対して、情報受理型対話に応じた応答文を生成して、生成された応答文を音声合成し、音声出力部１６に出力して、応答生成処理ルーチンを終了する。
【００７０】
上記ステップ１１４で、情報獲得型対話である確率が情報受理型対話である確率以下である場合には、ユーザとの対話が情報獲得型対話であると判別し、ステップ１１８において、記憶された対話履歴及び前回のユーザの発話に基づいて、情報獲得型対話に応じた応答文を生成して、生成された応答文を音声合成し、音声出力部１６に出力して、応答生成処理ルーチンを終了する。
【００７１】
上記ステップ１０２で、入力部１２から入力された信号から、音声信号が切り出されなかった場合には、ステップ１２０において、測定された無入力時間が、５秒以上であるか否かを判定し、ユーザから音声が入力されない時間が５秒未満である場合には、ステップ１０２へ戻る。一方、上記ステップ１２０において、測定された無入力時間が、５秒以上であると判定されると、ステップ１２２において、遷移確率記憶部２８に記憶された遷移確率と前回の判別結果とに基づいて、現在のユーザとの対話が情報提供型対話である確率及び情報獲得型対話である確率の各々を算出する。そして、ステップ１２４で、上記ステップ１２２で算出された情報提供型対話である確率が、情報獲得型対話である確率より大きいか否かを判定する。上記ステップ１２４で、情報提供型対話である確率が情報獲得型対話である確率より大きい場合には、ユーザとの対話が情報提供型対話であると判別し、ステップ１２６において、記憶された対話履歴、前回のユーザからの発話、及び情報データベース４２Ａに基づいて、ユーザからの発話に対して、情報提供型対話に応じた応答文を生成して、生成された応答文を音声合成し、音声出力部１６に出力して、応答生成処理ルーチンを終了する。
【００７２】
一方、上記ステップ１２４で、情報獲得型対話である確率が情報提供型対話である確率以上である場合には、ユーザとの対話が情報獲得型対話であると判別し、上記ステップ１１８へ移行し、情報獲得型対話に応じた応答文を生成して、生成された応答文を音声合成し、音声出力部１６に出力して、応答生成処理ルーチンを終了する。
【００７３】
そして、上記のように生成された応答文が、音声出力部１６によって音声出力される。
【００７４】
以上説明したように、第１の実施の形態に係る対話装置によれば、無入力時間、対話型分類の遷移確率、及びユーザからの発話が要求又は質問を表わしているか否かに基づいて、ユーザとの対話の対話型分類が、情報提供型対話、情報獲得型対話、質問応答型対話、及び情報受理型対話の何れであるかを判別し、判別された対話型分類に応じて応答文を生成することにより、任意の入力に対して適切に応答することができ、対話を継続させることができる。
【００７５】
また、判別された対話型分類に応じて、応答文の生成方法を切り替えることで、ユーザからのあらゆる入力を受け付け、破綻しない対話を実現することができる。
【００７６】
次に、第２の実施の形態について説明する。なお、第１の実施の形態と同様の構成になっている部分については、同一符号を付して説明を省略する。
【００７７】
第２の実施の形態では、対話装置の前を撮像部によって撮像し、対話装置の前に存在するユーザが、対話装置を見ているか否かを判定している点と、ユーザが対話装置を見ていると判定されると無入力時間の測定を開始している点とが第１の実施の形態と異なっている。
【００７８】
図５に示すように、第２の実施の形態に係る対話装置２１０は、入力部１２と、自装置の前を撮像する撮像部２１２と、入力部１２によって入力された信号、及び撮像装置２１２によって撮像された画像に基づいて、応答発話を生成するコンピュータ２１４と、音声出力部１６とを備えている。
【００７９】
撮像部２１２は、自装置の前にユーザが存在する場合に、ユーザの顔を含む領域を撮像するように配置されている。ユーザが自装置の前で自装置を見ている場合には、ユーザの顔が正面を向いている正面顔画像が撮像される。
【００８０】
コンピュータ２１４は、音声切り出し部２０と、撮像部２１２によって撮像された画像から、ユーザの正面顔画像を検出する正面顔検出部２２０と、正面顔検出部２２０によって正面顔画像が検出された時から、入力音声の無入力時間を計測する無入力時間カウンタ２２２と、音声認識部２４と、特徴量抽出部２６と、遷移確率記憶部２８と、判別結果記憶部３０と、確率算出部３２と、対話型分類判別部３４と、対話履歴記憶部３６と、応答生成部３８とを備えている。
【００８１】
正面顔検出部２２０は、撮像部２１２により撮像された画像から、正面を向いている顔画像の学習パターンを用いて、自装置の前に存在するユーザの正面顔画像を検出する。
【００８２】
無入力時間カウンタ２２２は、正面顔検出部２２０によってユーザの正面顔画像が検出されると、ユーザが対話装置２１０に目を向けていると判断して、ユーザから音声が入力されない状態が継続する時間の計測を開始する。
【００８３】
第２の実施の形態に係る応答生成処理ルーチンでは、撮像された画像からユーザの正面顔画像が検出されたか否かを判定し、正面顔画像が検出されると、無入力時間の測定を開始する。そして、入力部１２から入力された信号から、音声信号が切り出されたか否かを判定し、入力された信号から、音声信号が切り出されなかった場合には、測定された無入力時間が、５秒以上であるか否かを判定する。測定された無入力時間が、５秒以上であると判定されると、ユーザが対話装置２１０を見ているにもかかわらず、音声入力が中断している時間が長いと判断し、現在の対話が情報提供型対話である確率及び情報獲得型対話である確率に基づいて、ユーザとの対話の対話型分類が、情報提供型対話及び情報獲得型対話の何れかであるかを判別し、判別された対話型分類に応じて、応答文を生成する。
【００８４】
一方、入力された信号から音声信号が切り出されると、音声認識結果及び音声信号の基本周波数に基づいて、ユーザからの発話が、質問又は要求を表わしているか否かを判定し、ユーザからの発話が、質問又は要求を表わしていると判定されると、ユーザとの対話が質問応答型対話であると判別し、質問応答型対話に応じた応答文を生成する。また、ユーザからの発話が、質問又は要求を表わしていないと判定されると、情報獲得型対話である確率及び情報受理型対話である確率に基づいて、ユーザとの対話の対話型分類が、情報受理型対話及び情報獲得型対話の何れであるかを判別し、判別された対話型分類に応じて、応答文を生成する。
【００８５】
このように、ユーザが対話装置を見ていると判断されたときから、無入力時間の測定を開始することにより、ユーザからの入力がない状態が継続している時間を精度よく測定することができ、測定された無入力時間に基づいて、ユーザとの対話が情報提供型対話であると精度よく判別することができる。
【００８６】
なお、上記の実施の形態では、ユーザからの発話に対する応答を、スピーカによる音声出力によって行う場合を例に説明したが、これに限定されるものではなく、ディスプレイに応答文を表示するようにしてもよい。
【００８７】
次に、第３の実施の形態について説明する。なお、第１の実施の形態と同様の構成になっている部分については、同一符号を付して説明を省略する。
【００８８】
第３の実施の形態では、ユーザからテキストデータが入力される点が第１の実施の形態と主に異なっている。
【００８９】
図６に示すように、第３の実施の形態に係る対話装置３１０は、キーボードで構成され、かつ、ユーザからの入力文をテキストデータで入力する入力部３１２と、入力部３１２によって入力されたテキストデータに基づいて、応答文を生成するコンピュータ３１４と、ディスプレイで構成され、かつ、生成された応答文を表示する表示部３１６とを備えている。
【００９０】
コンピュータ３１４は、入力部３１２からの入力に基づいて、無入力時間を計測する無入力時間カウンタ３２２と、遷移確率記憶部２８と、判別結果記憶部３０と、確率算出部３２と、無入力時間カウンタ３２２によって計測された無入力時間、入力部３１２から入力されたテキストデータ、及び確率算出部３２によって算出された確率に基づいて、ユーザとの対話を、４種類の対話型分類の何れかに判別する対話型分類判別部３３４と、対話履歴記憶部３６と、応答生成部３８とを備えている。
【００９１】
次に、第３の実施の形態に係る応答生成処理ルーチンについて図７を用いて説明する。なお、第１の実施の形態と同様の処理については、同一符号を付して詳細な説明を省略する。
【００９２】
まず、ステップ１００において、無入力時間の測定を開始し、次のステップ３５０において、入力部３１２からテキストデータとして入力文が入力されたか否かを判定する。ユーザが入力部３１２によって入力文を入力すると、ステップ３５２において、上記ステップ３５０で入力された入力文が、質問又は要求を表わしているか否かを判定する。
【００９３】
上記ステップ３５２で、ユーザからの入力文が、質問又は要求を表わしていると判定されると、ユーザとの対話が質問応答型対話であると判別し、ステップ１１０において、ユーザからの入力文に対して、質問応答型対話に応じた応答文を生成して、表示部３１６に出力して、応答生成処理ルーチンを終了する。
【００９４】
また、上記ステップ３５２で、ユーザからの入力文が、質問又は要求を表わしていないと判定されると、ステップ１１２において、情報獲得型対話である確率及び情報受理型対話である確率の各々を算出する。そして、ステップ１１４で、情報受理型対話である確率が情報獲得型対話である確率より大きいか否かを判定し、情報受理型対話である確率が情報獲得型対話である確率より大きい場合には、ユーザとの対話が情報受理型対話であると判別し、ステップ１１６において、ユーザからの入力文の構造、及び応答データベース４８Ａに基づいて、ユーザからの入力文に対して、情報受理型対話に応じた応答文を生成して、表示部３１６に出力し、応答生成処理ルーチンを終了する。
【００９５】
上記ステップ１１４で、情報獲得型対話である確率が情報受理型対話である確率以下である場合には、ユーザとの対話が情報獲得型対話であると判別し、ステップ１１８において、記憶された対話履歴及び前回のユーザの入力文に基づいて、情報獲得型対話に応じた応答文を生成して、表示部３１６に出力し、応答生成処理ルーチンを終了する。
【００９６】
上記ステップ３５０で、入力部３１２から入力がなかった場合には、ステップ１２０において、測定された無入力時間が、５秒以上であるか否かを判定し、ユーザから入力文が入力されない状態が継続している時間が５秒未満である場合には、ステップ３５０へ戻る。一方、上記ステップ１２０において、測定された無入力時間が、５秒以上であると判定されると、ステップ１２２において、情報提供型対話である確率及び情報獲得型対話である確率の各々を算出する。そして、ステップ１２４で、情報提供型対話である確率が情報獲得型対話である確率より大きいか否かを判定し、情報提供型対話である確率が情報獲得型対話である確率より大きい場合には、ユーザとの対話が情報提供型対話であると判別し、ステップ１２６において、対話履歴、前回のユーザからの入力文、及び情報データベース４２Ａに基づいて、ユーザからの入力文に対して、情報提供型対話に応じた応答文を生成して、表示部３１６に出力し、応答生成処理ルーチンを終了する。
【００９７】
一方、上記ステップ１２４で、情報獲得型対話である確率が情報提供型対話である確率以上である場合には、ユーザとの対話が情報獲得型対話であると判別し、上記ステップ１１８へ移行し、情報獲得型対話に応じた応答文を生成して、表示部１６に出力し、応答生成処理ルーチンを終了する。
【００９８】
そして、上記のように生成された応答文が、表示部１６によって表示される。
【００９９】
このように、無入力時間、対話型分類の遷移確率、及びユーザからの入力文が要求又は質問を表わしているか否かに基づいて、ユーザとの対話の対話型分類が、情報提供型対話、情報獲得型対話、質問応答型対話、及び情報受理型対話の何れであるかを判別し、判別された対話型分類に応じて応答文を生成することにより、任意の入力に対して適切に応答することができ、対話を継続させることができる。
【０１００】
なお、上記の第１の実施の形態〜第３の実施の形態では、ユーザとの対話を４種類の対話型分類の中から判別する場合を例に説明したが、これに限定されるものではなく、情報提供型対話、質問応答型対話、及び情報受理型対話の３種類の対話型分類の中から判別するようにしてもよい。この場合には、無入力時間が所定時間以上である場合には、情報提供型対話であると判別し、ユーザからの発話が質問又は要求でないと判定された場合には、情報受理型対話であると判別すればよい。また、情報獲得型対話、質問応答型対話、及び情報受理型対話の３種類の対話型分類の中から判別するようにしてもよい。この場合には、無入力時間が所定時間以上である場合には、情報獲得型対話であると判別し、ユーザからの発話が質問又は要求でないと判定された場合には、算出された情報獲得型対話の確率及び情報受理型対話の確率に基づいて、情報獲得型対話及び情報受理型対話の何れかであると判別すればよい。
【０１０１】
また、前回の判別結果と遷移確率とを用いて、各対話型分類である確率を算出する場合を例に説明したが、これに限定されるものではなく、前回以前の複数の判別結果と遷移確率とを用いて、各対話型分類の確率を算出するようにしてもよい。
【０１０２】
また、情報データベース、質問データベース、質問回答データベース、及び応答データベースが、対話装置の内部に設けられている場合を例に説明したが、これに限定するものではなく、情報データベース、質問データベース、質問回答データベース、及び応答データベースを対話装置の外部に設け、これらのデータベースと対話装置とをネットワークで接続し、対話装置がネットワークを介してこれらのデータベースにアクセスするようにしてもよい。
【図面の簡単な説明】
【０１０３】
【図１】本発明の第１の実施の形態に係る対話装置の構成を示す概略図である。
【図２】対話型分類の状態遷移図である。
【図３】本発明の第１の実施の形態に係る対話装置の応答生成部の構成を示すブロック図である。
【図４】本発明の第１の実施の形態に係る対話装置の応答生成処理ルーチンの内容を示すフローチャートである。
【図５】本発明の第２の実施の形態に係る対話装置の構成を示す概略図である。
【図６】本発明の第３の実施の形態に係る対話装置の構成を示す概略図である。
【図７】本発明の第３の実施の形態に係る対話装置の応答生成処理ルーチンの内容を示すフローチャートである。
【符号の説明】
【０１０４】
１０、２１０  対話装置
１２   マイクロホン
１４   スピーカ
１６   認識用辞書データベース
１８   概念語辞書データベース
２０、２２０  概念表現データベース
２１   不明応答データベース
２２、２２２  コンピュータ
２１８  形容語辞書データベース
【図１】
0005045486.tif 000002
【図２】
0005045486.tif 000003
【図３】
0005045486.tif 000004
【図４】
0005045486.tif 000005
【図５】
0005045486.tif 000006
【図６】
0005045486.tif 000007
【図７】
0005045486.tif 000008