(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022156444
(43)【公開日】2022-10-14
(54)【発明の名称】対話装置、対話方法、およびプログラム
(51)【国際特許分類】
G10L 15/22 20060101AFI20221006BHJP
G10L 13/00 20060101ALI20221006BHJP
G06F 16/90 20190101ALI20221006BHJP
【FI】
G10L15/22 300U
G10L13/00 100M
G06F16/90 100
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2021060145
(22)【出願日】2021-03-31
(71)【出願人】
【識別番号】000005326
【氏名又は名称】本田技研工業株式会社
(74)【代理人】
【識別番号】100165179
【弁理士】
【氏名又は名称】田▲崎▼ 聡
(74)【代理人】
【識別番号】100126664
【弁理士】
【氏名又は名称】鈴木 慎吾
(74)【代理人】
【識別番号】100154852
【弁理士】
【氏名又は名称】酒井 太一
(74)【代理人】
【識別番号】100194087
【弁理士】
【氏名又は名称】渡辺 伸一
(72)【発明者】
【氏名】坂田 さち恵
(72)【発明者】
【氏名】配川 有二
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175EA01
(57)【要約】
【課題】自然な対話を実現することができる対話装置、対話方法、およびプログラムを提供することを目的とする。
【解決手段】対話装置は、利用者発話を取得する発話取得部と、利用者発話内容を分析する対話理解部と、分析結果に基づき利用者との対話状態を更新する対話状態管理部と、更新された対話状態に基づき対話データ群から1つ以上の対話データを選択して対話計画を作成する対話決定部と、対話計画に従い利用者への発話文を対話データから生成し、発話を行う発話出力部とを備え、対話データは対話データを使用するための前提条件と使用後の効果情報と対話データの発話種類と効果情報により設定されたスコアを備え、対話決定部は対話状態と合致する前提条件を備えた対話データと対話データを使用した場合の効果情報に基づき更新が予測される対話状態に合致する対話計画候補の中から対話データのスコア和が最も大きいものを対話計画として選択する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
利用者の発話を取得する発話取得部と、
前記利用者の発話の内容を分析する対話理解部と、
前記発話の分析結果に基づいて、前記利用者との対話状態を更新する対話状態管理部と、
更新された前記対話状態に基づいて、予め準備された対話データ群から1つ以上の対話データを選択して対話計画を作成する対話決定部と、
前記対話決定部によって作成された対話計画に従い、前記利用者への発話文を前記対話データから生成し、前記利用者に対して発話を行う発話出力部と、
を備え、
前記対話データは、前記対話データを使用するための前提条件と、使用後の効果情報と、対話データの発話種類と前記効果情報により設定されたスコアと、を備え、
前記対話決定部は、前記対話状態と合致する前提条件を備えた前記対話データと、前記対話データを使用した場合の効果情報に基づき更新が予測される対話状態に合致する前記対話データによる1つ以上の対話計画候補の中から、前記対話データのスコアの和が最も大きいものを対話計画として選択する、
対話装置。
【請求項2】
前記対話決定部は、前記対話計画を作成する際に対話計画に含む対話データの数を所定数以内とする、
請求項1に記載の対話装置。
【請求項3】
前記対話決定部は、前記対話計画を作成する際に対話計画を作成する処理時間が所定時間内となるよう対話データの数を限定する、
請求項1に記載の対話装置。
【請求項4】
前記対話決定部は、前記対話状態の更新が予測される対話状態に合致する対話データのスコアに係数を乗じた調整スコアを用いてスコアの和を計算する、
請求項1から請求項3のうちのいずれか1項に記載の対話装置。
【請求項5】
前記対話状態管理部は、前記利用者からの発話を取得する際、所定時間内に取得できなかったことを検出し、
前記対話決定部は、前記対話状態管理部が所定時間内に取得できなかったことが検出された後に話題を変える行動の場合にスコアを与える、
請求項1から請求項4のうちのいずれか1項に記載の対話装置。
【請求項6】
前記対話決定部は、前記前提条件に含まれるコミュニケーションに関するスコアが所定値以上になるまで、これまでのテーマに関する話を深堀りするように発話を行う、
請求項1から請求項5のうちのいずれか1項に記載の対話装置。
【請求項7】
対話データが、前記対話データを使用するための前提条件と、使用後の効果情報と、前記対話データの発話種類と前記効果情報により設定されたスコアと、を備え、
発話取得部が、利用者の発話を取得し、
対話理解部が、前記利用者の発話の内容を分析し、
前記発話の分析結果に基づいて、前記利用者との対話状態を更新し、
対話決定部が、更新された前記対話状態に基づいて、予め準備された対話データ群から1つ以上の前記対話データを選択して対話計画を作成し、
発話出力部が、前記対話決定部によって決定された対話計画に従い、前記利用者への発話文を前記対話データから生成し、前記利用者に対して発話を行い、
前記対話決定部は、前記対話状態と合致する前提条件を備えた前記対話データと、前記対話データを使用した場合の効果情報に基づき更新が予測される対話状態に合致する前記対話データによる1つ以上の対話計画候補の中から、対話データのスコアの和が最も大きいものを対話計画として選択する、
対話方法。
【請求項8】
コンピュータに、
利用者の発話を取得させ、
前記利用者の発話の内容を分析させ、
前記発話の分析結果に基づいて、前記利用者との対話状態を更新させ、
更新された前記対話状態に基づいて、予め準備された対話データ群から1つ以上の対話データを選択して対話計画を作成させ、
前記作成された対話計画に従い、前記利用者への発話文を前記対話データから生成し、前記利用者に対して発話を行わせ、
前記対話状態と合致する前提条件を備えた前記対話データと、前記対話データを使用した場合の効果情報に基づき更新が予測される対話状態に合致する対話データによる1つ以上の対話計画候補の中から、前記対話データのスコアの和が最も大きいものを対話計画として選択させ、
前記対話データが、前記対話データを使用するための前提条件と、使用後の効果情報と、前記対話データの発話種類と前記効果情報により設定されたスコアと、を備える、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、対話装置、対話方法、およびプログラムに関する。
【背景技術】
【0002】
利用者に寄り添いつつ会話を継続する会話処理装置が提案されている。例えば、利用者の気持ちに寄り添いつつ会話を継続し利用者の内面を引き出すため、利用者の発言の一部を使って応答文を作成する会話処理装置が提案されている(特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来技術では、利用者の発言を、形を変えて反復するため、自然な対話とならないおそれがある。
【0005】
本発明は、上記の問題点に鑑みてなされたものであって、自然な対話を実現することができる対話装置、対話方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
(1)上記目的を達成するため、本発明の一態様に係る対話装置は、利用者の発話を取得する発話取得部と、前記利用者の発話の内容を分析する対話理解部と、前記発話の分析結果に基づいて、前記利用者との対話状態を更新する対話状態管理部と、更新された前記対話状態に基づいて、予め準備された対話データ群から1つ以上の対話データを選択して対話計画を作成する対話決定部と、前記対話決定部によって作成された対話計画に従い、前記利用者への発話文を前記対話データから生成し、前記利用者に対して発話を行う発話出力部と、を備え、前記対話データは、前記対話データを使用するための前提条件と、使用後の効果情報と、対話データの発話種類と前記効果情報により設定されたスコアと、を備え、前記対話決定部は、前記対話状態と合致する前提条件を備えた前記対話データと、前記対話データを使用した場合の効果情報に基づき更新が予測される対話状態に合致する前記対話データによる1つ以上の対話計画候補の中から、前記対話データのスコアの和が最も大きいものを対話計画として選択する。
【0007】
(2)また、本発明の一態様に係る対話装置において、前記対話決定部は、前記対話計画を作成する際に対話計画に含む対話データの数を所定数以内とするようにしてもよい。
【0008】
(3)また、本発明の一態様に係る対話装置において、前記対話決定部は、前記対話計画を作成する際に対話計画を作成する処理時間が所定時間内となるよう対話データの数を限定するようにしてもよい。
【0009】
(4)また、本発明の一態様に係る対話装置において、前記対話決定部は、前記対話状態の更新が予測される対話状態に合致する対話データのスコアに係数を乗じた調整スコアを用いてスコアの和を計算するようにしてもよい。
【0010】
(5)また、本発明の一態様に係る対話装置において、前記対話状態管理部は、前記利用者からの発話を取得する際、所定時間内に取得できなかったことを検出し、前記対話決定部は、前記対話状態管理部が所定時間内に取得できなかったことが検出された後に話題を変える行動の場合にスコアを与えるようにしてもよい。
【0011】
(6)また、本発明の一態様に係る対話装置において、前記対話決定部は、前記前提条件に含まれるコミュニケーションに関するスコアが所定値以上になるまで、これまでのテーマに関する話を深堀りするように発話を行うようにしてもよい。
【0012】
(7)上記目的を達成するため、本発明の一態様に係る対話方法は、対話データが、前記対話データを使用するための前提条件と、使用後の効果情報と、前記対話データの発話種類と前記効果情報により設定されたスコアと、を備え、発話取得部が、利用者の発話を取得し、対話理解部が、前記利用者の発話の内容を分析し、対話状態管理部が、前記発話の分析結果に基づいて、前記利用者との対話状態を更新し、対話決定部が、更新された前記対話状態に基づいて、予め準備された対話データ群から1つ以上の前記対話データを選択して対話計画を作成し、発話出力部が、前記対話決定部によって決定された対話計画に従い、前記利用者への発話文を前記対話データから生成し、前記利用者に対して発話を行い、前記対話決定部は、前記対話状態と合致する前提条件を備えた前記対話データと、前記対話データを使用した場合の効果情報に基づき更新が予測される対話状態に合致する前記対話データによる1つ以上の対話計画候補の中から、対話データのスコアの和が最も大きいものを対話計画として選択する。
【0013】
(8)上記目的を達成するため、本発明の一態様に係る対話プログラムは、コンピュータに、利用者の発話を取得させ、前記利用者の発話の内容を分析させ、前記発話の分析結果に基づいて、前記利用者との対話状態を更新させ、更新された前記対話状態に基づいて、予め準備された対話データ群から1つ以上の対話データを選択して対話計画を作成させ、前記作成された対話計画に従い、前記利用者への発話文を前記対話データから生成し、前記利用者に対して発話を行わせ、前記対話状態と合致する前提条件を備えた前記対話データと、前記対話データを使用した場合の効果情報に基づき更新が予測される対話状態に合致する対話データによる1つ以上の対話計画候補の中から、前記対話データのスコアの和が最も大きいものを対話計画として選択させ、前記対話データが、前記対話データを使用するための前提条件と、使用後の効果情報と、前記対話データの発話種類と前記効果情報により設定されたスコアと、を備える。
【発明の効果】
【0014】
(1)~(8)によれば、利用者の発言と装置側の行動(発話内容)の経歴に基づいて、最適な対話シナリオをスコアに従って作成するようにしたので、自然な対話を実現することができる。
(2)、(3)によれば、リアルタイムで処理することができる。
(4)によれば、予測どおりに対話が進まない可能性を考慮して対話計画を作成することができる。
(5)によれば、利用者からの発話が得られなかった場合に話題を変えて発話を継続することができる。
(6)によれば、発話に含まれるテーマに関して深堀りすることができる。
【図面の簡単な説明】
【0015】
【
図1】実施形態の対話装置が行う処理の概要を示す図である。
【
図2】実施形態に係る対話装置の構成例と処理手順例を示すブロック図である。
【
図3】実施形態に係る対話装置の処理手順例のフローチャートである。
【
図4】実施形態に係る発話取得部の処理手順例のフローチャートである。
【
図5】実施形態に係る対話状態管理部の処理手順例のフローチャートである。
【
図6】実施形態に係る対話決定部による対話決定のフローチャートである。
【
図7】実施形態に係る発話出力部による発話出力のフローチャートである。
【
図8】実施形態に係る利用者と対話装置との対話例を示す図である。
【
図9】実施形態に係る利用者と対話装置との対話例を示す図である。
【
図10】実施形態に係る対話データの構成例を示す図である。
【
図11】実施形態に係るプランニング例を示す図である。
【
図12】実施形態に係る行動計画候補から次の行動を抽出する手順例を示す図である。
【
図13】実施形態に係る行動計画(プランニング)から行動を選択する方法例を説明するための図である。
【
図15】実施形態に係る行動データの分類例を示す図である。
【
図16】実施形態に係るプランニングのためのスコアの例を示す図である。
【
図17】実施形態に係る行動とスコアと行動の遷移例を示す図である。
【
図18】実施形態に係る行動とスコアと行動の遷移例を示す図である。
【発明を実施するための形態】
【0016】
以下、本発明の実施の形態について図面を参照しながら説明する。
【0017】
[対話装置が行う処理の概要]
まず、本実施形態の対話装置1が行う処理の概要を説明する。
対話装置1は、利用者と対話を行い、対話目的に向かった対話展開を円滑に行う。対話装置1は、利用者の発言と装置側の行動(発話内容)の経歴に基づいて、最適な対話シナリオを評価スコアに従ってプランニング(対話制御)する。例えば、対話装置1が、まず利用者に質問を発し、利用者の発話を取得する。対話装置1は、取得した発話からテーマを抽出し、そのテーマを深掘りするように対話を進める。そして、対話装置1は、採取的に利用者からコミットメントを聞き出すように対話を進める。なお、会話のテキストは、テンプレートが用意されている。また、対話装置1は、対話を進めるのに適した行動をスコアリングで選択(ルールベース)する。対話装置1は、スコアを例えばカウンセラーの対話スキルから重要なもののスコアを高くする。
【0018】
図1は、本実施形態の対話装置1が行う処理の概要を示す図である。なお、
図1は、処理の概要でありイメージ図である。
図1では、利用者が「もっと英語ができるようになりたい」と発話する。これに対して、対話装置1は、この発話を取得して理解する必要がある。このため、対話装置1は、取得した発話g1から、意思(希望)や心理状態(ポジティブがネガティブか)や項目(テーマ)等を理解g2する。なお、対話装置1は、例えば、対話装置が発した質問に対する発話が「ポジティブ」な「意思」の返答であった場合、「テーマ」(項目)が発話されたと理解する(g3)。
【0019】
次に、対話装置は、発話を理解した結果に基づいて、自然な対話を実現するように対話を制御g4する。この際、対話装置1は、発話の理由を尋ねる行動、行動の前提となる理解結果や対話状態、発話の履歴と目的等に基づいて対話を制御する。なお、対話装置1は、理由を尋ねる行動を、発話生成によって行う(g5)。また、対話装置1は、例えば、テーマが既出、理由についての質問が未実行(対話状態)のとき、理由を尋ねる行動を実行する(g5)。また、対話装置1は、例えば、行動済み(質問済み等)の履歴を管理し、行動の種類を管理する(g5)。
【0020】
次に、対話装置1は、発話を理解した結果と行動制御に基づいて、例えば合致する項目g7の(発話に含まれる)テキストを用いて、発話を生成g6する。
図1の例では、「どうして{テーマ}をやりたいのですか?」のテーマに、項目「テーマ」を理解したときのテキスト{もっと英語ができるようになりたい}の一部を用いて、発話文g8を生成する。
【0021】
なお、対話装置1は、利用者に発話を促し、利用者との対話を、例えば利用者からコミットメントを聞き出すまで継続する。また、対話装置1は、例えば、二足歩行ロボット、受付ロボット、コミュニケーションロボット等が備えていてもよい。また、対話装置1の機能をアプリケーションで実現することで、スマートフォン、タブレット端末、スマートウォッチ等に搭載されていてもよい。また、対話を開始するのは、利用者であっても対話装置1であってもよい。
【0022】
[対話装置の構成例]
次に、対話装置1の構成例を説明する。
図2は、本実施形態に係る対話装置1の構成例を示すブロック図である。
図2のように、対話装置1は、対話制御部2、理解生成部3、対話状態記憶部4、および対話DB(データベース)5を備える。
対話制御部2は、発話取得部21、対話状態管理部22、対話決定部23、および発話出力部24を備える。
理解生成部3は、対話理解部31、理解情報記憶部32、および発話文生成部33を備える。
【0023】
発話取得部21は、例えば、収音部211、および音声認識部212を備える。発話取得部21は、取得した音声信号に対して音声認識処理を行い、音声信号の有無、およびに認識結果の文字列を対話状態管理部22に、認識結果の文字列(テキスト)を対話理解部31に出力する。なお、発話取得部21は、発話出力部24が出力した場合、対話装置1による発話であるため、これらの音声信号を取得しないか、取得しても音声認識処理を行わず対話理解部31に出力しないようにしてもよい。なお、発話取得部21は、キーボードやタブレット等によってテキスト情報を取得するようにしてもよい。
【0024】
収音部211は、マイクロホンで音声信号を収音する。収音部211は、複数のマイクロホンを備えるマイクロホンアレイであってもよい。
【0025】
音声認識部212は、収音部211が収音した音声信号から発話区間の音声信号を検出する。音声認識部212は、検出した発話区間の音声信号に対して、例えば音の特徴量に基づくモデルの音響モデルデータベースと、単語とその並び方の情報のモデルの言語モデルデータベースを参照して、周知の手法を用いて音声認識を行い、テキスト化を行う。なお、収音部211がマイクロホンアレイの場合、音声認識部212は、音源分離処理、音源定位処理、音源同定処理等、周知の音声認識処理も行う。
【0026】
対話理解部31は、係り受け解析部312、および理解部313を備える。
【0027】
理解情報記憶部32は、キーワードデータベース等を格納している。
理解情報記憶部32は、対話理解部による係り受け解析、理解の結果等を格納する。
【0028】
係り受け解析部312は、発話取得部21から入力されたテキスト情報に対して、音響モデルデータベースと言語モデルデータベースを参照して、形態素解析と係り受け解析を行う。なお、係り受け解析部312は、係り受け解析に、例えば、Shift-reduce法や全域木の手法やチャンク同定の段階適用手法においてSVM(Support Vector Machines)を用いる。
【0029】
理解部313は、取得した発話内容の対話の種類である対話行為を、キーワードデータベースを参照して判別する。理解部313は、取得した発話内容がポジティブな内容であるかネガティブな内容であるか(心理状態)を、キーワードデータベースを参照して判別する。理解部313は、取得した発話内容からテーマを抽出する。なお、理解部313は、これらの処理を、予め学習して作成したモデルに入力して、判別と抽出を行うようにしてもよい。理解部313は、これらの理解結果を理解情報記憶部32に記憶させる。
【0030】
対話状態管理部22は、対話装置1の発話状態、対話装置1の発話終了時の処理、タイムアウト管理、利用者の発話状態の管理、および利用者の発話内容の理解結果の管理等の対話管理を行う。対話状態管理部22は、これらの管理情報を対話状態記憶部4に記憶させる。また、対話状態管理部22は、タイマー223を備える。タイマー223は、行動の種類に応じた所定時間をカウントする。行動の種類とは、後述するように対話装置1が利用者に対して行う行動(発話)の種類のことである。なお、対話状態管理部22が行う処理については後述する。対話状態管理部22は、タイムアウトを含めた対話状態の更新を示す情報等を対話決定部23に出力する。
【0031】
対話状態記憶部4は、対話装置1の発話状態、対話装置1の発話終了時の処理、タイムアウト管理、利用者の発話状態の管理、および利用者の発話内容の理解結果等を記憶する。
【0032】
対話DB5は、発言を含めたシステムの行動のテンプレート、その行動が実行可能な対話状態を表す前提条件、その行動による対話状態の変化を示す効果からなる対話データを格納している。なお、実施形態では、対話データを、システム(対話装置1)が目的に向かって対話を進めるために用いる。
【0033】
対話決定部23は、対話状態記憶部4が記憶する情報と、対話DB5が格納する情報と、対話状態管理部22が出力する情報とに基づいて、対話をプランニングする。なお、対話決定部23が行う処理については後述する。対話決定部23は、システムの発話文であるテキストについて、生成する必要がない場合はそのまま発話出力部24に出力する。対話決定部23は、発話文を生成する必要がある場合、テンプレート化されているシステムの発話文のテキストおよび、そのテンプレートで用いるための利用者の発言のテキストを発話文生成部33に出力する。
【0034】
発話文生成部33は、対話決定部23が出力するテンプレート化されているシステムの発話文の文字列のおよび、そのテンプレートで用いるための利用者の発言の文字列と、理解情報記憶部32が記憶する情報とに基づいて、発話文テキストを生成する。発話文生成部33は、生成した発話文を発話出力部24に出力する。
【0035】
発話出力部24は、音声変換部241と出力部242を備える。なお、発話出力部24は、画像表示装置を備えていてもよい。
【0036】
音声変換部241は、発話文生成部33が出力する発話文を、周知の手法で音声信号に変換する。
出力部242は、スピーカーである。出力部242は、音声変換部241が出力する発話文の音声信号を発する。
【0037】
[対話装置1の処理手順例]
次に、対話装置1の処理手順例を、
図3~
図7を用いて説明する。
【0038】
(対話装置全体の処理手順例)
図3は、本実施形態に係る対話装置1の処理手順例のフローチャートである。
(ステップS1)発話取得部21は、発話を取得する。
(ステップS2)対話状態管理部22は、対話装置1の発話状態、対話装置1の発話終了時の処理、タイムアウト管理、利用者の発話状態の管理、および利用者の発話内容の理解結果の管理等の対話管理を行う。
【0039】
(ステップS3)対話決定部23は、システム発話の効果が「対話終了」であるか否かを判別する。対話決定部23は、システム発話の効果が「対話終了」であると判別した場合(ステップS3;YES)、処理を終了する。対話決定部23は、システム発話の効果が「対話終了」ではないと判別した場合(ステップS3;NO)、ステップS4の処理に進める。
【0040】
(ステップS4)対話決定部23は、対話を決定する。
(ステップS5)発話出力部24は、決定された発話を出力する。発話出力部24は、処理後、ステップS1の処理に戻す。
【0041】
(発話取得部21の処理手順例)
次に、発話取得部21の処理手順例を説明する。
図4は、本実施形態に係る発話取得部21の処理手順例のフローチャートである。
【0042】
(ステップS101)発話取得部21は、音声信号の取得を行う。また、発話取得部21は、音声信号の状態の情報(音声信号の有無)を対話状態管理部に出力する。
【0043】
(ステップS102)発話取得部21は、音声信号を取得できた場合(ステップS102;YES)、ステップS103の処理に進める。発話取得部21は、音声信号を取得できていない場合(ステップS102;NO)、発話取得処理を終了したことを対話状態管理部22に出力する。
【0044】
(ステップS103)発話取得部21は、取得した音声信号に対して音声認識処理を行う。
【0045】
(ステップS104)発話取得部21は、音声認識処理の結果、認識結果が取得できたと判別した場合(ステップS104;YES)、ステップS105の処理に進める。発話取得部21は、認識結果が取得できていないと判別した場合、ステップS105の処理をスキップする。
【0046】
(ステップS105)発話取得部21は、音声認識処理の結果、取得できた認識結果を対話理解部31に出力する。
【0047】
(対話状態管理部22の処理手順例)
次に、対話状態管理部22の処理手順例を説明する。
図5は、本実施形態に係る対話状態管理部22の処理手順例のフローチャートである。
【0048】
(ステップS201)対話状態管理部22は、例えばステップS104の音声認識結果から利用者が発話中か否かを判別する。対話状態管理部22は、発話中の場合(ステップS201;YES)、ステップS2011の処理に進める。対話状態管理部22は、発話中でなければ(ステップS201;NO)、ステップS202の処理に進める。
【0049】
(ステップS2011)対話状態管理部22は、対話状態に「利用者発話中」を示す情報を設定して、対話状態記憶部4に記憶させる。続けて、対話状態管理部22は、タイマー223に対してタイムカウントを止めてリセットを行う。処理後、対話状態管理部22は、ステップS207に処理を進める。
【0050】
(ステップS202)対話状態管理部22は、利用者が発話中ではないが、対話状態に「利用者発話中」が設定されている場合(ステップS202;YES)、ステップS2021に処理を進める。対話状態管理部22は、「利用者発話中」が設定されていない場合(ステップS202;NO)、ステップS203の処理に進める。
【0051】
(ステップS2021)対話状態管理部22は、利用者の発話が終了したとみなし、設定されている「利用者発話中」に替えて「利用者発話終了」を設定する。続けて、対話状態管理部22は、タイムアウト時間を設定して、タイムカウントを開始する。処理後、対話状態管理部22は、ステップS207に処理を進める。
【0052】
(ステップS203)対話状態管理部22は、対話装置1(システム)の発話状況からシステムが発話中かを判別する。対話状態管理部22は、発話中の場合(ステップS203;Yes)、ステップS2031の処理に進める。対話状態管理部22は、発話中でなければ(ステップS203;NO)、ステップS204の処理に進める。
【0053】
(ステップS2031)対話状態管理部22は、対話状態に「システム発話中」を示す情報を設定して、対話状態記憶部4に記憶させる。続けて、対話状態管理部22は、タイマー223に対してタイムカウントを止めてリセットを行う。処理後、対話状態管理部22は、ステップS207の処理に進める。
【0054】
(ステップS204)対話状態管理部22は、システムが発話中ではないが、対話状態に「システム発話中」が設定されている場合(ステップS204;YES)、ステップS2041の処理に進める。対話状態管理部22は、「システム発話中」が設定されていない場合(ステップS204;NO)、ステップS205の処理に進める。
【0055】
(ステップS2041)対話状態管理部22は、システムの発話が終了したとみなし、設定されている「システム発話中」に替えて「システム発話終了」を設定する。続けて、対話状態管理部22は、実行した行動種類に応じてタイムアウト時間を設定して、タイムカウントを開始する。処理後、対話状態管理部22は、ステップS2042の処理に進める。
【0056】
(ステップS2042)対話状態管理部22は、対話状態に実行を終了した動作の「効果」を設定して、対話状態記憶部4に記憶させる。処理後、対話状態管理部22は、ステップS207の処理に進める。
【0057】
(ステップS205)対話状態管理部22は、対話状態に「タイムアウト」が設定されている場合(ステップS205;YES)、ステップS207の処理に進める。対話状態管理部22は、対話状態に「タイムアウト」が設定されていない場合(ステップS205;NO)、ステップS206の処理に進める。
【0058】
(ステップS206)対話状態管理部22は、タイマー223のカウント値が、設定されたタイムアウト時間を超えてタイムアウトしたか否か判別する。対話状態管理部22は、タイムアウトしたと判別した場合(ステップS206;YES)、ステップS2061の処理に進める。対話状態管理部22は、タイムアウトしていないと判別した場合(ステップS206;NO)、ステップS207の処理に進める。
【0059】
(ステップS2061)対話状態管理部22は、対話状態にタイムアウトしたことを示す情報を設定して、対話状態記憶部4に記憶させる。処理後、対話状態管理部22は、ステップS207の処理に進める。
【0060】
(ステップS207)対話状態管理部22は、対話理解部31から理解情報を取得したか否かを判別する。対話状態管理部22は、理解情報を取得したと判別した場合(ステップS207;YES)、ステップS208の処理に進める。対話状態管理部22は、理解情報を取得していないと判別した場合(ステップS207;NO)、ステップS208をスキップして、ステップS3(
図3)の処理に進める。
【0061】
(ステップS208)対話状態管理部22は、対話状態に理解情報を取得したことを示す情報と理解情報を設定する。続けて、対話状態管理部22は、対話状態に理解情報を取得したことを示す情報と理解情報を対話状態記憶部4に記憶させる。処理後、対話状態管理部22は、ステップS3の処理に進める。
【0062】
なお、対話状態管理22は、ステップS2042で設定した効果が「対話終了」の場合(ステップS3;YES)、処理フローを終了する。対話状態管理22は、それ以外の場合(ステップS3;NO)、対話決定処理のステップS4に処理を進める。
【0063】
(対話決定部23の処理手順例)
次に、対話決定部23の処理手順例を説明する。
図6は、本実施形態に係る対話決定部23による対話決定のフローチャートである。
【0064】
(ステップS301)対話決定部23は、プランが無い、または対話状態がプラン済みのプラン前提条件と一致していないか否かを判別する。対話決定部23は、プランが無い、または対話状態がプラン済みのプラン前提条件と一致していないと判別した場合(ステップS301;YES)、ステップS302の処理に進める。対話決定部23は、プランが有る、または対話状態がプラン済みのプラン前提条件と一致していると判別した場合(ステップS301;NO)、ステップS303の処理に進める。
【0065】
(ステップS302)対話決定部23は、発話文のプランニングを行う。
【0066】
(ステップS303)対話決定部23は、発話文の生成が必要であるか否かを判別する。対話決定部23は、発話文の生成が必要であると判別した場合(ステップS303;YES)、ステップS304の処理に進める。対話決定部23は、発話文の生成が必要ではないと判別した場合(ステップS303;NO)、対話決定処理を終了したことを発話出力部24に出力する。具体的には、対話決定部23は、ステップS301でNOの場合に発話文の生成が不用であると判別して処理を進める。または、対話決定部23は、ステップS301でYESの場合に発話文の生成が必要であると判別してS304の処理に進める。
【0067】
(ステップS304)対話決定部23は、発話生成指示を発話生成部33に出力する。
【0068】
(発話出力部24の処理手順例)
次に、発話出力部24の処理手順例を説明する。
図7は、本実施形態に係る発話出力部24による発話出力のフローチャートである。
【0069】
(ステップS401)発話出力部24は、対話決定部23が出力する情報に基づいて、タイムアウトが検出され、かつ未実行の対話装置の発話が有るか否かを判別する。発話出力部24は、タイムアウトが検出され、かつ未実行の対話装置の発話が有ると判別した場合(ステップS401;YES)、ステップS403の処理に進める。発話出力部24は、タイムアウトが検出されず、または未実行の対話装置の発話が無いと判別した場合(ステップS401;NO)、ステップS402をスキップし、再び発話取得ステップS1の処理に戻す。
【0070】
(ステップS402)発話出力部24は、発話文に基づいて発話を発することで行動を実行する。
【0071】
なお、
図3~
図7それぞれの処理手順は一例であり、これに限らない。
【0072】
(対話例)
ここで、利用者と対話装置1との対話例を説明する。
図8、
図9は、本実施形態に係る利用者と対話装置1との対話例を示す図である。なお、
図8、
図9の対話例は、まず対話装置1が発話し、利用者の発話を促して対話を行った例である。発話H11~H23が利用者の発話であり、R11~R39が対話装置1の発話である。
【0073】
図8、
図9の発話例のうち、発話R11~R13、発話H11~H12を例に対話を説明する。
対話装置1の発話R11に対して、利用者が発話H11を発話する。
対話装置1は、発話H11を取得して解析した結果に基づいて対話をプランニングして、発話R12を発する。発話12に対して、利用者からの発話が所定時間内に得られなかったため、対話装置1は、さらに発話R13を発する。これに対して、所定時間内に、利用者から発話H12が得られた。
また、
図8、
図9の例では、対話装置1の発話R36により、利用者の発話H23が得られた。
【0074】
このように、対話装置1は、利用者の発話を促し、異なる対話テーマでも相手に合わせる対話を進めることができ、対話状態によって自然な会話を継続することができる。さらに、対話装置1は、例えば発話R32、R36のような発話を行うことで、利用者を結論に誘導できる。なお、対話装置1は、利用者の発話をポジティブな発話にするように誘導するような発話をすることで、対話を継続させていく。
【0075】
[対話データと対話計画候補例とプランニング例]
次に、対話データと行動遷移候補例とプランニング例を説明する。
図10は、本実施形態に係る対話データの構成例を示す図である。対話データはテンプレートであり、例えば、「行動」と「前提条件」と「効果」を含んで構成されている。
【0076】
「行動」は、実際の対話テキストフォームであり、利用者の発話の中から例えば「テーマ」に対応する言葉を引用した発話文のテキストである。
【0077】
「前提条件」は、その対話テキストを使うための条件である。「前提条件」は、例えば「履歴未」と「履歴済」と「データ」と「理解」を含んで構成されている。
「履歴未」テキストで示された行動の履歴がなく、未実行であること、「履歴済」は、テキストで示された行動の履歴が有り、実行済の状態であることを示す。
「データ」は、例えばスコアである。
「理解」は、例えばユーザの発話がポジティブであるかネガティブであるかといった理解結果である。
【0078】
「効果」は、発話による利用者や対話状態に対する効果である。効果は、例えば、「履歴」と「目的」と「期待」を含んで構成されている。
「履歴」は、例えば実行した発話の内容等を記録しているデータである。
「目的」は、行動の種類とこの発話によって利用者から引き出したい内容であり、発話と関連する項目である。
第1の「期待」は、この発話の後に期待される対話状態であり、理解結果に基づく加算スコアを含むことがある。
第2の「期待」は、イベント、イベント内容に基づく加算スコアである。
【0079】
次に、対話計画候補例を説明する。
図11は、本実施形態に係る対話計画候補例を示す図である。
現在の対話状態g11をAとする。現在の対話状態g11からの遷移可能な対話状態は、行動1(g12)と行動4(g13)であり、前提条件である前の対話状態がAである。行動1の効果がBであり、行動2の効果がEであり、のちに示される計算法によるスコアがEの方がBより大きいとする。
図11において、それぞれの行動のスコアから計算されるスコアの和が高い対話計画は、行動1(g12)から行動2(g14)、行動2(g14)から行動3(g17)であるとする。
【0080】
次に、
図10と
図11を参照しつつ、プランニング方法例を説明する。
図10のように各対話データには、のちに示される書式にて記述される通り、獲得できる情報や効果によるスコアが含まれている。
対話装置1は、対話状態により実行可能な対話データを対話DB5から検索して列挙する。次に、対話装置1は、複数の列挙された対話データの効果を対話状態に反映することで、さらに次に実行可能な対話データを対話DB5から検索して列挙するという操作を繰り返すことで、
図11のような実行可能な対話データ列の集合である対話計画候補を作成する。次に対話装置1は、対話計画候補に含まれる各対話データ列の行動のスコアの和である合計スコアが高い対話計画の最初の行動を選択する。なお、リアルタイムで処理するために、プランニングの繰り返しの回数を制限してもよい。対話装置1は、例えば、対話計画を作成する際に対話計画に含む対話データの数を所定数以内とするようにしてもよく、対話計画を作成する際に対話計画を作成する処理時間が所定時間内となるよう繰り返しの回数を限定するようにしてもよい。また、対話装置1は、予測どおりに対話が進まない可能性を考慮して、繰り返し後の対話データのスコアに例えば0.5を掛けて計算するようにしてもよい。なお、掛ける定数は0.5に限らず1未満であればよい。
【0081】
なお、
図10において、「効果」の「目的:A:B」は、項目Aが対話装置1の行動の種類を示し、項目Bがこの発話によって利用者から引き出したい内容を示している。
また、「効果」の「期待:理解:肯定:10.0」の記述において「期待:」に続いて示されているものは、システムが期待する、この行動の直後の対話状態が記述と一致した場合にスコアの和を上書きする値である。本実施形態では、この行動によって、直後の理解結果が「肯定」であった場合、スコアの和を10.0に設定するという効果を記述している。
【0082】
このように、対話決定部23は、対話理解部31の理解情報を用いて対話状態管理部22によって更新された対話状態に基づいて、予め準備された対話データ群から1つ以上の対話データを選択して対話計画を作成する。なお、予め準備された対話データ群は、テンプレートであり、対話DB5に格納されている。また、対話決定部23は、対話状態と合致する前提条件を備えた対話データと、その対話データの効果を対話状態に反映することで、さらに次に実行可能な対話データを対話DB5から検索して列挙するという操作を繰り返すことによる1つ以上の対話計画候補の中から、対話データのスコアの和が最も大きいものを対話計画として選択する。
図11の例では、行動1の効果Bに関するスコアよりも行動2の効果Eに関するスコアの方が大きい場合でも、将来的の予測に基づいてスコアの和が高い行動1から行動2、行動2から行動3の対話計画を選択する。
そして、対話決定部23は、
図9のように、テーマに関する話を深堀りしてきて、対話の累積スコアが一定以上(例えば2.5以上)になった場合に、コミットメントの段階に進むための確認質問を行う。
【0083】
このように、対話装置1は、累積スコアが所定値以上になるまで、同じテーマに関する対話を継続することで、テーマに関する話の深堀りを行う。なお、深掘りに対する累積スコアの所定値2.5は一例であり、2.5未満であってもよく、2,5より大きくてもよい。
【0084】
[対話の継続の実現]
次に、利用者との継続した対話の処理方法例を、
図12と
図13を用いて説明する。
図12は、本実施形態に係る行動計画候補から次の行動を抽出する手順例を示す図である。
現在の対話状態g101の情報(履歴、理解、イベント、データ等)は、対話状態記憶部4に記憶されている。対話決定部23は、予め準備された対話データ群から、現在の対話状態g101の前提条件に合致する行動候補g102とg103を抽出する。対話決定部23は、対話状態それぞれに効果を反映する。
【0085】
対話状態g101は、行動候補g102により対話状態1(g104)に遷移し、行動候補g103により対話状態1’(g105)に遷移する。
対話決定部23は、予め準備された対話データ群から、対話状態1(g104)の前提条件に合致する行動候補g106とg107を抽出し、対話状態1’(g105)の前提条件に合致する行動候補g108を抽出する。対話決定部23は、対話状態それぞれに効果を反映する。
【0086】
図13は、本実施形態に係る行動計画(プランニング)から行動を選択する方法例を説明するための図である。
対話決定部23は、行動候補の動機づけに関わるスコアとして、例えば、テーマ(theme)、行動(action)、時間(time)、その他の要素のスコアを算出する。また、対話決定部23は、行動の種類に応じたスコアとして、例えば、返答、フィードバック、質問、対話終了のスコアを算出する。
そして、対話決定部23は、プランニング結果の中でスコアの和が高い行動を選択する。
【0087】
本実施形態では、対話状態の変化に基づいて再プランニングを実施することによって相手の発言に話を合わせ、またタイムアウトを対話状態として扱うことで、対話の間に応じたシステムからの発話を両立した。また、本実施形態では、動機づけに向けた効果や対話履歴を考慮した対話計画候補のスコアにより、将来の対話状態の変化を予測した上でより良い発話を選択するようにした。
【0088】
[スコアの算出例]
次に、スコアの算出例を、
図14~
図18を用いて説明する。
図14は、対話例を示す図である。なお、
図14において、発話R101~R104は対話装置1の発話であり、発話H101~H103は利用者の発話である。
【0089】
図15は、本実施形態に係る行動データのカテゴリの分類例を示す図である。
対話決定部23は、行動のデータを分類して、スコア設定の際にこのカテゴリを利用している。カテゴリは、
図15のように、例えば、「テーマを設定する質問」、「対話の終了に向けた発話」、「テーマについて深堀りする質問、話題継続、引用あり」、「テーマについて深堀りする質問、話題継続、引用なし」、「コミットメントを引き出す質問、話題継続、引用あり」、「コミットメントを引き出す質問、話題継続、引用なし」、「挨拶」、「ユーザの発言への応答」、「ユーザからの質問への返答」、「テーマについて深堀りする質問、話題を転換、引用あり」、「テーマについて深堀りする質問、話題を転換、引用なし」、「コミットメントを引き出す質問話題を転換、引用あり」、「コミットメントを引き出す質問、話題を転換、引用なし」等である。
なお、
図15に示したカテゴリは一例であり、これに限らない。
【0090】
図16は、本実施形態に係るプランニングのためのスコアの例を示す図である。
図16のように、例えば、行動の種類が「(ユーザの質問への)返答」のスコアは「+1.0」であり、「(ユーザの発言への)フィードバックや反応」のスコアは「+0.02」であり、「対話終了」のスコアは「-0.5」であり、「その他」のスコアは「+0.01」である。なお、
図16に示した行動の種類やスコアは一例であり、これに限らない。
【0091】
図17、
図18は、本実施形態に係る行動とスコアと行動の遷移例を示す図である。
なお、
図17、
図18の例は、対話装置1の発話R102の行動から、発話R103に至る行動候補とスコアの例である。
発話R102の行動候補g201の種類は「質問」であり、
図16の「その他」にあたるため、スコアは0.01である。この例は「最新の理解結果」が前提条件の「sentiment(感情)positive」と一致していて、スコアは「最新の理解結果」として0.03、「sentimentの一致」で0.05、「感情(sentiment)」がnegativeではないので話題を継続するので0.01となっていた場合の結果である。これにより、行動候補g201のスコアの総和は0.1(=0.01+0.03+0.05+0.01)となる。
【0092】
行動候補g201から遷移可能な行動の候補は、第1の行動候補g202と第2の行動候補g203である。
以下、スコアの値は計算方法を示すために例として設定したものである。
第1の行動候補g202の行動の種類は「質問」であり、スコアは0.01である。現在状況と行動のカテゴリによると「タイムアウトが連続した後、これまで話題を変えていないときに話題を変える行動」でありスコアは0.22である。なお、プランニング2階層目であるため、スコアの和に1/2を乗じる。これにより、第1の行動候補g202のスコアの総和は0.115{=(0.01+0.22)×(1/2)}である。この結果、行動g201から第1の行動候補g202の行動計画候補のスコアの合計は0.215(=0.1+0.115)となる。なお、タイムアウトが連続していなくても、話題を変える行動を行った場合にもスコアを加算するようにしてもよい。本実施形態によれば、このようなスコアの付与によって、利用者からの発話が得られなかった場合に話題を変えて発話を継続することができる。
【0093】
第2の行動候補g203の行動の種類は「質問」であり、スコアは0.01である。さらに「タイムアウトが連続した後に話題を変える行動」でありスコアは0.2である。また、プランニング2階層目であるため、スコアの和に1/2を乗じる。これにより、第2の行動候補g203のスコアの総和は0.105{=(0.01+0.2)×(1/2)}である。この結果、行動g201から第2の行動候補g203の行動計画候補のスコアの合計は0.205(=0.01+0.115)となる。
【0094】
行動候補g204の種類は「質問」であり、スコアは0.01である。
行動候補g204から遷移可能な行動の候補は、行動候補g205である。
行動候補g205の行動の種類は「質問」であり、スコアは0.01である。現在の状況と行動のカテゴリは「タイムアウトが連続した後に話題を変える行動」でありスコアは0.2である。なお、プランニング2階層目であるため、スコアの和に1/2を乗じる。これにより、行動候補g205のスコアの総和は0.105{=(0.01+0.2)×(1/2)}である。この結果、行動候補g204から行動候補g205の行動計画候補のスコアの合計は0.115(=0.01+0.105)となる。
【0095】
このように
図17の例では行動候補g201から行動候補g202、行動候補g201から行動候補g203、行動候補g204から行動候補g204といった3つの行動計画候補をプランニングする。それぞれの行動計画候補のスコアの合計を比較した結果、最も高い行動候補g201から行動候補g202の行動計画を選択し、まずは行動計画の最初の行動g201を選択する。
【0096】
図18に移って説明を続ける。
行動候補g211の種類は「確認」であり、スコアは0.01である。効果の「期待」に書かれたスコアは、行動後にスコアが10.0になることを示しており、スコアは10.0から現在のスコアを減算した値の9.63である。これにより、行動g211のスコアの総和は9.64(=0.01+9.63)である。
【0097】
行動候補g211から遷移可能な行動の候補は、行動候補g212である。
行動候補g212の行動の種類は「質問」であり、スコアは0.01である。行動は「commitmentを得るための行動」でありスコアは0.1であり、「タイムアウトが連続した後、これまで話題を変えていないときに話題を変える行動」でありスコアは0.22である。効果の「期待」に書かれたスコアは0.1である。なお、プランニング2階層目であるため、スコアの和に1/2を乗じる。これにより、行動候補g212のスコアの総和は0.215{=(0.01+0.1+0.22+0.1)×(1/2)}である。この結果、行動候補g211から行動候補g212の行動計画候補のスコアの合計は9.855(=9.64+0.215)となる。
【0098】
行動候補g213の種類は「質問」であり、スコアは0.01である。
行動候補g213から遷移可能な行動の候補は、行動候補g214である。
行動候補g212の行動の種類は「確認」であり、スコアは0.01である。現在の状況と行動のカテゴリは「これまで話題を変えていないときに話題を変える行動」でありスコアは0.02である。効果の「期待」に書かれたスコアは9.63である。なお、プランニング2階層目であるため、スコアの和に1/2を乗じる。これにより、行動候補g214のスコアの総和は4.83{=(0.01+0.2+9.63)×(1/2)}である。この結果、行動候補g213から行動候補g214のプランのスコアの合計は4.84(=0.01+4.83)となる。
この結果、対話決定部23は、行動候補g211から行動候補g212の行動計画と行動候補g213から行動候補g214の行動計画のスコアの合計を比較して、より高いg211からg212の行動計画を選択する。
【0099】
なお、
図17、
図18に示した行動や行動候補、各スコア等は一例であり、これに限らない。
例えば、対話決定部23は、以下のI~IXのような場合にスコアを与えるようにしてもよい。
【0100】
I.対話のステップを進めるために必要なシステム発話に特別なスコアを設定
例えば、対話に段階がある場合、段階を進めるために重要なやりとりに特別なスコアを設定。
【0101】
II.対話装置1の行動の種類ごとに設定したスコア
例えば、対話装置1が行わなければいけない行動や、行った方がより効果が高い行動に高いスコアを設定(例:ユーザからの質問には何らかの返答をしなければならない)。
【0102】
III.対話装置1の行動の目的、つまり発話によって引き出したい内容に応じたスコア
例えば、今回の対話のゴールがcommitmentを引き出すことなので、そのための質問に高いスコアを設定。
【0103】
IV.複数の理解結果があるとき、より後ろの(新しい)理解結果が一致したシステム発話のスコア
例えば、利用者が一つの発言の中で複数の内容を話した時、より後ろに(新しく)出現した理解結果と前提条件が合致する行動のスコアを高く設定。
【0104】
V.対話装置1の発言に設定された前提条件に応じたスコア
例えば、前提条件に「履歴」が設定されている場合、重要な話題の継続があると考えられるので、スコアを高く設定。前提条件に「感情理解結果」を設定してある場合、より共感的な行動であると考えられるのでスコアを高く設定。
【0105】
VI.対話装置1の発言のカテゴリ(引用の有/無、話題継続/話題転換)に応じたスコア
例えば、感動詞やfillerといった引用が不適切なものを引用しないようスコアを低く設定(例:ありがとう、えー)。利用者の発言がネガティブではない場合は話題を継続する発言に高いスコアを設定。利用者からの発言が例えば2回連続で得られない場合、話題を変える発言に高いスコアを設定。5回以上話題が継続しているとき、テーマから話題が逸脱している場合もあるので、ユーザの発言がポジティブではないタイミングで話題を変える(改めてテーマに立ち戻る)発言に高いスコアを設定。あらかじめ設定されたキーワード(ありがとう、もう一回言って等)が検出されたとき、引用するのは不適切だと考えられるので引用をしないようにスコアを低く設定。
【0106】
VII.これまでに実行した行動との合致に応じたスコア
例えば、同じ発言を連続して行わないようにスコアを低く設定。
【0107】
VIII.対話の累計スコアと、発言のカテゴリに応じたスコア
例えば、対話の累計スコアが低い最初の段階において、システムがユーザの発言をどのくらい認識・理解しているかを示すためにユーザ発言を引用する発言のスコアを高く設定。
【0108】
IX.これまでに実行した行動の目的との合致に応じたスコア
例えば、「理由を聞く質問」「詳細化する質問」といった質問の「目的」が直前の発話と同じにならないように、同じ目的のものはスコアを低く設定。
【0109】
なお、与えるスコアの値は、例えば10以下であり、負の値であってもよい。対話決定部23は、例えば、キーワードが検出されているとき、利用者の発言を引用する発話に対してスコアを下げる(負のスコアを与える)ようにしてもよい。
【0110】
以上のように、本実施形態では、対話状態管理部22において、そのときの対話状態に基づく対話候補データとそれに続く予測される対話状態に基づいた対話候補データにより対話計画候補を作成し、その対話計画候補から対話データに設定されたスコアの和が最も大きいものを選択して対話を行うようにした。なお、スコアは、対話データの発話種類と発話により得られるユーザ情報や履歴などの効果情報によって設定されており、対話の流れや主題の結論への誘導を考慮して設定される。
これにより、本実施形態の対話装置1によれば、対話状態によって自然な会話を継続し、利用者を結論に誘導することができる。
【0111】
なお、上述した例では、利用者が音声で発話する例を説明したが、取得される発話は音声信号に限らない。例えば、発話取得部21は、キーボードやタブレットなどの入力文字や手書き文字の取得部を備えていてもよい。この場合、発話取得部21は、取得した発話が手書き文字の場合に周知の手法の画像認識等によって手書き文字を認識するようにしてもよい。また、このような場合。発話出力部24は、発話を音声信号および画像出力のうちの少なくとも1つを出力するようにしてもよい。
【0112】
なお、本発明における対話装置1の機能の全てまたは一部を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより対話装置1が行う処理の全てまたは一部を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
【0113】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【0114】
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形および置換を加えることができる。
【符号の説明】
【0115】
1…対話装置、2…対話制御部、3…理解生成部、4…対話状態記憶部、5…対話DB、21…発話取得部、22…対話状態管理部、23…対話決定部、24…発話出力部、31…対話理解部、32…理解情報記憶部、33…発話文生成部、211…収音部、212…音声認識部、213…タイマー、241…音声変換部、242…出力部、311…テキスト化部、312…係り受け解析部、313…理解部