(57)【要約】  ユーザの違和感を軽減することができる対話技術を提供する。対話システム１００は、ユーザと対話を行う対話システムであって、ユーザの発話が終了したと推定または判定された後または終了する予測時刻の後であって、ユーザの発話に対する応答発話を対話システムが行う前に、ユーザの発話と対話システムの応答発話との間の間を埋めるための行動を提示する提示部５０を備えている。
2018163648.tif 000002
【特許請求の範囲】
【請求項１】
ユーザと対話を行う対話システムであって、
上記ユーザの発話が終了したと推定または判定された後または終了する予測時刻の後であって、上記ユーザの発話に対する応答発話を上記対話システムが行う前に、上記ユーザの発話と上記対話システムの応答発話との間の間を埋めるための行動を提示する提示部、
を含む対話システム。
【請求項２】
請求項１の対話システムであって、
上記対話システムは、上記ユーザの発話の音声が無くなったことを検出した場合に、上記ユーザの発話が終了したと推定する、
対話システム。
【請求項３】
請求項１又は２の対話システムであって、
上記間を埋めるための行動は、言語行動と非言語行動の少なくとも何れかである、
対話システム。
【請求項４】
請求項１の対話システムであって、
上記対話システムは、
上記ユーザの発話の音声が無くなってからの経過時間が第一の時間閾値より長い場合に、上記ユーザの発話が終了したと推定し、
上記ユーザの発話の音声が無くなってからの経過時間が第一の時間閾値より長い第二の時間閾値より長い場合に、上記ユーザの発話が終了したと判定する
対話システム。
【請求項５】
請求項１から４の何れかの対話システムであって、
上記ユーザの発話が終了したと判定した場合の上記間を埋めるための行動は、上記ユーザの発話の少なくとも一部と同じ発話を含む、
対話システム。
【請求項６】
請求項１から５の何れかの対話システムであって、
上記間を埋めるための行動は、ある人格である第一人格と、上記第一人格とは異なる第二人格との間で行われる行動を含む、
対話システム。
【請求項７】
ユーザと対話を行う対話システムが実行する対話方法であって、
上記対話システムの提示部が、上記ユーザの発話が終了したと推定または判定された後または終了する予測時刻の後であって、上記ユーザの発話に対する応答発話を上記対話システムが行う前に、上記ユーザの発話と上記対話システムの応答発話との間の間を埋めるための行動を提示するステップ、
を含む対話方法。
【請求項８】
行動を提示する提示部を少なくとも含む対話システムが提示する行動を決定する対話装置であって、
上記ユーザの発話が終了したと推定または判定された後または終了する予測時刻の後であって上記ユーザの発話に対する応答発話を上記対話システムが行う前に上記提示部により提示される、上記ユーザの発話と上記対話システムの応答発話との間の間を埋めるための行動を決定する行動決定部、
を含む対話装置。
【請求項９】
請求項７の対話方法の各ステップをコンピュータに実行させるためのプログラム。
【請求項１０】
請求項８の対話装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、人とコミュニケーションを行うロボットなどに適用可能な、コンピュータが人間と自然言語等を用いて対話を行う技術に関する。
【背景技術】
【０００２】
近年、人とコミュニケーションを行うロボットの研究開発が進展しており、様々な現場で実用化されてきている。例えば、コミュニケーションセラピーの現場において、ロボットが孤独感を抱える人の話し相手となる利用形態がある。具体的には、老人介護施設においてロボットが入居者の傾聴役となることで、入居者の孤独感を癒す役割を担うことができると共に、ロボットとの会話している姿を見せ、入居者とその家族や介護士など周りの人々との会話のきっかけを作ることができる。また、例えば、コミュニケーション訓練の現場において、ロボットが練習相手となる利用形態がある。具体的には、外国語学習施設においてロボットが外国語学習者の練習相手となることで、外国語学習を効率的に進めることができる。また、例えば、情報提示システムとしての応用において、ロボット同士の対話を聞かせることを基本としながら、時折人に話しかけることで、退屈させずに人を対話に参加させ、人が受け入れやすい形で情報を提示することができる。具体的には、街中の待ち合わせ場所やバス停、駅のホームなどで人が時間を持て余している際や、自宅や教室などで対話に参加する余裕がある際に、ニュースや商品紹介、蘊蓄・知識紹介、教育（例えば、子供の保育・教育、大人への一般教養教授、モラル啓発など）など、効率的な情報提示が期待できる。さらに、例えば、情報収集システムとしての応用において、ロボットが人に話しかけながら情報を収集する利用形態がある。ロボットとのコミュニケーションにより対話感を保持できるため、人に聴取されているという圧迫感を与えずに情報収集することができる。具体的には、個人情報調査や市場調査、商品評価、推薦商品のための趣向調査などに応用することが想定されている。このように人とロボットのコミュニケーションは様々な応用が期待されており、ユーザとより自然に対話を行うロボットの実現が期待される。また、スマートフォンの普及により、LINE(登録商標)のように、複数ユーザでほぼリアルタイムにチャットを行うことにより、人との会話を楽しむサービスも実施されている。このチャットサービスにロボットとの会話の技術を適用すれば、チャット相手がいなくても、ユーザとより自然に対話を行うチャットサービスの実現が可能となる。【０００３】
本明細書では、これらのサービスで用いられるロボットやチャット相手などのユーザとの対話相手となるハードウェアやユーザとの対話相手となるハードウェアとしてコンピュータを機能させるためのコンピュータソフトウェアなどを総称してエージェントと呼ぶこととする。エージェントは、ユーザとの対話相手となるものであるため、ロボットやチャット相手などのように擬人化されていたり、人格化されていたり、性格や個性を有していたりするものであってもよい。【０００４】
これらのサービスの実現のキーとなるのは、ハードウェアやコンピュータソフトウェアにより実現されるエージェントが人間と自然に対話を行うことができる技術である。【０００５】
上記のエージェントの一例として、例えば、非特許文献１に記載されたような、ユーザの発話を音声認識し、発話の意図を理解・推論して、適切な応答をする音声対話システムがある。音声対話システムの研究は、音声認識技術の進展に伴って活発に進められ、例えば音声自動応答システムなどで実用化されている。【０００６】
また、上記のエージェントの一例として、あらかじめ定められたシナリオに沿って特定の話題についてユーザと対話を行うシナリオ対話システムがある。シナリオ対話システムでは、シナリオに沿って対話が展開する限り対話を続けることが可能である。例えば、非特許文献２に記載された対話システムは、ユーザと複数のエージェント間で、エージェントによる割り込みやエージェント同士のやり取りを含めながら対話を行うシステムである。例えば、エージェントは、ユーザに対してシナリオに用意された質問を発話し、質問に対するユーザの回答の発話がシナリオに用意された選択肢に対応する場合に、その選択肢に対応する発話を行うように機能する。すなわち、シナリオ対話システムは、システムに予め記憶されたシナリオに基づいた発話をエージェントが行う対話システムである。この対話システムでは、エージェントがユーザに問いかけ、ユーザからの返答を受けた際に、ユーザの発話内容に関わらず「そっか」といった相槌で流したり、エージェントの割り込みで話題を変えたりすることで、ユーザの発話が本来の話題から外れた場合であってもストーリーの破綻をユーザに感じさせないように応答することが可能である。【０００７】
また、上記のエージェントの一例として、ユーザの発話内容に沿った発話をエージェントが行うことにより、ユーザとエージェントとが自然な対話を行う雑談対話システムがある。例えば、非特許文献３に記載された対話システムは、ユーザとエージェントとの間で行われる複数回の対話の中で文脈に特有のものをより重視しながら、ユーザまたはエージェントの発話に含まれる単語をトリガーとして、あらかじめ記述しておいたルールに従ってシステムが発話することで、ユーザとシステムとの間で雑談対話を実現するシステムである。雑談対話システムが用いるルールは、あらかじめ記述したものだけでなく、ユーザの発話内容に基づいて自動的に生成したものであってもよいし、ユーザまたはエージェントによる直前の発話またはその近傍に発話された発話に基づいて自動的に生成したものであってもよいし、ユーザまたはエージェントによる直前の発話またはその近傍に発話された発話を少なくとも含む発話に基づいて自動的に生成したものであってもよい。非特許文献３には、ユーザの発話に含まれる単語と共起関係や係り受け関係にある単語に基づいて、自動的にルールを生成する技術が記載されている。また、例えば、非特許文献４に記載された対話システムは、人手で記述したルールと統計的発話生成手法で記述したルールを融合することで、ルール生成のコストを低減したシステムである。雑談対話システムは、シナリオ対話システムとは異なり、予め用意されたシナリオに沿った発話をエージェントが行うものではないため、ユーザの発話によっては、エージェントの発話がユーザの発話に対応しないものとなってしまうという事態は生じずに、少なくともユーザの発話内容、もしくはユーザまたはエージェントによる直前の発話またはその近傍に発話された発話、もしくはユーザまたはエージェントによる直前の発話またはその近傍に発話された発話を少なくとも含む発話に基づいた発話をエージェントが行うことが可能である。すなわち、雑談対話システムは、少なくともユーザの発話内容、もしくはユーザまたはエージェントによる直前の発話またはその近傍に発話された発話、もしくはユーザまたはエージェントによる直前の発話またはその近傍に発話された発話を少なくとも含む発話に基づいた発話をエージェントが行う対話システムである。これらの雑談対話システムでは、ユーザの発話に対して明示的に応答することが可能である。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】河原達也，“話し言葉による音声対話システム”，情報処理，vol.45，no. 10，pp. 1027-1031，2004年10月
【非特許文献２】有本庸浩，吉川雄一郎，石黒浩，“複数体のロボットによる音声認識なし対話の印象評価”，日本ロボット学会学術講演会，2016年
【非特許文献３】杉山弘晃，目黒豊美，東中竜一郎，南泰浩，“任意の話題を持つユーザ発話に対する係り受けと用例を利用した応答文の生成”，人工知能学会論文誌，vol.30(1)，pp. 183-194，2015年
【非特許文献４】目黒豊美，杉山弘晃，東中竜一郎，南泰浩，“ルールベース発話生成と統計的発話生成の融合に基づく対話システムの構築”，人工知能学会全国大会論文集，vol. 28，pp. 1-4，2014年
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、ユーザの発話が終わった後、エージェントが応答の発話を開始するまでの時間に、ユーザが違和感を感じることがある。【００１０】
例えば、図３に示すように、ユーザが発話を開始した時刻である発話開始時刻をτ１とし、ユーザの発話が終了した時刻である発話終了時刻をτ２とし、τ２がユーザの発話が終了した時刻であると判定した時刻を発話終了判定時刻τ３とし、ユーザの発話に対するエージェントの応答の発話を生成して開始する時刻である応答発話開始時刻をτ４とする。図３の縦軸はユーザの発話を収音するためのマイクロホンで収音した音響信号の振幅を表し、横軸は時刻を表す。【００１１】
図３の例では、ユーザの発話が終了した時刻τ２からユーザの発話に対するエージェントの応答の発話を生成して開始する時刻τ４までには、発話終了の判定の遅延である第一遅延時間τ３-τ２と、発話生成の遅延である第二遅延時間τ４-τ３とが発生している。【００１２】
これらの第一遅延時間及び第二遅延時間に起因して、ユーザの発話に対するエージェントの応答が遅いとユーザが感じる可能性、すなわち、ユーザがエージェントとの対話に違和感を感じる可能性があった。【００１３】
この発明は、ユーザの違和感を軽減した対話システム、方法、装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記の課題を解決するために、この発明の第一の態様の対話システムは、ユーザと対話を行う対話システムであって、ユーザの発話が終了したと推定または判定された後または終了する予測時刻の後であって、ユーザの発話に対する応答発話を対話システムが行う前に、ユーザの発話と対話システムの応答発話との間の間を埋めるための行動を提示する提示部、を備えている。
【発明の効果】
【００１５】
この発明によれば、ユーザの発話が終了したと推定または判定された後または終了する予測時刻の後であって、ユーザの発話に対する応答発話を対話システムが行う前に、ユーザの発話と対話システムの応答発話との間の間を埋めるための行動を提示することにより、ユーザの違和感を軽減することができる。
【図面の簡単な説明】
【００１６】
【図１】図１は、実施形態の対話システムの機能構成を例示する図である。
【図２】図２は、実施形態の対話方法の処理手続きを例示する図である。
【図３】図３は、従来技術を説明するための図である。
【図４】図４は、実施形態の効果を説明するための図である。
【発明を実施するための形態】
【００１７】
以下、この発明の実施の形態について詳細に説明する。なお、図面中において同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
【００１８】
［実施形態］
実施形態の対話システムは、複数台の人型ロボットが協調してユーザとの対話を行うシステムである。すなわち、実施形態の対話システムは、エージェントが人型ロボットである場合の一例である。対話システム１００は、図１に示すように、例えば、対話装置１と、マイクロホン１１およびカメラ１２からなる入力部１０と、少なくともスピーカ５１を備える提示部５０とを含む。対話装置１は、例えば、行動認識部２０、発話決定部３０、音声合成部４０、発話終了推定部６１、行動決定部６２、および発話終了判定部６３を備える。行動認識部２０は、例えば、音声認識部２１および動作認識部２２を備える。この対話システム１００が後述する各ステップの処理を行うことにより実施形態の対話方法が実現される。
【００１９】
対話装置１は、例えば、中央演算処理装置（CPU: Central Processing Unit）、主記憶装置（RAM: Random Access Memory）などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。対話装置１は、例えば、中央演算処理装置の制御のもとで各処理を実行する。対話装置１に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて読み出されて他の処理に利用される。また、対話装置１の各処理部の少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。
【００２０】
入力部１０は提示部５０と一体もしくは部分的に一体として構成してもよい。図１の例では、入力部１０の一部であるマイクロホン１１−１、１１−２が、提示部５０である人型ロボット５０−１、５０−２の頭部（耳の位置）に搭載されている。また、図１の例では入力部１０の一部であるカメラ１２が独立して設置されているが、例えば、人型ロボット５０−１、５０−２の頭部（目の位置）に搭載されていてもよい。図１の例では、提示部５０は二台の人型ロボット５０−１、５０−２から構成されているが、一台の人型ロボットから構成されていてもよく、三台以上の人型ロボットから構成されていてもよい。
【００２１】
入力部１０は、ユーザの発話（言語的な行動）と動作（非言語的な行動）の少なくとも何れかを対話システム１００が取得するためのインターフェースである。言い換えれば、入力部１０は、ユーザの行動を対話システム１００へ入力するためのインターフェースである。例えば、入力部１０はユーザの発話音声を収音して音声信号に変換するためのマイクロホン１１である。入力部１０をマイクロホンとする場合、ユーザ１０１が発話した発話音声を収音可能とすればよい。つまり、図１は一例であって、マイクロホン１１−１，１１−２の何れか一方を備えないでもよい。また、ユーザ１０１の近傍などの人型ロボット５０−１，５０−２とは異なる場所に設置された１個以上のマイクロホン、または、複数のマイクロホンを備えたマイクロホンアレイを入力部とし、マイクロホン１１−１，１１−２の双方を備えない構成としてもよい。マイクロホン１１が、変換により得たユーザの発話音声の音声信号を含む音響信号を出力する。マイクロホン１１が出力した音響信号は、発話終了推定部６１と、発話終了判定部６３と、行動認識部２０の音声認識部２１とに入力される。また、例えば、入力部１０はユーザの身体的な動作を収録して映像信号に変換するカメラ１２である。入力部１０をカメラとする場合、ユーザ１０１の身体動作を収録可能とすればよい。つまり、図１は一例であって、カメラ１２は１個のカメラでもよいし複数のカメラでもよい。カメラ１２が、変換により得たユーザの身体動作の映像信号を出力する。カメラ１２が出力した映像信号は、発話終了推定部６１と、発話終了判定部６３と、行動認識部２０の動作認識部２２とに入力される。
【００２２】
行動認識部２０は、マイクロホン１１が収音した音響信号とカメラ１２が収録したユーザの身体動作の映像信号の少なくとも何れかを入力として、音声認識部２１と動作認識部２２の少なくとも何れかを用いて、音声認識部２１が得たユーザの発話内容を表すテキストと動作認識部２２が得たユーザの動作内容を表す情報の少なくとも何れかを含むユーザの行動内容を表す情報を得て、発話決定部３０に対して出力する。
【００２３】
音声認識部２１は、マイクロホン１１から入力された音響信号に含まれるユーザの発話音声の音声信号をユーザの発話内容を表すテキストに変換して出力する。音声認識部２１が出力したユーザの発話内容を表すテキストは、行動認識部２０が出力するユーザの行動内容を表す情報に含められる。音声認識部２１が行う音声認識の方法は、既存のいかなる音声認識技術であってもよく、利用環境等に合わせて最適なものを適宜選択すればよい。音声認識部２１は、入力された音響信号から、人の発話音声がある区間の音響信号を人の発話音声の音声信号として得て、得られた人の発話音声の音声信号に対して音声認識技術を適用することでユーザの発話内容を表すテキストを得る構成としてもよい。
【００２４】
動作認識部２２は、カメラ１２から入力されたユーザの身体動作の映像信号をユーザの動作内容を表す情報に変換して出力する。動作認識部２２が出力したユーザの動作内容を表す情報は、行動認識部２０が出力するユーザの行動内容を表す情報に含められる。動作認識部２２が行う動作認識の方法は、例えば、ユーザの表情などの変化などを利用する方法である。この方法では、動作認識部２２は、入力された映像信号からユーザの顔の時系列の画像を取得し、取得した時系列の画像から特徴（例えば、瞳孔の大きさ、目尻の位置、目頭の位置、口角の位置、口の開き具合等）の変化であるユーザの動作内容を取得する。動作認識部２２は、入力された映像信号中の各時刻に対応するユーザの動作内容を得て、ユーザの動作内容を表す時系列のデータを生成し、生成した時系列データをユーザの動作内容を表す情報として出力する。ただし、上記の動作認識の方法は一例であり、動作認識部２２が行う動作認識の方法は、既存のいかなる動作認識技術であってもよく、利用環境等に合わせて最適なものを適宜選択すればよい。
【００２５】
発話決定部３０は、対話システム１００からの発話内容を表すテキストを決定し、音声合成部４０に対して出力する。行動認識部２０からユーザの行動内容を表す情報が入力された場合には、入力されたユーザの行動内容を表す情報に基づいて、対話システム１００からの発話内容を表すテキストを決定し、音声合成部４０に対して出力する。なお、対話システム１００の提示部５０が複数の人型ロボットで構成される場合には、発話決定部３０は、当該発話をいずれの人型ロボットが提示するかを決定してもよい。この場合には、当該発話を提示する人型ロボットを表す情報も併せて音声合成部４０へ出力する。また、この場合には、発話決定部３０は、当該発話を提示する相手、すなわち、当該発話をユーザに対して提示するのか、何れかの人型ロボットに対して提示するのか、を決定してもよい。この場合には、当該発話を提示する提示する相手を表す情報も併せて音声合成部４０へ出力する。
【００２６】
音声合成部４０は、発話決定部３０または行動決定部６２から入力された発話内容を表すテキストを、発話内容を表す音声信号に変換し、提示部５０に対して出力する。音声合成部４０が行う音声合成の方法は、既存のいかなる音声合成技術であってもよく、利用環境等に合わせて最適なものを適宜選択すればよい。なお、発話決定部３０または行動決定部６２から発話内容を表すテキストと共に当該発話を提示する人型ロボットを表す情報が入力された場合には、音声合成部４０は、当該情報に対応する人型ロボットへ発話内容を表す音声信号を出力する。また、発話決定部３０または行動決定部６２から発話内容を表すテキストと当該発話を提示する人型ロボットを表す情報に併せて発話を提示する相手を表す情報も入力された場合には、音声合成部４０は、当該情報に対応する人型ロボットへ発話内容を表す音声信号と発話を提示する相手を表す情報を出力する。
【００２７】
提示部５０は、発話決定部３０または行動決定部６２が決定した発話内容をユーザへ提示するためのインターフェースである。例えば、提示部５０は、人間の形を模して製作された人型ロボットである。この人型ロボットは、音声合成部４０が出力した発話内容を表す音声信号に対応する音声を、例えば頭部に搭載したスピーカ５１から発音する、すなわち、発話を提示する。スピーカ５１は、音声合成部４０から入力された発話内容を表す音声信号に対応する音声を発音可能とすればよい。つまり、図１は一例であって、スピーカ５１−１，５１−２の何れか一方を備えないでもよい。また、ユーザ１０１の近傍などの人型ロボット５０−１，５０−２とは異なる場所に１個以上のスピーカ、または、複数のスピーカを備えたスピーカアレイを設置し、スピーカ５１−１，５１−２の双方を備えない構成としてもよい。また、人型ロボットは、顔の表情や、身体の動作等の非言語的な行動により発話決定部３０または行動決定部６２が決定した発話内容をユーザへ提示してもよい。例えば、直前の発話に対して同意する旨を提示する際には、首を縦に振り、同意しない旨を提示する際には、首を横に振るなどの非言語的な行動を提示することが挙げられる。提示部５０を人型ロボットとした場合には、例えば、対話に参加する人格ごとに一台の人型ロボットを用意する。以下では、二人の人格が対話に参加する例として、二台の人型ロボット５０−１および５０−２が存在するものとする。なお、発話決定部３０が当該発話をいずれの人型ロボットから提示するかを決定していた場合には、音声合成部４０が出力した発話内容を表す音声信号を受け取った人型ロボット５０−１または５０−２が当該発話を提示する。また、発話決定部３０または行動決定部６２が決定した発話を提示する相手を表す情報も入力された場合には、人型ロボット５０−１または５０−２は、発話を提示する相手を表す情報に対応する人型ロボットまたはユーザの発話に顔や視線を向けた状態で、発話を提示する。
【００２８】
なお、提示部５０は、行動決定部６２が決定した間を埋めるための行動についての情報に基づいて、頷く、ウインク、視線を変える、手を動かす等の非言語行動を行うことが可能であってもよい。提示部５０の処理については、後述する。
【００２９】
以下、図２を参照して、実施形態の対話方法の処理手続きを説明する。
【００３０】
発話終了推定部６１は、マイクロホン１１で収音した音響信号とカメラ１２で収録したユーザの身体動作の映像信号の少なくとも何れかを入力として、ユーザの発話が終了したかどうかを推定する（ステップＳ６１）。ユーザの発話が終了したと推定された場合には、発話終了推定部６１は、その旨の推定結果を、行動決定部６２に対して出力する。
【００３１】
例えば、発話終了推定部６１は、ユーザの発話の音声が無くなったことを検出した場合に、ユーザの発話が終了したと推定する。例えば、発話終了推定部６１は、マイクロホン１１で収音した音響信号の振幅やパワーなどの大きさが所定の閾値（第一の閾値、振幅閾値）以下となった時間の長さが所定の閾値（第二の閾値、第一の時間閾値）よりも長くなった場合に、ユーザの発話の音声が無くなったと判断する。
【００３２】
また、発話終了推定部６１は、VAD(Voice Activity Detection)技術を用いてユーザの発話が終了したことを推定してもよい。例えば、発話終了予測部６１は、マイクロホン１１で収音した音響信号に対してVADを行い、VADにより音声区間が終わったと判定された場合に、ユーザの発話が終了したと推定する。
【００３３】
VAD技術は、観測した音響信号について、音声が存在する区間とそれ以外の区間とを判別する技術である。VAD技術の実現方法として、音声波形の振幅と零交差に基づく方法や、混合ガウス分布モデル(Gaussian Mixture Model)に基づくフレーム単位の音声・非音声識別に基づく区間検出およびデコーダの認識中の仮説情報をもとに区間検出を行うデコーダベースVADなどが知られている（例えば、参考文献１参照。）。
【００３４】
〔参考文献１〕藤本雅清，"音声区間検出の基礎と最近の研究動向"，電子情報通信学会技術研究報告, SP, 音声 110(81), 7-12, 2010-06-10
【００３５】
発話終了推定部６１は、他の手法により、ユーザの発話が終了したかどうかを推定してもよい。例えば、発話終了推定部６１は、入力されたユーザの身体動作の映像信号に対応する映像中のユーザの視線に基づいて、ユーザの発話が終了したかどうかを推定してもよい。
【００３６】
なお、発話終了推定部６１は、入力された音響信号と映像信号の少なくとも何れかを用いて、ユーザの発話が終了する時刻を予測する手法により、ユーザの発話が終了することとを推定してもよい。この場合は、ユーザの発話が終了する予測時刻の情報も得て、提示部５０に対して出力する。
【００３７】
発話終了推定部６１においてユーザの発話が終了したことまたは終了することが推定された場合には、行動決定部６２は、ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動を決定する（ステップＳ６２）。行動決定部６２は、決定された間を埋めるための行動についての情報を、提示部５０及び音声合成部４０の少なくとも一方に出力する。ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動は、言語行動と非言語行動の少なくとも何れかである。
【００３８】
発話終了推定部６１においては、実際にはユーザの発話が終了していないにもかかわらず、ユーザの発話が終了したことまたは終了することが推定されてしまうことがある。そこで、発話終了推定部６１においてユーザの発話が終了したことまたは終了することが推定された場合に提示部５０が行う間を埋めるための行動は、実際にはユーザの発話が終了しておらずユーザが発話を継続した場合に、ユーザが違和感を感じたり、ユーザが継続した発話を中断してしまったりするような行動ではなく、ユーザによる発話の継続を阻害しないような行動であることが望ましい。そこで、発話終了推定部６１においてユーザの発話が終了したことまたは終了することが推定された場合には、行動決定部６２は、例えば、以下で説明する言語行動や非言語行動を、間を埋めるための行動として決定する。
【００３９】
ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動を言語行動とする場合には、行動決定部６２は、間を埋めるための言語行動を決定し、決定した言語行動のテキストを間を埋めるための行動についての情報として、音声合成部４０に対して出力する。この場合、音声合成部４０は、入力された間を埋めるための行動についての情報に基づいて、すなわち、入力された言語行動のテキストに基づいて、入力された言語行動のテキストに対応する音声信号を生成し、生成された音声信号を提示部５０に出力する。
【００４０】
発話終了推定部６１においてユーザの発話が終了したことまたは終了することが推定された場合のユーザの発話と対話システム１００の応答発話との間の間を埋めるための言語行動は、例えば、「うん」等の音声による相槌である。
【００４１】
ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動を非言語行動とする場合には、行動決定部６２は、間を埋めるための非言語行動を決定し、決定した非言語行動を提示部５０に行わせる制御情報を間を埋めるための行動についての情報として、提示部５０に対して出力する。発話終了推定部６１においてユーザの発話が終了したことまたは終了することが推定された場合のユーザの発話と対話システム１００の応答発話との間の間を埋めるための非言語行動は、例えば、人型ロボット５０−１，５０−２が頷く、首を傾げる、考え込むように首を下げる等の動作である。この場合には、行動決定部６２は、頷く、首を傾げる、考え込むように首を下げる等の動作を人型ロボット５０−１，５０−２に行わせる制御情報を、人型ロボット５０−１，５０−２に対して出力する。
【００４２】
ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動は、ある人格である第一人格と、第一人格とは異なる第二人格との間で行われる行動であってもよい。例えば、第一人格は人型ロボット５０−１であり、第二人格は人型ロボット５０−２である。この場合は、行動決定部６２は、行動決定部６２が決定した行動を何れの人型ロボット５０−１，５０−２が行うかを表す情報を更に音声合成部４０と提示部５０の少なくとも一方に出力する。
【００４３】
第一人格と第二人格との間で行われる行動の例は、「互いに顔を見合わせる」、「発話を促すように他方のロボットの方を向く（例えば、一方が頷きながら他方を見やったのちに、見られたその他方を頷き返す）」、「一方が何かに気づいたような仕草を示し、他方がそれを見やり、互いに顔を見合わせたのち、気づいたように見せた側がユーザを見る」である。
【００４４】
行動決定部６２は、例えば、あらかじめ定められ行動決定部６２内の図示しない記憶部に記憶された定型の行動から任意に選択することにより、間を埋めるための行動を決定する。
【００４５】
提示部５０は、ステップＳ６２で行動決定部６２が決定した間を埋めるための行動についての情報及び音声合成部４０が生成した音声信号の少なくとも一方に基づいて、また、発話終了推定部６１がユーザの発話が終了する予測時刻の情報も出力した場合には、ユーザの発話が終了する予測時刻の情報にも基づいて、ユーザの発話が終了したと推定された後またはユーザの発話が終了する予測時刻の後であって、ユーザの発話に対する応答発話を対話システム１００が行う前に、ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動を提示する（ステップＳ５０）。行動決定部６２が決定した行動を何れの人型ロボット５０−１，５０−２が行うかを表す情報が提示部５０に入力されている場合には、提示部５０は、その情報に基づいて定まる人型ロボットがその間を埋めるための行動を提示する。
【００４６】
発話終了判定部６３は、マイクロホン１１で収音した音響信号とカメラ１２で収録したユーザの身体動作の映像信号の少なくとも何れかを入力として、ユーザの発話が終了したかどうかを判定する（ステップＳ６３）。ユーザの発話が終了したと判定された場合には、その旨の判定結果を、行動決定部６２に対して出力する。
【００４７】
例えば、発話終了判定部６３は、ユーザの発話の音声が無くなってしばらく時間が経過したことを検出した場合に、ユーザの発話が終了したと判定する。例えば、発話終了判定部６３は、マイクロホン１１で収音した音響信号の大きさが所定の閾値（第一の閾値）以下となった時間の長さが所定の閾値（第三の閾値、第二の時間閾値）よりも長くなった場合に、ユーザの発話の音声が無くなったと判断する。ここで、第三の閾値（第二の時間閾値）は、発話終了推定部６１の第二の閾値（第一の時間閾値）より大きな値である。
【００４８】
また、例えば、発話終了判定部６３は、入力された映像信号に含まれるユーザの口の動きやマイクの上げ下げなどの動画像に基づいて、ユーザの発話が終了したかどうかを判定してもよい。また、例えば、音響信号や映像信号に加えて、図示しないセンサで取得したセンサ情報も利用して、ユーザの発話が終了したかどうかを判定してもよい。音響信号、映像信号、センサ情報などの複数の情報を併用することで、音響信号のみから発話の終了を判定するより正確に発話の終了を判定することができる。
【００４９】
発話終了決定部６３においてユーザの発話が終了したと判定された場合には、行動決定部６２は、ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動を決定する（ステップＳ６４）。行動決定部６２は、決定された間を埋めるための行動についての情報は、提示部５０及び音声合成部４０の少なくとも一方に出力する。
【００５０】
ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動は、言語行動と非言語行動の少なくとも何れかである。
【００５１】
発話終了判定部６３においては、実際にはユーザの発話が終了していないにもかかわらず、ユーザの発話が終了したと判定してしまうことはほとんどない。そこで、発話終了判定部６３においてユーザの発話が終了したと判定された場合に提示部５０が行う間を埋めるための行動は、ユーザによる発話の終了を対話システム１００が認識したことを表出する行動、ユーザによる発話を対話システム１００が聞き取ったことを表出する行動、などであることが望ましい。そこで、発話終了決定部６３においてユーザの発話が終了したと判定された場合には、行動決定部６２は、対話システム１００の発話決定部３０による応答対話の生成時間よりも生成時間が短い行動を、間を埋めるための行動として決定する。
【００５２】
ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動を言語行動とする場合には、行動決定部６２は、間を埋めるための言語行動を決定し、決定した言語行動のテキストを間を埋めるための行動についての情報として、音声合成部４０に対して出力する。この場合、音声合成部４０は、入力された間を埋めるための行動についての情報に基づいて、すなわち、入力された言語行動のテキストに基づいて、入力された言語行動のテキストに対応する音声信号を生成し、生成された音声信号を提示部５０に出力する。
【００５３】
発話終了判定部６３においてユーザの発話が終了したと判定された場合のユーザの発話と対話システム１００の応答発話との間の間を埋めるための言語行動は、対話システム１００の発話決定部３０による応答対話の生成時間よりも生成時間が短い発話である。対話システム１００の発話決定部３０による応答対話の生成時間よりも生成時間が短い発話は、例えば、ユーザの発話の一部のリピート等の、ユーザの発話の一部を利用した発話である。
【００５４】
例えば、後述するように、音声認識部２１が出力したユーザの発話内容を表すテキストが「かつおのたたきが美味しかったよ」である場合には、行動決定部６２は、生成時間が短い発話として、ユーザの発話内容を表すテキストに含まれる文言を利用した発話である「かつおのたたきといえば」というテキストを間を埋めるための行動についての情報として決定し、音声合成部４０に対して出力する。「かつおのたたきといえば」という発話は、ユーザの「かつおのたたきが美味しかったよ」という発話の中の「かつおのたたき」という文言を利用しているため、短い生成時間で生成することができる。
【００５５】
行動決定部６２は、例えば、ユーザの発話に含まれる単語をトリガーとして、あらかじめ記述して行動決定部６２内の図示しない記憶部に記憶しておいたルールに従って間を埋めるための言語行動のテキストを決定してもよいし、ユーザの発話に含まれる単語と共起関係や係り受け関係にある単語に基づいて自動的にルールを生成し、そのルールに従って間を埋めるためのテキスト間を埋めるための言語行動を決定する。
【００５６】
このように、行動決定部６２は、直前までの発話内容に応じて、間を埋めるための言語行動を決定してもよい。
【００５７】
なお、対話システム１００の発話決定部３０による応答対話の生成時間よりも生成時間が短い発話は、ステップＳ６２と同様の言語行動、すなわち、「うん」等の音声による相槌であってもよい。
【００５８】
ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動を非言語行動とする場合には、行動決定部６２は、間を埋めるための非言語行動を決定し、決定した非言語行動を提示部５０に行わせる制御情報を間を埋めるための行動についての情報として、提示部５０に対して出力する。
【００５９】
発話終了判定部６３においてユーザの発話が終了したと判定された場合のユーザの発話と対話システム１００の応答発話との間の間を埋めるための非言語行動は、対話システム１００の発話決定部３０による応答対話の生成時間よりも生成時間が短い非言語行動である。対話システム１００の発話決定部３０による応答対話の生成時間よりも生成時間が短い非言語行動は、例えば、ステップＳ６２で決定される非言語行動と同様の非言語行動である。
【００６０】
提示部５０は、ステップＳ６４で行動決定部６２が決定した間を埋めるための行動についての情報及び音声合成部４０が生成した音声信号の少なくとも一方に基づいて、ユーザの発話が終了したと判定された後であって、ユーザの発話に対する応答発話を対話システム１００が行う前に、ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動を提示する（ステップＳ５１）。なお、ステップＳ５１による行動の提示を行おうとした際に、ステップＳ５０による行動の提示が終わっていなかった場合には、提示部５０は、ステップＳ５０による行動の提示が終わった後に、ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動を提示する。
【００６１】
発話決定部３０は、発話終了判定部６３においてユーザの発話が終了したと判定された場合には、応答の発話内容を表すテキストを決定し、音声合成部４０はそのテキストに対応する音声信号を生成し、提示部５０はその音声信号を提示する（ステップＳ５２）。なお、提示部５０が音声信号をユーザに提示しようとした際に、ステップＳ５０やステップ５１による行動の提示が終わっていなかった場合には、ステップＳ５０やステップ５１による行動の提示が終わった後に、音声信号を提示する。
【００６２】
なお、発話終了判定部６３によるユーザの発話が終了したかどうかの判定処理は、発話終了推定部６１によるユーザの発話が終了したかどうかの推定処理と同時並行的に行われる。また、発話決定部３０による応答発話の生成処理は、行動決定部６２によるステップＳ６４の処理と同時並行的に行われる。
【００６３】
一般に、ユーザの発話が終了したかどうかの推定処理に要する時間は、ユーザの発話が終了したかどうかの判定処理に要する第一遅延時間τ３−τ２よりも短い。このため、図４に示すように、ユーザの発話が終了したと推定できてから遅滞なく行われる、応答発話開始までの間を埋めるための行動の提示時刻である行動提示時刻τ５は、発話終了判定部６３によるユーザの発話が終了したと判定した時刻である発話終了判定時刻τ３よりも前になる。
【００６４】
このため、ユーザの発話が終了したと推定または判定されたことを契機に、ユーザの発話に対する応答発話を対話システム１００が行う前に、ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動を提示することにより、応答対話が遅いことに起因するユーザの違和感を軽減することができる。
【００６５】
図４の例では、ユーザの発話に対して対話システム１００が何らかのリアクションをするまでに従来はτ４−τ２の遅延時間がかかっていたが、上記の実施形態により、この遅延時間をτ５−τ２に短縮することができる。
【００６６】
なお、上記のステップＳ６１とステップＳ６２とステップＳ５０を行えば、上記のステップＳ６４とステップＳ５１を行わない構成としてもよい。言い換えれば、対話システム１００は、発話終了判定部６４を備えていなくてもよい。この構成としても、ユーザの発話に対する応答発話を対話システム１００が行う前に、ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動を提示することにより、応答対話が遅いことに起因するユーザの違和感を軽減することができる。
【００６７】
また、上記のステップＳ６４とステップＳ５１を行えば、上記のステップＳ６１とステップＳ６２とステップＳ５０を行わない構成としてもよい。言い換えれば、対話システム１００は、発話終了推定部６１を備えていなくてもよい。この構成としても、ユーザの発話に対する応答発話を対話システム１００が行う前に、ユーザの発話と対話システム１００の応答発話との間の間を埋めるための行動を提示することにより、応答対話が遅いことに起因するユーザの違和感を軽減することができる。
【００６８】
［具体例］
以下、実施形態による対話内容の具体例を示す。ここで、Ｒはロボットを表し、Ｈはユーザを表す。Ｒの後の数字は人型ロボットの識別子である。t(i)（i=0, 1, 2, …）は対話中の行動（行動が言語行動である場合には、発話）を表す。括弧付きの行動は、対話システム１００が妨害性の低い行動として提示することが好ましいことを表す。括弧付きの行動を言語行動とする場合は、例えば、音声合成部４０が、音声合成部４０内の図示しない記憶部に記憶した妨害性の低い発話の音声信号を提示部５０に対して出力することにより、提示部５０である人型ロボット５０−１，５０−２が提示することができる。妨害性の低い発話の音声信号とは、例えば、音量が小さい、話速が速い、声の太さが細いなどの、対話に用いる通常の発話の音声信号に比して語気を弱めることにより、ユーザの発話を妨害する意図がないことを表す発話の音声信号である。
【００６９】
t(0)  Ｈ：このあいだ高知に行ってきたんだけれど…
t(1)  Ｒ１：（うん）
t(2)  Ｈ：かつおのたたきが美味しかったよ（その後、Ｈの音声が所定の時間間隔（例えば0.2秒程度、「第二の閾値」に相当）だけなかったとする）
t(3)  Ｒ１：Ｒ２を向く
t(4)  Ｒ２：（へえ）（その後、Ｈの音声が所定の時間間隔（例えば1秒程度、「第三の閾値」に相当）だけなかったとする）
t(5)  Ｒ２：かつおのたたきといえば＋Ｒ１の方を向く
t(6)  Ｒ１：焼き立てが美味しかったなー
【００７０】
この例では、ユーザＨからの第二発話t(2)の後に、ユーザＨの音声が所定の時間間隔なかったため、ユーザの発話が終了することが推定される。このため、ロボットＲ１はロボットＲ２の方を向くという非言語行動である第三行動t(3)をし、これに対してロボットＲ２は「（へえ）」というユーザＨの話しを聴いているよということを表す言語行動である第四行動t(4)をし、さらにロボットＲ２は「かつおのたたきといえば」という言語行動と「Ｒ１の方を向く」という非言語行動の組み合わせの行動である第五行動t(5)をしている。最後に、ユーザＨからの第二発話t(2)に対する正式な応答として、ロボットＲ１は第六発話t(6)をしている。
【００７１】
第三行動t(3)から第五行動t(5)が、ユーザの発話と対話システム１００の応答発話（この例では、第六発話t(6)）との間の間を埋めるための行動である。
【００７２】
例えば、第三行動t(3)を例に挙げて説明すると、ロボットＲ１がロボットＲ２の方を向くという第三行動t(3)により、ロボットＲ１がロボットＲ２に発話を促しているように、ユーザＨに思わせることができる。このため、ユーザＨからの第二発話t(2)に対する対話システム１００の正式な応答発話がなくても、ユーザの違和感は生じづらいのである。
【００７３】
この例のように、間を埋めるための行動は、少なくとも１つの言語行動及び非言語行動であってもよいし、ある人格である第一人格（この例では、ロボットＲ１）と、第一人格とは異なる第二人格と（この例では、ロボットＲ２）の間で行われる行動を含んでいてもよい。
【００７４】
この例のように、間を埋めるための行動を、複数の行動により構成し、またターン交代を伴う行動とすることにより、応答発話を行うまでの時間稼ぎをより自然に行うことができる。
【００７５】
［変形例］
上述した実施形態では、エージェントとして人型ロボットを用いて音声による対話を行う例を説明したが、上述した実施形態の提示部は身体等を有する人型ロボットであっても、身体等を有さないロボットであってもよい。
【００７６】
以上、この発明の実施の形態について説明したが、具体的な構成は、これらの実施の形態に限られるものではなく、この発明の趣旨を逸脱しない範囲で適宜設計の変更等があっても、この発明に含まれることはいうまでもない。実施の形態において説明した各種の処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
【００７７】
［プログラム、記録媒体］
上記実施形態で説明した各装置における各種の処理機能をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
【００７８】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【００７９】
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【００８０】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００８１】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【符号の説明】
【００８２】
１  発話装置
１０  入力部
１１  マイクロホン
２０  行動認識部
２１  音声認識部
２２  動作認識部
３０  発話決定部
４０  音声合成部
５０  提示部
５１  スピーカ
５２  カメラ
６１  発話終了推定部
６２  行動決定部
６３  発話終了判定部
１００  対話システム
１０１  ユーザ
【図１】
2018163648.tif 000003
【図２】
2018163648.tif 000004
【図３】
2018163648.tif 000005
【図４】
2018163648.tif 000006
【手続補正書】
【提出日】令和1年9月4日(2019.9.4)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
発話決定部３０は、対話システム１００からの発話内容を表すテキストを決定し、音声合成部４０に対して出力する。行動認識部２０からユーザの行動内容を表す情報が入力された場合には、入力されたユーザの行動内容を表す情報に基づいて、対話システム１００からの発話内容を表すテキストを決定し、音声合成部４０に対して出力する。なお、対話システム１００の提示部５０が複数の人型ロボットで構成される場合には、発話決定部３０は、当該発話をいずれの人型ロボットが提示するかを決定してもよい。この場合には、当該発話を提示する人型ロボットを表す情報も併せて音声合成部４０へ出力する。また、この場合には、発話決定部３０は、当該発話を提示する相手、すなわち、当該発話をユーザに対して提示するのか、何れかの人型ロボットに対して提示するのか、を決定してもよい。この場合には、当該発話を提示する相手を表す情報も併せて音声合成部４０へ出力する。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００３２
【補正方法】変更
【補正の内容】
【００３２】
また、発話終了推定部６１は、VAD(Voice Activity Detection)技術を用いてユーザの発話が終了したことを推定してもよい。例えば、発話終了推定部６１は、マイクロホン１１で収音した音響信号に対してVADを行い、VADにより音声区間が終わったと判定された場合に、ユーザの発話が終了したと推定する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００４３
【補正方法】変更
【補正の内容】
【００４３】
第一人格と第二人格との間で行われる行動の例は、「互いに顔を見合わせる」、「発話を促すように他方のロボットの方を向く（例えば、一方が頷きながら他方を見やったのちに、見られたその他方が頷き返す）」、「一方が何かに気づいたような仕草を示し、他方がそれを見やり、互いに顔を見合わせたのち、気づいたように見せた側がユーザを見る」である。
【国際調査報告】
2018163648.tif 000007
2018163648.tif 000008
2018163648.tif 000009
2018163648.tif 000010
2018163648.tif 000011
2018163648.tif 000012