(57)【特許請求の範囲】
【請求項１】
対話参加者によって行われる対話を支援する対話支援装置であって、
前記対話参加者および前記対話参加者以外の者の発話の列である対話履歴を当該対話履歴の対話参加者および対話のトピックに対応づけて格納している対話履歴データベースの中から、前記対話参加者を特定する情報および対話状況に基づいて対話履歴を選択する対話履歴選択手段と、
前記対話履歴選択手段により選択された前記対話履歴に基づいて、前記対話における前記対話参加者の次の発話を予測する発話予測手段とを備え、
前記対話履歴選択手段は、
対話参加者を特定する情報および対話のトピックを示す情報を取得し、取得した情報が示す対話参加者および対話のトピックに対応づけられた対話履歴を前記対話履歴データベースから、基準対話履歴として抽出し、
前記対話履歴のうち、抽出された前記基準対話履歴を除く対話履歴のそれぞれについて、前記基準対話履歴と共通して含まれ、かつ、連続する発話の集合を１つの発話ブロックとみなした場合、前記発話ブロックの数に反比例する、または、前記発話ブロックに含まれる発話数の平均に比例する類似度を算出し、
算出した類似度の最も高い対話履歴を選択し、
前記発話予測手段は、前記対話履歴選択手段により選択された前記対話履歴の中で、前記対話における発話に対応する発話の次に出現する発話を、前記対話における前記対話参加者の次の発話として予測する
ことを特徴とする対話支援装置。
【請求項２】
前記対話履歴選択手段は、さらに、前記集合それぞれに含まれる発話の数を特定し、特定した発話の数を用いて、前記類似度を発話の数の平均に比例するように算出する
ことを特徴とする請求項１記載の対話支援装置。
【請求項３】
前記対話履歴選択手段は、２つの前記対話履歴に共通して含まれる発話である否かを、発話を特定するための発話情報の一致、表層表現の一致、および内容語の一致の少なくとも１つにより判定する
ことを特徴とする請求項１記載の対話支援装置。
【請求項４】
前記対話支援装置は、さらに、
前記対話参加者の発話を受け付ける発話受付手段と、
前記発話受付手段により受け付けられた前記発話を、発話の種類ごとに異なる言語で表現された発話が対応づけられた表を参照することで、他の言語に変換する発話処理手段と、
前記発話処理手段により変換された前記他の言語の前記発話を出力する発話出力手段と
を備えることを特徴とする請求項１記載の対話支援装置。
【請求項５】
前記発話受付手段は、入力される音声に対して、音声認識辞書を前記発話予測手段により予測された予測発話、前記予測発話に近い文、前記予測発話に含まれる単語、および前記予測発話から連想される単語のいずれかの範囲内に絞り込みを行った上で音声認識を行い、前記音声認識結果を前記発話として受け付ける
ことを特徴とする請求項４記載の対話支援装置。
【請求項６】
前記対話支援装置は、さらに、表示手段を備え、
前記発話予測手段は、予測した予測発話を前記表示手段に表示し、
前記発話受付手段は、前記予測発話が前記対話参加者により選択されると、前記予測発話を前記発話として受け付ける
ことを特徴とする請求項４記載の対話支援装置。
【請求項７】
前記対話支援装置は、さらに、表示手段を備え、
前記発話予測手段は、前記対話履歴選択手段により選択された前記対話履歴に基づいて前記対話における前記対話参加者の発話の展開を予測し、予測した発話展開を前記表示手段に表示する
ことを特徴とする請求項４記載の対話支援装置。
【請求項８】
前記対話支援装置は、さらに、
前記対話参加者により行われた前記対話の履歴を前記対話履歴データベースへ登録する履歴登録手段
を備えることを特徴とする請求項１記載の対話支援装置。
【請求項９】
対話参加者によって行われる対話を支援する、対話支援装置とサーバ装置を備える対話支援システムであって、
前記サーバ装置は、
前記対話参加者および前記対話参加者以外の者の発話の列である対話履歴を当該対話履歴の対話参加者および対話のトピックに対応づけて格納している対話履歴データベースと、
前記対話支援装置から送信された前記対話参加者を特定する情報および対話状況に基づいて、前記対話履歴データベースの中から対話履歴を選択して前記対話支援装置に送信する対話履歴選択手段とを備え、
前記対話履歴選択手段は、
前記対話支援装置から、対話参加者を特定する情報および対話のトピックを示す情報を取得し、取得した情報が示す対話参加者および対話のトピックに対応づけられた対話履歴を前記対話履歴データベースから、基準対話履歴として抽出し、
前記対話履歴のうち、抽出された前記基準対話履歴を除く対話履歴のそれぞれについて、前記基準対話履歴と共通して含まれ、かつ、連続する発話の集合を１つの発話ブロックとみなした場合、前記発話ブロックの数に反比例する、または、前記発話ブロックに含まれる発話数の平均に比例する類似度を算出し、
算出した類似度の最も高い対話履歴を選択し、
前記対話支援装置は、
前記対話参加者を特定する情報および前記対話状況を前記サーバ装置へ送信して対話履歴を要求するとともに、前記サーバ装置から送信された前記対話履歴に基づいて、前記対話における前記対話参加者の次の発話を予測する発話予測手段を備え、
前記発話予測手段は、前記対話状況として対話のトピックを示す情報を前記サーバ装置に送信するとともに、前記サーバ装置から送信された前記対話履歴の中で、前記対話における発話に対応する発話の次に出現する発話を、前記対話における前記対話参加者の次の発話として予測する
ことを特徴とする対話支援システム。
【請求項１０】
対話参加者によって行われる対話を支援する対話支援装置による対話支援方法であって、
前記対話支援装置が備える対話履歴選択手段が、前記対話参加者および前記対話参加者以外の者の発話の列である対話履歴を当該対話履歴の対話参加者および対話のトピックに対応づけて格納している対話履歴データベースの中から、前記対話参加者を特定する情報および対話状況に基づいて対話履歴を選択する対話履歴選択ステップと、
前記対話支援装置が備える発話予測手段が、前記対話履歴選択ステップにおいて選択された前記対話履歴に基づいて、前記対話における前記対話参加者の次の発話を予測する発話予測ステップとを含み、
前記対話履歴選択手段は、前記対話履歴選択ステップでは、
対話参加者を特定する情報および対話のトピックを示す情報を取得し、取得した情報が示す対話参加者および対話のトピックに対応づけられた対話履歴を前記対話履歴データベースから、基準対話履歴として抽出し、
前記対話履歴のうち、抽出された前記基準対話履歴を除く対話履歴のそれぞれについて、前記基準対話履歴と共通して含まれ、かつ、連続する発話の集合を１つの発話ブロックとみなした場合、前記発話ブロックの数に反比例する、または、前記発話ブロックに含まれる発話数の平均に比例する類似度を算出し、
算出した類似度の最も高い対話履歴を選択し、
前記発話予測手段は、前記発話予測ステップでは、前記対話履歴選択ステップで選択された前記対話履歴の中で、前記対話における発話に対応する発話の次に出現する発話を、前記対話における前記対話参加者の次の発話として予測する
ことを特徴とする対話支援方法。
【請求項１１】
対話参加者によって行われる対話を支援する対話支援装置のためのプログラムであって、
コンピュータを請求項１記載の対話支援装置が備える対話履歴選択手段および発話予測手段として機能させる
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、人と人との対話を支援する対話支援装置に関するものである。
【背景技術】
【０００２】
従来、一般の人々が海外旅行先等で現地の人々と対話をする際に、その異言語対話を支援することを目的として翻訳装置が開発されてきた。例えば代表的なものとして、例文や用例の対訳に基づく翻訳方式を、ＰＤＡ(Personal Digital Assistance)などの小型の情報処理装置に実装した翻訳装置がある。そのような装置では、一般的な旅行会話をカバーするために数千以上の用例が用意されているので、ユーザに所望の用例をそのリストから目視で選択させるだけでは実際の使用状況における使い勝手、すなわち、ユーザビリティに問題がある。特に、用例のリストを見るための表示部が小さく、同時に見ることができる用例の数が少ない場合は、この問題は一層顕著になる。また、翻訳装置の一般的な使用状況を想定すると、相手との対話の中で数文以上の用例を使用しなければならない場合がほとんどであり、翻訳装置を介して１つの対話が完了するまでに予想以上の時間を要してしまう。そこで、人と人との対話支援を最終目的として、大量の用例リストの中からユーザに所望の用例を速やかに選択させるための、何らかの選択補助機能が必要とされている。
【０００３】
この問題を解決するための一方法として、見本対話モデルや会話練習履歴コーパスを利用してユーザの次の発話候補を絞り込む手法が提案されている（例えば特許文献１参照）。
【特許文献１】特開２００３−３０１８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
過去に翻訳装置のユーザが行った対話の履歴に基づく次発話候補の絞込みは、相手がその中に含まれている場合は有効である。また、事前にユーザが仮想的に対話の練習を行った履歴や典型的な対話のパターンに基づく次発話候補の絞込みは、自分が想定する対話のパターンに従う相手であれば有効である。しかしながら、一般に対話のパターンは人によって様々である。例えば、列車の予約をするために旅行者が駅員と対話を開始する場合、旅行者の発話「列車の予約をしたいのですが」に対して、ある駅員は「何日の列車ですか」という列車の日時についての発話から対話を開始する可能性もあれば、別の駅員は「どこまでですか」という列車の目的地に関する発話から対話を開始する可能性もある。したがって、対話の相手によっては絞込みに失敗するだけでなく、誤った絞込みによって対話参加者を混乱させることになり、逆に対話が完了するまでに要する時間が増加するという問題がある。
【０００５】
そこで、本発明は上記の事情に鑑みてなされたものであり、対話の相手がどのような相手であっても速やかに対話が完了するように対話を支援することができる対話支援装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明に係る対話支援装置は、対話参加者によって行われる対話を支援する対話支援装置であって、前記対話参加者および前記対話参加者以外の者の発話の列である対話履歴を当該対話履歴の対話参加者および対話のトピックに対応づけて格納している対話履歴データベースの中から、前記対話参加者を特定する情報および対話状況に基づいて対話履歴を選択する対話履歴選択手段と、前記対話履歴選択手段により選択された前記対話履歴に基づいて、前記対話における前記対話参加者の次の発話を予測する発話予測手段とを備え、前記対話履歴選択手段は、対話参加者を特定する情報および対話のトピックを示す情報を取得し、取得した情報が示す対話参加者および対話のトピックに対応づけられた対話履歴を前記対話履歴データベースから、基準対話履歴として抽出し、前記対話履歴のうち、抽出された前記基準対話履歴を除く対話履歴のそれぞれについて、前記基準対話履歴と共通して含まれ、かつ、連続する発話の集合を１つの発話ブロックとみなした場合、前記発話ブロックの数に反比例する、または、前記発話ブロックに含まれる発話数の平均に比例する類似度を算出し、算出した類似度の最も高い対話履歴を選択し、前記発話予測手段は、前記対話履歴選択手段により選択された前記対話履歴の中で、前記対話における発話に対応する発話の次に出現する発話を、前記対話における前記対話参加者の次の発話として予測することを特徴とする。
【発明の効果】
【０００７】
本発明に係る対話支援装置によれば、ユーザは次発話候補の中から用例を容易に選択することが可能になる。したがって、対話の相手を待たせることがないので対話支援装置を介した対話をスムーズに進行することができる。
【発明を実施するための最良の形態】
【０００８】
本発明の実施の形態に係る対話支援装置は、対話参加者によって行われる対話を支援する対話支援装置であって、前記対話参加者および前記対話参加者以外の者の対話履歴を格納している対話履歴データベースの中から、前記対話参加者を特定する情報および対話状況に基づいて対話履歴を選択する対話履歴選択手段と、前記対話履歴選択手段により選択された前記対話履歴に基づいて、前記対話における前記対話参加者の次の発話を予測する発話予測手段とを備えることを特徴とする。
【０００９】
これによって、自分の対話の履歴と相手の対話の履歴を利用し、今から交わされるであろう対話に最も近い履歴を対話参加者以外の者の履歴も含めて検索し、その履歴に基づいて次の発話を予測することができるので、対話の相手がどのような相手であっても速やかに対話が完了するように対話を支援することができる。
【００１０】
ここで、前記対話履歴選択手段は、前記対話参加者のそれぞれの対話履歴の中から前記対話状況が最も近い対話履歴をそれぞれ基準対話履歴として抽出し、それぞれの前記基準対話履歴と類似度の高い対話履歴を選択することが好ましい。
【００１１】
これによって、基準対話履歴と類似度が高い対話履歴に基づいて対話参加者の次の発話を予測することができる。
【００１２】
また、前記対話支援装置は、さらに、前記対話参加者の発話を受け付ける発話受付手段と、前記発話受付手段により受け付けられた前記発話を他の発話形態に変換する発話処理手段と、前記発話処理手段により変換された前記他の発話形態の前記発話を出力する発話出力手段とを備えてもよい。
【００１３】
これによって、例えば日本語と英語とによる対話等の異言語の対話を支援することができる。
【００１４】
なお、本発明は、このような対話支援装置として実現することができるだけでなく、このような対話支援装置が備える特徴的な手段をステップとする対話支援方法として実現したり、それらのステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、ＣＤ−ＲＯＭ等の記録媒体やインターネット等の伝送媒体を介して配信することができるのは言うまでもない。
【００１５】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００１６】
図１は本発明に係る対話支援システムの一実施の形態の構成を示すブロック図である。
【００１７】
対話支援システムは、人と人との対話を支援するためのシステムであり、図１に示すように対話支援装置１００、およびこの対話支援装置１００とネットワーク３００を介して接続されるサーバ装置２００を備えている。
【００１８】
サーバ装置２００は、対話履歴データベース２０１、および通信部２０２を備えている。対話履歴データベース２０１は、各種の対話履歴を格納している。通信部２０２は、ネットワーク３００を介して対話支援装置１００と通信を行う。
【００１９】
一方、対話支援装置１００は、図１に示すように発話受付部１０１、発話出力部１０２、発話受付部１０３、発話出力部１０４、発話処理部１０５、発話予測部１０６、対話履歴選択部１０７、および通信部１０８を備えている。ここで、発話受付部１０１および発話受付部１０３は発話受付手段に、発話出力部１０２および発話出力部１０４は発話出力手段に、発話処理部１０５は発話処理手段に、発話予測部１０６は発話予測手段に、対話履歴選択部１０７は対話履歴選択手段に、それぞれ相当する。
【００２０】
発話受付部１０１は、対話参加者１の発話を受け付け、発話を特定するための発話情報を出力する。発話出力部１０２は、対話参加者１に対して他の対話参加者からの発話情報を発話として出力する。同様に、発話受付部１０３は、対話参加者２の発話を受け付け、発話情報を出力する。発話出力部１０４は、対話参加者２に対して他の対話参加者からの発話情報を発話として出力する。発話処理部１０５は、発話受付部１０１から出力された発話情報と発話受付部１０３から出力された発話情報とにより特定される発話を、それぞれ他の発話形態に変換する。
【００２１】
発話予測部１０６は、対話が開始される前に対話参加者１と対話参加者２から対話参加者の認証情報と対話状況とを取得する。また、発話予測部１０６は、対話開始後、発話受付部１０１が対話参加者１からの発話を受け付ける前に、または、発話受付部１０３が対話参加者２からの発話を受け付ける前に、対話における発話を予測して表示パネル等に表示する。
【００２２】
対話履歴選択部１０７は、発話予測部１０６によって取得された認証情報に基づいてサーバ装置２００の対話履歴データベース２０１を検索し、対話履歴データベース２０１の中から最適な対話履歴を選択する。通信部１０８は、ネットワーク３００を介してサーバ装置２００と通信を行う。
【００２３】
次に、上記のように構成された対話支援システムにおいて、異言語の対話を支援する場合の動作について説明する。ここでは、対話参加者１は日本語を話し、対話参加者２は英語を話すと仮定する。図２は対話参加者１および対話参加者２の発話と発話Ｎｏ．の対応関係の一例を示す図である。
【００２４】
発話受付部１０１は、受け付けた対話参加者１の発話を相当する発話情報に変換する。発話情報は、例えば図２における発話Ｎｏ．である。発話処理部１０５は、対話参加者１の発話（日本語）を対話参加者２への発話（英語）に変換して文字列を出力する。例えば、発話Ｎｏ．１が入力されたときは、発話出力部１０４に対して発話情報として文字列"May I help you?"を出力する。
【００２５】
逆に、発話受付部１０３は、受け付けた対話参加者２の発話を相当する発話情報に変換する。発話情報は、例えば図２の発話Ｎｏ．であり、発話処理部１０５は対話参加者２の発話（英語）を対話参加者１への発話（日本語）に変換して文字列を出力する。例えば、発話Ｎｏ．１が入力されたときは、発話出力部１０２に対して発話情報として文字列「いらっしゃいませ。」を出力する。以後、言語方向を考慮しながら説明を簡単にするために、対話参加者１からの発話Ｎｏ．１をＪ１、対話参加者２からの発話Ｎｏ．１をＥ１と略記する。
【００２６】
発話受付部１０１は、図２の日本語のリストの部分を対話参加者１に直接選択させて、その発話Ｎｏ．を発話情報として出力する。また、発話受付部１０３は、図２の英語のリストの部分を対話参加者２に直接選択させて、その発話Ｎｏ．を発話情報として出力する。なお、発話受付部１０１または発話受付部１０３の構成については、音声認識処理を利用して対話参加者の音声を発話Ｎｏ．のいずれかに射影する処理で実現してもよい。また、キーボードから発話の表記や発音に相当する文字列を入力させて、それを発話Ｎｏ．のいずれかに射影して実現しても良い。
【００２７】
図３は対話履歴データベース２０１に格納される対話履歴の一例を示す図である。対話履歴とは対話参加者によって過去に交わされた発話の履歴であり、各対話参加者の発話時刻の順に並べたものである。発話は図２で定義される発話のいずれかに相当する。なお、同じ発話Ｎｏ．でも対話参加者によってそれを区別する必要があるので、日本語についてはＪを、英語についてはＥをそれぞれ発話Ｎｏ．の前に付与して、対話履歴における発話のラベルとして定義する。以後、説明を簡単にするために、１つの対話履歴をそのラベルの列で記述する。例えば、対話履歴ｄ１はｄ１：Ｅ１，Ｊ２，Ｅ３，Ｊ４，Ｅ５，Ｊ６，Ｅ７，Ｅ８と記述する。対話履歴にはその対話を交わした対話参加者の認証情報と対話のトピック（対話状況）が記録されている。例えば対話履歴ｄ１は、Ｊの発話は太郎、Ｅの発話はTom、トピックはホテルである情報が記されている。
【００２８】
以下、図４に示すように対話参加者１が日本人観光客で、対話参加者２が英語を話すホテルのフロントのスタッフであり、ホテルのチェックインを行うために対話を行う場合を例として説明する。
【００２９】
図５は発話予測部１０６の動作の流れを示すフローチャートである。発話予測部１０６は、まず発話予測を行うために必要な対話参加者の特定と対話のトピックの特定を行う（ステップＳ４０１）。例えばＰＤＡとして実現された図６に示すような対話支援装置１００において、対話参加者１と対話参加者２の名前、および、対話のトピックを対話参加者にタッチパネルから直接入力させることで、対話参加者に関する情報を取得する。なお、対話参加者の認証情報の取得はこのような手動による方法以外にも、指紋認証やクレジットカードの個人情報を利用して自動で獲得する方法で実現してもよい。また、対話のトピックの取得についても、このような手動による方法以外にも、自動的に得られるＰＤＡの存在環境の情報（例えば、レストラン、病院、ホテルなどの場所情報）から、自動的に連想する方法で実現してもよい。
【００３０】
発話予測部１０６は、図７に示すように対話開始ボタン６０１が押されると、予測スタックの作成を対話履歴選択部１０７に依頼する（ステップＳ４０２）。
【００３１】
図８は対話履歴選択部１０７の動作の流れを示すフローチャートである。対話履歴選択部１０７は、発話予測部１０６から通知された対話参加者の認証情報と対話のトピックに関する情報に基づいて、対話履歴データベース２０１に含まれる対話参加者１の対話履歴ｄｒ１と対話参加者２の対話履歴ｄｒ２を決定する（ステップＳ７０１）。すなわち、対話履歴ｄｒ１は対話参加者１の認証情報と対話のトピックに該当する対話履歴を検索することで、対話履歴ｄｒ２は対話参加者２の認証情報と対話のトピックに該当する対話履歴を検索することで決定される。例えば、対話履歴データベース２０１の中に図３に示す対話履歴が存在する場合、対話履歴ｄｒ１＝対話履歴ｄ１、対話履歴ｄｒ２＝対話履歴ｄ３に決定される。理由は、対話履歴ｄ１のＪの発話が太郎であり、対話履歴ｄ３のＥの発話がHanakoであり、それぞれ対話のトピックがホテルであるからである。対話履歴ｄ５はＪの発話が太郎であるが、対話のトピックがレンタカーであるために選択されない。なお、対話履歴データベース２０１の中に該当する対話履歴が存在しない場合に、対話のトピックを無視して対話履歴を検索することで、近似的に処理を継続することが可能である。
【００３２】
次に、対話履歴選択部１０７は、対話履歴データベース２０１に含まれる対話履歴ｄｒ１と対話履歴ｄｒ２以外のすべての対話履歴ｄについてスコアｓｃｏｒｅ（ｄ）＝ｒ（ｄ｜ｄｒ１）＋ｒ（ｄ｜ｄｒ２）を計算する（ステップＳ７０２）。ｒ（ｄａ｜ｄｂ）は対話履歴ｄｂに対する対話履歴ｄａの類似度であり、図９（ａ）に示す数式８０１によって定義される。ここで、連続する発話の集合を発話ブロックと定義する。ｓｉｚｅ（ｄ）は対話履歴に含まれる発話ブロックの数であり、ｓｉｚｅ（ｂ）は発話ブロックｂに含まれる発話の数である。例えば、図９の類似度計算の例８０２においては、対話履歴ｄａは４つの発話ブロックから構成されるので、ｓｉｚｅ（ｄａ）＝４である。また、各発話ブロックに含まれる発話の数は、それぞれ、ｓｉｚｅ（ｂ１）＝５，ｓｉｚｅ（ｂ２）＝２，ｓｉｚｅ（ｂ３）＝４，ｓｉｚｅ（ｂ４）＝１であるから、ｒ（ｄａ｜ｄｂ）はおよそ０．４２４と計算される。定性的には、類似度ｒの値が大きいほど２つの対話履歴の類似度は高い。また、類似度は発話の集合の数に反比例し、共通する発話ブロックの数が少ないほど高い。また、類似度は各集合に含まれる発話数の平均に比例し、１つの発話ブロックに含まれる発話数が多いほど高い。
【００３３】
図１０は対話履歴の発話数を調整する動的計画法のアルゴリズムを示す図である。前述の類似度の計算は、この動的計画法によって２つの対話履歴の発話数が同じ数になるように調整してから行われる。対話履歴ｄ４の対話履歴ｄ１に対する類似度ｒ（ｄ４｜ｄ１）を計算するために、図１０の動的計画法を対話履歴ｄ４に適用した例を図１１に示す。調整された対話履歴ｄ４'において、ラベルがφの発話はｄ１との発話数が同じ値になるように追加された空の発話である。類似度ｒ（ｄ４｜ｄ１）は類似度ｒ（ｄ４'｜ｄ１）の値として計算される。
【００３４】
図１２は発話ブロックの決定アルゴリズムを示す図である。基本的には、２つの対話履歴に含まれる発話ブロックの数が最小になるような発話ブロックを決定する。
【００３５】
まず、発話列Ａと発話列Ｂの長さを動的計画法で同じ長さにする（ステップＳ１２０１）。発話列Ａ（発話列Ｂ）に含まれる発話数をｍとする（ステップＳ１２０２）。次に、ｉに１を代入する（ステップＳ１２０３）。Ａ［ｉ］が発話列Ｂに存在するか否かを判定する（ステップＳ１２０４）。なお、Ａ［ｉ］は発話列Ａにおけるｉ番目の発話を示す。また、φについては、Ａ［ｉ］＝φ、Ｂ［ｊ］＝φのとき、Ａ［ｉ］とＢ［ｊ］が同じであると見なさない。この判定の結果、Ａ［ｉ］が発話列Ｂに存在する場合（ステップＳ１２０４でＹＥＳ）、その発話をＢ［ｊ］とする（ステップＳ１２０５）。そして、Ａ［ｉ］からＡ［ｉ＋ｎ］が、発話列Ｂ［ｊ］からＢ［ｊ＋ｎ］が同じである最大のｎを求めて、それぞれを１つのブロックとする（ステップＳ１２０６）。次に、ｉにｉ＋ｎ＋１を代入する（ステップＳ１２０７）。
【００３６】
Ａ［ｉ］が発話列Ｂに存在するか否かの判定の結果、Ａ［ｉ］が発話列Ｂに存在しない場合（ステップＳ１２０４でＮＯ）、Ａ［ｉ］を１つのブロックとする（ステップＳ１２０８）。そして、ｉにｉ＋１を代入する（ステップＳ１２０９）。
【００３７】
次に、ｉ＞ｍであるか否かを判定する（ステップＳ１２１０）。ｉ＞ｍでない場合（ステップＳ１２０７でＮＯ）には、再びＡ［ｉ］が発話列Ｂに存在するか否かを判定処理以降（ステップＳ１２０４〜Ｓ１２０７）を繰り返す。一方、ｉ＞ｍである場合（ステップＳ１２０７でＹＥＳ）には、処理を終了する。
【００３８】
例えば、図９（ｂ）において、対話履歴ｄａ：ｕ１，ｕ２，ｕ３，ｕ４，ｕ５，ｕ６，ｕ７，ｕ８，ｕ９，ｕ１０，ｕ１１，ｕ１２は、対話履歴ｄｂ：ｕ６，ｕ７，ｕ１，ｕ２，ｕ３，ｕ４，ｕ５，ｕ８，ｕ９，ｕ１０，ｕ１１，ｕ１３に対して、ｄａ：（ｕ１，ｕ２，ｕ３，ｕ４，ｕ５），（ｕ６，ｕ７），（ｕ８，ｕ９，ｕ１０，ｕ１１），ｕ１２となる。括弧で囲まれた発話のラベルが１つの発話ブロックに相当する。ただし、１つの発話だけで構成される発話ブロックについては、表記を簡単にするために括弧を省略する。
【００３９】
図１３は、対話履歴データベース２０１が図３に示す対話履歴を格納し、対話履歴ｄｒ１＝対話履歴ｄ１、対話履歴ｄｒ２＝対話履歴ｄ３のときに対話履歴ｄｒ１と対話履歴ｄｒ２以外のすべての対話履歴ｄについてスコアｓｃｏｒｅ（ｄ）＝ｒ（ｄ｜ｄｒ１）＋ｒ（ｄ｜ｄｒ２）を計算した結果を示す図である。
【００４０】
次に、対話履歴選択部１０７は、スコアｓｃｏｒｅ（ｄ）が最大の対話履歴ｄ＝対話履歴ｄｍａｘを選択する（ステップＳ７０３）。図１３に示す例では対話履歴ｄ２が選択される。
【００４１】
対話履歴選択部１０７は、対話履歴ｄｍａｘに対して対話履歴ｄｒ１と対話履歴ｄｒ２と同様に図１２の発話ブロック決定アルゴリズムを適用し、発話ブロックに分割して予測スタックとする（ステップＳ７０４）。なお、連続する発話を同定する処理（ステップＳ１２０６）において、すでに決定された発話ブロックの境界を越えて連続しないという制限を加える。例えば対話履歴ｄｍａｘ＝対話履歴ｄ２を対話履歴ｄｒ１＝対話履歴ｄ１と対話履歴ｄｒ２＝対話履歴ｄ３で分割する場合は、対話履歴ｄ２：Ｅ１，Ｅ８，Ｊ２，Ｅ３，Ｊ４，Ｅ５，Ｊ６，Ｅ７は、まず対話履歴ｄ１によって、対話履歴ｄ２： Ｅ１，Ｅ８，（Ｊ２，Ｅ３，Ｊ４，Ｅ５，Ｊ６，Ｅ７）のように３つの発話ブロックに分割され、次に対話履歴ｄ３によってさらに、対話履歴ｄ２： Ｅ１，Ｅ８，Ｊ２，（Ｅ３，Ｊ４），（Ｅ５，Ｊ６，Ｅ７）のように５つの発話ブロックに分割される。対話履歴選択部１０７は、この対話履歴ｄ２を予測スタックとして発話予測部１０６に通知する。
【００４２】
なお、対話履歴選択部１０７が行う図１２に示す発話ブロック決定アルゴリズムにおいて、発話が２つの対話履歴に共通に含まれるか否かの判定処理（ステップＳ１２０４、Ｓ１２０６）を行っているが、発話情報の一致、すなわち、発話Ｎｏ．の一致以外にも、自然言語処理を利用して発話の表層表現（文字表現）の一致、または、内容語の一致などで判定してもよい。例えば、一方の対話履歴に発話「ありがとう。」、他方の対話履歴に発話「ありがとうございます。」の場合などは、これらの発話が異なる発話Ｎｏ．であったとしても表層表現が近いので２つの対話履歴に共通に含まれる発話と判定することが可能である。一方の対話履歴に発話"Thank you."、他方の対話履歴に発話"Thank you very  much."の場合も同様である。また、一方の対話履歴に発話「これを３セット贈答用に包んで下さい。」、他方の対話履歴に発話「贈答用に３セット、これを包んで下さい。」が含まれる場合などは、内容語が（これ、包む、３セット、贈答用）と定義されていれば、共通に含まれる内容語が多いので２つの対話履歴に共通に含まれる発話と判定することが可能である。また、これらの判定方法を組み合わせて用いても構わない。このように柔軟な判定にすることで、発話Ｎｏ．の一致だけでは適当な対話履歴が検索できない場合でも、適当な対話履歴を検索することが可能になる。
【００４３】
ここで、図５に示すフローチャートの説明に戻る。
【００４４】
発話予測部１０６は、対話履歴選択部１０７からの発話予測スタックを受け取った後、予測スタックが空であるか否かを判定する（ステップＳ４０３）。対話履歴選択部１０７が対話履歴データベース２０１の中で適当な対話履歴を検索できない理由などで予測スタックが空である場合（ステップＳ４０３でＹＥＳ）、発話予測部１０６は発話予測動作を行わず終了する。
【００４５】
一方、予測スタックが空でない場合（ステップＳ４０３でＮＯ）、発話予測部１０６は、予測スタックの先頭の発話を次の発話候補として表示する（ステップＳ４０４）。図１４は対話が開始された時点の対話支援装置１００での表示状態を示す図である。表示領域の上半分は対話参加者１の発話入出力領域１３０１、下半分は対話参加者２の発話入出力領域１３０２である。終了ボタン１３０３は対話を終了するときに押すボタンである。対話参加者１は発話受付部１３０４、対話参加者２は発話受付部１３０５を利用して図２で定義されるすべての発話の中から任意の発話を選択して他の対話参加者に伝えることが可能である。発話処理部１０５で変換された発話は、対話参加者１への発話出力部１３０６、対話参加者２への発話出力部１３０７へ、それぞれ出力され、例えばＰＤＡに内蔵される音声合成処理を利用して表示と同時に読上げられる。予測表示領域１３０８には発話予測部１０６によって予測された対話参加者１の発話が表示され、予測表示領域１３０９には発話予測部１０６によって予測された対話参加者２の発話が表示される。対話参加者１または対話参加者２は、それぞれ予測表示領域１３０８または予測表示領域１３０９に表示される発話を選択することで、用例のリスト１３０４または用例のリスト１３０５の中から発話を検索して選択する操作を省略することが可能である。すなわち、発話を迅速に入力することが可能である。
【００４６】
上記の例のように予測スタックが作成された場合、発話予測部１０６は、予測表示領域１３０９に予測スタックＥ１，Ｅ８，Ｊ２，（Ｅ３，Ｊ４），（Ｅ５，Ｊ６，Ｅ７）の先頭の発話Ｅ１："May I help you?"を表示する。対話参加者２は用例のリスト１３０５から発話を選択してもよいが、予測表示領域１３０９にすでに自分が発話したい内容が表示されているので、図１５に示すようにそれを選択する。発話Ｅ１は発話処理部１０２で日本語に変換されて、対話参加者１に対して発話「いらっしゃいませ。」が伝えられる。
【００４７】
このとき、発話予測部１０６は、対話参加者から発話が入力されたか否かを判定している（ステップＳ４０５）。対話参加者から発話が入力される（ステップＳ４０５でＹＥＳ）と、発話予測部１０６は、予測スタック上で一致する発話を先頭から検索（ステップＳ４０６）し、一致する発話があるか否かを判定する（ステップＳ４０７）。一致する発話がある場合（ステップＳ４０７でＹＥＳ）、一致する発話が予測スタックの先頭であるか否かを判定する（ステップＳ４０８）。先頭である場合（ステップＳ４０８でＹＥＳ）、予測スタックの先頭の発話を削除して予測スタックを更新する（ステップＳ４０９）。一方、先頭でない場合（ステップＳ４０８でＮＯ）、一致する発話を含むブロックを予測スタックの先頭に移動後、先頭からその発話までを削除して予測スタックを更新する（ステップＳ４１０）。そして、予測スタックが空であるか否かの判定処理（ステップＳ４０３）に戻る。
【００４８】
上記の例では、対話参加者の発話がＥ１であることから、予測スタックをＥ８，Ｊ２，（Ｅ３，Ｊ４），（Ｅ５，Ｊ６，Ｅ７）と更新する。そして、予測スタックが空であるか否かの判定処理（ステップＳ４０３）に戻り、予測スタックはまだ空ではないので、図１６に示すように予測表示領域１３０９に先頭の発話Ｅ８："Please fill in this form."を表示し、ユーザからの発話を待つ。
【００４９】
対話参加者２は用例のリスト１３０５から発話を選択してもよいが、予測表示領域１３０９にすでに自分が発話したい内容が表示されているので、図１７に示すように予測表示領域１３０９を選択すると、Ｅ８は発話処理部１０２で日本語に変換されて、対話参加者１に対して発話「このカードに記入して下さい。」が伝えられる。同様に、発話予測部１０６は予測スタックをＪ２，（Ｅ３，Ｊ４），（Ｅ５，Ｊ６，Ｅ７）と更新し、図１８に示すように１３０８にＪ２：「チェックインをお願いします。」を表示する。
【００５０】
対話参加者１は用例のリスト１３０4から発話を選択してもよいが、予測表示領域１３０８にすでに自分が発話したい内容が表示されているので、図１９に示すように予測表示領域１３０８を選択すると、Ｊ２は発話処理部１０２で英語に変換されて、対話参加者２に対して発話"Check-in, please."が伝えられる。同様に、発話予測部１０６は、予測スタックを（Ｅ３，Ｊ４），（Ｅ５，Ｊ６，Ｅ７）と更新し、図２０に示すように予測表示領域１３０９にＥ３："Have you made reservation?"を表示する。このように対話参加者１または対話参加者２は、用例のリスト１３０４または用例のリスト１３０５の中から所望の発話を検索する必要がなく、速やかに相手に意図を伝えることで、対話の所要時間が削減される。
【００５１】
次に、例えば対話参加者２が、図２０において発話予測部１０６が予測する発話のＥ３："Have you made reservation?"を予測表示領域１３０９から選択せずに、図２１に示すように用例のリスト１３０５から検索してＥ５："Do you prefer smoking room?"を選択した場合について説明する。
【００５２】
発話予測部１０６はＥ５を予測スタックの中から検索するが、それは予測スタックの先頭ではない。そこで、発話予測部１０６はＥ５含む発話ブロックを予測スタックの先頭に移動し、（Ｅ５，Ｊ６，Ｅ７），（Ｅ３，Ｊ４）とする。そして、Ｅ５を削除することで、予測スタックを（Ｊ６，Ｅ７），（Ｅ３，Ｊ４）と更新する。したがって、次の発話候補の表示処理（ステップＳ４０４）では、図２２に示すように予測候補として予測表示領域１３０８にＪ６：「禁煙でお願いします。」が表示される。そして図２３に示すように対話参加者１が予測表示領域１３０８から「禁煙でお願いします」を選択して速やかに対話が継続される。このように本実施の形態では、対話参加者が発話予測部１０６により予測された発話を選択しない場合でも、その時点から今後の対話を予測することで柔軟に対話を支援することが可能である。
【００５３】
ここで本発明の効果を定量的に検証する。一般に対話がスムーズに進行する度合いは、対話参加者の対話履歴の類似度に比例する。ここでは類似度を具体的に数量化するために、図９の定義を用いる。対話参加者１と対話参加者２が、発話予測部１０６が予測表示領域１３０８と予測表示領域１３０９に表示する発話だけを選択して対話を完了する場合、図２４に示す対話履歴２４０３が形成される。対話履歴２４０３は対話履歴選択部１０７が決定したｄｍａｘ（図３の対話履歴ｄ２）と等価である。対話参加者１の対話履歴２４０１（対話履歴選択部１０７が決定したｄｒ１、すなわち図３のｄ１）と対話参加者２の対話履歴２４０２（対話履歴選択部１０７が決定したｄｒ２、すなわち図３のｄ３）の類似度は０．１２であるのに対し、対話履歴２４０３と対話履歴２４０１の類似度は０．４１、対話履歴２４０３と対話履歴２４０２の類似度は０．１６であることから、ｄｍａｘを利用した予測に従った対話の方が、ｄｒ１あるいはｄｒ２のいずれかに従った対話よりもスムーズに進行することは明らかである。また、図２０において対話参加者２が、発話予測部１０６が予測する発話を選択せずに対話を継続して完了した場合は対話履歴２４０４が形成される。対話履歴２４０４と対話履歴２４０１の類似度は０．１６、対話履歴２４０４と対話履歴２４０２の類似度は０．１６であることから、このような使い方においても、ｄｒ１あるいはｄｒ２のいずれかに従った対話よりも、ｄｍａｘを利用した予測に従った対話の方がスムーズに進行することは明らかである。
【００５４】
ここまでは、対話支援システムにおいて、対話参加者１が日本語を話し、対話参加者２が英語を話すと仮定した場合について説明したが、以下では、対話参加者１が中国語を話し、対話参加者２が英語を話すと仮定した場合について説明する。図２５は対話参加者１および対話参加者２の発話と発話Ｎｏ．の対応関係の一例を示す図である。
【００５５】
発話受付部１０１は、受け付けた対話参加者１の発話を相当する発話情報に変換する。発話情報は、例えば図２における発話Ｎｏ．である。発話処理部１０５は、対話参加者１の発話（中国語）を対話参加者２への発話（英語）に変換して文字列を出力する。例えば、発話Ｎｏ．１が入力されたときは、発話出力部１０４に対して発話情報として文字列"May I help you?"を出力する。
【００５６】
逆に、発話受付部１０３は、受け付けた対話参加者２の発話を相当する発話情報に変換する。発話情報は、例えば図２５の発話Ｎｏ．であり、発話処理部１０５は対話参加者２の発話（英語）を対話参加者１への発話（中国語）に変換して文字列を出力する。例えば、発話Ｎｏ．１が入力されたときは、発話出力部１０２に対して発話情報として文字列
0003962767.tif 000002
を出力する。以後、言語方向を考慮しながら説明を簡単にするために、対話参加者１からの発話Ｎｏ．１をＣ１、対話参加者２からの発話Ｎｏ．１をＥ１と略記する。
【００５７】
発話受付部１０１は、図２５の中国語のリストの部分を対話参加者１に直接選択させて、その発話Ｎｏ．を発話情報として出力する。また、発話受付部１０３は、図２５の英語のリストの部分を対話参加者２に直接選択させて、その発話Ｎｏ．を発話情報として出力する。なお、発話受付部１０１または発話受付部１０３の構成については、音声認識処理を利用して対話参加者の音声を発話Ｎｏ．のいずれかに射影する処理で実現してもよい。また、キーボードから発話の表記や発音に相当する文字列を入力させて、それを発話Ｎｏ．のいずれかに射影して実現しても良い。
【００５８】
図２６は対話履歴データベース２０１に格納される対話履歴の一例を示す図である。対話履歴とは対話参加者によって過去に交わされた発話の履歴であり、各対話参加者の発話時刻の順に並べたものである。発話は図２５で定義される発話のいずれかに相当する。なお、同じ発話Ｎｏ．でも対話参加者によってそれを区別する必要があるので、中国語についてはＣを、英語についてはＥをそれぞれ発話Ｎｏ．の前に付与して、対話履歴における発話のラベルとして定義する。以後、説明を簡単にするために、１つの対話履歴をそのラベルの列で記述する。例えば、対話履歴ｄ６はｄ６：Ｅ１，Ｃ２，Ｅ３，Ｃ４，Ｅ５，Ｃ６，Ｅ７，Ｅ８と記述する。対話履歴にはその対話を交わした対話参加者の認証情報と対話のトピック（対話状況）が記録されている。例えば対話履歴ｄ６は、Ｃの発話は太郎、Ｅの発話はTom、トピックはホテルである情報が記されている。
【００５９】
以下、図４に示すように対話参加者１が中国語を話す観光客で、対話参加者２が英語を話すホテルのフロントのスタッフであり、ホテルのチェックインを行うために対話を行う場合を例として説明する。なお、発話予測部１０６および対話履歴選択部１０７の動作の流れは上記と同様であるので、図５および図８に示すフローチャートを用いて説明し、上記と同様の部分については説明を省略する。
【００６０】
発話予測部１０６は、まず発話予測を行うために必要な対話参加者の特定と対話のトピックの特定を行う（ステップＳ４０１）。例えばＰＤＡとして実現された図２７に示すような対話支援装置１００において、対話参加者
0003962767.tif 000003
１と対話参加者
0003962767.tif 000004
２の名前、および、対話のトピック
0003962767.tif 000005
を対話参加者にタッチパネル
から直接入力させることで、対話参加者に関する情報を取得する。
【００６１】
発話予測部１０６は、図２８に示すように対話開始
0003962767.tif 000006
ボタン６０１が押されると、予測スタックの作成を対話履歴選択部１０７に依頼する（ステップＳ４０２）。
【００６２】
対話履歴選択部１０７は、発話予測部１０６から通知された対話参加者の認証情報と対話のトピックに関する情報に基づいて、対話履歴データベース２０１に含まれる対話参加者１の対話履歴ｄｒ１と対話参加者２の対話履歴ｄｒ２を決定する（ステップＳ７０１）。例えば、対話履歴データベース２０１の中に図２６に示す対話履歴が存在する場合、対話履歴ｄｒ１＝対話履歴ｄ６、対話履歴ｄｒ２＝対話履歴ｄ８に決定される。理由は、対話履歴ｄ６のＣの発話が太郎であり、対話履歴ｄ８のＥの発話がHanakoであり、それぞれ対話のトピックがホテルであるからである。対話履歴ｄ５はＣの発話が太郎であるが、対話のトピックがレンタカーであるために選択されない。
【００６３】
次に、対話履歴選択部１０７は、対話履歴データベース２０１に含まれる対話履歴ｄｒ１と対話履歴ｄｒ２以外のすべての対話履歴ｄについて、上記同様にスコアｓｃｏｒｅ（ｄ）＝ｒ（ｄ｜ｄｒ１）＋ｒ（ｄ｜ｄｒ２）を計算する（ステップＳ７０２）。そして、対話履歴選択部１０７は、スコアｓｃｏｒｅ（ｄ）が最大の対話履歴ｄ＝対話履歴ｄｍａｘを選択する（ステップＳ７０３）。ここでは、対話履歴ｄ７が選択されるものとする。
【００６４】
対話履歴選択部１０７は、対話履歴ｄｍａｘに対して対話履歴ｄｒ１と対話履歴ｄｒ２と同様に図１２の発話ブロック決定アルゴリズムを適用し、発話ブロックに分割して予測スタックとする（ステップＳ７０４）。例えば対話履歴ｄｍａｘ＝対話履歴ｄ７を対話履歴ｄｒ１＝対話履歴ｄ６と対話履歴ｄｒ２＝対話履歴ｄ８で分割する場合は、対話履歴ｄ７：Ｅ１，Ｅ８，Ｃ２，Ｅ３，Ｃ４，Ｅ５，Ｃ６，Ｅ７は、まず対話履歴ｄ６によって、対話履歴ｄ７： Ｅ１，Ｅ８，（Ｃ２，Ｅ３，Ｃ４，Ｅ５，Ｃ６，Ｅ７）のように３つの発話ブロックに分割され、次に対話履歴ｄ８によってさらに、対話履歴ｄ７： Ｅ１，Ｅ８，Ｃ２，（Ｅ３，Ｃ４），（Ｅ５，Ｃ６，Ｅ７）のように５つの発話ブロックに分割される。対話履歴選択部１０７は、この対話履歴ｄ７を予測スタックとして発話予測部１０６に通知する。
【００６５】
このように作成された発話予測スタックを対話履歴選択部１０７から受け取った発話予測部１０６は、予測スタックが空であるか否かを判定する（ステップＳ４０３）。対話履歴選択部１０７が対話履歴データベース２０１の中で適当な対話履歴を検索できない理由などで予測スタックが空である場合（ステップＳ４０３でＹＥＳ）、発話予測部１０６は発話予測動作を行わず終了する。
【００６６】
一方、予測スタックが空でない場合（ステップＳ４０３でＮＯ）、発話予測部１０６は、予測スタックの先頭の発話を次の発話候補として表示する（ステップＳ４０４）。図２９は対話が開始された時点の対話支援装置１００での表示状態を示す図である。表示領域の上半分は対話参加者１の発話入出力領域１３０１、下半分は対話参加者２の発話入出力領域１３０２である。終了
0003962767.tif 000007
ボタン１３０３は対話を終了するときに押すボタンである。対話参加者１は発話受付部１３０４、対話参加者２は発話受付部１３０５を利用して図２５で定義されるすべての発話の中から任意の発話を選択して他の対話参加者に伝えることが可能である。発話処理部１０５で変換された発話は、対話参加者１への発話出力部１３０６、対話参加者２への発話出力部１３０７へ、それぞれ出力され、例えばＰＤＡに内蔵される音声合成処理を利用して表示と同時に読上げられる。予測表示領域１３０８には発話予測部１０６によって予測された対話参加者１の発話が表示され、予測表示領域１３０９には発話予測部１０６によって予測された対話参加者２の発話が表示される。対話参加者１または対話参加者２は、それぞれ予測表示領域１３０８または予測表示領域１３０９に表示される発話を選択することで、用例のリスト１３０４または用例のリスト１３０５の中から発話を検索して選択する操作を省略することが可能である。すなわち、発話を迅速に入力することが可能である。
【００６７】
上記の例のように予測スタックが作成された場合、発話予測部１０６は、予測表示領域１３０９に予測スタックＥ１，Ｅ８，Ｃ２，（Ｅ３，Ｃ４），（Ｅ５，Ｃ６，Ｅ７）の先頭の発話Ｅ１："May I help you?"を表示する。対話参加者２は用例のリスト１３０５から発話を選択してもよいが、予測表示領域１３０９にすでに自分が発話したい内容が表示されているので、図３０に示すようにそれを選択する。発話Ｅ１は発話処理部１０２で中国語に変換されて、対話参加者１に対して発話
0003962767.tif 000008
が伝えられる。
【００６８】
このとき、発話予測部１０６は、対話参加者から発話が入力されたか否かを判定している（ステップＳ４０５）。対話参加者から発話が入力される（ステップＳ４０５でＹＥＳ）と、発話予測部１０６は、予測スタック上で一致する発話を先頭から検索（ステップＳ４０６）し、一致する発話があるか否かを判定する（ステップＳ４０７）。一致する発話がある場合（ステップＳ４０７でＹＥＳ）、一致する発話が予測スタックの先頭であるか否かを判定する（ステップＳ４０８）。先頭である場合（ステップＳ４０８でＹＥＳ）、予測スタックの先頭の発話を削除して予測スタックを更新する（ステップＳ４０９）。一方、先頭でない場合（ステップＳ４０８でＮＯ）、一致する発話を含むブロックを予測スタックの先頭に移動後、先頭からその発話までを削除して予測スタックを更新する（ステップＳ４１０）。そして、予測スタックが空であるか否かの判定処理（ステップＳ４０３）に戻る。
【００６９】
上記の例では、対話参加者の発話がＥ１であることから、予測スタックをＥ８，Ｃ２，（Ｅ３，Ｃ４），（Ｅ５，Ｃ６，Ｅ７）と更新する。そして、予測スタックが空であるか否かの判定処理（ステップＳ４０３）に戻り、予測スタックはまだ空ではないので、図３１に示すように予測表示領域１３０９に先頭の発話Ｅ８："Please fill in this form."を表示し、ユーザからの発話を待つ。
【００７０】
対話参加者２は用例のリスト１３０５から発話を選択してもよいが、予測表示領域１３０９にすでに自分が発話したい内容が表示されているので、図３２に示すように予測表示領域１３０９を選択すると、Ｅ８は発話処理部１０２で中国語に変換されて、対話参加者１に対して発話
0003962767.tif 000009
が伝えられる。同様に、発話予測部１０６は予測スタックをＣ２，（Ｅ３，Ｃ４），（Ｅ５，Ｃ６，Ｅ７）と更新し、図３３に示すように１３０８にＣ２：
0003962767.tif 000010
を表示する。
【００７１】
対話参加者１は用例のリスト１３０4から発話を選択してもよいが、予測表示領域１３０８にすでに自分が発話したい内容が表示されているので、図３４に示すように予測表示領域１３０８を選択すると、Ｃ２は発話処理部１０２で英語に変換されて、対話参加者２に対して発話"Check-in, please."が伝えられる。同様に、発話予測部１０６は、予測スタックを（Ｅ３，Ｃ４），（Ｅ５，Ｃ６，Ｅ７）と更新し、図３５に示すように予測表示領域１３０９にＥ３："Have you made reservation?"を表示する。このように対話参加者１または対話参加者２は、用例のリスト１３０４または用例のリスト１３０５の中から所望の発話を検索する必要がなく、速やかに相手に意図を伝えることで、対話の所要時間が削減される。
【００７２】
なお、図３６に示すように図１に示す構成に加えて履歴登録部４０１を備え、発話処理部１０５で対話参加者の間で交わされる発話情報をすべて記録し、対話終了時に履歴登録部４０１がその記録を対話履歴データベース２０１に蓄積するように構成することも可能である。これによって、今後の発話予測に有効な対話履歴を増やすことが可能になる。例えば、図３７または図３８に示すように対話参加者が対話終了を指示することで、この動作が実行されるようにする。特に、発話予測部１０６の予測に従わずに対話がなされた場合は、対話履歴データベース２０１に存在しない対話である場合が多く、それを蓄積することで次回の発話予測をより精度良く行うことが可能になる。
【００７３】
また、図１に示す構成の発話受付部１０１および発話受付部１０３に替えて、図３９に示すように音声認識部５０１および音声認識部５０２を備える構成とすることもできる。この場合、音声認識部５０１および音声認識部５０２の認識対象語彙の中で、発話予測部１０６によって予測される発話に関連する語彙については優先的に扱うことで、音声認識の精度を向上させることが可能になる。関連する語彙としては、発話予測部１０６が出力する予測発話そのものであってもよいし、または、その予測発話に近い文であってもよいし、または、予測発話に含まれる単語であってもよいし、または、予測発話から連想される単語であってもよい。
【００７４】
また、図４０または図４１に示すように対話参加者毎のＰＤＡに分割して対話支援装置を実装し、さらにユーザビリティを向上することも可能である。対話支援装置は対話参加者１が利用するＰＤＡ２３０１、対話参加者２が利用するＰＤＡ２３０１にそれぞれ実装されている。ボタン２３０３およびボタン２３０４は、対話参加者１および対話参加者２がそれぞれ対話の予測展開を見るためのボタンである。具体的にはこれらのボタンが押されたときに、発話予測部１０６はこれまでに交わされた発話と現時点の予測スタックの内容をすべて表示する。図４２は対話の予測展開の一例（日本語と英語の場合）を示す図である。これまでに交わされた発話がＥ１，Ｅ８，Ｊ２であり、現時点の予測スタックが、（Ｅ３，Ｊ４），（Ｅ５，Ｊ６，Ｅ７）であると仮定している。これまでに交わされた発話と予測スタックの内容は、予測展開表示領域２４０１に対してはＪ１，Ｊ８，Ｊ２と（Ｊ３，Ｊ４），（Ｊ５，Ｊ６，Ｊ７）として、予測展開表示領域２４０２に対してはＥ１，Ｅ８，Ｅ２と（Ｅ３，Ｅ４），（Ｅ５，Ｅ６，Ｅ７）として、それぞれの対話参加者の言語に変換されて表示される。
【００７５】
また、図４３は対話の予測展開の一例（中国語と英語の場合）を示す図である。これまでに交わされた発話がＥ１，Ｅ８，Ｃ２であり、現時点の予測スタックが、（Ｅ３，Ｃ４），（Ｅ５，Ｃ６，Ｅ７）であると仮定している。これまでに交わされた発話と予測スタックの内容は、予測展開表示領域２４０１に対してはＣ１，Ｃ８，Ｃ２と（Ｃ３，Ｃ４），（Ｃ５，Ｃ６，Ｃ７）として、予測展開表示領域２４０２に対してはＥ１，Ｅ８，Ｅ２と（Ｅ３，Ｅ４），（Ｅ５，Ｅ６，Ｅ７）として、それぞれの対話参加者の言語に変換されて表示される。このような対話の予測展開を対話参加者に示すことにより、相手の発話を前もって知ることが可能になり、対話をする際に頭を整理することでより確実な操作が可能になる。
【００７６】
また、本実施の形態では、一例として日本語と英語の場合と、中国語と英語の場合とを取り上げたが、仏語など他の言語についても同様に実施可能であり、本発明は言語に依存しない。
【産業上の利用可能性】
【００７７】
本発明に係る対話支援装置は、対話参加者の発話を速やかに入力させる機能を有し、携帯電話や携帯端末等の翻訳アプリケーションソフトウェア等として有用である。また公共の街頭端末や案内端末等の用途にも応用できる。さらに、同言語の対話では、定型文のチャットシステムなどの用途にも応用できる。
【図面の簡単な説明】
【００７８】
【図１】図１は本発明に係る対話支援システムの一実施の形態の構成を示すブロック図である。
【図２】図２は対話参加者１および対話参加者２の発話と発話Ｎｏ．の対応関係の一例を示す図である。
【図３】図３(a),(b),(c),(d),(e)は対話履歴データベースに格納される対話履歴の一例を示す図である。
【図４】図４は本発明に係る対話支援装置が利用される場面の一例を示す図である。
【図５】図５は発話予測部の動作の流れを示すフローチャートである。
【図６】図６は本発明に係る対話支援装置の表示例を示す図である。
【図７】図７は本発明に係る対話支援装置の表示例を示す図である。
【図８】図８は対話履歴選択部の動作の流れを示すフローチャートである。
【図９】図９(a),(b)は対話履歴の類似度を定義する数式と計算の例を示す図である。
【図１０】図１０は対話履歴の発話数を調整する動的計画法のアルゴリズムを示す図である。
【図１１】図１１は対話履歴ｄ４に対して動的計画法を適用した例を示す図である。
【図１２】図１２は発話ブロックの決定アルゴリズムを示す図である。
【図１３】図１３は対話履歴についてスコアを計算した結果を示す図である。
【図１４】図１４は本発明に係る対話支援装置の表示例を示す図である。
【図１５】図１５は本発明に係る対話支援装置の表示例を示す図である。
【図１６】図１６は本発明に係る対話支援装置の表示例を示す図である。
【図１７】図１７は本発明に係る対話支援装置の表示例を示す図である。
【図１８】図１８は本発明に係る対話支援装置の表示例を示す図である。
【図１９】図１９は本発明に係る対話支援装置の表示例を示す図である。
【図２０】図２０は本発明に係る対話支援装置の表示例を示す図である。
【図２１】図２１は本発明に係る対話支援装置の表示例を示す図である。
【図２２】図２２は本発明に係る対話支援装置の表示例を示す図である。
【図２３】図２３は本発明に係る対話支援装置の表示例を示す図である。
【図２４】図２４は新しく生成された対話と対話履歴との類似度の比較を示す図である。
【図２５】図２５は対話参加者１および対話参加者２の発話と発話Ｎｏ．の対応関係の一例を示す図である。
【図２６】図２６(a),(b),(c),(d),(e)は対話履歴データベースに格納される対話履歴の一例を示す図である。
【図２７】図２７は本発明に係る対話支援装置の表示例を示す図である。
【図２８】図２８は本発明に係る対話支援装置の表示例を示す図である。
【図２９】図２９は本発明に係る対話支援装置の表示例を示す図である。
【図３０】図３０は本発明に係る対話支援装置の表示例を示す図である。
【図３１】図３１は本発明に係る対話支援装置の表示例を示す図である。
【図３２】図３２は本発明に係る対話支援装置の表示例を示す図である。
【図３３】図３３は本発明に係る対話支援装置の表示例を示す図である。
【図３４】図３４は本発明に係る対話支援装置の表示例を示す図である。
【図３５】図３５は本発明に係る対話支援装置の表示例を示す図である。
【図３６】図３６は本発明に係る対話支援システムの他の実施の形態の構成を示すブロック図である。
【図３７】図３７は本発明に係る対話支援装置の表示例を示す図である。
【図３８】図３８は本発明に係る対話支援装置の表示例を示す図である。
【図３９】図３９は本発明に係る対話支援システムの他の実施の形態の構成を示すブロック図である。
【図４０】図４０(a),(b)は本発明に係る対話支援装置を対話参加者毎に備えた場合の表示例を示す図である。
【図４１】図４１(a),(b)は本発明に係る対話支援装置を対話参加者毎に備えた場合の表示例を示す図である。
【図４２】図４２(a),(b)は本発明に係る対話支援装置を対話参加者毎に備えた場合の表示例を示す図である。
【図４３】図４３(a),(b)は本発明に係る対話支援装置を対話参加者毎に備えた場合の表示例を示す図である。
【符号の説明】
【００７９】
１０１  発話受付部
１０２  発話出力部
１０３  発話受付部
１０４  発話出力部
１０５  発話処理部
１０６  発話予測部
１０７  対話履歴選択部
１０８  通信部
２００  サーバ装置
２０１  対話履歴データベース
２０２  通信部
６０１  対話開始ボタン
８０１  対話履歴ｄｂに対する対話履歴ｄａの類似度を定義する数式
８０２  類似度計算の例
１３０１  対話参加者１の発話入出力領域
１３０２  対話参加者２の発話入出力領域
１３０３  対話終了ボタン
１３０４  対話参加者１の発話入力領域
１３０５  対話参加者２の発話入力領域
１３０６  対話参加者１への発話出力領域
１３０７  対話参加者２への発話出力領域
１３０８  対話参加者１への予測表示領域
１３０９  対話参加者２への予測表示領域
２３０１  対話参加者１のＰＤＡ
２３０２  対話参加者２のＰＤＡ
２３０３  対話参加者１の対話の予測展開ボタン
２３０４  対話参加者２の対話の予測展開ボタン
２４０１  対話参加者１への予測展開表示領域
２４０２  対話参加者２への予測展開表示領域
【図１】
0003962767.tif 000011
【図２】
0003962767.tif 000012
【図３】
0003962767.tif 000013
【図４】
0003962767.tif 000014
【図５】
0003962767.tif 000015
【図６】
0003962767.tif 000016
【図７】
0003962767.tif 000017
【図８】
0003962767.tif 000018
【図９】
0003962767.tif 000019
【図１０】
0003962767.tif 000020
【図１１】
0003962767.tif 000021
【図１２】
0003962767.tif 000022
【図１３】
0003962767.tif 000023
【図１４】
0003962767.tif 000024
【図１５】
0003962767.tif 000025
【図１６】
0003962767.tif 000026
【図１７】
0003962767.tif 000027
【図１８】
0003962767.tif 000028
【図１９】
0003962767.tif 000029
【図２０】
0003962767.tif 000030
【図２１】
0003962767.tif 000031
【図２２】
0003962767.tif 000032
【図２３】
0003962767.tif 000033
【図２４】
0003962767.tif 000034
【図２５】
0003962767.tif 000035
【図２６】
0003962767.tif 000036
【図２７】
0003962767.tif 000037
【図２８】
0003962767.tif 000038
【図２９】
0003962767.tif 000039
【図３０】
0003962767.tif 000040
【図３１】
0003962767.tif 000041
【図３２】
0003962767.tif 000042
【図３３】
0003962767.tif 000043
【図３４】
0003962767.tif 000044
【図３５】
0003962767.tif 000045
【図３６】
0003962767.tif 000046
【図３７】
0003962767.tif 000047
【図３８】
0003962767.tif 000048
【図３９】
0003962767.tif 000049
【図４０】
0003962767.tif 000050
【図４１】
0003962767.tif 000051
【図４２】
0003962767.tif 000052
【図４３】
0003962767.tif 000053