(57)【要約】  対話システムが行う対話方法は、対話システムが、発話を生成する発話生成ステップと、対話システムが、発話生成ステップが生成した発話の少なくとも一部を曖昧化する、または／および、発話生成ステップが生成した発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話を変換後発話として得る発話決定ステップと、対話システムが、発話決定ステップが得た変換後発話を提示する発話提示ステップと、を含む。
2017200075.tif 000002
【特許請求の範囲】
【請求項１】
対話システムが行う対話方法であって、
前記対話システムが、発話を生成する発話生成ステップと、
前記対話システムが、前記発話生成ステップが生成した発話の少なくとも一部を曖昧化する、または／および、前記発話生成ステップが生成した発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話を変換後発話として得る発話決定ステップと、
前記対話システムが、前記発話決定ステップが得た変換後発話を提示する発話提示ステップと、を含む、
対話方法。
【請求項２】
対話システムが行う対話方法であって、
前記対話システムが、所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話を提示する第１発話提示ステップと、
前記対話システムが、前記第１の発話を提示した後に、前記第１の発話を一意に解釈できていないことが読み取れる発話である第２の発話を提示する第２発話提示ステップと、を含む、
対話方法。
【請求項３】
対話システムが行う対話方法であって、
前記対話システムが、所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話を提示する第１発話提示ステップと、
前記対話システムが、前記第１の発話を提示した後に、前記第１の発話を1つの意味に特定するための質問を含む発話である第２の発話を提示する第２発話提示ステップと、を含む、
対話方法。
【請求項４】
請求項２または３記載の対話方法であって、
前記対話システムが、前記第２の発話を提示した後に、前記第２の発話に対して応答する発話であり、かつ、前記第１の発話を1つの意味に特定する語を含む発話である第３の発話を提示する第３発話提示ステップと、を更に含む、
対話方法。
【請求項５】
対話システムが行う対話方法であって、
前記対話システムが、少なくとも一部が曖昧化された発話、または／および、意味を有さない語を含む発話、を提示する第１の発話提示ステップと、
前記対話システムが、第１の発話提示ステップによる提示の後に、前記曖昧化された部分に対応する具体内容を含む発話、または／および、前記意味を有さない語の部分に対応する意味を有する語を含む発話、を提示する第２の発話提示ステップと、を含む、
対話方法。
【請求項６】
対話システムが行う対話に用いる対話シナリオを対話シナリオ生成装置が生成する対話シナリオ生成方法であって、
前記対話シナリオ生成装置が、
所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話と、
前記第１の発話を提示した後に提示する発話であり、前記第１の発話を一意に解釈できていないことが読み取れる発話である第２の発話と、
を含む対話シナリオを生成する、
対話シナリオ生成方法。
【請求項７】
対話システムが行う対話に用いる対話シナリオを対話シナリオ生成装置が生成する対話シナリオ生成方法であって、
前記対話シナリオ生成装置が、
所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話と、
前記第１の発話を提示した後に提示する発話であり、前記第１の発話を1つの意味に特定するための質問を含む発話である第２の発話と、
を含む対話シナリオを生成する、
対話シナリオ生成方法。
【請求項８】
請求項６または７記載の対話シナリオ生成方法であって、
前記第２の発話を提示した後に提示する発話である、前記第２の発話に対して応答する発話であり、かつ、前記第１の発話を1つの意味に特定する語を含む発話を更に含む対話シナリオを生成する、
対話シナリオ生成方法。
【請求項９】
対話システムが行う対話に用いる対話シナリオを対話シナリオ生成装置が生成する対話シナリオ生成方法であって、
前記対話シナリオ生成装置が、
少なくとも一部が曖昧化された発話、または／および、意味を有さない語を含む発話である第１の発話と、
前記第１の発話を提示した後に提示する発話であり、前記曖昧化された部分に対応する具体内容を含む発話、または／および、前記意味を有さない語の部分に対応する意味を有する語を含む発話、である第２の発話と、
を含む対話シナリオを生成する、
対話シナリオ生成方法。
【請求項１０】
発話を生成する発話生成部と、
前記発話生成部が生成した発話の少なくとも一部を曖昧化する、または／および、前記発話生成ステップが生成した発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話を変換後発話として得る発話決定部と、
前記発話決定部が得た変換後発話を提示する発話提示部と、を含む、
対話システム。
【請求項１１】
所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話を提示する第１発話提示部と、
前記第１の発話を提示した後に、前記第１の発話を一意に解釈できていないことが読み取れる発話である第２の発話を提示する第２発話提示部と、を含む、
対話システム。
【請求項１２】
所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話を提示する第１発話提示部と、
前記第１の発話を提示した後に、前記第１の発話を1つの意味に特定するための質問を含む発話である第２の発話を提示する第２発話提示部と、を含む、
対話システム。
【請求項１３】
請求項１１または１２記載の対話システムであって、
前記第２の発話を提示した後に、前記第２の発話に対して応答する発話であり、かつ、前記第１の発話を1つの意味に特定する語を含む発話である第３の発話を提示する第３発話提示部と、を更に含む、
対話システム。
【請求項１４】
少なくとも一部が曖昧化された発話、または／および、意味を有さない語を含む発話、を提示した後に、前記曖昧化された部分に対応する具体内容を含む発話、または／および、前記意味を有さない語の部分に対応する意味を有する語を含む発話、を提示する提示部を含む、
対話システム。
【請求項１５】
対話システムが行う対話に用いる対話シナリオを生成する対話シナリオ生成装置であって、
所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話と、
前記第１の発話を提示した後に提示する発話である、前記第１の発話を一意に解釈できていないことが読み取れる発話である第２の発話と、
を含む対話シナリオを生成する、
対話シナリオ生成装置。
【請求項１６】
対話システムが行う対話に用いる対話シナリオを生成する対話シナリオ生成装置であって、
所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話と、
前記第１の発話を提示した後に提示する発話であり、前記第１の発話を1つの意味に特定するための質問を含む発話である第２の発話と、
を含む対話シナリオを生成する、
対話シナリオ生成装置。
【請求項１７】
請求項１５または１６記載の対話シナリオ生成装置であって、
前記第２の発話を提示した後に提示する発話である、前記第２の発話に対して応答する発話であり、かつ、前記第１の発話を1つの意味に特定する語を含む発話を更に含む対話シナリオを生成する、
対話シナリオ生成装置。
【請求項１８】
対話システムが行う対話に用いる対話シナリオを生成する対話シナリオ生成装置であって、
少なくとも一部が曖昧化された発話、または／および、意味を有さない語を含む発話である第１の発話と、
前記第１の発話を提示した後に提示する発話であり、前記曖昧化された部分に対応する具体内容を含む発話、または／および、前記意味を有さない語の部分に対応する意味を有する語を含む発話、である第２の発話と、
を含む対話シナリオを生成する、
対話シナリオ生成装置。
【請求項１９】
請求項１０から請求項１４の何れかの対話システムとしてコンピュータを機能させるためのプログラム。
【請求項２０】
請求項１５から請求項１８の何れかの対話シナリオ生成装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、人とコミュニケーションを行うロボットなどに適用可能な、コンピュータが人間と自然言語を用いて対話を行う技術に関する。
【背景技術】
【０００２】
近年、人とコミュニケーションを行うロボットの研究開発が進展しており、様々な現場で実用化されてきている。例えば、コミュニケーションセラピーの現場において、ロボットが孤独感を抱える人の話し相手となる利用形態がある。具体的には、老人介護施設においてロボットが入居者の傾聴役となることで、入居者の孤独感を癒す役割を担うことができると共に、ロボットとの会話している姿を見せ、入居者とその家族や介護士など周りの人々との会話のきっかけを作ることができる。また、例えば、コミュニケーション訓練の現場において、ロボットが練習相手となる利用形態がある。具体的には、外国語学習施設においてロボットが外国語学習者の練習相手となることで、外国語学習を効率的に進めることができる。また、例えば、情報提示システムとしての応用において、ロボット同士の対話を聞かせることを基本としながら、時折人に話しかけることで、退屈させずに人を対話に参加させ、人が受け入れやすい形で情報を提示することができる。具体的には、街中の待ち合わせ場所やバス停、駅のホームなどで人が時間を持て余している際や、自宅や教室などで対話に参加する余裕がある際に、ニュースや商品紹介、蘊蓄及び知識紹介、教育（例えば、子供の保育及び教育、大人への一般教養教授、モラル啓発など）など、効率的な情報提示が期待できる。さらに、例えば、情報収集システムとしての応用において、ロボットが人に話しかけながら情報を収集する利用形態がある。ロボットとのコミュニケーションにより対話感を保持できるため、人に聴取されているという圧迫感を与えずに情報収集することができる。具体的には、個人情報調査や市場調査、商品評価、推薦商品のための趣向調査などに応用することが想定されている。このように人とロボットのコミュニケーションは様々な応用が期待されており、ユーザとより自然に対話を行うロボットの実現が期待される。また、スマートフォンの普及により、LINE(登録商標)のように、複数ユーザでほぼリアルタイムにチャットを行うことにより、ユーザ間での会話を楽しむチャットサービスも実施されている。このチャットサービスにユーザとロボットとの会話の技術を適用すれば、チャット相手となるユーザがいなくても、ユーザとより自然に会話を行うチャットサービスの実現が可能となる。本明細書では、これらのサービスで用いられるロボットやチャット相手などのユーザの対話相手となるハードウェアやユーザの対話相手となるハードウェアとしてコンピュータを機能させるためのコンピュータソフトウェアなどを総称してエージェントと呼ぶこととする。エージェントは、ユーザの対話相手となるものであるため、ロボットやチャット相手などのように擬人化されていたり、人格化されていたり、性格や個性を有していたりするものであってもよい。【０００３】
これらのサービスの実現のキーとなるのは、ハードウェアやコンピュータソフトウェアにより実現されるエージェントが人間と自然に対話を行うことができる技術である。【０００４】
対話システムの従来技術として非特許文献１，２が知られている。非特許文献１では、所定のシナリオに沿って発話を生成する。また、非特許文献１では、人の発話に依らず、「そっか」や「ふーん」等の相槌や曖昧な回答を示す発話を生成する。非特許文献２では、一つ以上前の人または対話システムの発話からのみに基づいて次の発話を生成する。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】有本庸浩，吉川雄一郎，石黒浩，「複数体のロボットによる音声認識なし対話の印象評価」，日本ロボット学会学術講演会,2016
【非特許文献２】杉山弘晃、目黒豊美、東中竜一郎、南泰浩、「任意の話題を持つユーザ発話に対する係り受けと用例を利用した応答文の生成」，人工知能学会論文誌，2015, 30(1), 183-194.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
人と対話システムとの対話を継続することで(i)メンタルヘルスケアができる、(ii)エンターテイメントになる、(iii)コミュニケーションの練習になる、(iv)対話システムへの親近感が増す、等の効果を得ることができる。【０００７】
しかしながら、非特許文献１のように所定のシナリオに沿って発話を生成するのでは、想定外の質問に答えられず、会話が続かない。また、非特許文献１では、質問したロボットが人間の返答に対して、「そっか」などの曖昧なレスポンスにとどめる。そのように人の発話を促した後は、別のロボットが少し話題をずらした発話をする。このようにすることで、人に、自分の発話が無視された感じを与えないようにしている。しかし、「そっか」などの曖昧なレスポンスが続くと、人は自分の発言を流されてばかりいると感じてしまい、会話が続かない。非特許文献２のように応答文を生成するのでは、１問１答になってしまい、会話が続かない。【０００８】
本発明は、対話システムの発話の一部をいったん曖昧なものにして、その曖昧な部分を確認させる対話をするための発話を差し込ませることで、対話のターン数を増やすことができる対話方法、対話システム、対話シナリオ生成方法、対話シナリオ生成装置、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記の課題を解決するために、本発明の一態様によれば、対話システムが行う対話方法は、対話システムが、発話を生成する発話生成ステップと、対話システムが、発話生成ステップが生成した発話の少なくとも一部を曖昧化する、または／および、発話生成ステップが生成した発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話を変換後発話として得る発話決定ステップと、対話システムが、発話決定ステップが得た変換後発話を提示する発話提示ステップと、を含む。【００１０】
上記の課題を解決するために、本発明の他の態様によれば、対話システムが行う対話方法は、対話システムが、所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話を提示する第１発話提示ステップと、対話システムが、第１の発話を提示した後に、第１の発話を一意に解釈できていないことが読み取れる発話である第２の発話を提示する第２発話提示ステップと、を含む。【００１１】
上記の課題を解決するために、本発明の他の態様によれば、対話システムが行う対話方法は、対話システムが、所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話を提示する第１発話提示ステップと、対話システムが、第１の発話を提示した後に、第１の発話を1つの意味に特定するための質問を含む発話である第２の発話を提示する第２発話提示ステップと、を含む。【００１２】
上記の課題を解決するために、本発明の他の態様によれば、対話システムが行う対話方法は、対話システムが、少なくとも一部が曖昧化された発話、または／および、意味を有さない語を含む発話、を提示する第１の発話提示ステップと、対話システムが、第１の発話提示ステップによる提示の後に、曖昧化された部分に対応する具体内容を含む発話、または／および、意味を有さない語の部分に対応する意味を有する語を含む発話、を提示する第２の発話提示ステップと、を含む。【００１３】
上記の課題を解決するために、本発明の他の態様によれば、対話シナリオ生成方法において、対話システムが行う対話に用いる対話シナリオを対話シナリオ生成装置が生成する。対話シナリオ生成方法において、対話シナリオ生成装置が、所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話と、第１の発話を提示した後に提示する発話であり、第１の発話を一意に解釈できていないことが読み取れる発話である第２の発話と、を含む対話シナリオを生成する。【００１４】
上記の課題を解決するために、本発明の他の態様によれば、対話シナリオ生成方法において、対話システムが行う対話に用いる対話シナリオを対話シナリオ生成装置が生成する。対話シナリオ生成方法において、対話シナリオ生成装置が、所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話と、第１の発話を提示した後に提示する発話であり、第１の発話を1つの意味に特定するための質問を含む発話である第２の発話と、を含む対話シナリオを生成する。【００１５】
上記の課題を解決するために、本発明の他の態様によれば、対話シナリオ生成方法において、対話システムが行う対話に用いる対話シナリオを対話シナリオ生成装置が生成する。対話シナリオ生成方法において、対話シナリオ生成装置が、少なくとも一部が曖昧化された発話、または／および、意味を有さない語を含む発話である第１の発話と、第１の発話を提示した後に提示する発話であり、曖昧化された部分に対応する具体内容を含む発話、または／および、意味を有さない語の部分に対応する意味を有する語を含む発話、である第２の発話と、を含む対話シナリオを生成する。【００１６】
上記の課題を解決するために、本発明の他の態様によれば、対話システムは、発話を生成する発話生成部と、発話生成部が生成した発話の少なくとも一部を曖昧化する、または／および、発話生成ステップが生成した発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話を変換後発話として得る発話決定部と、発話決定部が得た変換後発話を提示する発話提示部と、を含む。【００１７】
上記の課題を解決するために、本発明の他の態様によれば、対話システムは、所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話を提示する第１発話提示部と、第１の発話を提示した後に、第１の発話を一意に解釈できていないことが読み取れる発話である第２の発話を提示する第２発話提示部と、を含む。【００１８】
上記の課題を解決するために、本発明の他の態様によれば、対話システムは、所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話を提示する第１発話提示部と、第１の発話を提示した後に、第１の発話を1つの意味に特定するための質問を含む発話である第２の発話を提示する第２発話提示部と、を含む。【００１９】
上記の課題を解決するために、本発明の他の態様によれば、対話システムは、少なくとも一部が曖昧化された発話、または／および、意味を有さない語を含む発話、を提示した後に、曖昧化された部分に対応する具体内容を含む発話、または／および、意味を有さない語の部分に対応する意味を有する語を含む発話、を提示する提示部を含む。【００２０】
上記の課題を解決するために、本発明の他の態様によれば、対話シナリオ生成装置は、対話システムが行う対話に用いる対話シナリオを生成する。対話シナリオ生成装置は、所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話と、第１の発話を提示した後に提示する発話である、第１の発話を一意に解釈できていないことが読み取れる発話である第２の発話と、を含む対話シナリオを生成する。【００２１】
上記の課題を解決するために、本発明の他の態様によれば、対話シナリオ生成装置は、対話システムが行う対話に用いる対話シナリオを生成する。対話シナリオ生成装置は、所定の発話の少なくとも一部を曖昧化する、または／および、所定の発話に含まれる語を当該語の意味を有さない語に置き換えることにより生成した発話である第１の発話と、第１の発話を提示した後に提示する発話であり、第１の発話を1つの意味に特定するための質問を含む発話である第２の発話と、を含む対話シナリオを生成する。【００２２】
上記の課題を解決するために、本発明の他の態様によれば、対話シナリオ生成装置は、対話システムが行う対話に用いる対話シナリオを生成する。対話シナリオ生成装置は、少なくとも一部が曖昧化された発話、または／および、意味を有さない語を含む発話である第１の発話と、第１の発話を提示した後に提示する発話であり、曖昧化された部分に対応する具体内容を含む発話、または／および、意味を有さない語の部分に対応する意味を有する語を含む発話、である第２の発話と、を含む対話シナリオを生成する。
【発明の効果】
【００２３】
本発明によれば、対話のターン数を増やすことができるという効果を奏する。
【図面の簡単な説明】
【００２４】
【図１】第一実施形態に係る対話システムの機能ブロック図。
【図２】第一実施形態に係る対話システムの処理フローの例を示す図。
【図３】第二実施形態に係る対話システムの機能ブロック図。
【図４】第二実施形態に係る対話システムの処理フローの例を示す図。
【図５】第三実施形態に係る対話システムの機能ブロック図。
【図６】第三実施形態に係る対話システムの処理フローの例を示す図。
【図７】変形例３に係る対話システムを示す図。
【発明を実施するための形態】
【００２５】
以下、本発明の実施形態について、説明する。なお、以下の説明に用いる図面では、同じ機能を持つ構成部や同じ処理を行うステップには同一の符号を記し、重複説明を省略する。
【００２６】
＜本発明の実施形態のポイント＞
本発明の実施形態では、ユーザと対話する対話システムであって、複数のロボットであるロボットＲ１とロボットＲ２とを備える対話システムに、対話システムが生成した発話文（元の発話文）をそのまま発話させるのではなく、元の発話文の少なくとも一部を曖昧化する、または／および、元の発話文に含まれる語を当該語の意味を有さない語に置き換えることにより生成した文(以下、これらの方法により生成した文を「曖昧化した文」ともいう)に変換し、変換した文をあるロボットに発話させる。そしてその後に、一意に解釈できていないことを表出する文を他のロボットに発話させる、または／および、曖昧化した文を発話したロボットに元の発話文を発話させる（言い直しさせる）。ロボットが一意に解釈できていないことを表出する発話をすると、ユーザはその発話から、ロボットが一意に解釈できていないことを読み取ることができる。すなわち、一意に解釈できていないことを表出する文とは、一意に解釈できていないことが読み取れる文である。このようにすれば、対話システムが生成する発話文を増やさずに、ユーザに納得感を与えるロボットの発話を増やすことができ、結果としてユーザと対話システムとの対話のターンを増やすことができる。曖昧化した文とは、例えば、元の発話文の一部を(i)指示語で置換した文、(ii)言い間違った語で置換した文、あるいは(iii)省略した文等である。なお、(i)指示語で置換した文の場合、すなわち、元の発話文を提示することなく元の発話文の一部を指示語で置換した文を提示した場合には、指示語が何を意味するのかにより、2つ以上の意味に解釈される。(ii)言い間違った語で置換した文の場合、すなわち、元の発話文を提示することなく元の発話文の一部を言い間違った語で置換した文を提示した場合には、少なくとも(a)前後の文脈を考慮して、言い間違いのない本来の意味に解釈可能な文と、(b)言い間違った語で置換した文との2つの意味に解釈される。なお、言い間違った語が元の言葉とあまりにも違うと、対話感に影響が出るので、以下に例示するように、元の言葉と一音違う意味のある言葉等、音が似ていている語を言い間違った語として用いることが望ましい。(iii)省略した文の場合、すなわち、元の発話文を提示することなく元の発話文の一部を省略した文を提示した場合には、省略した部分に何が補われるのかにより、2つ以上の意味に解釈される。以下、元の発話文と変換した発話文の例を示す。
元の発話文：「『車』、燃費が大事だよね」
(i)指示語で置換した文：「『あれ』、燃費が大事だよね」
(ii)言い間違った語で置換した文：「『くるみ』、燃費が大事だよね」
(iii)省略した文：「『省略』燃費が大事だよね」
【００２７】
対話のターンを増やすために、本実施形態の対話システムにおいては、あるロボットＲ１に発話させるために生成された発話文を、曖昧化した文に変換し、曖昧化した文をロボットＲ１が発話する。そして、ロボットＲ１による曖昧化した文の発話の後に、曖昧化した文の内容を確認する発話文を別のロボットＲ２が発話する。ただし、対話システムにロボットＲ１一体しか含まれない場合は、ロボットＲ１による曖昧化した文の発話の後に、ロボットＲ１自身が曖昧化した文の内容を確認する発話文を発話してもよい。
【００２８】
なお、ユーザと対話システムとの対話中の任意のタイミングで曖昧化した文の発話を挿入してよいが、対話が長くなりすぎないように留意する必要がある。元の発話をそのまま発しても、ユーザがロボットの発話を理解あるいはそれに共感を持ちにくいと判断される場合に曖昧化した文の発話を挿入すると特に効果的である。例えば、(A)対話システムが話題を転換する（例えば、シナリオ対話を開始する）タイミング、(B)対話システムの発話に対するユーザの返答が対話システムの予測する返答からはずれているとき、(C)対話システムが話題の変化を検出したとき、などにロボットに曖昧化した文の発話させるとよい。対話システムが話題の変化を検出する方法としては、例えば、対話中の文や単語を利用して、(a)word2vecを利用した話題語間の距離、(b)文全体の単語をword2vecにかけて平均を取った場合の文間距離、(c)単語のcos類似度などを求め、距離が所定の値以上の場合またはcos類似度が所定の値以下の場合(要は、二つの発話が関連していない、または、二つの発話の関連が薄いことを所定の指標が示している場合)、話題が変化したと判定する方法がある。上述の（A）〜(C)等のタイミングは、ユーザが対話システムの発話内容を理解しづらくなるタイミングであるため、ロボットＲ１に曖昧化した文を発話させて、ロボットＲ１とロボットＲ２との間の対話を挿入することで、人と対話システムとの間の対話のターン数を増やすとともに、人に対話システムの発話内容の理解を促すことができる。
【００２９】
前述のように、元の発話文を(i)指示語で置換した文、(ii)言い間違った語で置換した文、(iii)省略した文、に変換するときの、指示語の対象となる語、言い間違いの対象となる語、省略の対象となる語に特に限定はないが、例えば、主要な語を対象とする。例えば、tf-idf(文書中の単語に関する重み)に基づき、元の発話文に含まれる語のうちの重みの大きい語を対象となる語として選択してもよい。また、元の発話文に含まれる語のうちで、他の語との関係で、上位概念となる語を対象となる語として選択してもよい。例えば、元の発話文に『セダン』と『車』とが含まれる場合、語『セダン』との関係で、上位概念となる語『車』を対象となる語として選択することができる。
【００３０】
以下、対話の例を示す。以下の対話の例は、発話t(1)、発話t(2)、・・・の順に発話されているものとする。なお、Ｘ→ＹはＸからＹに対して発話していることを意味し、『 』内に指示語、言い間違い、省略の何れかを示す。
【００３１】
（例１：指示語）
発話t(1):ロボットＲ１→ロボットＲ２：僕、『あれ』、セダンが好きなんだよね
発話t(2):ロボットＲ２→ロボットＲ１：それって車の話？
発話t(3):ロボットＲ１→ロボットＲ２：そう、車。僕、車、セダンがすきなんだよね
【００３２】
（例２：省略）
発話t(1):ロボットＲ１→ロボットＲ２：僕、『省略』セダンが好きなんだよね
発話t(2):ロボットＲ２→ロボットＲ１：それって何の話？
発話t(3):ロボットＲ１→ロボットＲ２：うん、車。僕、車、セダンがすきなんだよね
【００３３】
（例３：言い間違い）
発話t(1):ロボットＲ１→ロボットＲ２：僕、『くるみ』、セダンが好きなんだよね
発話t(2):ロボットＲ２→ロボットＲ１：え、何の話？
発話t(3):ロボットＲ１→ロボットＲ２：ごめん、車。僕、車、セダンがすきなんだよね
【００３４】
なお、例１〜３では、曖昧化した発話t(1)の直後に対話システムが行う発話（この例ではロボットＲ２の発話t(2)）は、曖昧化した発話である第１の発話t(1)の曖昧化されている部分を1つの意味に特定する語を含む発話である。しかし、曖昧化した発話t(1)の直後に対話システムが行う発話は、このような発話に限らず、一意に解釈できていないことの表出する発話、すなわち、一意に解釈できていないことが読み取れる発話、であればよく、例えば、次のような発話でもよい。
【００３５】
（例４：言い間違い）
発話t(1):ロボットＲ１→ロボットＲ２：僕、『くるみ』、セダンが好きなんだよね
発話t(2):ロボットＲ２→ロボットＲ１：ごめん、意味が分からない。
発話t(3):ロボットＲ１→ロボットＲ２：ごめん、車。僕、車、セダンがすきなんだよね
【００３６】
この例では、ロボットＲ２の発話「ごめん、意味が分からない。」は、曖昧化した発話である第１の発話t(1)の曖昧化されている部分を1つの意味に特定する語を含む発話とは言えないが、ロボットＲ２の発話t(2)の対象となった発話をしたロボットであるロボットＲ１が曖昧化した発話を特定する語を発話せざるを得ないようにする発話である。例１〜４の曖昧化した発話t(1)の直後に対話システムが行う発話t(2)は、まとめると、一意に解釈できていないことの表出する発話と言え、別の言い方をすると、一意に解釈できていないことが読み取れる発話と言え、さらに別の言い方をすると、1つの意味に特定する語を含む発話をさせるための発話と言える。
【００３７】
なお、上述の対話の例には、発話を誰に対して行っているかを記載してあるが、発話を誰に対して行うかを限定する必要はない。例えば、例１はロボットＲ１とロボットＲ２との間の対話であるが、ロボットＲ１とロボットＲ２と人との間の対話であってもよい。なお、発話を誰に対して行っているかを限定する場合には、例えば、ロボットの頭部や視線の動きにより発話の対象となる相手が誰であるかを表出するようにすればよい。
【００３８】
＜第一実施形態＞
図１は第一実施形態に係る対話システム１００の機能ブロック図を、図２は第一実施形態に係る対話システム１００の処理フローを示す。
【００３９】
対話システム１００は、ロボットＲ１、Ｒ２と、対話装置１９０と、を含む。対話装置１９０は、音声合成部１１０と、発話生成部１５０と、発話決定部１２０とを含む。ロボットＲ１は提示部１０１−１を含み、ロボットＲ２は提示部１０１−２を含む。提示部１０１−１、１０１−２は、ロボットＲ１、Ｒ２の周囲に音響信号を発するものであり、例えばスピーカである。
【００４０】
対話システム１００は、ユーザである人が２体のロボットであるＲ１とＲ２と対話するためのものであり、対話装置１９０が生成した発話音声（合成音声データ）をロボットＲ１、Ｒ２が発話するものである。以下、対話システム１００が行う動作の流れを説明する。
【００４１】
発話生成部１５０は、発話文(テキストデータ)を生成し（Ｓ１）、発話決定部１２０及び音声合成部１１０に出力する。以下、この発話文をオリジナル発話文ともいう。発話生成部１５０内には、例えば、非特許文献２に記載された「雑談対話システム」と呼ばれる対話システムのように、入力された単語をトリガーとして、あらかじめ記述しておいたルールに従って発話のテキストを生成して出力する対話システムが備えられている。事前に設定された単語に基づき発話生成部１５０内に備えられた当該対話システムが、オリジナル発話文を生成して出力する。
【００４２】
または、発話生成部１５０内には、例えば、非特許文献１に記載された「シナリオ対話システム」と呼ばれる対話システムのように、事前に設定された単語が対話システム内に予め記憶されたシナリオの選択肢に対応する場合に、その選択肢に対応して予め記憶された発話のテキストを選択して出力する対話システムが備えられている。発話生成部１５０内に備えられた当該対話システムが予め記憶しているテキストからオリジナル発話文を選択して出力する。ここで、事前に設定された単語に基づいてオリジナル発話文を生成する例で説明したが、事前に単語を設定していなくてもよい。例えば、オリジナル発話文生成時点が継続中の対話の一時点である場合には、事前に設定した単語に代わり、オリジナル発話文生成時点より前の対話中の単語（トピック等）を用いてもよい。
【００４３】
発話決定部１２０は、発話生成部１５０から入力されたオリジナル発話文を受け取り、オリジナル発話文の少なくとも一部を曖昧化することにより生成した発話文を変換後発話文（テキストデータ）として得（Ｓ２）、音声合成部１１０に出力する。なお、前述の発話文の少なくとも一部を(i)指示語で置換する処理、(ii)言い間違った語で置換する処理、あるいは、(iii)省略する処理、が発話文を曖昧化することに相当する。なお、発話文の少なくとも一部を言い間違った語に置換する処理とは、発話文に含まれる語を当該語の意味を有さない語に置換する処理とも言える。
【００４４】
音声合成部１１０は、発話決定部１２０から入力された変換後発話文（テキストデータ）に対して音声合成を行い合成音声データを得て（Ｓ３）、得られた合成音声データをロボットＲ１の提示部１０１−１に出力する。
【００４５】
提示部１０１−１は、音声合成部１１０から入力された変換後発話文の合成音声データに対応する音声を再生する、すなわち、変換後発話文をロボットＲ１の発話として提示する（Ｓ４）。合成音声データの提示先として、変換後発話文の合成音声データに対応する音声を再生したロボット自身を提示先とする場合には、独り言を話しているように処理を行えばよい。
【００４６】
発話生成部１５０は、発話決定部１２０から入力された変換後発話文の内容を確認する発話文（以下、「確認発話文」ともいう）を生成し（Ｓ６）、音声合成部１１０へ出力する。なお、確認発話文は、変換後発話文を１つの意味に特定するための質問を含む。
【００４７】
確認発話文とは、例えば、(i)正しい内容を特定して確認を行う発話文、(ii)内容を何ら特定せずに確認を行う発話文、(iii)間違った内容を特定して確認を行う発話文、である。例えば、(i)正しい内容を特定して確認を行う発話文としては「それって、ＸＸのこと？」(ここではＸＸは正しい内容であり、変換後発話文を１つの意味に特定する語である)との発話文、(ii)内容を何ら特定せずに確認を行う発話文としては「何のこと？」との発話文、(iii)間違った内容を特定して確認を行う発話文としては「それって、ＹＹのこと？」「ＹＹって言った？」「ＹＹって何のこと？」（ここではＹＹは間違いである）などの発話文が有り得る。発話生成部１５０が(i)から(iii)の何れの種類の確認発話文を具体的にどのように生成するかは、発話生成部１５０内で予め定めておいてもよいし、発話生成部１５０外から対話システムの運用者が指定できるようにしておいてもよい。また、正しい内容は、発話生成部１５０が生成したオリジナル発話文と発話決定部１２０が生成した変換後発話文とに基づいて、発話決定部１２０が曖昧化した部分に対応する語をオリジナル発話文から取得することにより決定する。間違った内容は、発話生成部１５０が生成したオリジナル発話文と発話決定部１２０が生成した変換後発話文とに基づいて、発話決定部１２０が曖昧化した部分に対応する語をオリジナル発話文から取得して、取得した語に基づいて生成すればよい。なお、確認発話文は、変換後発話文を１つの意味に特定するための質問を含むが、変換後発話文を１つの意味に特定するものではない。
【００４８】
音声合成部１１０は、発話生成部１５０から入力された確認発話文に対して音声合成を行い合成音声データを得て（Ｓ７）、得られた合成音声データをロボットＲ２の提示部１０１−２に出力する。
【００４９】
提示部１０１−２は、音声合成部１１０から入力された確認発話文の合成音声データに対応する音声を再生する、すなわち、確認発話文をロボットＲ２の発話として提示する（Ｓ８）。
【００５０】
発話生成部１５０は、さらに、確認発話文に応答する発話文（以下、「応答発話文」ともいう）を生成し（Ｓ９）、音声合成部１１０へ出力する。なお、応答発話文は、確認発話文に含まれる質問の回答であり、かつ、変換後発話文を１つの意味に特定する語を含む。  
【００５１】
音声合成部１１０は、発話生成部１５０から入力された応答発話文に対して音声合成を行い合成音声データを得て（Ｓ１０）、得られた合成音声データをロボットＲ１の提示部１０１−１に出力する。なお、確認発話文が(i)正しい内容を特定して確認を行う発話文である場合には、応答発話文は、確認内容を肯定した上で、正しい内容を復唱する発話文などであり、例えば、「うん、ＸＸ」である。確認発話文が(ii)内容を何ら特定せずに確認を行う発話文である場合や(iii)間違った内容を特定して確認を行う発話文である場合には、応答発話文は、正しい内容を確認する発話文などであり、例えば、「ＸＸ」である。
【００５２】
提示部１０１−１は、音声合成部１１０から入力された応答発話文の合成音声データに対応する音声を再生する、すなわち、応答発話文をロボットＲ１の発話として提示する（Ｓ１１）。
【００５３】
音声合成部１１０は、発話生成部１５０から入力されたオリジナル発話文に対して音声合成を行い合成音声データを得て（Ｓ１２）、得られた合成音声データをロボットＲ１の提示部１０１−１に出力する。
【００５４】
提示部１０１−１は、音声合成部１１０から入力されたオリジナル発話文の合成音声データに対応する音声を再生する、すなわち、オリジナル発話文をロボットＲ１の発話として提示する（Ｓ１３）。
【００５５】
＜各部の処理について＞
以下では、対話システム１００の各部の処理を中心に説明する。なお、ここでは、各発話文の音声合成を、対話の開始よりも前に行う例を示す。
【００５６】
［ロボットＲ１、Ｒ２］
ロボットＲ１とＲ２は、ユーザと対話するためのものであり、ユーザの近くに配置され、対話装置１９０が生成した発話を行う。
【００５７】
［発話生成部１５０］
発話生成部１５０は、オリジナル発話文を生成し、発話決定部１２０及び音声合成部１１０に出力する。
【００５８】
また、発話生成部１５０は、発話決定部１２０で得た変換後発話文とオリジナル発話文を用いて、発話決定部１２０が曖昧化した部分を求め、曖昧化した部分を確認するための確認発話文を生成し、音声合成部１１０に出力する。発話決定部１２０が曖昧化した部分は、変換後発話文とオリジナル発話文との差分から求めることができる。なお、発話決定部１２０から曖昧化した部分を示す情報を受け取る構成としてもよい。
【００５９】
さらに、発話生成部１５０は、確認発話文に対する応答発話文を生成し、音声合成部１１０に出力する。
【００６０】
なお、オリジナル発話文、確認発話文、応答発話文を音声合成部１１０に出力する際には、それぞれの発話文に発話順を表す情報を付加して出力する。例えば、確認発話文の発話順がN+2であり、応答発話文の発話順がN+3であり、オリジナル発話文の発話順がN+4である。Nは0以上の整数の何れかである。確認発話文、応答発話文、オリジナル発話文の発話順は連続している必要はないが、順序は入れ替わらないものとする。発話生成部１５０は、確認発話文、応答発話文、オリジナル発話文を発話するロボットも決定してもよく、この場合には、発話するロボットを表す情報も音声合成部１１０に出力する。
【００６１】
［発話決定部１２０］
発話決定部１２０は、発話生成部１５０で生成したオリジナル発話文を受け取り、オリジナル発話文の少なくとも一部を曖昧化することにより生成した発話文を変換後発話文として得、音声合成部１１０に出力する。また、発話決定部１２０は、変換後発話文または曖昧化した部分を示す情報を発話生成部１５０に出力する。
【００６２】
なお、変換後発話文を音声合成部１１０に出力する際に、変換後発話文に発話順を表す情報を付加して出力する。変換後発話文の発話順は例えばN+1であり、確認発話文、応答発話文、オリジナル発話文より前である。発話決定部１２０は、変換後発話文を発話するロボットも決定してもよく、この場合には、発話するロボットを表す情報も音声合成部１１０に出力する。
【００６３】
［音声合成部１１０］
音声合成部１１０は、発話生成部１５０から入力された確認発話文、応答発話文、オリジナル発話文、及び、発話決定部１２０から入力された変換後発話文に対する音声合成を行って、合成音声データを得て、得られた合成音声データをロボットＲ１の提示部１０１−１またはロボットＲ２の提示部１０１−２に出力する。発話決定部１２０は、発話順を表す情報に従って、合成音声データを出力する。よって、本実施形態では、変換後発話文、確認発話文、応答発話文、オリジナル発話文の順に合成音声データを出力する。発話決定部１２０から発話文と共に当該発話文を発話するロボットを表す情報が入力された場合には、当該情報に対応するロボットの提示部に対して合成音声データを出力する。
【００６４】
［提示部１０１−１、１０１−２］
提示部１０１−１、１０１−２は、音声合成部１１０から入力された合成音声データに対応する音声を再生する。これにより、ユーザはロボットＲ１またはＲ２の発話を受聴することになり、ユーザと対話システム１００との対話が実現される。
【００６５】
＜効果＞
以上の構成により、対話のターン数を増やすことができる。
【００６６】
対話システムと人との会話において、対話システムの発話が人の予測や共感を超えた文脈のものと解釈されるものとなってしまう場合がある。例えば、対話システムの発話が突然で、急には、その発話意図が理解できない場合である。本実施形態では、文の一部をいったん曖昧なものにして、その曖昧性を確認させる対話をするための発話を別のロボットに差し込ませている。対話システムがこのような発話を差し込むことで、人が対話システムの発話意図を理解しやすくなる。
【００６７】
＜第二実施形態＞
図３は第二実施形態に係る対話システム１００の機能ブロック図を、図４は第二実施形態に係る対話システム１００の処理フローを示す。
【００６８】
第二実施形態の対話システム１００は、第一実施形態の対話システム１００と同様に、ロボットＲ１、Ｒ２と、対話装置１９０と、を含む。第二実施形態の対話装置１９０が第一実施形態の対話装置１９０と異なるのは、発話終了検出部１４０も含むことである。第二実施形態のロボットＲ１が第一実施形態のロボットＲ１と異なるのは、入力部１０２−１も含むことであり、第二実施形態のロボットＲ２が第一実施形態のロボットＲ２と異なるのは、入力部１０２−２も含むことである。入力部１０２−１、１０２−２は、ロボットの周囲で発せられた音響信号を収音するものであり、例えばマイクロホンである。入力部はユーザが発話した発話音声を収音可能とすればよいので、入力部１０２−１、１０２−２の何れか一方を備えないでもよい。また、ユーザの近傍などの、ロボットＲ１，Ｒ２とは異なる場所に設置されたマイクロホンを入力部とし、入力部１０２−１、１０２−２の双方を備えない構成としてもよい。
【００６９】
以下、第二実施形態の対話システム１００が行う動作の流れを、第一実施形態の対話システム１００が行う動作の流れと異なる点を中心に説明する。
【００７０】
まず、第二実施形態の対話システム１００は、ステップＳ１〜Ｓ４を行う。
【００７１】
ステップＳ４による変換後発話文の提示後に、入力部１０２−１、１０２−２の少なくとも何れかにおいて収音されたユーザの発話に対応する音声データは、発話終了検出部１４０に出力される。
【００７２】
発話終了検出部１４０は、入力部１０２−１、１０２−２の少なくとも何れかから収音された取得した音声データを用いて、ユーザの発話の終了を検出するか、または、ユーザの発話がないまま予め定めた時間が経過したこと、すなわち、タイムアウトしたことを検出し（Ｓ５）、発話生成部１５０に発話の終了、または、タイムアウトしたことを知らせる制御信号を出力する。
【００７３】
発話生成部１５０に発話終了検出部１４０からの制御信号が入力されると、第二実施形態の対話システム１００は、ステップＳ６〜Ｓ１３を行う。
【００７４】
すなわち、本実施形態では、変換後発話文の提示後にユーザが発話する時間を設けているものの、対話システム１００は、ユーザの発話は音声認識せずに、ユーザの発話が終了した時点、または、所定時間経過した時点で、確認発話文を提示する。なお、ユーザの発話内容が曖昧化した部分の正しい内容を含むものであろうと、間違った内容を含むものであろうと、対話システム１００が提示する確認発話文と応答発話文は、上記の(i)の場合と同様のものとすればよい。例えば、対話システム１００は、「それって、ＸＸのこと？」を確認発話文として提示し、「うん、ＸＸ」を応答発話文として提示する。
【００７５】
以下に、本実施形態の以下、対話の例を示す。
（例５）
発話t(1):ロボットＲ１→ユーザ：『あれ』、どんなタイプが好き？
発話t(2):ユーザ→ロボットＲ１：え、何？
発話t(3):ロボットＲ２→ロボットＲ１：それって車の話？
発話t(4):ロボットＲ１→ロボットＲ２：そう、車。車、どんなタイプが好き？ 
例５は、ロボットＲ１が変換後発話文t(1)を発話し、ロボットＲ１が変換後発話文t(1)を発話した後にユーザの発話を受け付ける時間を設ける。ユーザの発話t(2)が終了した時点でロボットＲ２が確認発話文t(3)を発話する。次にロボットＲ１が発話t(4)として応答発話文とオリジナル発話文を発話する例である。
【００７６】
なお、本実施形態では、対話システム１００が提示する確認発話文と応答発話文はユーザの発話内容には依存しないため、本実施形態の対話システム１００は音声認識する機能を備えなくてよい。
【００７７】
＜第三実施形態＞
図５は第三実施形態に係る対話システム１００の機能ブロック図を、図６は第三実施形態に係る対話システム１００の処理フローを示す。
【００７８】
第三実施形態の対話システム１００は、第二実施形態の対話システム１００と同様に、ロボットＲ１、Ｒ２と、対話装置１９０と、を含む。第三実施形態の対話装置１９０が第二実施形態の対話装置１９０と異なるのは、発話終了検出部１４０を含まず、音声認識部１４１を含むことである。
【００７９】
以下、第三実施形態の対話システム１００が行う動作の流れを、第二実施形態の対話システム１００が行う動作の流れと異なる点を中心に説明する。
【００８０】
まず、第三実施形態の対話システム１００は、ステップＳ１〜Ｓ４を行う。
【００８１】
ステップＳ４による変換後発話文の提示後に、入力部１０２−１、１０２−２の少なくとも何れかにおいて収音されたユーザの発話に対応する音声データは、音声認識部１４１に出力される。
【００８２】
音声認識部１４１は、入力部１０２−１、１０２−２の少なくとも何れかから収音された音声データを音声認識して、音声認識結果の発話文（ユーザの発話に対応する発話文）を得て（Ｓ５１）、音声認識結果の発話文を発話生成部１５０に出力する。
【００８３】
発話生成部１５０は、音声認識結果の発話文が生成した確認発話文と同一の内容であるか否かを判断し（Ｓ５２）、音声認識結果の発話文が生成した確認発話文と同一の内容である場合には、第三実施形態の対話システム１００は、ステップＳ６〜Ｓ８を行わずに、ステップＳ９〜Ｓ１３を行い、音声認識結果の発話文が生成した確認発話文と同一の内容ではない場合には、第三実施形態の対話システム１００は、ステップＳ６〜Ｓ１３を行う。すなわち、第三実施形態の対話システム１００は、ユーザが曖昧化した文の内容を確認する発話文を発話した場合には、曖昧化した文の内容を確認する発話文を発話せず、ユーザの発話の後に応答発話文を発話する。
【００８４】
なお、本実施形態では対話システム１００による変換後発話文の提示後にユーザの発話を受け付ける例について説明したが、対話システム１００による何れの発話文の提示後にユーザの発話を受け付ける構成としてもよい。また、変換後発話文の提示後のユーザの発話の音声認識結果の発話文が生成した確認発話文と同一の内容ではない場合などの、ユーザの発話が対話システム１００が予め想定した発話以外の発話を行った場合について説明する。そのような場合には、第一実施形態で説明した確認発話文、応答発話文、オリジナル発話文、の何れでもない発話文を対話システム１００が発話してもよい。例えば、発話生成部１００は、音声認識の結果が肯定してよい内容であれば「うん、ＸＸ」を応答発話文とする。一方、発話生成部１００は、音声認識の結果が否定する必要のある内容であれば「ごめん、ＸＸ」を応答発話文として生成する。発話生成部１００は、生成した何れかの応答発話文をロボットＲ１の発話として提示すればよい。
【００８５】
なお、対話システム１００がユーザの発話を受け付ける場合には、例えば、ロボットの頭部や視線をユーザに向ける等の動きによりユーザに発話を促すようにしてもよい。
【００８６】
＜変形例１＞
上述の実施形態では、対話システムは、発話の前にロボットの発話文(オリジナル発話文、変換後発話文、確認発話文、応答発話文)を生成していたが、実際には、最初の発話をする前に、生成、音声合成を行っておき、合成音声データを図示しない記憶部に記憶しておき、実際の対話時には、所定のタイミングで各合成音声データを提示部１０１−１または１０１−２で再生する構成としてもよい。また、最初の発話をする前に、発話の前にロボットの発話文を生成し、発話文を図示しない記憶部に記憶しておき、実際の対話時には、所定のタイミングで、各発話文を音声合成して合成音声データを得て、提示部１０１−１または１０１−２で再生する構成としてもよい。
【００８７】
＜変形例２＞
上述の実施形態では２台のロボットを含む対話システムについて説明した。しかし、上述したように発話決定部１２０が発話するロボットを決定しない形態などもある。そのため、対話システム１００に必ずしも２台のロボットを必要としない形態がある。この形態とする場合には、対話システム１００に含むロボットを１台としてもよい。また、上述したように発話決定部１２０が２台のロボットを発話するロボットとして決定する形態がある。この形態を対話システム１００に３台以上のロボットを含む構成で動作させてもよい。
【００８８】
＜変形例３＞
対話システム１００が複数台のロボットを含む構成において、どのロボットが発話しているのかをユーザが判別可能とされていれば、提示部の個数はロボットの個数と同一でなくてもよい。また、提示部はロボットに設置されていなくてもよい。どのロボットが発話しているのかをユーザが判別可能とする方法としては、合成する音声の声質をロボットごとに異ならせる、複数のスピーカを用いてロボットごとに定位を異ならせる、などの周知の技術を用いればよい。
【００８９】
＜変形例４＞
上述した実施形態では、エージェントとしてロボットを用いて音声による対話を行う例を説明したが、上述した実施形態のロボットは身体等を有する人型ロボットであっても、身体等を有さないロボットであってもよい。また、この発明の対話技術はこれらに限定されず、ロボットのように身体等の実体がなく、発声機構を備えないエージェントを用いて対話を行う形態とすることも可能である。そのような形態としては、例えば、コンピュータの画面上に表示されたエージェントを用いて対話を行う形態が挙げられる。より具体的には、「LINE」や「２ちゃんねる（登録商標）」のような、複数アカウントがテキストメッセージにより対話を行うグループチャットにおいて、ユーザのアカウントと対話装置のアカウントとが対話を行う形態に本対話システムを適用することも可能である。この形態では、エージェントを表示する画面を有するコンピュータは人の近傍にある必要があるが、当該コンピュータと対話装置とはインターネットなどのネットワークを介して接続されていてもよい。つまり、本対話システムは、人とロボットなどの話者同士が実際に向かい合って話す対話だけではなく、話者同士がネットワークを介してコミュニケーションを行う会話にも適用可能である。
【００９０】
本変形例の対話装置は、図７に示すように、発話生成部１５０、発話決定部１２０、および提示部１０１を少なくとも備える。発話決定部１２０は、外部に存在する雑談対話システムおよびシナリオ対話システムと通信可能なインターフェースを備える。雑談対話システムおよびシナリオ対話システムは同様の機能を持つ処理部として対話装置内に構成しても構わない。また、発話生成部１５０、発話決定部１２０は、外部に存在する情報処理装置と通信可能なインターフェースを備え、各部の一部または同様の機能を持つ処理部を対話装置外にある情報処理装置内に構成しても構わない。
【００９１】
本変形例の対話装置は、例えば、スマートフォンやタブレットのようなモバイル端末、もしくはデスクトップ型やラップトップ型のパーソナルコンピュータなどの情報処理装置である。以下、対話装置がスマートフォンであるものとして説明する。提示部１０１はスマートフォンが備える液晶ディスプレイである。この液晶ディスプレイにはチャットアプリケーションのウィンドウが表示され、ウィンドウ内にはグループチャットの対話内容が時系列に表示される。グループチャットとは、チャットにおいて複数のアカウントが互いにテキストメッセージを投稿し合い対話を展開する機能である。このグループチャットには、対話装置が制御する仮想的な人格に対応する複数の仮想アカウントと、ユーザのアカウントとが参加しているものとする。すなわち、本変形例は、エージェントが、対話装置であるスマートフォンの液晶ディスプレイに表示された仮想アカウントである場合の一例である。なお、第二実施形態や第三実施形態に対応する本変形例の対話装置では、スマートフォンの液晶ディスプレイに表示されたソフトウェアキーボードを入力部１０２とすることでユーザが発話内容を入力し、自らのアカウントを通じてグループチャットへ投稿することができる。なお、スマートフォンに搭載されたマイクロホンを入力部１０２として機能させ、ユーザが発声により発話内容を入力する構成としてもよい。この構成とする場合には、対話装置は発話終了検出部１４０または音声認識部１４１を備えるか、外部に存在する情報処理装置と通信可能なインターフェースを備え、発話終了検出部１４０または音声認識部１４１と同様の機能を持つ処理部を対話装置外にある情報処理装置内に構成する。また、スマートフォンに搭載されたスピーカと音声合成機能を用い、各対話システムから得た発話内容を、各仮想アカウントに対応する音声でスピーカから出力する構成としてもよい。
【００９２】
＜変形例５＞
変形例１で説明した通り、発話生成部１５０と発話決定部１２０とにより、複数のロボットを対話させるための複数の発話文を得ることができる。また、発話生成部１５０と発話決定部１２０と音声合成部１１０とにより、複数のロボットを対話させるための複数の発話の合成音声データを得ることができる。また、変形例４で説明した通り、生成した発話文は、ロボットではなく、コンピュータ画面上に表示されたエージェントなどの発声機構を備えないエージェントに提示させてもよい。すなわち、発話生成部１５０と発話決定部１２０とによる装置は、複数のエージェントを対話させるための複数の発話文を生成する対話シナリオ生成装置として機能させることができる。また、発話生成部１５０と発話決定部１２０と音声合成部１１０による装置は、複数のエージェントを対話させるための複数の発話の合成音声データを生成する対話シナリオ生成装置として機能させることができる。
【００９３】
＜その他の変形例＞
本発明は上記の実施形態及び変形例に限定されるものではない。例えば、提示部が提示する発話順以外の上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【００９４】
＜プログラム及び記録媒体＞
また、上記の実施形態及び変形例１−３、５で説明した各装置における各種の処理機能をコンピュータによって実現してもよい。その場合、各装置が有すべき機能の処理内容はプログラムによって記述される。また、上記変形例４で説明した対話システムにおける各種の処理機能をコンピュータによって実現してもよい。その場合、対話システムが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
【００９５】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【００９６】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させてもよい。
【００９７】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶部に格納する。そして、処理の実行時、このコンピュータは、自己の記憶部に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実施形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよい。さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、プログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。  
【００９８】
また、コンピュータ上で所定のプログラムを実行させることにより、各装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【図１】
2017200075.tif 000003
【図２】
2017200075.tif 000004
【図３】
2017200075.tif 000005
【図４】
2017200075.tif 000006
【図５】
2017200075.tif 000007
【図６】
2017200075.tif 000008
【図７】
2017200075.tif 000009
【国際調査報告】
2017200075.tif 000010
2017200075.tif 000011