(57)【要約】【課題】音声によって人と対話する音声対話装置において、より精度よく親密度を算出する。【解決手段】音声によってユーザと対話する音声対話装置であって、ユーザが発した音声を取得および認識する音声入力手段と、前記ユーザとの間の親密度を算出する親密度算出手段と、前記親密度に基づいて、前記認識した音声に対する応答を生成する応答生成手段と、前記応答を音声によって出力する音声出力手段と、を有し、前記親密度算出手段は、前記ユーザが行った発話の内容に基づいて算出された第一の親密度と、前記ユーザとの過去の対話回数に基づいて算出された第二の親密度との合計値に基づいて、前記ユーザとの親密度を算出する。【選択図】図１
2018021953.tif 000002
【特許請求の範囲】
【請求項１】
音声によってユーザと対話する音声対話装置であって、
ユーザが発した音声を取得および認識する音声入力手段と、
前記ユーザとの間の親密度を算出する親密度算出手段と、
前記親密度に基づいて、前記認識した音声に対する応答を生成する応答生成手段と、
前記応答を音声によって出力する音声出力手段と、
を有し、
前記親密度算出手段は、前記ユーザが行った発話の内容に基づいて算出された第一の親密度と、前記ユーザとの過去の対話回数に基づいて算出された第二の親密度との合計値に基づいて、前記ユーザとの親密度を算出する、
音声対話装置。
【請求項２】
算出した前記親密度を記憶する記憶手段をさらに有し、
前記親密度算出手段は、前記ユーザから発話を受けた場合に、当該発話に起因する親密度の変動量を算出し、前記第一の親密度および前記第二の親密度を更新する、
請求項１に記載の音声対話装置。
【請求項３】
ユーザを識別するユーザ識別手段をさらに有し、
前記記憶手段は、ユーザごとに前記親密度を記憶する、
請求項２に記載の音声対話装置。
【請求項４】
前記親密度算出手段は、
前回ユーザと最後に接触してからの経過時間に基づいて、前記第一の親密度または前記第二の親密度の変動量を補正する、
請求項２または３に記載の音声対話装置。
【請求項５】
音声によってユーザと対話する音声対話装置が行う音声対話方法であって、
ユーザが発した音声を取得および認識する音声入力ステップと、
前記ユーザとの間の親密度を算出する親密度算出ステップと、
前記親密度に基づいて、前記認識した音声に対する応答を生成する応答生成ステップと、
前記応答を音声によって出力する音声出力ステップと、
を含み、
前記親密度算出ステップでは、前記ユーザが行った発話の内容に基づいて算出された第一の親密度と、前記ユーザとの過去の対話回数に基づいて算出された第二の親密度との合計値に基づいて、前記ユーザとの親密度を算出する、
音声対話方法。
【請求項６】
音声対話装置と、対話サーバと、からなる対話システムであって、
前記音声対話装置は、
ユーザが発した音声を取得し、前記音声を前記対話サーバに送信する音声入力手段と、
前記音声に対する応答を前記対話サーバから取得して音声によって出力する音声出力手段と、
を有し、
前記対話サーバは、
前記ユーザが発した音声を認識する音声認識手段と、
前記ユーザとの親密度を算出する親密度算出手段と、
前記親密度に基づいて、前記認識した音声に対する応答を生成し、前記音声対話装置に送信する応答生成手段と、
を有し、
前記親密度算出手段は、前記ユーザが行った発話の内容に基づいて算出された第一の親密度と、前記ユーザとの過去の対話回数に基づいて算出された第二の親密度とに基づいて、前記ユーザとの親密度を算出する、
対話システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声によって人と対話する装置に関する。
【背景技術】
【０００２】
近年、人と対話をすることによって様々な情報を提供するロボットが開発されている。特に、マイクによって入力された音声を処理し、入力に対する応答を音声で返すコミュニケーションロボットが多く開発されている。また、ロボットに擬似的な感情を持たせることで人間味のある対話を行わせる試みが行われている。
【０００３】
例えば、特許文献１に記載のロボットは、インタラクションを受けた回数や総時間に基づいて親密度を算出し、算出した親密度に基づいてユーザに対する応答を変化させるという特徴を持っている。また、特許文献２に記載のロボットは、ユーザがロボットに対して行った発話の内容に基づいて親密度を決定し、適切な応答を返すという特徴を持っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−０９０１０９号公報
【特許文献２】特開２００１−１８８７７９号公報
【特許文献３】特開２０１３−２０６３８９号公報
【特許文献４】特開２０１３−１４２９１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
一般的に、人間同士がコミュニケーションを行う場合、相手に対する親密度は、過去にどのような接触があったかによって大きく変化する。しかし、従来技術に係る対話型ロボットでは、限られた要素でしか親密度を算出していないため、より人間味のある応答を生成するという点において課題があった。
【０００６】
本発明は上記の課題を考慮してなされたものであり、音声によって人と対話する音声対話装置において、より精度よく親密度を算出することを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る音声対話装置は、音声によってユーザと対話する音声対話装置であって、
ユーザが発した音声を取得および認識する音声入力手段と、前記ユーザとの間の親密度を算出する親密度算出手段と、前記親密度に基づいて、前記認識した音声に対する応答を生成する応答生成手段と、前記応答を音声によって出力する音声出力手段と、を有し、前記親密度算出手段は、前記ユーザが行った発話の内容に基づいて算出された第一の親密度と、前記ユーザとの過去の対話回数に基づいて算出された第二の親密度との合計値に基づいて、前記ユーザとの親密度を算出することを特徴とする。
【０００８】
本発明に係る音声対話装置は、ユーザが装置に対して発した発話の内容に基づいて第一の親密度を算出し、また、ユーザとの過去の対話回数に基づいて第二の親密度を算出する。
第一の親密度は、最新の発話の内容のみに基づいて算出されたものであってもよいし、過去になされた発話の内容に基づいて算出されたものであってもよい。また、過去の発話の内容に基づいて算出された値を、最新の発話の内容に基づいて算出された値を用いて更
新してもよい。
また、第二の親密度は、ユーザが過去に装置に対して対話を行った回数に基づいて算出される。例えば、対話を行った回数そのものであってもよいし、所定の期間における対話頻度であってもよい。また、対話を行ってからの経過時間を用いて重み付けを行ってもよい。
かかる構成によると、対話の内容と対話の多さという二つの基準によって親密度を算出するため、より人間に近い親密度を算出することができる。
【０００９】
また、本発明に係る音声対話装置は、算出した前記親密度を記憶する記憶手段をさらに有し、前記親密度算出手段は、前記ユーザから発話を受けた場合に、当該発話に起因する親密度の変動量を算出し、前記第一の親密度および前記第二の親密度を更新することを特徴としてもよい。
【００１０】
親密度は、対話を行う都度算出してもよいが、過去に算出した値を記憶しておき、ユーザから発話を受けるごとに更新してもよい。すなわち、第一の親密度と第二の親密度それぞれについて変動量を算出し、各々を更新してもよい。
このように、記憶された親密度に対して、「最新の対話に起因した親密度の変動量」を適用して最新の親密度を算出することで、対話を行うごとに徐々に親密度が変動していくという効果を得ることができる。
【００１１】
また、本発明に係る音声対話装置は、ユーザを識別するユーザ識別手段をさらに有し、前記記憶手段は、ユーザごとに前記親密度を記憶することを特徴としてもよい。
【００１２】
ユーザ識別手段は、例えば音声や画像に基づいてユーザを識別してもよいし、ユーザから得られた入力に基づいて当該ユーザを識別してもよい。音声によってユーザを識別する場合、声紋などを利用してもよいし、画像によってユーザを識別する場合、顔画像から抽出した特徴量などを利用してもよい。このように、ユーザごとに親密度を記憶させて利用することで、装置とユーザとの間の親密度をより正確に算出することができる。
【００１３】
また、前記親密度算出手段は、前回ユーザと最後に接触してからの経過時間に基づいて、前記第一の親密度または前記第二の親密度の変動量を補正することを特徴としてもよい。
【００１４】
実際のコミュニケーションにおいては、最後に接触してからの時間が長くなるほど親密度が減少する。そこで、ユーザと装置が最後に接触してからの時間に基づいて、算出した親密度の変動量を補正してもよい。例えば、最後に接触してからの時間が長くなるほど、親密度の変動量をマイナス方向に補正してもよい。これにより、より人間味のあるコミュニケーションが行えるようになる。
【００１５】
また、本発明に係る対話システムは、音声対話装置と、対話サーバと、からなる対話システムであって、前記音声対話装置は、ユーザが発した音声を取得し、前記音声を前記対話サーバに送信する音声入力手段と、前記音声に対する応答を前記対話サーバから取得して音声によって出力する音声出力手段と、を有し、前記対話サーバは、前記ユーザが発した音声を認識する音声認識手段と、前記ユーザとの親密度を算出する親密度算出手段と、前記親密度に基づいて、前記認識した音声に対する応答を生成し、前記音声対話装置に送信する応答生成手段と、を有し、前記親密度算出手段は、前記ユーザが行った発話の内容に基づいて算出された第一の親密度と、前記ユーザとの過去の対話回数に基づいて算出された第二の親密度とに基づいて、前記ユーザとの親密度を算出することを特徴とする。
【００１６】
なお、本発明は、上記手段の少なくとも一部を含む音声対話装置や対話システムとして
特定することができる。また、前記音声対話装置や対話システムが行う音声対話方法として特定することもできる。上記処理や手段は、技術的な矛盾が生じない限りにおいて、自由に組み合わせて実施することができる。
【発明の効果】
【００１７】
本発明によれば、音声によって人と対話する音声対話装置において、より精度よく親密度を算出することができる。
【図面の簡単な説明】
【００１８】
【図１】第一の実施形態に係るロボットのシステム構成図である。
【図２】第一の実施形態における親密度テーブルの例である。
【図３】ロボット１０が行う処理フローチャート図である。
【図４】第二の実施形態に係る対話システムのシステム構成図である。
【発明を実施するための形態】
【００１９】
（第一の実施形態）
以下、本発明の好ましい実施形態について図面を参照しながら説明する。
本実施形態に係るロボットは、ユーザが発した音声を取得して音声認識を行い、認識結果に基づいて応答文を生成して出力することでユーザとの対話を行う装置である。
【００２０】
<システム構成>
図１は、本実施形態に係るロボット１０のシステム構成図である。
ロボット１０は、外部から音声を取得する機能と、取得した音声を認識する機能と、当該音声に対する返答を取得する機能と、当該返答を音声によって出力する機能を有するロボットである。ロボット１０は、例えば、コミュニケーションロボットであるが、必ずしもキャラクターの形をしている必要はない。例えば、ロボットに組み込むことができる汎用のコンピュータであってもよい。
【００２１】
ロボット１０は、音声入出力部１１、音声認識部１２、親密度算出部１３、応答生成部１４、制御部１５から構成される。
【００２２】
音声入出力部１１は、音声を入出力する手段である。具体的には、不図示のマイクを用いて、音声を電気信号（以下、音声データ）に変換する。取得した音声データは、後述する音声認識部１２へ出力される。また、音声入出力部１１は、不図示のスピーカを用いて、制御部１５から送信された音声データを音声に変換する。
【００２３】
音声認識部１２は、音声入出力部１１が取得した音声に対して音声認識を行い、テキストに変換する手段である。音声認識は、既知の技術によって行うことができる。例えば、音声認識部１２には、音響モデルと認識辞書が記憶されており、取得した音声データと音響モデルとを比較して特徴を抽出し、抽出した特徴を認識辞書とをマッチングさせることで音声認識を行う。認識結果は、制御部１５へ送信される。
【００２４】
親密度算出部１３は、ロボット１０とユーザとの親密度を算出する手段である。親密度算出部１３は、ユーザごとの現在の親密度を表す値をテーブル形式（親密度テーブル）で記憶しており、ユーザから発話を受けた場合に、当該発話の内容と、記憶されたテーブルに基づいて親密度を算出する。算出された親密度は、後述する応答生成部１４へ送信され、応答の生成に供される。また、親密度算出部１３は、算出した親密度を用いて親密度テーブルを更新する。
【００２５】
図２は、親密度算出部１３が記憶する親密度テーブルの例である。親密度テーブルには
、ユーザから発せられた発話の内容に基づいて算出された親密度（以下、第一の親密度）と、ユーザとロボット１０との対話回数に基づいて算出された親密度（以下、第二の親密度）が、ユーザがロボット１０と最後に対話した日時および係数とともに記録されている。
第一および第二の親密度の算出方法と、最終対話日時、係数の詳細については後述する。
【００２６】
応答生成部１４は、音声認識部１２が出力したテキスト（すなわちユーザが行った発話の内容）に基づいて、ユーザへの返答となる文章（発話文）を生成する手段である。応答生成部１４は、例えば、予め記憶された対話シナリオ（対話辞書）に基づいて応答を生成してもよい。
また、応答生成部１４は、親密度算出部１３が算出した親密度を加味して応答の生成を行う。具体的には、例えば、親密度が低い場合は丁寧口調の文章を生成し、親密度が高くなると友達口調の文章を生成するなど、入力された親密度に応じて応答を生成する。このため、応答生成部１４には、親密度に応じた対話シナリオを持たせてもよい。
応答生成部１４が生成した返答は、制御部１５へテキスト形式で送信され、その後、合成音声によってユーザに向けて出力される。
【００２７】
制御部１５は、ロボット１０が行う音声対話全般を制御する手段である。具体的には、対話の相手（ユーザ）が存在することを検出して対話を開始する機能、ユーザの発話に対して音声認識を実行させる機能、応答文の生成を実行させる機能、取得した発話文を音声データに変換し、音声入出力部１１を介して出力する機能などを実行する。
【００２８】
ロボット１０は、ＣＰＵ、主記憶装置、補助記憶装置を有する情報処理装置として構成することができる。補助記憶装置に記憶されたプログラムが主記憶装置にロードされ、ＣＰＵによって実行されることで、図１に図示した各手段が機能する。なお、図示した機能の全部または一部は、専用に設計された回路を用いて実行されてもよい。
【００２９】
<親密度の算出方法>
次に、親密度の算出方法について説明する。親密度の算出は、ロボット１０がユーザから発話を受け取った場合に、親密度算出部１３によって行われる。なお、ここでは、図２に示したように、第一の親密度（対話内容に基づく親密度）の値が３０、第二の親密度（対話回数に基づく親密度）の値が２０であるユーザを例に説明を行う。親密度テーブルに記録されている親密度は、現時点における親密度（すなわち、最後に対話を行った際に算出された親密度）である。
【００３０】
（１）発話内容による親密度の変動量を取得
まず、親密度算出部１３が、ユーザが行った発話の内容に基づいて、第一の親密度の変動量（以下、変動量α）を算出する。変動量αは、今回のユーザの発話に起因して、親密度がどの程度変動するかを表す値である。変動量αの算出は、以下のような方法で行うことができる。
例えば、親密度算出部１３が、音声認識部１２から取得したテキストに対して形態素解析を行い、得られた形態素のそれぞれを、予め記憶された親密度辞書と比較する。親密度辞書は、親密度の増減量がキーワードごとに定義されたリストであり、ヒットしたキーワードに対応する親密度の増減量の総和を、第一の親密度の変動量αとする。なお、ユーザの発話に起因した親密度の変動量を算出することができれば、その算出方法は例示したものに限られない。本例では、α＝５という値が得られたものとする。
【００３１】
（２）経過時間による親密度の変動量を取得
次に、親密度算出部１３が、経過時間に基づく親密度の変動量を取得する。本例では、
ｔを前回対話時からの経過時間、ａを親密度テーブルに定義された係数とし、−ｔａ／２を時間の経過に伴う親密度の変動量（以下、変動量β）とする。すなわち、前回対話時からの時間が経過するほど、第一および第二の親密度が共に下がるようになっている。本例では、ｔ＝１０（時間）、ａ＝０．１とする。すなわち、時間の経過に伴う親密度の変動量βは、−ｔａ／２＝−０．５である。
【００３２】
（３）第一の親密度を算出
次に、親密度テーブルに記録されている第一の親密度に、前述したαおよびβを加算する。その後、得られた値によって、親密度テーブルに記録されている第一の親密度を更新する。本例では、３０＋５−０．５＝３４．５が、最新の第一の親密度となる。
【００３３】
（４）第二の親密度を算出
次に、親密度テーブルに記録されている第二の親密度に１およびβを加算する。１という値の加算は、対話回数が一回増えたことを意味する。その後、得られた値によって、親密度テーブルに記録されている第二の親密度を更新する。本例では、２０＋１−０．５＝２０．５が、最新の第二の親密度となる。
【００３４】
（５）親密度の総和を算出
最後に、第一の親密度と第二の親密度を加算し、トータルの親密度を得る。本例では、３４．５＋２０．５＝５５が最新の親密度となる。すなわち、ユーザがロボットと対話したことによって、親密度が５０から５５に上昇する。
【００３５】
<処理フローチャート>
次に、ロボット１０が行う具体的な処理の内容について説明する。
まず、ロボット１０とユーザが音声によって対話する処理について、図３のフローチャートを参照しながら説明する。
【００３６】
まず、ステップＳ１１で、音声入出力部１１が、不図示のマイクを通してユーザから音声を取得する。取得した音声は音声データに変換され、音声認識部１２へ送信される。
【００３７】
次に、音声認識部１２が、取得したデータに対して音声認識を実行する（ステップＳ１２）。音声を認識した結果のテキストは、親密度算出部１３と応答生成部１４へ送信される。
【００３８】
次に、親密度算出部１３が、取得したテキストと、記憶されている親密度テーブルに基づいて、前述した方法によって親密度を算出する（ステップＳ１３）。算出された親密度は、応答生成部１４へ送信される。
【００３９】
次に、応答生成部１４が、音声認識部１２が出力したテキストと、親密度算出部１３が出力した親密度に基づいて応答文を生成する（ステップＳ１４）。生成された応答文は制御部１５へ送信される。
そして、ステップＳ１４で、制御部１５が、応答文に基づいて音声合成を行い、音声入出力部１１を介して出力する。
【００４０】
以上説明したように、第一の実施形態では、ユーザが発した発話の内容と、対話を行った回数に基づいて親密度の変動量を算出して更新する。これにより、複数回の接触によって親密度が変動するという効果を得ることができる。また、第一の親密度および第二の親密度に対して、最終対話時からの経過時間に基づく補正を加えることで、時間の経過とともに親密度が低下していくという効果を得ることができる。すなわち、より人間味のある対話が可能になる。
【００４１】
なお、親密度の低下度合いは、係数によって調整することができる。これにより、対話を行うことによる親密度の上昇と、時間の経過による親密度の低下とのバランスを取ることができる。
【００４２】
（第二の実施形態）
第二の実施形態は、第一の実施形態におけるロボットの機能を、ロボット１０と対話サーバ２０に分散させた実施形態である。
図４は、第二の実施形態に係る対話システムのシステム構成図である。なお、第一の実施形態と同様の機能を有する機能ブロックには、同一の符号を付し説明は省略する。
【００４３】
第二の実施形態では、通信部２１、音声認識部２２（音声認識部１２に対応）、親密度算出部２３（親密度算出部１３に対応）、応答生成部２４（応答生成部１４に対応）を有する対話サーバ２０によって、ユーザに対するロボットの応答を生成する。ロボット１０および対話サーバ２０は、通信部２１および通信部１６によって互いに通信可能に接続される。両者の接続には、例えば無線通信ネットワークを用いてもよい。
【００４４】
第二の実施形態では、ロボット１０が、ステップＳ１１で取得した音声を対話サーバ２０に送信し、ステップＳ１２で、対話サーバ２０にて音声認識を行う。また、親密度の算出（ステップＳ１３）、応答文の生成（ステップＳ１４）を、対話サーバ２０が実行する。生成した応答文はロボット１０へ送信され、第一の実施形態と同様に合成音声によって出力される。
なお、本例では、音声の合成をロボット１０側で行うものとしたが、音声の合成は対話サーバ２０側で行ってもよい。
【００４５】
（変形例）
上記の実施形態はあくまでも一例であって、本発明はその要旨を逸脱しない範囲内で適宜変更して実施しうる。
例えば、実施形態の説明では、対話回数が１回増えるごとに第二の親密度に１を加算したが、加算する値は１以外の値であってもよい。また、発話内容がネガティブなものであった場合、加算を行わなくてもよいし、任意の値を減算してもよい。
【符号の説明】
【００４６】
１０・・・ロボット
１１・・・音声入出力部
１２・・・音声認識部
１３・・・親密度算出部
１４・・・応答生成部
１５・・・制御部
【図１】
2018021953.tif 000003
【図２】
2018021953.tif 000004
【図３】
2018021953.tif 000005
【図４】
2018021953.tif 000006