(57)【特許請求の範囲】
【請求項１】
ユーザと対話を行う対話システムが行う対話方法であって、
入力部が、ユーザが発話したユーザ発話を受け付ける発話受付ステップと、
提示部が、内容語を含まない発話である対話成立発話を提示する第一提示ステップと、
上記提示部が、少なくとも上記ユーザ発話を含むユーザ発話以前に行われた一つ以上の発話である生成対象発話に関連する発話である第二発話を、上記対話成立発話の後に提示する第二提示ステップと、
を含み、
上記第一提示ステップ及び上記第二提示ステップは、上記生成対象発話に関連させて生成した発話候補が所定の基準を満たさない場合に実行される、
対話方法。
【請求項２】
ユーザと対話を行う対話システムが行う対話方法であって、
入力部が、ユーザが発話したユーザ発話を受け付ける発話受付ステップと、
提示部が、上記ユーザ発話の一部またはその上位語を含む発話である対話成立発話を提示する第一提示ステップと、
上記提示部が、少なくとも上記ユーザ発話を含むユーザ発話以前に行われた一つ以上の発話である生成対象発話に関連する発話である第二発話を、上記対話成立発話の後に提示する第二提示ステップと、
を含み、
上記第一提示ステップ及び上記第二提示ステップは、上記生成対象発話に関連させて生成した発話候補が所定の基準を満たさない場合に実行される、
対話方法。
【請求項３】
請求項１または２に記載の対話方法であって、
Nは1以上の整数であり、M,Lは2以上の整数であり、N<M≦Lであり、
上記生成対象発話は、L語を含むものであり、
上記発話候補は、上記生成対象発話に含まれるM語に関連させて生成したものであり、
上記第二発話は、上記生成対象発話に含まれるN語に関連させて生成したものである、
対話方法。
【請求項４】
請求項１または２に記載の対話方法であって、
上記第二発話は、上記発話候補である、
対話方法。
【請求項５】
請求項１から４のいずれかに記載の対話方法であって、
上記対話システムは、複数のエージェントを含み、
上記第一提示ステップは、上記複数のエージェントのうちの何れかのエージェントが上記対話成立発話を提示し、
前記第二提示ステップは、上記複数のエージェントのうちの上記対話成立発話を提示したのとは異なるエージェントが、上記第二発話を提示する、
対話方法。
【請求項６】
ユーザと対話を行う対話システムであって、
ユーザが発話したユーザ発話を受け付ける入力部と、
内容語を含まない発話である対話成立発話と、少なくとも上記ユーザ発話を含むユーザ発話以前に行われた一つ以上の発話である生成対象発話に関連する発話である第二発話と、を決定する発話決定部と、
上記発話決定部が決定した対話成立発話を提示し、上記発話決定部が決定した上記第二発話を上記対話成立発話を提示した後に提示する提示部と、
を含み、
上記対話成立発話及び上記第二発話は、上記生成対象発話に関連させて生成した発話候補が所定の基準を満たさない場合に提示される、
対話システム。
【請求項７】
ユーザと対話を行う対話システムであって、
ユーザが発話したユーザ発話を受け付ける入力部と、
上記ユーザ発話の一部またはその上位語を含む発話である対話成立発話と、少なくとも上記ユーザ発話を含むユーザ発話以前に行われた一つ以上の発話である生成対象発話に関連する発話である第二発話と、を決定する発話決定部と、
上記発話決定部が決定した対話成立発話を提示し、上記発話決定部が決定した上記第二発話を上記対話成立発話を提示した後に提示する提示部と、
を含み、
上記対話成立発話及び上記第二発話は、上記生成対象発話に関連させて生成した発話候補が所定の基準を満たさない場合に提示される、
対話システム。
【請求項８】
ユーザの発話であるユーザ発話を受け付ける入力部と、発話を提示する提示部とを少なくとも含む対話システムが提示する発話を決定する対話装置であって、
内容語を含まない発話である対話成立発話と、
上記対話成立発話の後に提示する発話であり、かつ、少なくとも上記ユーザ発話を含むユーザ発話以前に行われた一つ以上の発話である生成対象発話に関連する発話である、第二発話と、
を決定する発話決定部
を含み、
上記対話成立発話及び上記第二発話は、上記生成対象発話に関連させて生成した発話候補が所定の基準を満たさない場合に提示される、
対話装置。
【請求項９】
ユーザの発話であるユーザ発話を受け付ける入力部と、発話を提示する提示部とを少なくとも含む対話システムが提示する発話を決定する対話装置であって、
上記ユーザ発話の一部またはその上位語を含む発話である対話成立発話と、
上記対話成立発話の後に提示する発話であり、かつ、少なくとも上記ユーザ発話を含むユーザ発話以前に行われた一つ以上の発話である生成対象発話に関連する発話である、第二発話と、
を決定する発話決定部
を含み、
上記対話成立発話及び上記第二発話は、上記生成対象発話に関連させて生成した発話候補が所定の基準を満たさない場合に提示される、
対話装置。
【請求項１０】
請求項１から５のいずれかに記載の対話方法の各ステップをコンピュータに実行させるためのプログラム。
【請求項１１】
請求項８または９に記載の対話装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、人とコミュニケーションを行うロボットなどに適用可能な、コンピュータが人間と自然言語を用いて対話を行う技術に関する。
【背景技術】
【０００２】
近年、人とコミュニケーションを行うロボットの研究開発が進展しており、様々な現場で実用化されてきている。例えば、コミュニケーションセラピーの現場において、ロボットが孤独感を抱える人の話し相手となる利用形態がある。具体的には、老人介護施設においてロボットが入居者の傾聴役となることで、入居者の孤独感を癒す役割を担うことができると共に、ロボットとの会話している姿を見せ、入居者とその家族や介護士など周りの人々との会話のきっかけを作ることができる。また、例えば、コミュニケーション訓練の現場において、ロボットが練習相手となる利用形態がある。具体的には、外国語学習施設においてロボットが外国語学習者の練習相手となることで、外国語学習を効率的に進めることができる。また、例えば、情報提示システムとしての応用において、ロボット同士の対話を聞かせることを基本としながら、時折人に話しかけることで、退屈させずに人を対話に参加させ、人が受け入れやすい形で情報を提示することができる。具体的には、街中の待ち合わせ場所やバス停、駅のホームなどで人が時間を持て余している際や、自宅や教室などで対話に参加する余裕がある際に、ニュースや商品紹介、蘊蓄・知識紹介、教育（例えば、子供の保育・教育、大人への一般教養教授、モラル啓発など）など、効率的な情報提示が期待できる。さらに、例えば、情報収集システムとしての応用において、ロボットが人に話しかけながら情報を収集する利用形態がある。ロボットとのコミュニケーションにより対話感を保持できるため、人に聴取されているという圧迫感を与えずに情報収集することができる。具体的には、個人情報調査や市場調査、商品評価、推薦商品のための趣向調査などに応用することが想定されている。このように人とロボットのコミュニケーションは様々な応用が期待されており、ユーザとより自然に対話を行うロボットの実現が期待される。また、スマートフォンの普及により、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）などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。対話装置１１は、例えば、中央演算処理装置の制御のもとで各処理を実行する。対話装置１１に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて読み出されて他の処理に利用される。また、対話装置１１の各処理部の少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。
【００２８】
入力部１は、ユーザの発話を対話システム１０が取得するためのインターフェースである。言い換えれば、入力部１は、ユーザが発話を対話システム１０へ入力するためのインターフェースである。例えば、入力部１はユーザの発話音声を収音して音声信号とするマイクロホンである。入力部１は、収音したユーザの発話音声の音声信号を、音声認識部２へ入力する。
【００２９】
音声認識部２は、入力部１が収音したユーザの発話音声の音声信号をユーザの発話内容を表すテキストに変換する。音声認識部２は、ユーザの発話内容を表すテキストを、発話決定部３へ入力する。音声認識の方法は既存のいかなる音声認識技術を用いてもよく、利用環境等に合わせて最適なものを適宜選択すればよい。
【００３０】
発話決定部３は、入力されたユーザの発話内容を表すテキストに基づいて、対話システム１０からの発話内容を表すテキストを決定する。発話決定部３は、決定した発話内容を表すテキストを、音声合成部４へ入力する。
【００３１】
音声合成部４は、発話決定部３が決定した発話内容を表すテキストを、発話内容を表す音声信号に変換する。音声合成部４は、発話内容を表す音声信号を、提示部５へ入力する。音声合成の方法は既存のいかなる音声合成技術を用いてもよく、利用環境等に合わせて最適なものを適宜選択すればよい。
【００３２】
提示部５は、発話決定部３が決定した発話内容をユーザへ提示するためのインターフェースである。例えば、提示部５は、人間の形を模して製作された人型ロボットである。この人型ロボットは、発話決定部３が決定した発話内容を表すテキストを音声合成部４が音声信号に変換した発話内容を表す音声信号を、例えば頭部に搭載したスピーカから発音する、すなわち、発話を提示する。提示部５を人型ロボットとした場合には、対話に参加する人格ごとに一台の人型ロボットを用意する。以下では、二人の人格が対話に参加する例として、二台の人型ロボット５−１および５−２が存在するものとする。
【００３３】
入力部１は提示部５と一体として構成してもよい。例えば、提示部５を人型ロボットとした場合、人型ロボットの頭部にマイクロホンを搭載し、入力部１として利用することも可能である。
【００３４】
以下、図２を参照して、実施形態の対話方法の処理手続きを説明する。
【００３５】
ステップＳ１１において、マイクロホン１は、ユーザが発した発話を受け付ける。以下、この発話をユーザ発話と呼ぶ。音声認識部２は、マイクロホン１が収音したユーザ発話の音声信号を音声認識し、音声認識結果として得られたテキストをユーザ発話の内容を表すテキストとして発話決定部３へ入力する。
【００３６】
ステップＳ１２において、人型ロボット５−１は、対話成立発話の内容を表す音声をスピーカから出力する。対話成立発話とは、例えば、相槌やフィラーなど、具体的な発話内容（内容語）を含まない発話である。対話成立発話の内容を表すテキストは、発話決定部３が、例えば、あらかじめ定められ発話決定部３内の図示しない記憶部に記憶された定型文から任意に選択することにより決定する。
【００３７】
ステップＳ１３において、人型ロボット５−２は、対話成立発話に続いて、第二発話の内容を表す音声をスピーカから出力する。ステップＳ１３は、ステップＳ１２の後に行われる。すなわち、対話システム１０は、ユーザ発話を受け付け、対話成立発話の内容を表す音声をスピーカから出力した後に、第二発話の内容を表す音声をスピーカから出力する。第二発話とは、生成対象発話に関連する内容を含む発話である。生成対象発話とは、少なくともユーザ発話を含むユーザ発話以前に人型ロボットとユーザとの間で行われた対話に含まれる発話である。すなわち、生成対象発話の一例は、ユーザ発話である。また、生成対象発話の別の例は、ユーザ発話より前に発話決定部３が決定して提示部５−１または５−２が提示した発話と、ユーザ発話より前にユーザが発話した発話と、のうちの１つ以上の発話と、ユーザ発話と、による２つ以上の発話である。
【００３８】
第二発話の内容を表すテキストは、例えば、発話決定部３へ生成対象発話に含まれる単語を入力し、発話決定部３が、あらかじめ定めたルールに従って、入力された単語に基づいて決定する。直前までの発話内容に応じて発話内容を決定する技術は、従来の対話システムにおいて用いられているものを利用すればよく、例えば、非特許文献２に記載されたシナリオ対話システムや非特許文献３または４に記載された雑談対話システムなどを用いることができる。発話決定部３がシナリオ対話システムにおいて用いられている技術を用いる場合は、例えば、発話決定部３は、直前の５発話程度を含む対話について、各発話に含まれる単語や各発話を構成する焦点語と発話決定部３内の図示しない記憶部に記憶された各シナリオに含まれる単語や焦点語との単語間距離が所定の距離より近いシナリオを選択し、選択したシナリオに含まれるテキストを選択することにより第二発話の内容を表すテキストを決定する。発話決定部３が雑談対話システムにおいて用いられている技術を用いる場合は、発話決定部３は、例えば、ユーザの発話に含まれる単語をトリガーとして、あらかじめ記述して発話決定部３内の図示しない記憶部に記憶しておいたルールに従って第二発話の内容を表すテキストを決定してもよいし、ユーザの発話に含まれる単語と共起関係や係り受け関係にある単語に基づいて自動的にルールを生成し、そのルールに従って第二発話の内容を表すテキストを決定してもよい。
【００３９】
上記の実施形態では、人型ロボット５−１が対話成立発話を提示し、異なる人型ロボット５−２が第二発話を提示する例を説明した。しかし、対話成立発話を提示する人型ロボットと第二発話を提示する人型ロボットとは同一のものであってもよく、人型ロボット５−１が対話成立発話を提示し、同じ人型ロボット５−１が続けて第二発話を提示するように構成してもよい。また、発話を行う人型ロボットは限定されず、人型ロボット５−２が対話成立発話を提示し、同じ人型ロボット５−２が続けて第二発話を提示するように構成してもよい。
【００４０】
以降、ユーザと対話システム１０との間で第二発話の内容を話題とした対話が続行される。例えば、第二発話をシナリオ対話システムにおいて用いられている技術により生成した場合には、シナリオ対話システムにおいて用いられている技術により選択したシナリオに沿った対話がユーザと対話システム１０との間で実行されるように、対話システム１０はシナリオ対話システムにおいて用いられている技術により決定したシナリオ発話の発話内容を表す音声をスピーカから出力する。また、例えば、第二発話を雑談対話システムにおいて用いられている技術により生成した場合には、ユーザの発話に基づいて雑談対話システムにおいて用いられている技術により決定した雑談発話の発話内容を表す音声をスピーカから出力する。以降の発話を提示する人型ロボットは、何れか１つの人型ロボットであってもよいし、複数の人型ロボットであってもよい。
【００４１】
以下、この実施形態の対話システム１０とユーザとによる対話内容の具体例を示す。ここで、Ｒは人型ロボットを表し、Ｈはユーザを表す。Ｒの後の括弧内における数字は人型ロボットの識別子である。「Ｒ（１→Ｈ）」は人型ロボット５−１がユーザへ話しかけていることを表し、「Ｒ（１→２）」は人型ロボット５−１が人型ロボット５−２へ話しかけていることを表す。なお、人型ロボットが誰に話かける意図であるかは、例えば、人型ロボットの頭部や視線の動きにより表出するようにしてもよいが、表出しなくてもよい。
【００４２】
Ｈ：「お腹がぐるぐるするー」
Ｒ（１→Ｈ）：「へー」（※１）
Ｒ（２→Ｈ）：「お腹空いたからラーメンが食べたい」（※２）
【００４３】
※１は対話成立発話である。相槌（「へー」）のみを行い、ユーザの発話を理解していることを示している。※２は第二発話である。ユーザの発話に含まれる「お腹」に対応した発話を返答している。なお、※１以降の人型ロボットの発話は、発話する人型ロボットが逆でもよいし、話しかける相手が人間でも他の人型ロボットでも人間と他の人型ロボットの両方でもよい。
【００４４】
次に、対話成立発話と第二発話を同じ人型ロボットが発話する具体例を示す。
【００４５】
Ｈ：「明日は寒くなるみたいだから、コート着なきゃ」
Ｒ（１→Ｈ）：「へー、今年のコートの流行はチェスターコートだよ」（※３）
【００４６】
※３は対話成立発話と第二発話とが連続した発話である。１台の人型ロボットが、相槌（「へー」）を行った後、ユーザの発話に含まれる「コート」に対応した発話を返答している。
【００４７】
上記の実施形態では、対話システム１０がユーザの発話に対して常に対話成立発話と第二発話とを提示する例を説明した。しかし、対話システム１０がユーザ発話に対する返答を生成できない場合や対話システム１０が決定したユーザ発話に対する返答が適当な内容でない場合、すなわち、生成対象発話の内容を表すテキストに関連させて生成した発話候補のテキストが所定の基準を満たさなかった場合のみに、対話システム１０の提示部５が対話成立発話と第二発話とを提示するように構成してもよい。
【００４８】
この構成では、発話決定部３は、まず、生成対象発話の内容を表すテキストに関連する発話候補のテキストを生成する。発話決定部３は、次に、発話候補のテキストが所定の基準を満たすかを判定する。発話候補のテキストが所定の基準を満たさなかった場合には、発話決定部３は、対話成立発話の内容を表すテキストを決定する。また、発話候補のテキストが所定の基準を満たさなかった場合には、生成対象発話の内容を表すテキストのうちの発話候補を生成する際に関連させた語より少ない語に関連する発話のテキストを生成して、生成された発話のテキストを第二発話のテキストとする。一例として、生成対象発話がL語を含む場合の発話決定部３の動作を説明する。発話決定部３は、まず、L語のうちM語を用いて発話候補のテキストを生成する。発話決定部３は、次に、発話候補のテキストが所定の基準を満たすかを判定する。発話候補のテキストが所定の基準を満たさなかった場合に、発話決定部３は、対話成立発話の内容を表すテキストを出力する。また、発話候補のテキストが所定の基準を満たさなかった場合には、発話決定部３は、生成対象発話の内容を表すテキストに含まれるL語のうちM語よりも少ないN語を用いて発話のテキストを生成して、その生成された発話のテキストを第二発話のテキストとして出力する。ここで、Nは1以上の整数であり、M,Lは2以上の整数であり、N<M≦Lの関係を満たすものとする。
【００４９】
また、例えば、発話決定部３を、ユーザ発話に対する返答が生成できない場合やユーザ発話に対する返答が適当な内容でない場合、すなわち、生成対象発話の内容を表すテキストに関連させて生成した発話候補のテキストが所定の基準を満たさなかった場合に、一旦相槌等の対話成立発話により対話を成立させた後、所定の基準を満たさなかった発話候補であってもそのまま第二発話として出力する構成としてもよい。この構成では、例えば、発話決定部３は、まず、生成対象発話の内容を表すテキストに関連する発話候補のテキストを生成する。発話決定部３は、次に発話候補のテキストが所定の基準を満たすかを判定する。発話候補のテキストが所定の基準を満たさなかった場合には、発話決定部３は、対話成立発話の内容を表すテキストを決定する。また、発話候補のテキストが所定の基準を満たさなかった場合には、発話決定部３は、発話候補のテキストを第二発話のテキストとしてそのまま出力する。発話決定部３は、次に、発話候補のテキストが所定の基準を満たすかを判定する。発話候補のテキストが所定の基準を満たさなかった場合には、発話決定部３は、対話成立発話の内容を表すテキストを決定する。
【００５０】
また、ユーザ発話の一部または全部により構成される発話などのユーザ発話の少なくとも一部を含む発話を対話成立発話としてもよい。すなわち、発話決定部３が、ユーザ発話の内容を表すテキストの少なくとも一部を含む発話を対話成立発話のテキストとして決定するように対話システムを構成してもよい。この構成における対話システムとユーザとによる対話内容の具体例を示す。
【００５１】
Ｈ：「博多で食べたとんこつラーメンがめっちゃ美味しかったよ」
Ｒ（１→Ｈ）：「ラーメン」（※１）
Ｒ（２→Ｈ）：「お腹空いたからラーメンが食べたい」（※２）
【００５２】
※１は対話成立発話であり、※２は第二発話である。この具体例では、対話システムは、ユーザの発話に含まれる一部の単語（「ラーメン」）のみを対話成立発話として提示することでユーザの発話を理解していることを示した上で、ユーザの発話に含まれる「ラーメン」に対応した返答を第二発話として提示している。すなわち、この具体例では、発話決定部３が、ユーザ発話の内容を表すテキストに含まれる１つの単語を対話成立発話のテキストとして決定する。
【００５３】
この構成における対話システムとユーザとによる対話内容の別の具体例を示す。
【００５４】
Ｈ：「博多で食べたとんこつラーメンがめっちゃ美味しかったよ」
Ｒ（１→Ｈ）：「とんこつラーメン美味しいよね」（※１）
Ｒ（２→Ｈ）：「お腹空いたからラーメンが食べたい」（※２）
【００５５】
※１は対話成立発話であり、※２は第二発話である。この具体例では、対話システムは、ユーザの発話のテキストに含まれる一部の内容語（「とんこつラーメン」「美味しい」）を含み、かつ、ユーザの発話に同意する発話を対話成立発話として提示することでユーザの発話を理解していることを示した上で、ユーザの発話に含まれる「ラーメン」に対応した返答を第二発話として提示している。すなわち、この具体例では、発話決定部３が、ユーザ発話の内容を表すテキストに含まれる一部の単語を含む発話、より具体的には、ユーザの発話のテキストに含まれる一部の内容語を含み、かつ、ユーザの発話に同意する発話を、対話成立発話のテキストとして決定する。
【００５６】
この構成における対話システムとユーザとによる対話内容の別の具体例を示す。
【００５７】
Ｈ：「博多で食べたとんこつラーメンがめっちゃ美味しかったよ」
Ｒ（１→Ｈ）：「博多で食べたんだ」（※１）
Ｒ（２→Ｈ）：「お腹空いたからラーメンが食べたい」（※２）
【００５８】
※１は対話成立発話であり、※２は第二発話である。この具体例では、対話システムは、ユーザの発話のテキストに含まれる一部の内容語（「博多」「食べる」）を含み、かつ、ユーザの発話に同意する発話を対話成立発話として提示することでユーザの発話を理解していることを示した上で、ユーザの発話に含まれる「ラーメン」に対応した返答を第二発話として提示している。すなわち、この具体例では、発話決定部３が、ユーザ発話の内容を表すテキストに含まれる一部の単語を含む発話、より具体的には、ユーザの発話のテキストに含まれる一部の内容語を含み、かつ、ユーザの発話に同意する発話を、対話成立発話のテキストとして決定する。
【００５９】
なお、上記の具体例では、ユーザ発話の少なくとも一部を含む発話を対話成立発話とする例を示したが、ユーザ発話の少なくとも一部を含む発話に含まれる語を上位語に置き換えて得られる発話、すなわち、ユーザ発話の一部の上位語を含む発話、を対話成立発話としてもよい。この場合は、例えば、発話決定部３は、ユーザ発話の内容を表すテキストの少なくとも一部の語の上位語を取得し、当該上位語を含む発話文のテキストを得て、得られた発話文のテキストを対話成立発話のテキストとして決定する。
【００６０】
以上の具体例でも説明したように、要するに、本構成における対話成立発話は、対話システムがユーザの発話を受け止めたとユーザに感じさせるよう、ユーザ発話の一部または全部を実質的に反復する発話であり、すなわち，ユーザが同意しやすい発話である。なお、ユーザ発話に含まれる単語数が多い場合には、対話成立発話を、ユーザ発話の全部を含まずにユーザ発話の一部を実質的に反復する発話とすることにより、ユーザが同意しやすい発話であり、かつ、単なるオウム返しとユーザに感じさせない程度に情報量を抑えた発話を対話システムが行うことができる。なお，ユーザ発話が十分に短い場合は、対話システムがユーザ発話を単に繰り返したりユーザ発話の上位語を発話したりしても、すなわち、ユーザ発話の全部を実質的に繰り返しても、提示する情報量は少ないため、ユーザにオウム返しとは捉えられない。
【００６１】
対話成立発話の内容を表すテキストは、発話決定部３が、例えば、あらかじめ定められ発話決定部３内の図示しない記憶部に記憶された定型文から任意に選択することにより決定する。なお、相槌やフィラーなどの内容語を含まない発話と、ユーザ発話の少なくとも一部を含む発話と、を含む発話を、対話成立発話としてもよい。
【００６２】
なお、対話システム１０が複数の人型ロボットを含む構成において、ユーザ発話がある人型ロボットの発話に対する発話である場合には、何れの人型ロボットも対話成立発話を提示することなく、ユーザ発話の元となる発話をした人型ロボットとは別の人型ロボットが第二発話を提示する構成としてもよい。例えば、対話システム１０が人型ロボット５−１と５−２を含む構成において、ユーザ発話が人型ロボット５−１の発話に対する発話である場合には、人型ロボット５−１も人型ロボット５−２も対話成立発話を提示することなく、人型ロボット５−２が第二発話を提示する構成としてもよい。この構成とする場合は、発話決定部３は、第二発話のテキストを決定すればよく、対話成立発話のテキストを決定しなくてもよい。
【００６３】
発話候補のテキストが適切であるかを判定するための所定の基準は、例えば、１．ユーザ発話の文脈との不一致、２．常識的知識の欠如、３．時制や事実性の不一致、の何れでもないことである。以下、それぞれの基準について、具体例を挙げて詳しく説明する。
【００６４】
１．ユーザ発話の文脈との不一致とは、生成対象発話の内容を表すテキストに基づいて生成した発話候補のテキストが、ユーザ発話のテキストの文脈と一致しない場合のことである。ユーザ発話の文脈との不一致の具体例を以下に挙げる。
【００６５】
Ｈ：「明日は寒くなるみたいだから、コート着なきゃ」
Ｒ（１→Ｈ）：「今年のコートの流行はチェスターコートだよ」
【００６６】
この例では、ユーザは「コートを着る理由」を発話しているのに対して、ロボットは「コートの流行」について発話しており、文脈が一致していない。具体的な判定方法としては、発話決定部３が、ユーザ発話のテキストと生成した発話候補のテキストとで、単語（名詞以外を含む）、名詞句、述語項構造を含めて単位とし、話題の連続性を評価することにより行う。例えば、発話決定部３が、話題の連続性の指標値が、発話決定部３内の図示しない記憶部に予め記憶した閾値よりも話題の連続性が低い場合に、発話候補のテキストがユーザ発話の文脈と不一致であると判定する。話題の連続性の評価には、話題を構成する単語同士の単語間距離や、公知の対話破綻検出技術（例えば、参考文献１参照）を用いることができる。
〔参考文献１〕杉山弘晃，“異なる特性を持つデータの組み合わせによる雑談対話の破綻検出”，第６回対話システムシンポジウム（SIG-SLUD），人工知能学会，pp. 51-56，2015年
【００６７】
２．常識的知識の欠如は、生成対象発話の内容を表すテキストに基づいて生成した発話候補のテキストが、例えば、常識的な事項に関する質問であるなど、常識的な知識が欠如している印象を与える場合である。このような場合、ユーザは対話システムに対する信頼を失うため、ユーザが対話を止めてしまうおそれがある。常識的知識の欠如の具体例を以下に挙げる。
【００６８】
Ｈ：「明日は寒くなるみたいだから、コート着なきゃ」
Ｒ（１→Ｈ）：「寒いとコートを着るんだね」
【００６９】
この例では、ロボットが「寒いとコートを着る」という人間にとって常識的な事柄について質問をしており、常識的な知識が欠如している印象を与える。具体的な判定方法としては、発話決定部３が、発話候補のテキストを構成する焦点語の組み合わせ（上記の例では「寒い」「コート」「着る」）を、事前に収集して発話決定部３内の図示しない記憶部に記憶した大量のテキスト中から検索し、その出現数が発話決定部３内の図示しない記憶部にあらかじめ記憶した閾値より大きく、かつ、発話候補のテキストが相手に対する確認を意図する内容である場合に、発話候補のテキストは常識的知識が欠如しているものであると判断する。焦点語を検索するために、事前に収集して発話決定部３内の図示しない記憶部に記憶しておくテキストは、例えばTwitter（登録商標）などウェブ上から収集したものであればよい。
【００７０】
３．時制や事実性の不一致は、ユーザ発話のテキストと生成された発話候補のテキストとで時制や事実性が一致しない場合である。時制や事実性の不一致の具体例を以下に挙げる。
【００７１】
Ｈ：「昨日は寒くなったから、ダウンを出してきたよ」
Ｒ（１→Ｈ）：「ダウンを出したいの？」
【００７２】
この例では、ユーザは「ダウンを出した」という過去のイベントについて発話しているのに対して、ロボットは「ダウンを出したいの？」と完了したイベントについて発生の希望を尋ねており、時制も事実性も一致していない。具体的な判定方法としては、例えば、発話決定部３が、ユーザ発話のテキストと生成された発話候補のテキストとにおいて、述語項構造で表現される発話中のイベントの時制や事実性が異なる場合、もしくは、あらかじめ定めたルールに合致しない場合、時制や事実性の不一致と判断する。
【００７３】
＜変形例＞
上述した実施形態では、エージェントとしてロボットを用いて音声による対話を行う例を説明したが、上述した実施形態のロボットは身体等を有する人型ロボットであっても、身体等を有さないロボットであってもよい。また、この発明の対話技術はこれらに限定されず、ロボットのように身体等の実体がなく、発声機構を備えないエージェントを用いて対話を行う形態とすることも可能である。そのような形態としては、例えば、コンピュータの画面上に表示されたエージェントを用いて対話を行う形態が挙げられる。より具体的には、「LINE」（登録商標）や「２ちゃんねる」（登録商標）のような、複数アカウントがテキストメッセージにより対話を行うグループチャットにおいて、ユーザのアカウントと対話装置のアカウントとが対話を行う形態に適用することも可能である。この形態では、エージェントを表示する画面を有するコンピュータは人の近傍にある必要があるが、当該コンピュータと対話装置とはインターネットなどのネットワークを介して接続されていてもよい。つまり、本対話システムは、人とロボットなどの話者同士が実際に向かい合って話す対話だけではなく、話者同士がネットワークを介してコミュニケーションを行う会話にも適用可能である。
【００７４】
変形例の対話システム２０は、図３に示すように、入力部１、発話決定部３、および提示部５を備える。図３の例では、変形例の対話システム２０は１台の対話装置２１からなり、変形例の対話装置２１は、入力部１、発話決定部３、および提示部５を備える。
【００７５】
変形例の対話装置は、例えば、スマートフォンやタブレットのようなモバイル端末、もしくはデスクトップ型やラップトップ型のパーソナルコンピュータなどの情報処理装置である。以下、対話装置がスマートフォンであるものとして説明する。提示部５はスマートフォンが備える液晶ディスプレイである。この液晶ディスプレイにはチャットアプリケーションのウィンドウが表示され、ウィンドウ内にはグループチャットの対話内容が時系列に表示される。グループチャットとは、チャットにおいて複数のアカウントが互いにテキストメッセージを投稿し合い対話を展開する機能である。このグループチャットには、対話装置が制御する仮想的な人格に対応する複数の仮想アカウントと、ユーザのアカウントとが参加しているものとする。すなわち、本変形例は、エージェントが、対話装置であるスマートフォンの液晶ディスプレイに表示された仮想アカウントである場合の一例である。ユーザはソフトウェアキーボードを用いて入力部１へ発話内容を入力し、自らのアカウントを通じてグループチャットへ投稿することができる。発話決定部３はユーザのアカウントからの投稿に基づいて対話装置からの発話内容を決定し、各仮想アカウントを通じてグループチャットへ投稿する。なお、スマートフォンに搭載されたマイクロホンと音声認識機能を用い、ユーザが発声により入力部１へ発話内容を入力する構成としてもよい。スマートフォンに搭載されたタッチパネルと文字認識機能を用い、ユーザが手書きにより入力部１へ発話内容を入力する構成としてもよい。また、スマートフォンに搭載されたスピーカと音声合成機能を用い、各対話システムから得た発話内容を、各仮想アカウントに対応する音声でスピーカから出力する構成としてもよい。
【００７６】
なお、エージェントの発話が提示部５（ディスプレイ）に同時に表示されると、ユーザが違和感を感じる可能性があるため、順次表示することが望ましい。また、ユーザの発話の認識結果も提示部５（ディスプレイ）に表示してもよい。
【００７７】
上記のように構成することにより、この発明の対話技術によれば、ユーザの発話の内容に関わらず、必ず対話が成立しやすい発話を行うため、ユーザに与える不快感を低減することができ、ユーザは対話装置との対話を長く続けることができるようになる。
【００７８】
以上、この発明の実施の形態について説明したが、具体的な構成は、これらの実施の形態に限られるものではなく、この発明の趣旨を逸脱しない範囲で適宜設計の変更等があっても、この発明に含まれることはいうまでもない。実施の形態において説明した各種の処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
【００７９】
［プログラム、記録媒体］
上記実施形態で説明した対話装置における各種の処理機能をコンピュータによって実現する場合、対話装置が有すべき機能の処理内容はプログラムによって記述される。また、上記変形例で説明した対話システムにおける各種の処理機能をコンピュータによって実現する場合、対話システムが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記対話装置および対話システムにおける各種の処理機能がコンピュータ上で実現される。
【００８０】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【００８１】
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【００８２】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記憶装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００８３】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【図１】
0006719740.tif 000002
【図２】
0006719740.tif 000003
【図３】
0006719740.tif 000004