(57)【要約】      （修正有）【課題】ユーザとロボットとの会話に使用されるデータベースの情報量を増加させ、会話の品質を高める。【解決手段】ロボットは、ユーザの発話を集音するマイクと、発話を通じてサーバに送信し応答を受信する送受信手段と、応答をロボットの発話として編集して音声信号を生成する音声編集手段と、編集音声信号を出力するスピーカとを有する。サーバは、ロボットの信号の送受信を管理する接続管理手段と、会話に用いられる問いおよび回答の集合を保存する会話データベースと、ユーザの発話に対する応答を会話データベースを参照して生成し、ロボットに送信する会話エンジン有する。ユーザの発話に対する応答を生成できない場合、発話を他のユーザの一つ以上のロボットに送信し、受信した発話に対する応答をロボットに送信する送受信手段と、他のユーザのロボットから送られてきた応答を発話に対する応答として会話データベースに登録する応答収集手段とを有する。【選択図】図１
2017191531.tif 000002
【特許請求の範囲】
【請求項１】
コミュニケーションシステムであって、
ユーザ側に設置される複数のロボットと、サーバとを有し、
前記ロボットは、
ユーザの発話を集音するマイクと、
前記マイクで集音されたユーザの発話を、ネットワークを通じて前記サーバに送信し、前記ネットワークを通じて送られてくる、前記ユーザの発話に対する応答を受信する送受信手段と、
前記ユーザの発話に対する応答を、前記ロボットの発話として編集して、編集音声信号を生成する音声編集手段と、
前記編集音声信号を出力する少なくとも一以上のスピーカと、
を有し、
前記サーバは、
前記ロボットの信号の送受信を管理する接続管理手段と、
会話に用いられる問いおよび回答の集合を保存する会話データベースと、
前記ユーザの発話に対する応答を、前記会話データベースを参照して検索又は生成し、前記接続管理手段を介して前記ロボットに送信する会話エンジンと、
前記会話エンジンが前記ユーザの発話に対する応答を検索又は生成できない場合、前記接続管理手段を介して、前記ユーザの発話を前記ユーザ以外の他のユーザの少なくとも一つ以上のロボットに送信し、前記他のユーザのロボットから送られてきた前記ユーザの発話に対する応答を、前記ユーザのロボットに送信する送受信手段と、
前記他のユーザのロボットから送られてきた前記ユーザの発話に対する応答を、前記ユーザの発話に対する応答として、前記会話データベースに登録する応答収集手段と
を有するコミュニケーションシステム。
【請求項２】
前記ロボットは、
前記他のユーザのロボットから送られてきた前記ユーザの発話に対する応答の出力時のユーザを撮影するカメラと、
前記カメラで撮影されたユーザ画像を、前記サーバに送信する手段と
を有し、
前記サーバの応答収集手段は、
前記ユーザ画像に基づいて、前記ユーザの発話に対する応答に対する反応を評価し、その評価と前記ユーザの発話に対する応答とを関連付けて、前記会話データベースに登録する
請求項１に記載のコミュニケーションシステム。
【請求項３】
前記サーバは、
会話の禁止用語が格納された禁止用語データベースと、
前記禁止用語データベースを参照し、前記他のユーザのロボットから送られてきた前記ユーザの発話に対する応答が禁止用語を含むか否かを判断し、禁止用語を含む場合に、前記ユーザの発話に対する応答を削除、または、一部を変換するフィルタリング手段と
を有する請求項１又は請求項２に記載のコミュニケーションシステム。
【請求項４】
前記サーバは、
前記ロボットを所有するユーザの属性情報を記憶したユーザ属性情報データベースと、
前記ユーザ属性情報データベースを参照し、ユーザの属性情報に基づいてユーザのマッチングを行い、マッチングしたユーザに対応するロボット間で接続を確立するマッチング制御手段と
を有する請求項１から請求項３のいずれかに記載のコミュニケーションシステム。
【請求項５】
ユーザ側に設置される複数のロボットの信号の送受信を管理する接続管理手段と、
会話に用いられる問いおよび回答の集合を保存する会話データベースと、
前記ユーザの発話に対する応答を、前記会話データベースを参照して検索又は生成し、前記接続管理手段を介して前記ロボットに送信する会話エンジンと、
前記会話エンジンが前記ユーザの発話に対する応答を検索又は生成できない場合、前記接続管理手段を介して、前記ユーザの発話を前記ユーザ以外の他のユーザの少なくとも一つ以上のロボットに送信し、前記他のユーザのロボットから送られてきた前記ユーザの発話に対する応答を、前記ユーザのロボットに送信する送受信手段と、
前記他のユーザのロボットから送られてきた前記ユーザの発話に対する応答を、前記ユーザの発話に対する応答として、前記会話データベースに登録する応答収集手段と
を有するサーバ。
【請求項６】
前記サーバは、
会話の禁止用語が格納された禁止用語データベースと、
前記禁止用語データベースを参照し、前記他のユーザのロボットから送られてきた前記ユーザの発話に対する応答が禁止用語を含むか否かを判断し、禁止用語を含む場合に、前記ユーザの発話に対する応答を削除、または、一部を変換するフィルタリング手段と
を有する請求項５に記載のサーバ。
【請求項７】
前記サーバは、
前記ロボットを所有するユーザの属性情報を記憶したユーザ属性情報データベースと、
前記ユーザ属性情報データベースを参照し、ユーザの属性情報に基づいてユーザのマッチングを行い、マッチングしたユーザに対応するロボット間で接続を確立するマッチング制御手段と
を有する請求項５又は請求項６に記載のコミュニケーションシステム。
【請求項８】
サーバであって、
ユーザ側に設置される複数のロボットの信号の送受信を管理する接続管理手段と、
前記接続管理手段を介して、前記ユーザの発話を前記ユーザ以外の他のユーザの少なくとも一つ以上のロボットに送信し、前記他のユーザのロボットから送られてきた前記ユーザの発話に対する応答を、前記ユーザのロボットに送信する送受信手段と、
前記ユーザの発話に対する応答の出力時のユーザを撮影したユーザ画像を受信する手段と、
前記ユーザ画像に基づいて、前記ユーザの発話に対する応答に対する反応を評価する評価手段と、
前記評価と、前記ユーザの発話と、前記ユーザの発話に対する応答とを関連付けて、会話データベースに登録する応答収集手段と
を有するサーバ。
【請求項９】
ユーザ側に設置される第１のロボットは、ユーザの発話を集音し、集音されたユーザの発話を、ネットワークを通じてサーバに送信し、
前記サーバは、前記ユーザの発話を受信し、前記ユーザの発話に対する応答を、会話データベースを参照して検索又は生成し、前記第１のロボットに送信し、
前記サーバは、前記ユーザの発話を受信し、前記ユーザの発話に対する応答を、会話データベースを参照して検索又は生成できない場合、前記ユーザの発話を前記ユーザ以外の他のユーザの少なくとも一つ以上の第２のロボットに送信し、
前記サーバは、第２のロボットから送信された前記ユーザの発話に対する応答を受信し、前記第１のロボットに送信し、
前記サーバは、前記第２のロボットから送信された前記ユーザの発話に対する応答を、前記ユーザの発話に対する応答として、会話データベースに登録し、
前記第１のロボットは、前記ユーザの発話に対する応答を受信し、前記ユーザの発話に対する応答を、前記ロボットの発話として編集して出力する
コミュニケーション方法。
【請求項１０】
前記第１のロボットは、前記ユーザの発話に対する応答の出力時のユーザを撮影し、前記撮影されたユーザ画像を、前記サーバに送信し、
前記サーバは、前記ユーザ画像に基づいて、前記ユーザの発話に対する応答に対する反応を評価し、その評価と前記ユーザの発話に対する応答とを関連付けて、前記会話データベースに登録する
請求項９に記載のコミュニケーション方法。
【請求項１１】
前記サーバは、禁止用語データベースを参照し、第２のロボットから送信された前記ユーザの発話に対する応答に禁止用語が含まれているか否かを判断し、禁止用語を含む場合に、前記ユーザの発話に対する応答を削除、または、一部を変換する
請求項９又は請求項１０に記載のコミュニケーション方法。
【請求項１２】
ユーザ側に設置される第１のロボットは、ユーザの発話を集音し、集音されたユーザの発話を、ネットワークを通じてサーバに送信し、
前記サーバは、前記ユーザの発話を受信し、前記ユーザの発話を前記ユーザ以外の他のユーザの少なくとも一つ以上の第２のロボットに送信し、
前記サーバは、第２のロボットから送信された前記ユーザの発話に対する応答を受信し、前記第１のロボットに送信し、
前記第１のロボットは、受信したユーザの発話に対する応答を出力し、
前記第１のロボットは、前記ユーザの発話に対する応答の出力時のユーザを撮影し、ユーザ画像を前記サーバに送信し、
前記サーバは、前記ユーザ画像に基づいて、前記ユーザの発話に対する応答に対する反応を評価し、
前記サーバは、前記評価と、前記ユーザの発話と、前記ユーザの発話に対する応答とを関連付けて、会話データベースに登録する
コミュニケーション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コミュニケーションシステム、サーバ及びコミュニケーション方法に関する。
【背景技術】
【０００２】
近年、人とロボット（例えば、人型ロボット）との対話を成立させるコミュニケーションシステムが提案されている。
【０００３】
その一つは、タスク指向型とよばれるもので、特定のタスクをロボットに行わせるための対話システムである。例えば「今日の天気を教えて」といった、ユーザである人の発話（命令）に対して、ロボットは今日の天気予報を音声で伝える。これらの命令と回答のセットは、予め一意に辞書に登録されている。
【０００４】
もう一つは、雑談型と呼ばれるもので、ロボットに特有のタスクをさせるというより、ユーザがロボットとの会話を楽しむためのシステムである（非特許文献１）。これはchatbot（人工無能）対話システムを応用している。このchatbot対話システムは、ユーザと日常会話を行なうためのシステムであり、大きく分けて、辞書型（シナリオ型）、ログ型、マルコフ文生成型（テキスト生成型）等がある。その基本は所定の対話パターンをデータベース化しておき、対話時の入力内容に応じて相応しい応答内容を検索し、それをシステム側から出力する点にある。例えば、対話システムに対してユーザが「何が好きですか？」とキーボードやマイク等を通じて入力すると、システム側は「何−が−好き−です−か？」といった単語列に最も合致する応答データを検索する。データベースには予め入力例とそれに対応する応答文とが大量に格納されている。対話システムは検索結果によって選ばれた応答文を取り出し、それをスピーカやモニターを介してユーザに対して出力する。データベース中の応答内容の格納方法を工夫することで、ユーザの入力の一部を応答文に挿入することもできる。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】[Valerie] Valerie Web Site : http://www.roboceptionist.com/
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、現在の所、辞書型（シナリオ型）、ログ型、マルコフ文生成型（テキスト生成型）等のいずれの方法も完全とはいえず、人間とロボットとの会話が成立しない場合が多々ある。これは、雑談エンジンが参照するデータベースの情報量が少ないためであり、その情報量を増やすために、多くの手間がかかっていた。
【０００７】
一方、ロボットのユーザは、ロボットとの間で、ある程度完成されたコミュニケーションを望んでいる。
【０００８】
そこで、本発明は上記課題に鑑みて発明されたものであって、その目的はユーザとロボットとの間で行われる会話を行うために使用される会話のデータベースの情報量を手間なく増加させると共に、ユーザとロボットとの間の会話の品質を高めることができるコミュニケーションシステム、サーバ及びコミュニケーション方法を提供することにある。
【課題を解決するための手段】
【０００９】
本発明の一態様は、コミュニケーションシステムであって、ユーザ側に設置される複数のロボットと、サーバとを有し、前記ロボットは、ユーザの発話を集音するマイクと、前記マイクで集音されたユーザの発話を、ネットワークを通じて前記サーバに送信し、前記ネットワークを通じて送られてくる、前記ユーザの発話に対する応答を受信する送受信手段と、前記ユーザの発話に対する応答を、前記ロボットの発話として編集して、編集音声信号を生成する音声編集手段と、前記編集音声信号を出力する少なくとも一以上のスピーカと、を有し、前記サーバは、前記ロボットの信号の送受信を管理する接続管理手段と、会話に用いられる問いおよび回答の集合を保存する会話データベースと、前記ユーザの発話に対する応答を、前記会話データベースを参照して検索又は生成し、前記接続管理手段を介して前記ロボットに送信する会話エンジンと、前記会話エンジンが前記ユーザの発話に対する応答を検索又は生成できない場合、前記接続管理手段を介して、前記ユーザの発話を前記ユーザ以外の他のユーザの少なくとも一つ以上のロボットに送信し、前記他のユーザのロボットから送られてきた前記ユーザの発話に対する応答を、前記ユーザのロボットに送信する送受信手段と、前記他のユーザのロボットから送られてきた前記ユーザの発話に対する応答を、前記ユーザの発話に対する応答として、前記会話データベースに登録する応答収集手段とを有するコミュニケーションシステムである。
【００１０】
本発明の一態様は、ユーザ側に設置される複数のロボットの信号の送受信を管理する接続管理手段と、会話に用いられる問いおよび回答の集合を保存する会話データベースと、前記ユーザの発話に対する応答を、前記会話データベースを参照して検索又は生成し、前記接続管理手段を介して前記ロボットに送信する会話エンジンと、前記会話エンジンが前記ユーザの発話に対する応答を検索又は生成できない場合、前記接続管理手段を介して、前記ユーザの発話を前記ユーザ以外の他のユーザの少なくとも一つ以上のロボットに送信し、前記他のユーザのロボットから送られてきた前記ユーザの発話に対する応答を、前記ユーザのロボットに送信する送受信手段と、前記他のユーザのロボットから送られてきた前記ユーザの発話に対する応答を、前記ユーザの発話に対する応答として、前記会話データベースに登録する応答収集手段とを有するサーバである。
【００１１】
本発明の一態様は、サーバであって、ユーザ側に設置される複数のロボットの信号の送受信を管理する接続管理手段と、前記接続管理手段を介して、前記ユーザの発話を前記ユーザ以外の他のユーザの少なくとも一つ以上のロボットに送信し、前記他のユーザのロボットから送られてきた前記ユーザの発話に対する応答を、前記ユーザのロボットに送信する送受信手段と、前記ユーザの発話に対する応答の出力時のユーザを撮影したユーザ画像を受信する手段と、前記ユーザ画像に基づいて、前記ユーザの発話に対する応答に対する反応を評価する評価手段と、前記評価と、前記ユーザの発話と、前記ユーザの発話に対する応答とを関連付けて、会話データベースに登録する応答収集手段とを有するサーバである。
【００１２】
本発明は、ユーザ側に設置される第１のロボットは、ユーザの発話を集音し、集音されたユーザの発話を、ネットワークを通じてサーバに送信し、前記サーバは、前記ユーザの発話を受信し、前記ユーザの発話に対する応答を、会話データベースを参照して検索又は生成し、前記第１のロボットに送信し、前記サーバは、前記ユーザの発話を受信し、前記ユーザの発話に対する応答を、会話データベースを参照して検索又は生成できない場合、前記ユーザの発話を前記ユーザ以外の他のユーザの少なくとも一つ以上の第２のロボットに送信し、前記サーバは、第２のロボットから送信された前記ユーザの発話に対する応答を受信し、前記第１のロボットに送信し、前記サーバは、前記第２のロボットから送信された前記ユーザの発話に対する応答を、前記ユーザの発話に対する応答として、会話データベースに登録し、前記第１のロボットは、前記ユーザの発話に対する応答を受信し、前記ユーザの発話に対する応答を、前記ロボットの発話として編集して出力するコミュニケーション方法である。
【００１３】
本発明の一態様は、ユーザ側に設置される第１のロボットは、ユーザの発話を集音し、集音されたユーザの発話を、ネットワークを通じてサーバに送信し、前記サーバは、前記ユーザの発話を受信し、前記ユーザの発話を前記ユーザ以外の他のユーザの少なくとも一つ以上の第２のロボットに送信し、前記サーバは、第２のロボットから送信された前記ユーザの発話に対する応答を受信し、前記第１のロボットに送信し、前記第１のロボットは、受信したユーザの発話に対する応答を出力し、前記第１のロボットは、前記ユーザの発話に対する応答の出力時のユーザを撮影し、ユーザ画像を前記サーバに送信し、前記サーバは、前記ユーザ画像に基づいて、前記ユーザの発話に対する応答に対する反応を評価し、前記サーバは、前記評価と、前記ユーザの発話と、前記ユーザの発話に対する応答とを関連付けて、会話データベースに登録するコミュニケーション方法である。
【発明の効果】
【００１４】
本発明は、ユーザとロボットとの間で行われる会話を行うために使用される会話のデータベースの情報量を手間なく増加させると共に、ユーザとロボットとの間の会話の品質を高めることができる。
【図面の簡単な説明】
【００１５】
【図１】図１は本発明の第１の実施の形態に係るコミュニケーションロボットシステムを模式的に示した図である。
【図２】図２は通常のユーザとロボットとの会話の動作を説明するための図である。
【図３】図３は発話に対する応答である発話を、会話エンジンにより検索又は生成することができない場合の動作を説明するための図である。
【図４】図４は第１の実施の形態におけるロボット１の構成を示すブロック図である。
【図５】図５は第１の実施の形態におけるサーバ３のブロック図である。
【図６】図６は接続管理データベース３２の一例を示す図である。
【図７】図７は接続管理データベース３２の他の一例を示す図である。
【図８】図８は本発明の第２の実施の形態に係るコミュニケーションロボットシステムを模式的に示した図である。
【図９】図９は本発明の第２の実施の形態に係るロボット１のブロック図である。
【図１０】図１０は本発明の第２の実施の形態に係るサーバ３のブロック図である。
【発明を実施するための形態】
【００１６】
＜第１の実施の形態＞
本発明の第１の実施の形態を説明する。
【００１７】
図１は、本発明の第１の実施の形態に係るコミュニケーションロボットシステムを模式的に示した図である。
【００１８】
図１中、１はユーザＡ側に設置されるロボットであり、２はユーザＢ側に設置されるロボットであり、３はロボット１とロボット２とに接続されるサーバである。
【００１９】
本発明の第１の実施の形態に係るコミュニケーションロボットシステムの概略を説明する。
【００２０】
サーバ３は、各ロボット１，２とのデータの送受信を行うための接続管理と、ユーザとロボット１、２との会話を行うための会話エンジンの機能とを備える。
【００２１】
まず、通常のユーザとロボットとの会話を説明する。図２は、通常のユーザとロボットとの会話の動作を説明するための図である。
【００２２】
ユーザＡが発話Ｘを行うと、ロボット１は発話Ｘを集音し、その発話Ｘの音声信号をサーバ３に送信する。発話Ｘの音声信号を受信したサーバ３は、発話Ｘに対する応答である発話Ｙを、会話エンジンにより検索又は生成し、発話Ｙをロボット１に送信する。発話Ｙを受信したロボット１は、ロボット１の発話として、発話Ｙを出力する。これにより、ユーザＡとロボット１との会話が成立する。
【００２３】
次に、発話に対する応答である発話を、会話エンジンにより検索又は生成することができない場合について説明する。図３は、発話に対する応答である発話を、会話エンジンにより検索又は生成することができない場合の動作を説明するための図である。
【００２４】
ユーザＡが発話Ｍを行うと、ロボット１は発話Ｍを集音し、その発話Ｍの音声信号をサーバ３に送信する。発話Ｍの音声信号を受信したサーバ３は、会話エンジンにより、発話Ｍに対する応答である発話を検索又は生成することを試みる。しかし、その発話を検索又は生成することができない場合、サーバ３に、接続可能又は接続中のロボット（図３ではロボット２）に、発話Ｍを送信する。
【００２５】
発話Ｍを受信したロボット２は、ロボット２の発話として、発話Ｍを出力する。ロボット２の発話Ｍを聞いたユーザＢは、発話Ｍの応答として発話Ｎを発する。ユーザＢが発話Ｎを行うと、ロボット２は発話Ｎを集音し、その発話Ｎの音声信号をサーバ３に送信する。
【００２６】
発話Ｎの音声信号を受信したサーバ３は、発話Ｎをロボット１に送信する。発話Ｎを受信したロボット１は、ロボット１の発話として、発話Ｎを出力する。これにより、ユーザＡとロボット１との会話が成立する。
【００２７】
また、発話Ｍに対する応答である発話を検索又は生成することができなかったサーバ３は、発話Ｍに対する応答として、発話Ｎを会話ログとして記録する。
【００２８】
このような構成にすることにより、現状の会話エンジンだけではカバーできない発話があったとしても対処することができるとともに、会話ログを自動で収集していくので、高品質の会話エンジンを生成することができる。
【００２９】
以下、具体的な実施の形態を説明する。
【００３０】
図４は第１の実施の形態におけるロボットの構成を示すブロック図である。尚、ロボット１とロボット２とは、同様のものなので、ロボット１を例にしてロボットの構成を説明する。
【００３１】
図４に示す如く、ロボット１は、マイク１１と、音声編集部１２と、スピーカ１３と、制御部１４とを有する。
【００３２】
マイク１１は、ユーザＡの音声を集音するマイクである。
【００３３】
音声編集部１２は、ネットワークを通じてサーバ３から送られてくるユーザＢの音声信号を、ロボット１の発話として編集して、編集音声信号を生成するものである。ここで、ユーザＢの音声信号をロボット１の発話として編集するとは、ユーザＢの音声信号に対して、ユーザＢの音声（音色や声色）をロボット１の音声（音色や声色）に編集（変換）するものである。例えば、男性又は女性のユーザの音声を、ロボット特有の中性の音声に編集（変換）したり、ユーザのカスタマイズによるロボットの音声に編集（変換）したりする。
【００３４】
スピーカ１３は、音声編集部１２により編集（変換）された編集音声信号を出力する少なくとも一以上のスピーカである。
【００３５】
次に、サーバ３を説明する。
【００３６】
図５は第１の実施の形態におけるサーバ３のブロック図である。
【００３７】
サーバ３は、ロボット間接続管理部３１と、接続管理データベース３２、音声認識部３３と、会話エンジン３４と、会話ログデータベース３５と、会話ログ収集部３６とを備える。
【００３８】
接続管理データベース３２は、図６に示す如く、ロボット識別情報（ＩＤ）と、接続状況（接続中又は切断中）と、接続先のロボット識別情報（ＩＤ）とが関連付けられて記憶される。ここで、ロボット識別情報（ＩＤ）は、サーバ３と接続され、会話エンジン又は他のロボットを用いてユーザの発話に対する応答の発話を返すべきロボットの識別情報である。接続状況は、サーバ３と現在接続状態にあるかを示す情報である。接続先のロボット識別情報（ＩＤ）とは、会話エンジンを用いてユーザの発話に対する応答の発話を生成することができない場合、ユーザの発話を発言させるロボットの識別情報である。
【００３９】
ロボット間接続管理部３１は、接続管理データベース３２を用いて、ロボット間、本例では、ロボット１とロボット２との接続を管理する。
【００４０】
具体的には、ユーザの発話に対する応答の要求がロボットからあった場合、そのロボットと接続を確立し、接続管理データベース３２の接続状況を接続中にする。
【００４１】
また、会話エンジンを用いてユーザの発話に対する応答の発話を生成することができない場合、現在接続されていない（切断中）のロボット中から、ユーザの発話を発言させるロボットを検索する。このとき、図７に示すように、接続管理データベース３２にユーザ属性情報を記憶させておけば、そのユーザ属性に基づいて、ユーザの発話を発言させるロボットを検索するようにしても良い。ここで、ユーザ属性情報とは、ロボットを所有するユーザの年齢、性別、住所、趣味等である。
【００４２】
例えば、接続管理データベース３２のユーザ属性情報に基づいて、応答を求めているユーザが２０代の女性である場合、２０代の女性で、かつ、切断中のロボット識別情報を検索し、それに対応するロボットとの接続を確立する。
【００４３】
音声認識部３３は、ロボット１から送信されてきた音声信号を、従来からある音声認識の技術を用いてテキスト化する。
【００４４】
会話エンジン３４は、例えば、ログ型の会話エンジンである。会話エンジン３４は、音声認識部３３から渡されるテキストデータを分析し、その内容に応じて会話ログデータベース３５を検索し、応答に適した発話（コンテンツ）を選択する。そして、選択した発話（コンテンツ）を、ロボット間接続管理部３１を介してロボット１に送信する。一方、会話エンジン３４は、音声認識部３３から渡されるテキストデータを分析してその内容に応じて会話ログデータベース３５を検索した結果、応答に適した発話（コンテンツ）が無い場合、その結果を会話ログ収集部３６に送信する。
【００４５】
会話ログ収集部３６は、会話エンジン３４の結果を受けて、音声認識部３３から渡されるテキストデータに対応する音声信号を、ロボット間接続管理部３１に送信する。また、会話ログ収集部３６は、会話エンジン３４で応答に適した発話（コンテンツ）の代わりに応答したロボットからの発話を収集し、その発話の内容をテキスト化して会話ログデータベース３５に登録する。
【００４６】
次に、本実施の形態の具体的な動作を説明する。
【００４７】
まず、ユーザＡは、ロボット１に向かって話しかける。そのユーザＡの音声はマイク１１で集音され、その音声信号がサーバ３に送信される。例えば、ユーザＡが「アップルパイを作って食べるよ。」と話しかけると、「アップルパイを作って食べるよ。」の音声信号がサーバ３に送信される。
【００４８】
「アップルパイを作って食べるよ。」の音声信号を受信したサーバ３の音声認識部３３は、ロボット１から送信されてきた音声信号を、音声認識の技術を用いてテキスト化する。そして、テキスト化されたテキストデータを、会話エンジン３４に送信する。
【００４９】
会話エンジン３４は、音声認識部３３から渡されるテキストデータ「アップルパイを作って食べるよ。」を分析し、その内容に応じて会話ログデータベース３５を検索し、応答に適した発話（コンテンツ）を選択する。ここでは、応答に適した発話（コンテンツ）として、「いいね。食べたい。」が選択されたものとすると、この「いいね。食べたい。」を、ロボット間接続管理部３１を介してロボット１に送信する。
【００５０】
ロボット１では、音声編集部１２により、受信した「いいね。食べたい。」の音声信号を、ロボット１の発話として編集して、編集音声信号を生成する。そして、ロボット１の特有の音声で、「いいね。食べたい。」が出力される。
【００５１】
次に、ユーザＡは、ロボット１が発した音声に返答して、ロボット１に向かって話しかける。そのユーザＡの音声はマイク１１で集音され、その音声信号がサーバ３に送信される。例えば、ユーザＡが「いいね。食べたい。」に対して、「あ。パイ生地買い忘れた。」と返答した場合、「あ。パイ生地買い忘れた。」の音声信号がサーバ３に送信される。
【００５２】
「あ。パイ生地買い忘れた。」の音声信号を受信したサーバ３の音声認識部３３は、ロボット１から送信されてきた音声信号を、音声認識の技術を用いてテキスト化する。そして、テキスト化されたテキストデータを、会話エンジン３４に送信する。
【００５３】
会話エンジン３４は、音声認識部３３から渡されるテキストデータ「あ。パイ生地買い忘れた。」を分析し、その内容に応じて会話ログデータベース３５を検索し、応答に適した発話（コンテンツ）を選択する。ここで、会話エンジン３４は応答に適した発話（コンテンツ）を検索できなかったものとすると、会話エンジン３４はその結果を、会話ログ収集部３６に送信する。
【００５４】
会話ログ収集部３６は、会話エンジン３４の結果を受けて、音声認識部３３から渡されるテキストデータに対応する音声信号を、ロボット間接続管理部３１に送信する。
【００５５】
ロボット間接続管理部３１は、現在接続されていない（切断中）のロボット中から、ユーザの発話を発言させるロボットを、接続管理データベース３２のユーザ属性情報に基づいて検索する。そして、ここでは、ロボットＢが選択されたものとし、サーバ３のロボット間接続管理部３１は、テキストデータ「あ。パイ生地買い忘れた。」を、ロボット２に送信する。
【００５６】
ロボット２では、音声編集部１２により、受信した音声信号をロボット２の発話として編集して、編集音声信号を生成する。例えば、受信した「あ。パイ生地買い忘れた。」のテキストデータを、ロボット２の発話として編集して、編集音声信号を生成する。そして、編集音声信号は、スピーカ１３から出力される。例えば、ロボット２の特有の音声で、「あ。パイ生地買い忘れた。」が出力される。
【００５７】
ユーザＢは、ロボット２が発した音声に返答して、ロボット２に向かって話しかける。そのユーザＢの音声はマイク１１で集音され、その音声信号がサーバ３に送信される。例えば、ユーザＢが「あ。パイ生地買い忘れた。」に対して、「残念。今度ね。」と返答した場合、「残念。今度ね。」の音声信号がサーバ３に送信される。
【００５８】
サーバ３では、ユーザＢが返答した「残念。今度ね。」を受信し、ロボット１に送信する。
【００５９】
ロボット１では、音声編集部１２により、受信した音声信号をロボット１の発話として編集して、編集音声信号を生成する。例えば、受信した「残念。今度ね。」の音声信号を、ロボット１の発話として編集して、編集音声信号を生成する。そして、ロボット１の特有の音声で、「残念。今度ね。」が、スピーカ１３から出力される。
【００６０】
また、サーバ３の会話ログ収集部３６では、ユーザＢが発した「あ。パイ生地買い忘れた。」に対する返答として「残念。今度ね。」を、会話ログデータベース３５に登録する。
【００６１】
このように、ユーザの発話に対する応答がデータベースに登録されていない場合であっても、その応答を他のロボットから取得するように構成しているので、会話が途切れることなく行える。更に、多くの自然なやり取りの会話ログが収集でき、収集した会話ログは、ログ型の会話エンジンなどのデータに用いることができるので、高品質な会話エンジンを構築できる。
【００６２】
尚、会話エンジンが応答に適した発話（コンテンツ）を検索又は生成できず、他のロボットからその応答を取得する場合、他のロボットのユーザが会話に不適切な発話（以下、禁止用語と記載する）をしてしまう場合もある。
【００６３】
このような場合を防ぐため、サーバ３は、上記の構成に加えて、禁止用語をフィルタリングするフィルタリング部と、禁止用語群が格納された禁止用語データベースとを備えるようにしても良い。
【００６４】
フィルタリング部は、禁止用語データベースを参照し、ユーザの発話に対する応答の発話に禁止用語が含まれているかを判断し、含まれている場合にはユーザの該当する音声を削除、または、その該当する音声を他の用語に変換する。そして、削除、変換された音声を、通信先のロボットに転送する。
【００６５】
このようにすることにより、会話中に不適切な言葉が発せられた場合であっても、会話の相手に、不快な思いをさせることがない。
【００６６】
＜第２の実施の形態＞
本発明の第２の実施の形態を説明する。
【００６７】
第２の実施の形態は、会話エンジンがある発話の応答に適した発話（コンテンツ）が無い場合、その発話を複数のロボットに送信し、そのロボットに発話させる。そして、複数の応答を収集し、複数の応答を、その応答の元となる発話を集音したロボットに発話させ、ユーザの反応により適したログを収集する例である。
【００６８】
第２の実施の形態の概略を説明する。
【００６９】
図８は、本発明の第２の実施の形態に係るコミュニケーションロボットシステムを模式的に示した図である。
【００７０】
第２の実施の形態の概略を説明すると、ユーザＡが発話Ｍを行うと、ロボット１は発話Ｍを集音し、その発話Ｍの音声信号をサーバ３に送信する。発話Ｍの音声信号を受信したサーバ３は、会話エンジンにより、発話Ｍに対する応答である発話を検索又は生成することを試みる。しかし、その発話Ｍを検索又は生成することができない場合、サーバ３に接続している複数のロボット（図３ではロボット２、４）に、発話Ｍを送信する。
【００７１】
発話Ｍを受信したロボット２、４は、ロボット２、４の発話として、発話Ｍを出力する。
【００７２】
ロボット２の発話Ｍを聞いたユーザＢは、発話Ｍの応答として発話Ｎを発する。ユーザＢが発話Ｎを行うと、ロボット２は発話Ｎを集音し、その発話Ｎの音声信号をサーバ３に送信する。ロボット４の発話Ｍを聞いたユーザＣは、発話Ｍの応答として発話Ｏを発する。ユーザＣが発話Ｏを行うと、ロボット４は発話Ｏを集音し、その発話Ｏの音声信号をサーバ３に送信する。
【００７３】
発話Ｎ及び発話Ｏの音声信号を受信したサーバ３は、まず、発話Ｎをロボット１に送信する。
【００７４】
発話Ｎを受信したロボット１は、ロボット１の発話として、発話Ｎを出力する。このとき、ロボット１は、発話Ｎを聞いた時のユーザＡの表情等の画像を撮影する。そして、ロボット１は、発話Ｎを聞いた時のユーザＡの表情等の画像を、サーバ３に送信する。
【００７５】
続いて、サーバ３は、発話Ｏをロボット１に送信する。
【００７６】
発話Ｏを受信したロボット１は、ロボット１の発話として、発話Ｏを出力する。このとき、ロボット１は、発話Ｏを聞いた時のユーザＡの表情等の画像を撮影する。そして、ロボット１は、発話Ｏを聞いた時のユーザＡの表情等の画像を、サーバ３に送信する。
【００７７】
サーバ３は、発話Ｎを聞いた時のユーザＡの表情等の画像と、発話Ｏを聞いた時のユーザＡの表情等の画像とを解析し、いずれの発話（応答）の方がユーザＡの反応（リアクション）が良いかを評価する。そして、発話Ｍに対する応答の会話ログとして、発話Ｎ及び発話Ｏとその評価結果とを記録する。
【００７８】
ある発話に対する返答としての応答を複数記録し、各応答の発話に対する評価を記録することにより、会話エンジンが、よりユーザが好ましい発話を選択することができる。
【００７９】
以下、具体的な構成について説明する。
【００８０】
ロボット１は、図９に示すように、第１の実施の形態の構成に加えて、ロボット１がユーザを撮影するカメラ１４を備えている。そして、ロボット１は、カメラ１４により、ロボット１の発話時に、発話を聞いたユーザを撮影し、この撮影したユーザ画像を、発話を識別する情報とともに、サーバ３に送信する。
【００８１】
サーバ３は、図１０に示す如く、第１の実施の形態の構成に加えて、評価部３７を備えている。そして、評価部３７は、サーバ３に送信されてくるユーザ画像に基づいて、ロボット１の発話時のユーザの反応（リアクション）を判断し、その発話に対するレイティングを付けて会話ログデータベース３５に登録する。
【００８２】
例えば、ロボット１が発話Ｍに対する応答として発話Ｎを出力した時に撮影されたユーザ画像に基づいてユーザの顔が無表情であると判断した場合、発話Ｎは発話Ｍに対する応答としては低い評価が与えられる。一方、ロボット１が発話Ｍに対する応答として発話Ｏを出力した時に撮影されたユーザ画像に基づいてユーザの顔が笑顔であると判断した場合、発話Ｏは発話Ｍに対する応答としては高い評価が与えられる。そして、これらの評価と共に、発話Ｎ及び発話Ｏが会話ログデータベース３５に登録される。
【００８３】
第２の実施の形態は、会話エンジンがユーザの発話の応答に適した発話（コンテンツ）が無い場合において、複数のロボットから収集した応答を、ユーザに対する返答として投げかけ、そのユーザの反応を評価するように構成されている。この構成により、ユーザの反応の良い応答を区別してデータベースに登録することができ、会話エンジンが応答を生成するときに参照することができ、会話エンジンの精度を高めることができる。
【００８４】
尚、上述した実施の形態では、各部をハードウェアで構成したが、上述した動作の処理を情報処理装置（ＣＰＵ）に行わせるプログラムによっても構成できる。
【００８５】
以上好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも上記実施の形態に限定されるものではなく、その技術的思想の範囲内において様々に変形し実施することが出来る。
【符号の説明】
【００８６】
１      ロボット
２      ロボット
３      サーバ
４      ロボット
１１    マイク
１２    音声編集部
１３    スピーカ
１４    カメラ
３１    ロボット間接続管理部
３２    接続管理データベース
３３    音声認識部
３４    会話エンジン
３５    会話ログデータベース
３６    会話ログ収集部
３７    評価部
【図１】
2017191531.tif 000003
【図２】
2017191531.tif 000004
【図３】
2017191531.tif 000005
【図４】
2017191531.tif 000006
【図５】
2017191531.tif 000007
【図６】
2017191531.tif 000008
【図７】
2017191531.tif 000009
【図８】
2017191531.tif 000010
【図９】
2017191531.tif 000011
【図１０】
2017191531.tif 000012