(57)【要約】【課題】本発明は、人間と機械との対話において、現在、進行している対話をよりユーザが求めている対話へと修正可能とする、対話制御方法を提供する。【解決手段】対話制御装置において、人間と機械との対話中に、常時、人の発話から感情計測を行なう。ある感情を検知した場合に、現在進行している対話を修正することにより、より機械とのスムーズな対話を提供することを特徴とする。【選択図】図１
2005258235.tif 000002
【特許請求の範囲】
【請求項１】
入力を受けつける入力部と、対話内容や感情判定情報を記録する記録部と、現在の状態を出力する出力部と、制御部とを有し、
上記制御部は、
上記入力部から送られてくる入力情報から、上記記録部に記録している上記感情判定情報を用いた分析を行ない入力情報の感情を判定し、
上記記録部に記録している上記対話内容と感情判定結果を用いて次の応答文を選択し、
上記出力部を介して出力することを特徴とする対話制御装置。
【請求項２】
上記入力部に用いる情報は音であることを特徴とする請求項１記載の対話制御装置。
【請求項３】
上記制御部で分析される内容は音の特徴量であることを特徴とする請求項２記載の対話制御装置。
【請求項４】
上記制御部で分析される内容は上記記録部に格納した感情判定情報を用いて感情の判定とその感情の度合いを検出することを特徴とする請求項１記載の対話制御装置。
【請求項５】
上記制御部で生成される応答は感情の判定とその感情の度合いを基に上記記録部に記録している上記対話内容から対話を進行させるための次の応答文を選択することを特徴とする請求項１記載の対話制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械との対話において、現在のユーザの心理状態を把握することにより、現在の対話をよりユーザが求めている対話へと制御することを可能とする、対話制御に関する。
【背景技術】
【０００２】
現在、人と機械との対話は、音声から音声認識を用いて文字化を行ない、言葉を用いた処理となる言語的な処理を用いて対話を行なっているので、対話は無機質的になりがちになる。対話をより豊かで、スムーズにすることを目指した研究を報告されており、うなずき等の頭部ジェスチャから肯定的か否定的かを判別する技術（例えば非特許文献１、参照）、発話の継続長の傾きから肯定的か否定的かを判別する技術（例えば非特許文献２、参照）がある。しかし、現在報告されている技術では、ユーザのある心理状態を検出した、または、検出していない、という判断を対話に反映させているだけであり、検出した心理状態の度合いを対話に反映させていない。
【０００３】
【非特許文献１】江尻康 松坂要佐 小林哲則、“対話中における頭部ジェスチャの認識”、電子情報通信学会技術研究報告、Ｖｏｌ．１０２、Ｎｏ．２１８、ｐｐ３１−３６、ＰＲＭＵ２００２−６１、２００２
【０００４】
【非特許文献２】藤江真也  八木大三  菊池英明  小林哲則、“パラ言語情報を用いた音声対話システム”、日本音響学会秋季研究発表会講論集、Ｖｏｌ．Ｉ、ｐｐ３９−４０、Ｓｅｐ．、２００３
【発明の開示】
【発明が解決しようとする課題】
【０００５】
人間と機械との音声対話において、機械は、人間の発話に対して応答を作成し、生成された言葉を音声に変換し、ユーザに提示す。これを複数回繰り返すことにより、対話が行なわれる。現在、対話に用いる技術としては、音声から音声認識を用いて文字化を行ない、言葉を意味する言語的な処理を用いる技術が用いられている。しかし、この技術では、対話が無機質的になってしまい、云わば、人間が機械に対して命令を言っているような感じになってしまう。よって、我々人間は機械に対して、身近に感じることができない。そこで、本発明では、人間が機械をより身近に感じられるようにするために、ユーザの心理状態判定し、かつ、その心理状態の度合いまでを計測することにより、人間と機械との対話をより豊かにすることができる対話制御方法及び装置を提供することを目的としている。
【課題を解決するための手段】
【０００６】
上記課題を解決するための、本願の開示する代表的な発明の概要は以下の通りである。本願発明の対話制御装置は、音声認識プログラム、音声合成プログラム、感情認識プログラムと対話内容を格納している記録部と、音声、音や画像などの信号を入力とする入力部と、対話に必要な音や画像などの信号を出力とする出力部と、これらを制御する制御部を有する。制御部は、入力部に送られてくる信号を基に、複数の応答から１つの応答を選択し、出力部からその選択結果の信号を出力することにより対話を行なっている。そして、入力部から入力する音声、音や画像などの信号から感情を検知した場合には、その感情度合いを検出し、現在行われている応答とは異なる応答を選択して、出力部から送出する。
【発明の効果】
【０００７】
人間と機械との対話において、音声認識を用いた言語的な情報を用いた応答選択に加え、人間の心理状態を把握するために、人間の音声から感情とその感情の度合いを分析する。そして、応答選択する際に感情とその感情の度合いを考慮することが可能となる。その結果、人間と機械との対話がよりスムーズで、かつ、豊かになる。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の実施形態を、図面を参照しながら説明する。図１は、本発明の対話制御方法を実現するためのシステムを説明するための概略図である。１０は対話制御装置である。
対話制御装置１０は、感情分析やデータ処理機能等を有する制御部１１、ハードディクス又はメモリ等各種データの記憶が可能な記録部１２、ユーザの音声を入力するためのマイク、ユーザの画像を入力とするカメラ、キーボード、マウス、タッチパネル、リモコン又は外部機器との接続端子等各種データの外部からの入力が可能な入力部１３、液晶ディスプレイ及びスピーカ等から構成され各種データの表示、外部機器を接続可能及び、音声出力が可能な出力部１４を有している。また、記録部１２では、対話制御装置１０における各種処理を実行するためのメインプログラムなどが記録され、メインプログラムは制御部１１で読み込まれ、各種の処理が実行される。対話制御装置は、ユーザによる音声の発話を含むユーザ入力を受け付け、入力情報に適した応答を生成・選択し、これを音声などを用いてユーザに対して出力する装置である。入力情報に応じた返答を出力する制御を対話制御という。
【０００９】
次に、本発明を説明するのに用いた図について説明する。図２は、本発明に用いる対話の処理構成とその流れ示した図である。図３は、対話中のサブ対話の処理構成と流れを示した図である。図４は、サブ対話中の機械からの問いかけの１つである普通入力の処理とその流れを示した図である。図５は、サブ対話中の機械からの問いかけの１つである簡単入力の処理とその流れを示した図である。図６は、普通・簡単入力において、感情を考慮した場合の対話の流れを示した図である。図７は、感情を考慮した場合の対話制御処理とその流れを示した図である。図８は、サブ対話内で用いられる話の内容を記述したデータベースである。図９は、対話を行なう際に必要な処理を記述したデータベースである。図１０は、普通・簡単入力の入力を切り替えするために必要な処理を記述したデータベースである。図１１は、現在の対話状態を記述したデータベースである。図１２は、感情判定処理と対話制御システムとのやり取りに必要な処理とその流れを示した図である。図１３、図１４と図１５は、機械が話す内容を記述したデータベースである。図１６は、感情を判定するための処理とその処理を示した図である。図１７、図１８は、感情を特定するために必要な変数を示したデータベースである。これらの図に示されるデータベースおよび処理構成を実現するためのプログラムは、記録部１２に記録される。
【００１０】
本発明では、対話制御を行なう際に、入力部１３から入力される信号を制御部１１において感情を分析する。ある特定の感情を検出した場合に、その感情とその感情の度合いにあった応答が選択され、その応答が出力部１４を通して、ユーザに送出される。この結果、スムーズな対話を実現することができる。
【００１１】
本発明では、人間と機械の対話中に、人間の怒り発話を検知すると、現在の対話が成立していないと判断し、対話を修正ための対話制御を行なう。これは、環境ノイズ等で対話に用いている音声認識が低下し、対話が成立しなくなってしまった場合に、人間の怒り発話を検知することにより、認識率が向上するような対話へと修正することを目的としている。認識率の向上する対話とは、例えば、駅名の場合には、通常は駅名を直接求めるのに対し、変化後は最初に県名、次に駅名を求める対話を行なうことである。前者はキーワードを直接求める方法であるので対し、後者は絞り込みにより数回に分けて、キーワードを求める方法にかえる。後者の手法は、音声認識において、認識すべき語を予めに絞ることが可能なため、認識率を高めることを狙っている。これにより、対話は少し煩雑になるが、駅名を求めるというタスクは達成できるため、対話が成立しないということを避けることができる。
【００１２】
図１に示すシステム構成を利用した第１の実施形態について図２を用いて以下に説明する。図２は、人間と機械との対話を示した対話ストーリーフローチャート２００である。対話制御を行なうために、対話を基本的には１問１答形式の小さなサブ対話に分割する。それらのサブ対話を組み合わせることにより、対話を構成する。対話ストーリーフローチャート２００は、種々のストーリーで使用することが可能であり、例えば、切符の購入や天気予報などストーリーに適応できる。次に、サブ対話とは、例えば、切符の購入のサブ対話の場合には、行き先、日時など、切符の購入するために必要な１項目のことを指す。また、対話の進め方は機械からの問いに人間が答える形であってもその逆であってもかまわない。
【００１３】
次に、図２は５つのサブ対話から構成されており、対話ストーリー内のサブ対話数は任意に増減できるものとする。２０１は対話の開始、２０７は対話の終了、２０２〜２０６は対話ストーリー内のサブ対話である。各対話は、ユーザの発話とコンピュータの発話（音声であっても、表示等、非音声であってもよい）の組によって構成される。サブ対話（２０２〜２０６）の出力は、例えば、継続と強制終了であり、人間と機械との対話の制御に必要な出力であれば、これ以外であっても良く、別途追加することができる。次に、出力である継続と強制終了について説明する。継続は、コンピュータの発話に対してユーザが適切に応答したことが確認されて（またはユーザの発話に対するコンピュータの応答が適切だったことが確認されて）、サブ対話の内容が成立したことを示す出力であり、次のサブ対話に進む。よって、継続の出力は次のサブ対話に接続されており、最終のサブ対話の接続は終了２０７に接続している。強制終了は対話が成立しなかったことを示す出力であり、対話が途中の場合でも強制終了する。よって、全ての強制終了は強制終了２０８に接続している。図２の手順は、対話制御装置１０の記録部１２に記憶されたメインプログラムにしたがって制御部１１が対話の制御を行なっており、また、制御部１１がマイクなどの入力部１３、スピーカなどの出力部１４を制御している。
【００１４】
図２で示したサブ対話（２０２〜２０６）の処理とその流れについて示した１例が、図３のフローチャートである。これをサブ対話の入力方法のフローチャート３００という。図３のフローチャートを説明する前に、このフローチャートに必要な値について説明する。なぜならば、このフローチャートの実行には、現在の対話の状態を計測した結果を利用することが好ましいからである。そのため、現在の対話の状態を管理するために、例えば、現在の対話の状態の計測結果をデータベースとしてまとめたものである対話状態分析データベース１１００を用いてもよい。
【００１５】
図１１は対話状態分析データベース１１００の１例である。図１１は、現在の対話状況を格納しておくデータベースであり、各項目で、認識された結果、利用した時間やユーザの心理状態などを記述し、格納する。そして、対話状態分析データベース１１００は、現在の状態を知るために用いることと他の状態で参照するために用いることを目的としている。図１１では、状態１１０１は、現在の状態を示している。前状態１１０２は、１つ前の状態を示している。時間１１０３は、現在の状態になった時刻を示している。質問認識結果１１０４は、質問時に認識を用いた場合の認識結果を格納する。確認認識結果１１０５は、確認時に認識を用いた場合の認識結果を格納する。最新感情判定１１０６は、最新の感情判定を示している。最新感情分析結果１１０７は、感情の判定結果を格納する。最新感情検出時１１０８は、判定した時刻を格納する。
【００１６】
最新モード１１０９は、現在のモードを示している。最新モード変更時１１１０は、現在のモードに変更になった時刻を示している。最新入力方法１１１１は、現在の入力方法を示している。最新入力方法変更時１１１２は、現在の入力方法になった時刻を示している。次の状態１１１３は、次に進む状態を格納する。項目１１１４は、各項目を示している。値１１１５は、各項目に対する値が格納する。なお、これら対話状態分析データベース１１００に記憶される項目は、これらに限定されることなく、必要に応じて、削除及び追加することができるものとする。また、この対話状態分析データベース１１００は、過去を参照するための資料として保存することが好ましく、例えば、人間と機械とのやり取り毎に、記録部１２に保存することが好ましい。
【００１７】
次に、図３で示すサブ対話の入力方法のフローチャート３００の構成について以下に説明する。入力分岐３０２は、入力方法における分岐である。サブ対話とは、例えば、対話が切符の購入の場合のサブ対話は、行き先、日時など、対話である切符の購入するために必要な１項目のことで表している。サブ対話の入力は、例えば、行き先など、対話を成立するために必要な１項目の入力である。また、入力方法とは、１項目の求め方のことをいい、例えば、入力を直接求める方法や、入力を段階的に絞り込むように求める方法などがある。入力分岐３０２で分岐する数は、使用する入力方法の数と同数が好ましく、例えば、図３では普通入力３０３と簡単入力３０４の２つの入力方法で構成されているので、分岐数は２とした。分岐方法は、対話状態分析データベース１１００の最新入力方法１１１１である。最新入力方法１１１１で、「普通」と記述されているならば、普通入力３０３へ、また、「確認」と記述されているならば、確認入力３０４に進む。また、これら入力方法に関して、優先順位をつけるのも好ましく、例えば、図３のサブ対話の入力方法のフローチャート３００では２種類の入力方法から構成されており、かつ、入力方法の優先順に、普通入力３０３、簡単入力３０４としてもよい。
【００１８】
普通入力３０３と確認入力３０４の構成は、それぞれ、図４と図５で説明する。普通入力３０３と確認入力３０４の出力は、例えば、リスタート、入力切替、強制終了と継続であり、次の対話の進め方に必要か出力であれば、これ以外であってもかまわない。次に、これらの出力であるリスタート、入力切替、強制終了と継続について説明する。リスタートは対話の最初から再スタートさせるために、対話の先頭に戻る。よって、リスタートで接続されている先は、入力分岐３０２である。入力切替は現在用いている入力方法では入力が完了できなかった場合に、次の入力方法として用いるものである。よって、普通入力３０３の場合には、次の入力方法として、簡単入力３０４を用いる。簡単入力３０４の場合には、次の入力方法が存在しないので、強制終了とする。強制終了は、対話が成立しなかったことを示す出力であり、対話が途中場合でも対話を終了する。よって、これは強制終了３０７に接続している。継続は、対話が成立したことを示す出力であり、次の対話に進む。よって、各対話の継続は次の対話に接続しており、継続３０６に接続している。
【００１９】
次に、それぞれの入力方法である普通入力３０３と簡単入力３０４の構成についての１例を図４と図５を用いて説明する。図４は普通入力のフローチャート４００、図５は簡単入力のフローチャート５００である。図４と図５の違いは、１項目の求め方の違いであり、図４では入力を直接求める方法や、図５では入力を段階的に絞り込むように求める方法を用いる。１項目の求め方は、絞り込みを数回行なうことができる。例えば、図４では1回、図５では２回から構成されている。はじめに、図４である普通入力について説明する。図４では、普通入力のフローチャート４００で、これは１回で直接求める方法であるため、言葉イ４０２から構成されている。言葉イ４０２の出力は、例えば、リスタート、入力切替、強制終了と継続であり、次の対話の進め方に必要な出力であれば、これ以外であってもかまわない。また、図４の出力は、図３のサブ対話の入力方法のフローチャート３００の普通入力３０３の出力と同じであることが好ましい。
【００２０】
次に、図５である簡単入力について説明する。図５では、簡単入力のフローチャート５００で、これは２回で段階的に絞り込んで求める方法であるため、言葉ロ５０２、言葉ハ５０３から構成されている。言葉ロ５０２、言葉ハ５０３の出力は共に、例えば、リスタート、入力切替、強制終了と継続であり、次の対話の進め方に必要な出力であれば、これ以外であってもかまわない。また、図５の出力は、図３のサブ対話の入力方法のフローチャート３００の簡単入力３０４の出力と同じであることが好ましい。
次に、図４での言葉イ４０２、図５での言葉ロ５０２と言葉ハ５０３の構成の１例を図６を用いて説明する。図６は、言葉イロハ内のフローチャート６００であり、言葉イ４０２、言葉ロ５０２と言葉ハ５０３は、このフローチャートによって処理させる。
【００２１】
言葉イロハ内のフローチャート６００を説明する前に、はじめに、言葉イ、言葉ロと言葉ハに対して、どのような言葉を用いるかを指定しておくことが好ましく、例えば、対話別に言葉イ、言葉ロと言葉ハを指定して、データベースとしてまとめたものである対話関連付けデータベース８００を用いてもよい。言葉とは、機械が１度に話す内容のことであり、言葉単位で管理することが好ましい。図８は、対話関連付けデータベース８００の１例である。対話毎に発話内容が異なっているため、使用する対話に相応しい言葉を選択できることが好ましく、例えば、図８は、各対話における言葉イ、言葉ロと言葉ハの対応表である。対話１（８０４）における言葉イ（８０１）は言葉１-１-１、言葉ロ（８０１）は言葉１-２-１、言葉ハ（８０１）は言葉１-２-２であり、対話２（８０５）における言葉イ（８０１）は言葉２-１-１、言葉ロ（８０１）は言葉２-２-１、言葉ハ（８０１）は言葉２-２-２である。なお、これら対話関連付けデータベース８００に記憶されるデータ項目は、これらに限定されることなく、必要に応じて、削除及び追加することができるものとする。
【００２２】
また、図８の対話関連付けデータベース８００の記述されている値（言葉１-１-１など）について述べる。これは、対話の際に必要な情報を予め指定しておくための物で、データベースとしてまとめたものである言葉構成データベース９００を用いてもよい。図９は、言葉構成データベース９００の１例である。例えば、対話するための質問内容、音声合成や音声認識に用いるための詳細なパラメータや機械がアクションするために必要な詳細なパラメータを格納することができる。
【００２３】
図９では、質問使用番号９０１は、質問内容の番号を示している。対話継続確認番号９０２は、対話継続の際に用いる際に、現在の対話状態を示すための内容を示している。入力切替確認番号９０３は、入力切り替えをする際に用いられる質問内容を示している。質問代入（＄ＩＮＰＵＴ）９０４は、質問内容に地名など変更可能な言葉を入れる際に用いるもので、挿入する言葉を示している。この値に、先頭に＄がついている場合には、対話状態分析データベース１１００の項目の中含まれている文章が挿入する。質問認識利用９０５は、質問の際に認識をするかどうかの有無を示している。質問認識利用時９０６は、機械からの発話の前後のどちらで音声認識を起動させるかを示している。質問認識ＤＢ名９０７は、認識する際に用いるデータベース名を示している。質問認識結果代入先９０８は、認識した結果を代入する先を示している。
【００２４】
確認使用番号９０９は、確認する際に用いた内容を示している。確認ステート内容確認番号９１０は、現在の状態を示している。確認代入（＄ＩＮＰＵＴ）９１１は、質問内容の一部に変更可能な言葉を入れる際に用いるもので、挿入する言葉を示している。この値に、先頭に＄がついている場合には、対話状態分析データベース１１００の項目の中含まれている文章が挿入する。確認認識利用９１２は、質問の際に音声認識を行なうかの有無を示している。確認認識利用時９１３は、機械からの発話の前後のどちらで音声認識を起動させるかを示している。確認認識ＤＢ名９１４は、認識する際に用いるデータベース名を示している。確認認識結果代入先９１５は、認識した結果を代入する先を示している。なお、これら言葉構成データベース９００に記憶されるデータ項目は、これらに限定されることなく、必要に応じて、削除及び追加することができるものとする。
【００２５】
次に、言葉イロハ内のフローチャート６００の各ステップについて説明する。内容発話６０２は対話内容の発話と質問事項があるならば、それに対しての音声合成と音声認識を用いる。発話する内容を記述したファイルは、対話関連付けデータベース８００で各言葉に対して、番号が割り振られており、対話によって、番号が異なる。そして、選択された番号を基に、言葉構成データベース９００の質問使用番号９０１に記述している番号を用いて、対話文章データベース１３００から選び出す。認識した結果を対話状態分析データベース１１００の質問認識結果１１０４に記述する。例えば、対話関連付けデータベース８００では、対話１の言葉イは、言葉１−１−１が選択される。そして、言葉構成データベース９００の質問使用番号９０１の１−１−１の項目である１−１−１が選択される。最後に、対話文章データベース１３００から１−１−１番目に格納されている言葉である「駅名を言ってください？」が選択される。音声合成・音声認識に用いられる技術、種々の公知の技術を使用することが可能であり、該技術を実行するためのプログラムが記録部１２に予め記憶されているものとする。また、音声認識の代わりに、入力部１３のキーボードにおけるキーの押下、マウスにおけるボタンの押下、タッチパネルにおける接触の有無、リモコンにおけるボタンの押下等を用いて操作することも可能である。さらに、音声合成の代わりに、出力部１４の液晶ディスプレイを用いて表示することも可能である。
【００２６】
対話修正６０３は、発話している際に人の感情を検知し、この感情の状態から人が何を求めていることを推測する。感情の検知から対話修正６０３の構成は、図７で説明する。感情の検知から対話修正６０３の出力は、例えば、リスタート、入力切替、強制終了と継続であり、次の対話の進め方に必要か出力であれば、これ以外であってもかまわない。次に、リスタート、入力切替、強制終了と継続について説明する。リスタートは対話の最初から再スタートさせるために、対話の先頭に戻る。よって、リスタートで接続されている先は、内容発話６０２である。入力切替は現在用いている入力方法では入力が完了できなかった場合に、次の入力方法として用いるものである。よって、入力切替は入力切替６０９に接続されている。強制終了は、対話が成立しなかったことを示す出力であり、対話が途中でも終了させる。よって、強制終了６１０、６１１に接続させている。継続、対話が成立したことを示す出力であり、次の対話に進む。よって、対話の継続は次の対話に接続されており、次の対話に続く場合には、継続６０７に接続されている。確認分岐６０４は、人が発話した内容を確認することの有無により分岐を行なう。選択方法は、対話状態分析データベース１１００の最新モード１１０９である。
【００２７】
最新モード１１０９に「確認」と記述されているならば、確認発話６０５へ、また、「普通」と記述されていれば、継続６０７に進む。確認発話６０５は、確認と問うための発話と、もし、確認事項があるならば、音声合成と音声認識を用いて確認のための対話を行なう。発話する内容を記述したファイルは、言葉構成データベース９００の確認使用番号９０９に記述している番号を用いて、対話文章データベース１３００から選び出す。認識した結果を対話状態分析データベース１１００の確認識結果１１０５に記述する。音声認識・音声合成は、言葉イロハ内のフローチャート６００の内容発話６０２と同様のものを用いてもかまわない。また、感情の検知から対話修正６０６は、感情の検知から対話修正６０３と同様のものを用いてもかまわない。また、内容発話６０２や感情の検知から対話修正６０６で、出力を判定する際に、今までの状態を計測した結果を利用することが好ましく、例えば、これをデータベースとしてまとめたものである対話状態分析データベース１１００を用いてもよい。また、新しく判定した結果を対話状態分析データベース１１００に記述することが好ましい。
【００２８】
感情の検知から対話修正６０３の構成について述べる。これは、感情を抽出した後に、現在の対話の状態から修正することにより、よりスムーズな対話になる。対話の修正に感情を用いることが好ましく、感情の検知から対話修正６０３の１例を図７のフローチャートを用いて説明する。感情分析の結果７０２は、現在の話者の発話の感情を判定する。また、感情の度合いも判定することが好ましい。感情分析の結果７０２については、感情の判定とその度合い判定することが好ましく、これを図１２で説明する。モードチェック７０３は、現在のモードを確認し、もし、変更が必要な場合には、モード変換７０４を行なう。モード変換７０４は、モードチェック７０３の結果を基に、モードの変換を行なう。変換方法は、対話状態分析データベース１１００の最新モード１１０９と最新モード変更時１１１０である。最新モード１１０９と最新モード変更時１１１０から現在のモードを判定する。モードを変換した場合には、最新モード１１０９と最新モード変更時１１１０をそれぞれ更新する。感情カウント７０５は、ある一定時間内に、ある感情数をカウントしたものである。計測方法は、ある一定時間内に、どの感情を何回発話したかを計測することである。時間チェック７０６は、前に検出した感情がいつ検出されたかを分析することで、何秒前に検出されたかを分析する。検出方法は、対話状態分析データベース１１００の最新感情検出時１１０８と現在の時間の差から求める。
【００２９】
そして、予めある閾値を設け、その閾値以上と未満で分岐を変える。感情カウント７０５と時間チェック７０６により、入力切替確認７０７か対話状態説明・対話接続確認７０８の分岐を行なう。入力切替確認７０７は、入力方法を切り替える問いを行ない、話者に判定してもらう。その際に、対話内容の発話と質問事項があるならば、音声合成と音声認識を用いて対話を行なう。発話する内容を記述したファイルは、入力切替確認・対話継続確認データベース１０００の質問使用番号１００１に記述している番号を用いて、切替・継続対話文章データベース１５００から選び出す。音声認識・音声合成は、言葉イロハ内のフローチャート６００の内容発話６０２と同様のものを用いてもかまわない。話者は、入力の切り替えを望む場合には「はい」を、分岐を望まない場合には「いいえ」を選択する。そして、「はい」を選択した場合には、入力切替７１０として接続され、「いいえ」を選択した場合には、強制終了７１１に接続される。また、対話状態分析データベース１１００の最新入力方法１１１１と最新入力方法変更時１１１２を変更する必要がある。「はい」を選択した場合には、最新入力方法１１１１「簡単」とし、最新入力方法変更時１１１２を更新する。
【００３０】
対話状態説明・対話接続確認７０８は、現在どのような対話を行なっているかを述べ、この対話を続けるかの判定を行なう。その際に、対話内容の発話と質問事項があるならば、音声合成と音声認識を用いて対話を行なう。発話する内容を記述したファイルは、入力切替確認・対話継続確認データベース１０００の質問使用番号１００１に記述している番号を用いて、現在状態文章データベース１４００と切替・継続対話文章データベース１５００から選び出す。音声認識・音声合成は、言葉イロハ内のフローチャート６００の内容発話６０２と同様のものを用いてもかまわない。話者は、対話を続ける場合には「はい」を、この対話をスタートからやり直す場合には、「いいえ」を発話する。そして、「はい」を選択した場合には、繰り返し７１２に接続され、「いいえ」を選択した場合には、リスタート７１３に接続される。最後に、感情の検知から対話修正７００を分析する際に、今までの状態を計測した結果を利用することが好ましく、例えば、これをデータベースとしてまとめたものである対話状態分析データベース１１００を用いてもよい。また、新しく判定した結果をそれぞれの項目に対して、随時、対話状態分析データベース１１００に記述することが好ましい。
【００３１】
図１０は、図７の入力切替確認７０７と対話継続確認７０８の内容を管理するために用いるもので、データベースとしてまとめたものである入力切替確認・対話継続確認データベース１０００を用いてもよい。図１０は、入力切替確認・対話継続確認データベース１０００の１例である。これは、言葉単位で管理することが好ましく、例えば、対話するための質問内容や音声認識に用いるための詳細なパラメータや機械がアクションするために必要な詳細なパラメータを１言葉単位で格納することができる。言葉とは、機械が１度に話す内容のことである。質問使用番号１００１は、実際の質問内容を示している。質問認識利用１００２は、質問の際に認識を用いるかの有無を示している。質問認識利用時１００３は、機械からの発話の前後のどちらで音声認識を起動させるかを示している。質問認識ＤＢ名１００４は、認識する際に用いるデータベース名を示している。分析結果代入先１００５は、認識した結果を代入する先を示している。対話内容は、入力切替確認１００６と対話継続確認１００７のそれぞれの項目に記述がある。なお、これら入力切替確認・対話継続確認データベース１０００に記憶されるデータ項目は、これらに限定されることなく、必要に応じて、削除及び追加することが好ましい。
【００３２】
図７の感情分析の結果７０２を利用する際に、感情分析を計測することが好ましく、例えば、人の発話から分析を行なう方法である感情分析フローチャートを用いてよく、図１２は１例であり、音声を用いた感情分析フローチャート１２００である。以下、感情分析フローチャート１２００の説明をする。感情判定１２０２は、音声から感情を特定する。音声感情認識に用いられる技術、種々の公知の技術を使用することが可能であり、該技術を実行するためのプログラムが記録部１２に予め記憶されているものとする。感情の度合いの求め方は、例えば、３０秒以内に何回怒り発話を検知したなど、単位時間当たりの感情検知回数を調べることにより、感情の度合いを求めることができる。感情回数が多いほど、感情度合いが高いということである。これは、感情度合いの求め方の１例であり、また、感情判定フローチャート１６００でも、感情の度合いを求めることでき、これを用いてもかまわない。また、音声感情認識の代わりに、音声認識を用いて、「ちがう」など、ある特定の感情が含まれている可能性のある単語を認識した場合には、ある特定の感情を検出したと判定することもできる。
【００３３】
さらに、入力部１３のキーボードにおけるキーの押下、カメラによる画像認識における感情判定、マウスにおけるボタンの押下、タッチパネルにおける接触の有無、リモコンにおけるボタンの押下等を用いて操作することも可能である。判定結果の更新１２０３は、感情判定１２０２の結果を対話状態分析データベース１１００の最新感情判定１１０６に代入する。また、感情判定結果を基に、対話を変更することが好ましい。変更方法としては、今までの感情状態を判定した結果を利用することが好ましく、例えば、対話状況をデータベースとしてまとめたものである対話状態分析データベース１１００を用いてもよい。そして、変更した結果を対話状態分析データベース１１００の項目へ記述してもかまわない。例えば、ある感情を検知した場合には、対話状態分析データベース１１００の最新モード１１０９を「通常」から「確認」に一定時間変更し、また、ある感情の度合いにより対話状態分析データベース１１００の最新入力方法１１１１を「普通」から「簡単」に一定時間変更し、変更した時間を記述することが好ましい。
【００３４】
言葉構成データベース９００の質問使用番号９０１で、１−１−１という番号が振られているが、その番号は、現在の対話で使用する言葉の番号であり、実際に言葉が格納されているデータベースを利用することが好ましく、例えば、これをデータベースとしてまとめたものである対話文章データベース１３００を用いてもよい。図１３は対話文章データベース１３００の１例である。
【００３５】
対話文章データベース１３００は、実際に対話時に機械が発話する内容が記述されている。ＮＯ．（１００７）は番号であり、その番号の内容を言葉（１３０７）に記述してある。１３０１〜１３０６は、番号と言葉が対になっており、１−１−１の場合には、言葉は「駅名を言ってください？」である。また、言葉に＄ＩＮＰＵＴと示されている箇所は、＄ＩＮＰＵＴの部分に任意の言葉を含めることができることが好ましく、例えば、言葉構成データベース９００の質問代入（＄ＩＮＰＵＴ）９０４を利用することにより、＄ＩＮＰＵＴの部分を任意の言葉に変更できる。また、対話時に機械が発話する内容だけでなく、現在の状態を確認するために必要な言葉が格納されているデータベースを利用することが好ましく、例えば、これをデータベースとしてまとめたものである現在状態文章データベース１４００を用いてもよい。図１４は現在状態文章データベース１４００の１例である。また、図７の入力切替確認７０７と対話継続確認７０８時に、対話に使用する言葉の番号であり、実際に言葉が格納されているデータベースを利用することが好ましく、例えば、これをデータベースとしてまとめたものである切替・継続対話文章データベース１５００を用いてもよい。図１５は切替・継続対話文章データベース１５００の１例である。現在状態文章データベース１４００と切替・継続対話文章データベース１５００のデータベースの構造は、対話文章データベース１３００と同じものを使用することが好ましい。
【００３６】
感情分析フローチャート１２００の感情判定１２０２で、音声から感情を特定していることが好ましく、例えば、図１６は１例であり、人の心理状態を認識する処理である感情判定フローチャート１６００である。これは、利用者の危機を観測し、利用者、及び、加害者等の人間の怒鳴り、叫びや悲鳴など、日常の生活では発することのない音声を発生したと判断されたならば、利用者の危機であると判定する処理である。
【００３７】
図１６は感情判定フローチャート１６００の典型的な構成例を示すフローチャートであり、感情判定フローチャート１６００は音声特徴抽出処理１６０１、感情識別処理１６０２と感情データベース１６０４と判定処理１６０５から構成される。音声特徴抽出処理１６０１は入力音声からその特徴量を抽出する。特徴量としては、声の高さを表すピッチの場合には、感情の含まれている１発話における、ピッチの平均値、ピッチの最大値、ピッチの最大値を検出した位置、ピッチの最小値、ピッチの最小値を検出した位置などの検出を特徴量とする。また、声の大きさを表すエネルギの場合には、感情の含まれている１発話における、エネルギの平均値、エネルギの最大値、エネルギの最大値を検出した位置、エネルギの最小値、エネルギの最小値を検出した位置などの検出を特徴量とする。これは、１例であり、１発話中の中から、ピッチやパワーやテンポなどの求め、それらから特徴を求めることにより、それを特徴量とすることができる。また、１発話中の中から、ピッチやパワーやテンポなどの時間における変化量から特徴量を抽出してもかまわない。さらに、特徴量は、公知で知られている感情の特徴を特徴量として用いてもかまわない。また、音声感情認識の代わりに、音声認識を用いて、「ちがう」など、ある特定の感情が含まれている可能性のある単語を認識した場合には、感情を検出したと判定することもできる。
【００３８】
音声特徴抽出処理１６０１により抽出された音声特徴は感情識別処理１６０２に入力され、感情を認識する。この感情識別処理１６０２、公知で知られている手法を用いることができる。例えば、判別分析を用いることにより、はじめに、学習を行ない、予め、明示されている音声データの特徴量から判別関数の係数を求める。例えば、判別関数の結果が怒りを１と平静をー１となるような、判別関数の係数を求めることが好ましい。そして、この判別関数を用いて、明示されていない音声データの判別を行なう。結果は、正の数字の場合には怒り、負の場合には平静となる。
【００３９】
また、感情の度合いを抽出する場合には、正の数字が大きい場合には怒りの度合いが高い、負の数字が大きい場合には、平静の度合いが高いと判定することができる。この手法は、感情を特定する際の１例であり、例えば、ニューラルネットや多変量解析を用いてもかまわない。また、感情識別処理１６０２をする際に、感情データベース１６０３を用いる。感情データベース１６０３は、予め、先ほど述べた学習のプロセスを予め行なった結果のデータである。このデータベースを用いることにより、学習を省くことができる。そして、感情識別をいろいろな感情の同定するための複数の変数が格納されているデータベースであり、さらに、複数のデータが該データの変数と対応づけて記録されているデータベースでもある。入力音声は、感情データベース１６０３と比較することで、現在入力された音声の感情を特定することが可能となる。
【００４０】
図１８に感情データベース１６０３の１例であり、１８０１は怒鳴り声、１８０２は悲鳴、１８０３は１８０１から１８０２の内容を示す項目、１８０４〜１８０８は各項目に対する変数である。なお、これら感情データベース６０３に記憶される項目は、これらに限定されることなく、必要に応じて、削除及び追加することができるものとする。
【００４１】
さらに、人間の音声ではなくても、拳銃の発砲する音、ガラス窓が割れる音など、利用者に危機となる音が発生された場合でも、利用者の危機と判断し、通報する。この処理は、図１６の感情認識処理１６００と同じ処理を用いて行なう。しかし、図１６の感情認識処理１６００では、人の発話から感情を分析するために、感情データベース１６０３を用いているが、これを危機音データベース１７００に取り替える。この危機音データベース１７００は、予め危険な音をデータベース化したものである。危機音データベース１７００は、複数のデータが該データの変数と対応づけて記録されているデータベースである。図１７に危機音テーブル１７００の１例であり、１７０１は拳銃の発砲音、１７０２はガラスの割れる音、１７０３は項目、１７０４〜１７０８は各項目に対する変数である。なお、これら危機音データベース１７００に記憶される項目は、これらに限定されることなく、必要に応じて、削除及び追加することができるものとする。
【００４２】
感情は怒りだけでなく、他の感情を検出したものを用いてもかまわない。また、感情だけではなく、例えば緊張度、好意度やうそ判定など、人の心理状態を表せるものであれば、これを用いてもかまわない。この実施例１では、例えば駅名検索など、ある目的を持った対話に対して示したが、使用用途はこれだけではなく、例えば癒し会話など、コミュニケーションをより豊かにする対話に用いることができる。
以上説明したように、第１の実施形態は、人間と機械との対話において、感情を考慮することで、その感情にあった対話制御を行なうことが可能となった。この結果、表現豊かでスムーズな対話を実現することができる。
【図面の簡単な説明】
【００４３】
【図１】本発明の対話制御方法を実施するためのシステムの概要を示す図である。
【図２】本発明の第１の実施形態に係わる対話修正方法における手順を示すフロー図である。
【図３】サブ対話の入力方法の手順を示すフロー図である。
【図４】普通入力の手順を示すフロー図である。
【図５】簡単入力の手順を示すフロー図である。
【図６】言葉イロハ内の手順を示すフロー図である。
【図７】感情の検知から対話修正の手順を示すフロー図である。
【図８】対話関連付けデータベースの一例を示す図である。
【図９】言葉構成データベースの一例を示す図である。
【図１０】入力切替確認・対話継続確認データベースの一例を示す図である。
【図１１】対話状態分析データベースの一例を示す図である。
【図１２】感情分析の手順を示すフロー図である。
【図１３】対話文章データベースの一例を示す図である。
【図１４】現在状態文章データベースの一例を示す図である。
【図１５】切替・継続対話文章データベースの一例を示す図である。
【図１６】感情判定の手順を示すフロー図である。
【図１７】危機音データベースの一例を示す図である。
【図１８】感情データベースの一例を示す図である。
【符号の説明】
【００４４】
１０  対話制御装置、１１  制御部、１２  記録部、１３  入力部、１４  出力部。
【図１】
2005258235.tif 000003
【図２】
2005258235.tif 000004
【図３】
2005258235.tif 000005
【図４】
2005258235.tif 000006
【図５】
2005258235.tif 000007
【図６】
2005258235.tif 000008
【図７】
2005258235.tif 000009
【図８】
2005258235.tif 000010
【図９】
2005258235.tif 000011
【図１０】
2005258235.tif 000012
【図１１】
2005258235.tif 000013
【図１２】
2005258235.tif 000014
【図１３】
2005258235.tif 000015
【図１４】
2005258235.tif 000016
【図１５】
2005258235.tif 000017
【図１６】
2005258235.tif 000018
【図１７】
2005258235.tif 000019
【図１８】
2005258235.tif 000020