説明

対話処理装置

【課題】ユーザ感情状態の変化を促すような応答文を作成することができる対話処理装置を提供する。
【解決手段】ユーザの感情の認識と、知識データベースを用いたユーザに対する感情表現とを実行する対話処理装置であって、ユーザ感情の認識結果から、感情の種別及び感情の強さを成分とした座標系における現在点を得るとともに、この座標系において現在点よりも目標とする感情の収束状態に近い経由点を決定する処理を含み、知識データベースは、複数の語彙及び定型文のそれぞれを、感情の種別及び感情の強さに応じたパラメータに関連付けて示すものであり、前記ユーザに対する感情表現は、経由点での感情の種別及び感情の強さに応じたパラメータで知識データベースを検索することで、対話に用いるべき語彙及び定型文の少なくとも一方を得て、その取得結果を用いた応答文を作成することでなされる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザの言葉に対して応答文を作成する対話処理装置に関するものである。
【背景技術】
【0002】
従来の対話処理は、ATMのように装置側から一方的な発話がなされたり、また自動電話サービスのように、ありきたりな定型文を挿入してユーザからの問いかけに答えるというものが一般的であった。かかる応対は、機械的・事務的な印象をユーザに与え、装置との対話を楽しむような余地がなかった。
しかし、近年では、ゲームや愛玩用のペット型玩具、介護や癒しを目的としたコミュニケーションロボット等の用途で対話処理装置の利用が期待されている。このような用途では、人間と対面しているかのような印象をユーザに与える対話処理が求められる。
【0003】
例えば、コミュニケーションロボットとしては、特許文献1がある。また、特許文献2には、ユーザの性格に応じたコミュニケーション行動を行うコミュニケーションロボットが開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】国際公開2005/014242号公報
【特許文献2】特開2008−278981号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献2に記載のものは、ユーザの感情を汲み、その感情状態の変化を促すような応答を返すものではない。
本発明は、ユーザ感情状態の変化を促すような応答文を作成することができる対話処理装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明に係る対話処理装置は、ユーザの感情の認識と、知識データベースを用いたユーザに対する感情表現とを実行する対話処理装置であって、ユーザ感情の認識結果から、感情の種別及び感情の強さを成分とした座標系における現在点を得るとともに、この座標系において現在点よりも目標とする感情の収束状態に近い経由点を決定する処理を含み、知識データベースは、複数の語彙及び定型文のそれぞれを、感情の種別及び感情の強さに応じたパラメータに関連付けて示すものであり、前記ユーザに対する感情表現は、経由点での感情の種別及び感情の強さに応じたパラメータで知識データベースを検索することで、対話に用いるべき語彙及び定型文の少なくとも一方を得て、その取得結果を用いた応答文を作成することでなされることを特徴とする。
【発明の効果】
【0007】
本発明に係る対話処理装置は、現在のユーザ感情よりも目標とする感情の収束状態に近い経由点での感情種別、及び感情の強さと対応するような語彙を用いて、応答文を作成する。これにより、目標とする感情の収束状態に緩やかに近づけるようなユーザ感情の変化を促すことができる。このような緩やかな感情変化を促す応答は、人間と対面しているかのような印象をユーザに与えることができる。
【図面の簡単な説明】
【0008】
【図1】本実施形態に係る対話処理装置の利用形態を示す図
【図2】対話処理装置1の内部構成を示すブロック図
【図3】感情語彙クラスタファイルの一例を示す図である。
【図4】感情語彙クラスタに収録された語彙及び定型文を母集団としたマハラノビステーブルを示す図
【図5】感情表現制御部13の詳細な構成を示すブロック図
【図6】一時学習データのデータ構造を示す図
【図7】(a)は、θ成分を10等分し10種類の感情を割り当てた極座標系と、ST emotionが出力する感情情報(喜び、平常、哀しみ、怒り)の各感情要素を示す単位ベクトルとの関係を示す図、(b)は、ST emotionが出力する感情情報を合成した合成ベクトルv3により、極座標系における感情の現在点を決定する手順を示す図、(c)は、現在点と経由点との関係を示す図
【図8】学習データfθを用いた経由点θ成分の決定を示す図
【図9】学習データfRを用いた経由点θ成分の決定を示す図
【図10】(a)は経由点と応答後の現在点とに差が生じても一時学習を継続する条件を示す図、(b)は経由点と応答後の現在点とに差が生じ一時学習を終了する条件を示す図
【図11】本実施形態に係る対話処理装置1の動作手順を示すフローチャート
【図12】マハラノビス取得処理の詳細を示すフローチャート
【図13】経由点算出・一時学習処理の詳細の詳細を示すフローチャート
【図14】感情語彙絞り込み処理の詳細の詳細を示すフローチャート
【図15】感情シーケンス終了処理の詳細の詳細を示すフローチャート
【図16】変形例に係る対話処理装置の内部構成を示す図
【図17】変形例に係る対話処理装置において現在点を決定する方法を示す図
【発明を実施するための形態】
【0009】
以下、本発明に係る対話処理装置の実施の形態について、図を用いて説明する。
図1は、本実施形態に係る対話処理装置の利用形態を示す図である。本発明に係る対話処理装置1は、マイク、スピーカ、マイコンシステムを内蔵したヌイグルミ様の玩具であり、ユーザの発話に対して応答文を音声にて出力する動作を繰り返すことで、ユーザとの対話処理を実現する。このような対話処理において、ユーザの言葉に強い怒りや、強い哀しみ等の好ましくない感情が認識される場合、対話処理装置1は、ユーザ感情をなだめたり、あるいは好ましい感情に変化するよう促す語彙、若しくは定型文を応答文に用いる。対話処理においてユーザ感情が目標とする感情状態に収束するように語彙、若しくは定型文を用いることを、対話処理装置1の感情表現処理と称する。感情表現処理では、ユーザの発話に基づくユーザ感情の認識と、それに対する応答文の出力とで1回の「試行」とし、対話処理装置1は、試行を繰り返すことでユーザの感情が目標とする感情状態に収束した場合に、感情表現処理を終了する。
【0010】
次に、対話処理装置1の内部構成について説明する。図2は、対話処理装置1の内部構成を示すブロック図である。対話処理装置1は、マイコンシステム10、マイク20、及び、スピーカ30を有する。
マイク20は、入力された音声から音声信号を生成し、これをPCM WAVE形式の音声データに変換した後に出力する。
【0011】
スピーカ30は、PCM WAVE形式の音声データを、音声に変換して出力する。
マイコンシステム10はCPU、RAM、ROMからなり、ROMに記録されたプログラムをCPUが実行することにより、本図の破線内に示す音声認識部11、感情認識部12、感情表現制御部13、知識データベース14、応答文作成部15、及び、音声合成部16の機能を実現する。
【0012】
音声認識部11は、音声認識ソフトの実行により実現される機能ブロックであり、マイク20から入力された音声データを解析し、ユーザが発した言葉をテキストデータとして出力する。
感情認識部12は、マイク20から入力された音声データの抑揚等を解析し、発話したユーザの感情の認識結果として、感情情報を出力する。感情認識部の実現には、例えば、株式会社AGI製の感情認識ソフトである「ST Emotion」等の利用が考えられる。ST Emotionは、「怒り」「喜び」「哀しみ」「平常」「笑い」「興奮」の6つの感情要素について、それぞれ強度を検出する。「怒り」「喜び」「哀しみ」「平常」「興奮」については0〜10の11段階で検出され、「笑い」についてはある/ないの2段階で検出される。以下、本実施の形態では、ST Emotionを利用するものとし、感情認識部12が出力する感情情報としては、「ST Emotion」の検出値のうち「怒り」、「喜び」、「哀しみ」、「平常」の4つの感情要素の検出値を用いる。
【0013】
感情表現制御部13は、応答文で用いるべき感情表現を含む語彙や定型文を知識データベースから取得し、応答文作成部15へ提示する機能を有する。具体的には、感情認識部12が出力した感情情報において強い怒りや、強い哀しみが示されている場合に、これらをなだめたり、慰撫する語彙や定型文を知識データベース14から取得し、取得結果を応答文作成部15へ出力する。ここで知識データベース14から複数の語彙や定型文が取得される場合、感情表現制御部13は尤度に従って、取得結果の語彙や定型文に順位付けをした上で応答文作成部15へ出力する。
【0014】
知識データベース14は、対話処理における応答のために用いる語彙管理データベースである。知識データベース14は、様々な会話のカテゴリー(以下、クラスタ)について語彙及び定型文を収集し、クラスタ毎にXMLファイルを作成し管理する。各クラスタファイルでは、語彙及び定型文が意味属性で分類されている。また、知識データベース14では更に、語彙及び定型文に共起頻度等の関連情報が付加されている。図3は、感情語彙クラスタファイルの一例を示す図である。感情語彙クラスタファイルには、感情表現を伴う語彙及び定型文(以下、「感情語彙」と総称する。)が収録されており、これらの感情語彙を応答文で使用することが望ましいと考えられる会話相手の感情種別及び感情の強さを意味属性として、各感情語彙が分類されている。
【0015】
知識データベース14は更に、このようなデータ構造で収録している語彙及び定型文から、応答文に用いるべき語彙や定型文を検索する機能を有する。知識データベース14の検索機能としては、具体的には、入力テキストで使用された語彙に対してマハラノビス距離や共起頻度から蓋然性の高い語彙及び定型文を返す中立語彙検索機能と、ユーザ感情に対する応答として適した感情語彙を返す感情語彙検索機能とがある。
【0016】
感情語彙検索機能では、感情語彙クラスタファイルに収録された感情語彙を母集団としたマハラノビス距離を用いて語彙選択がなされる。感情語彙検索機能として知識データベース14は、検索用マハラノビス距離が入力されると、感情語彙クラスタファイルに収録された感情語彙のうちマハラノビス距離が入力に近いものから所定数(例えば4つ)だけ応答として返す。
【0017】
ここで用いるマハラノビス距離は、感情の種別及び感情の強さをX−Y成分とした直交座標系における母集団の共分散行列A、検索対象の感情種別及び強さを表すベクトルXを用いて、以下の式1により算出される。
マハラノビス距離=X*Aの逆行列*X ・・・式1
このようなマハラノビス距離は、感情語彙クラスタファイルに収録された感情語彙に変化がなければ、検索したい感情の種別及び強さに応じて一意に定まるものである。そこで、感情の種別及び強さに、感情語彙クラスタファイルから算出したマハラノビス距離を関連付けたマハラノビステーブルを作成しておき、感情語彙検索機能を用いた問合せ元となる感情表現制御部13へ予め提供しておく。図4は、感情語彙クラスタに収録された語彙及び定型文を母集団としたマハラノビステーブルを示す図である。マハラノビステーブルを用いることにより、感情表現制御部13では、応答文に使用したい語彙の感情の種別及び感情の強さから容易にマハラノビス距離を得て、感情語彙を検索することができる。
【0018】
応答文作成部15は、音声認識部11が出力したテキストデータを入力として、ユーザが発した言葉をに対する応答文を作成する。応答文作成部15による応答文作成では、先ず、知識データベース14が提供する中立語彙検索機能を利用して、入力テキストに対する感情表現を伴わない価値中立な文章が作成される。その後、感情表現制御部13から感情表現を含む語彙や定型文が提供された場合、応答文作成部15は、感情表現制御部13が付した尤度順位や共起頻度に従って提供された語彙、定型文の中から適切なものを選択し、選択したものを価値中立な文章に挿入して応答文の作成を完了する。感情表現制御部13から感情表現を含む語彙や定型文が提供されなかった場合には、価値中立な文章をそのまま応答文とする。こうして作成された応答文は応答文テキストデータとして音声合成部16へ出力される。
【0019】
音声合成部16は、応答文作成部15が出力した応答文テキストデータに基づいて、PCM WAVE形式の音声データを生成する。
以上が、対話処理装置1の内部構成の概略である。

<感情表現制御部13の詳細>
本実施形態に係る対話処理装置1の特徴的な機能として、感情表現処理がある。感情表現処理は、応答文に感情語彙を挿入することで実現される。そこで以下では、応答文に挿入する感情語彙を決定する感情表現制御部13の詳細を説明する。
【0020】
図5は、感情表現制御部13の詳細な構成を示すブロック図である。感情表現制御部13は、座標変換部101、経由点算出部102、学習データ管理部103、語彙選択部104、マハラノビステーブル保持部105の各機能ブロックを含む。
座標変換部101は、4種類の感情要素についてその強度を示す感情情報を、1つの合成ベクトルに変換することで、感情の種別をθ成分、感情の強さをR成分とした極座標系においてユーザ感情を示す現在点を決定する機能ブロックである。
【0021】
経由点算出部102は、経由点を決定する機能ブロックである。経由点とは、1回の試行によって変化させることを目指すユーザの感情状態であり、極座標系における1点で表現される。経由点には極座標系において現在点よりも目標とする感情の収束状態に近い点を設定する。
学習データ管理部103は、学習データを蓄積及び更新することで、経由点決定の強化学習を実現する機能ブロックである。学習データは、過去のエピソードでの経由点のθ成分を、初回試行から順にならべた数列fθ{θ1、θ2、・・・、θn}、及び、過去のエピソードでの経由点のR成分を、初回試行から順にならべた数列fR{R1、R2、・・・、Rn}のデータ形式で保存される。ここで「エピソード」とは、初回試行からユーザ感情が目標範囲に収束するまで繰り返された一連の試行である。
【0022】
学習データを更新するために、学習データ管理部103は、図6に示すように各エピソードで全試行の経由点データを、RAM上の作業領域に一時学習データとして蓄積しておき、ユーザ感情が目標範囲に収束した時に一時学習データでの試行回数と既存の学習データでの試行回数を比較する。一時学習データの方が試行回数が少なければ、学習データ管理部103は一時学習データを新たな学習データとして更新する。
【0023】
尚、学習データ管理部103には、「恥」、「怖」、「哀」、「厭」、「怒」、「昂」、「驚」、「喜」、「好」、「安」の感情が割り当てられた各領域を開始位置とする10のθ成分学習データfθ、及び10のR成分学習データfRが蓄積されている。このように領域毎に学習データを管理し更新するために、学習データ管理部103は、初回試行での現在点を会話開始位置としてエピソード終了まで保持しておき、エピソード終了時の一時学習データとの比較、更新には、会話開始位置が属する領域での学習データを対象とする。
【0024】
語彙選択部104は、応答文で使用すべき感情語彙をリストにして応答文作成部15へ提供する機能ブロックである。先ず語彙選択部104は、マハラノビステーブル保持部105に保持されている図4のマハラノビステーブルを参照して、経由点の感情の種別θ、及び感情の強さRに応じたマハラノビス距離を得る。この経由点のマハラノビス距離を用いて、知識データベース14から感情語彙を検索することで、マハラノビス距離が近い複数の感情語彙を得ることができる。ただし、こうして得られる感情語彙にはマハラノビス距離が近くとも、経由点と感情の種類が異なるものが含まれる。そこで語彙選択部104では、検索により得られた感情語彙のうち経由点と感情種類が一致するものだけを、経由点のマハラノビス距離と近い順に順位付けしてリストに登録し、応答文作成部15へ提供する。
【0025】
マハラノビステーブル保持部105は、マハラノビステーブルを保持する機能ブロックであり、FeRAM等の書き換え可能な不揮発性メモリに確保された記録領域により実現される。
以上が感情表現制御部13の詳細な構成である。続いて、座標変換部101における現在点の決定方法、及び、経由点算出部102における経由点の決定方法の詳細について説明する。
【0026】

<座標変換部101における現在点の決定方法>
現在点は、4種類の感情要素についてその強度を示す感情情報を1つの合成ベクトルに変換することで、感情の種別をθ成分、感情の強さをR成分とした極座標系の1点に決定される。
【0027】
ユーザ感情の現在点を示すために用いる極座標系では、図7の(a)のように、θ成分36度毎に分割した10の領域に「感情表現辞典」(1993 東京堂出版 中村明)において分類される10種類の感情が、「恥」、「怖」、「哀」、「厭」、「怒」、「昂」、「驚」、「喜」、「好」、「安」の順番で反時計回りに割り当てられている。以下、反時計回りをθの正方向、時計回りをθの負方向とする。
【0028】
このような極座標系上で感情情報を1つの合成ベクトルに変換するために、感情情報の各感情要素に対応する4つの単位ベクトルを定義する。具体的には、原点から「安」の領域の中央方向に感情情報のうち「平常」の感情要素に対応する単位ベクトルを定義し、原点から「怒」の領域の中央方向に感情情報のうち「怒り」の感情要素に対応する単位ベクトルを定義し、原点から「喜」の領域の中央方向に感情情報のうち「喜び」の感情要素に対応する単位ベクトルを定義し、原点から「哀」の領域の中央方向に感情情報のうち「哀しみ」の感情要素に対応する単位ベクトルを定義する。こうして定義した単位ベクトルを基に、感情情報により示される4つの感情要素は図7の(b)のように、その強度に応じた4つのベクトルで表現できる。
【0029】
これら4つのベクトルのうち「喜び」のベクトルVと「平常」のベクトルVとを合成したものをベクトルVとし、また、「怒り」のベクトルVと「哀しみ」のベクトルVとを合成したものをベクトルVとし、ベクトルVとベクトルVとを合成することで、現在点を示す合成ベクトルVが得られる。
現在点の具体的な計算方法としては、「喜び」方向の偏角θ1、「平常」方向の偏角θ2、「哀しみ」方向の偏角θ3、「怒り」方向の偏角θ4とすると、各単位ベクトルのx成分、y成分は、
喜び(x)=cosθ1 喜び(y)=sinθ1
平常(x)=cosθ2 平常(y)=sinθ2
哀しみ(x)=cosθ3 哀しみ(y)=sinθ3
怒り(x)=cosθ4 喜び(y)=sinθ4
となるので、各成分について、感情情報で示される各感情要素の強度(0〜10)の値を乗算して合計することで、合成ベクトルのx成分である「X」、及び合成ベクトルのy成分である「Y」が求められる。この現在点のx、y成分から以下の式2により、合成ベクトルの偏角θt、即ち現在点のθ成分が求められる。
【0030】
θt=tan-1(Y/X) ・・・式2
また、合成ベクトルの大きさ、(X+Y)の平方根が、現在点のR成分となる。以上が座標変換部101における現在点の決定方法の詳細である。

<経由点算出部102における経由点の決定方法>
次に経由点決定方法の詳細について説明する。本実施形態に係る対話処理装置1は、θ成分が安、好、喜の何れかの感情が割り当てられた領域であるか、感情の強さを示すR成分が1以下である状態にユーザ感情を収束させることを目的としており、図7の(c)に示すように、経由点は極座標系において現在点よりも目標とする感情の収束状態に近い点、即ち、現在点よりも安、好、喜の領域に近いか、現在点よりもR成分が小さい点に設定される。以下、θ成分が安、好、喜の何れかの感情が割り当てられた領域、及び感情の強さを示すR成分が1以下である領域を合わせた図7の(c)で斜線で示した領域を、「目標範囲」という。
【0031】
経由点の決定には2つの方法がある。1つ目は初期状態での経由点決定方法であり、2つ目は学習データを利用した経由点決定方法である。ユーザの発話音声の取得と応答文の出力とを繰り返す対話処理によって、以前にユーザ感情が目標範囲に収束したことがある場合、学習データ管理部103には、対話処理の開始からユーザ感情が収束するまでの一連の経過が学習データとして記録されている。初期状態とは、このような学習データが蓄積されていない状態である。
【0032】
<初期状態での経由点決定方法>
初期状態での経由点決定では、θ成分とR成分とを独立に決定する。1度の経過点決定で現在点からθ成分を変化させる幅は、0〜36度であり、正規分布等の確率密度関数を用いて、試行の度に変化量を決定する。またθ成分を変化させる方向は、現在点が「哀」、「怖」、「恥」の何れかが割り当てられた領域及び「厭」が割り当てられた領域の中央より「安」側にあれば、「安」が割り当てられた領域に近づく方向、即ち、負方向である。逆に、現在点が「驚」、「昂」、「怒」の何れかが割り当てられた領域及び「厭」が割り当てられた領域の中央より「喜」側にあれば、「喜」が割り当てられた領域に近づく方向、即ち、正方向に変化させる。
【0033】
1度の経過点決定で現在点からR成分を減少させる幅は、0〜1であり、正規分布等の確率密度関数を用いて、試行の度に変化量を決定する。
<学習データを利用した経由点決定方法>
学習データを利用した経由点決定においても、θ成分とR成分とを独立に決定する。この点は、初期状態での経由点決定と同様であり、学習データは、θ成分若しくはR成分の決定について用いられる。
【0034】
学習データは、過去のエピソードでの経由点のθ成分、若しくはR成分を、初回試行から順にならべた数列fθ{θ1、θ2、・・・、θn}、fR{R1、R2、・・・、Rn}である。学習データ管理部103には、「恥」、「怖」、「哀」、「厭」、「怒」、「昂」、「驚」、「喜」、「好」、「安」の感情が割り当てられた各領域を開始位置とする10のθ成分学習データfθ、及び10のR成分学習データfRが蓄積されている。
【0035】
図8は、学習データfθを用いた経由点θ成分の決定を示す図である。本図において矢印は、現在点のθ成分を示しており、白丸は数列fθのt番目の値である。経由点算出部102では、目標範囲外である現在点が最初に入力された試行を1回目の試行として、この現在点が属する領域を開始位置とする数列fθを選択し、数列fθの1番目の値を経由点のθ成分とする。続く2回目、3回目、4回目の試行においても同じ数列fθを用いて、2番目、3番目、4番目、の値を経由点のθ成分とする。学習データfRを用いて経由点R成分を決定する場合も同様に初回試行での現在点が属する領域を開始位置とする数列fRを選択し、その後は図9に示すように、1回目試行の現在点θ成分が属する領域を開始位置とする数列fRを選択し、数列fRの1番目、2番目、3番目、4番目の値を、それぞれ1回目、2回目、3回目、4回目の試行での経由点R成分に用いる。
【0036】
ここで、t回目試行での経由点とt+1回目試行で認識される現在点とでθ成分の差が所定の閾値(例えば、36度)を超える場合や、R成分の差が所定の閾値(例えば、2.5)を超える場合、t回目試行を「無効試行」と呼ぶ。図10の(a)の例では4回目の試行が無効試行となっている。無効試行の次の試行、図10の(a)の例では5回目の試行が無効試行でない場合には、従前の学習データを用いて経由点決定を継続する。しかし、図10の(b)のように無効試行が2回連続した場合、2回目の無効試行の次の試行では、その試行での現在点が属する領域を開始位置とする学習データを新たに選びなおし、新たな初回試行として経由点決定を行う。このような無効試行の判定、学習データの選び直しは、θ成分とR成分とで独立して実行される。
【0037】
以上が座標変換部101における経由点の決定方法の詳細である。
ここまで説明した感情表現制御部13の機能により、ユーザ感情を目標範囲に近づけるような感情語彙を選択することができ、このような感情語彙を応答文に挿入することで、本実施形態に係る対話処理装置1による感情表現処理が実現される。

<対話処理装置1の動作>
続いて、本実施形態に係る対話処理装置1の動作を説明する。
【0038】
図11は、本実施形態に係る対話処理装置1の動作手順を示すフローチャートである。
対話処理装置1の動作では、ステップS1で対話処理装置1の初期化処理が実行され、ユーザの発話が待ち受けられる。初期化処理とは、学習データ管理部103が一時学習データと会話開始位置とを管理するための記録領域を、RAM上の作業領域に確保する処理である。一時学習データ記録領域と会話開始位置の記録領域とは、θ成分用及びR成分用がそれぞれ別に確保される。
【0039】
初期化後、ユーザが発話するとマイク20を介して音声入力データが取得される(ステップS2)と、この音声入力データが感情認識部12により解析され4つの感情要素について強度を示す感情情報が取得される(ステップS3)。この感情情報に基づいて感情表現制御部13では、マハラノビス取得処理(ステップS4)が実行される。
ここで、感情情報を変換して得られるユーザ感情の現在点が目標範囲内にある場合、詳細を後述するマハラノビス取得処理においてマハラノビス距離は取得されない(ステップS5:No)。このような場合、応答文作成部15には感情語彙が提供されることがなく、応答文作成部15は、感情語彙を挿入させることなくステップS8にて応答文を作成する。例えばユーザの発言が「Tチームが負けた。」という言葉であり、感情の現在点が目標範囲を外れるような強い感情が認識されなかった場合、応答文作成部15は、「Tチームは、負けましたね。」という感情語彙を含まない応答文を作成する。
【0040】
一方、感情情報を変換して得られるユーザ感情の現在点が目標範囲外にある場合には、マハラノビス取得処理において何らかのマハラノビス距離が取得される(ステップS5:Yes)。このような場合、感情表現制御部13内の語彙選択部104によって、取得されたマハラノビス距離を用いて知識データベース14が検索され、マハラノビス距離が近い複数の感情語彙が取得される(ステップS6)。複数の感情語彙を取得した語彙選択部104は、詳細を後述する感情語彙絞り込み処理により不適切な感情語彙を除外し、適切な感情語彙のみをマハラノビス距離が近い順に並べた出力リストを作成し、応答文作成部15へ出力する(ステップS7)。感情語彙のリストが提供された応答文作成部15は、ステップS8にて感情語彙を挿入した応答文を作成する。
【0041】
例として、ユーザの「Tチームが負けた。」という言葉の抑揚等から目標範囲を外れるような強い感情が認識され、この認識結果から決定された経由点のマハラノビス距離が2.2であった場合を想定する。図4を参照すると、マハラノビス距離が2.2に近いのは、マハラノビス距離が2.3である感情種別「哀」強度「4」の感情語彙、マハラノビス距離が2.0である感情種別「哀」強度「5」の感情語彙、マハラノビス距離が2.4である感情種別「怒」強度「4」の感情語彙、及びマハラノビス距離が2.2である感情種別「怒」強度「5」の感情語彙である。本例では、これらの属性の感情語彙が図3に示す感情語彙クラスタファイルから抽出され、語彙選択部104に取得される。ここでユーザ感情の現在点が「哀」領域に含まれるのもであったなら、抽出された語彙のうち感情種別「怒」の感情語彙は除外され、マハラノビス距離が2.3の感情種別「哀」強度「4」の語彙「残念だけど」「気にすることはないですよ」と、マハラノビス距離が2.0の感情種別「哀」強度「5」の語彙「悲しいけど」「まだなんとかなりますよ」とがこの順番で出力リストに登録され、応答文作成部15へ出力される。応答文作成部15では、出力リストに登録された感情語彙からマハラノビス距離や共起頻度を用いて使用する語彙を選択する。ここで感情語彙「残念だけど」が選択された場合は、「Tチームは、残念だけど負けましたね。」という感情語彙「残念だけど」を挿入した応答文が作成される。こうして作成された応答文は、スピーカ30を介して音声としてユーザに提供される。
【0042】
以上の動作手順においてステップS2〜ステップS8が1回の試行となり、ユーザの発話の度に繰り返される。
<マハラノビス取得処理>
続いて、マハラノビス取得処理の詳細について説明する。図12は、マハラノビス取得処理の詳細を示すフローチャートである。
【0043】
マハラノビス取得処理では、先ず座標変換部101が感情情報を合成ベクトルに変換し、図4の(b)で示したようにユーザ感情の現在点を決定する(ステップS11)。次に、詳細を後述する経由点算出・一時学習処理を経由点算出部102が実行し、現在点に基づいて経由点を決定する(ステップS12)。
ここで現在点が目標範囲外である場合(ステップS13:No)、語彙選択部104は、図4のマハラノビステーブルを参照し(ステップS14)、ステップS11で決定された経由点のθ成分、R成分を基にマハラノビス値を取得する(ステップS15)。
【0044】
現在点が目標範囲に含まれている場合(ステップS13:Yes)、語彙選択部104がマハラノビス値を取得しなかったことを応答文作成部15へ通知し(ステップS16)、その後、学習データ管理部103により、感情シーケンス終了処理が実行される。
以上がマハラノビス取得処理の詳細である。
<経由点算出・一時学習処理>
続いて、経由点算出・一時学習処理の詳細について説明する。図13は、経由点算出・一時学習処理の詳細の詳細を示すフローチャートである。
【0045】
経由点算出・一時学習処理では、先ずステップS21、ステップS22において、学習データ管理部103により一時学習データの蓄積回数が確認される。一時学習データの蓄積回数が所定の閾値Th1(例えば10回)を超えていれば(ステップS21:Yes)、一時学習データがリセットされる(ステップS35)。一時学習データのリセットとは、一時学習データ記録領域と会話開始位置の記録領域に記録されているデータを全て消去する処理である。
【0046】
一時学習データとして経由点が1つも記録されていない場合(ステップS22:Yes)、即ち、一時学習データリセット直後や初回試行時である場合、学習データ管理部103が現在点を会話開始位置の記録領域に記録し(ステップS23)、処理がステップS30へ移行する。
一時学習データとして経由点が記録されている場合(ステップS22:No)、即ち2回目以降の試行である場合は、ステップS24〜ステップS29の処理手順で、経由点算出部102によって前回試行が無効試行であったかが判定される。前回試行の経由点と現在点とのR成分の差が2.5より大きい場合(ステップS24:Yes)や、前回試行の経由点と現在点とのθ成分の差が36度より大きい場合(ステップS27:Yes)には、前回試行が無効試行であったとして、それぞれの成分について範囲外回数を記録する変数がインクリメントされる(ステップS26、ステップS29)。前回試行が無効試行ではなかった場合(ステップS24:No、ステップS27:No)には、それぞれの成分について範囲外回数を記録する変数が0に初期化される(ステップS25、ステップS28)。更に経由点算出部102は、ステップS30において、範囲外回数を記録する変数が2以上であるかを判定する。範囲外回数が2回以上であれば、一時学習データがリセットされる(ステップS36)。尚、範囲外回数を記録する変数は、一時学習データリセット処理において、0に初期化される。
【0047】
その後、学習データ管理部103が現在点を一時学習データ記録領域に追加記録し、現在点が目標範囲外の位置する場合(ステップS32:No)、経由点算出部102が、ステップS33、及びステップS34において今回試行の経由点としてR成分とθ成分を決定する。ステップS33、及びステップS34における経由点の決定では、「経由点算出部102における経由点の決定方法」として既に説明した初期状態での経由点決定方法、若しくは、学習データを利用した経由点決定方法が利用される。
【0048】
以上が経由点算出・一時学習処理の詳細である。
<感情語彙絞り込み処理>
続いて、感情語彙絞り込み処理の詳細について説明する。図14は、感情語彙絞り込み処理の詳細の詳細を示すフローチャートである。
感情語彙絞り込み処理は、語彙選択部104によって実行される処理であり、先ず、経由点のθ成分に基づいて経由点が属する領域に割り当てられた感情の種別を取得し(ステップS41)、この感情の種別を、意味属性文字列に設定する(ステップS42)。その後、RAM上の出力用テーブル記録領域を初期化し(ステップS43)する。
【0049】
出力用テーブル記録領域を初期化した後は、ステップS45〜ステップS46の処理を知識データベース14から検出された全ての感情語彙について繰り返す。ステップS45の処理は、知識データベース14から検出された感情語彙で未処理のもののうち、経由点とマハラノビス距離が最も近いものを選択し、(ステップS45)、この感情語彙の意味属性である感情種別と、ステップS42で設定した意味属性文字列を比較する(ステップS46)。比較の結果が一致すれば(ステップS46:Yes)、選択した感情語彙を、出力用テーブル記録領域に追加記録する(ステップS47)。
【0050】
以上が感情語彙絞り込み処理の詳細である。
<感情シーケンス終了処理>
続いて、感情シーケンス終了処理の詳細について説明する。図15は、感情シーケンス終了処理の詳細の詳細を示すフローチャートである。
感情シーケンス終了処理は、試行を繰り返すことでユーザ感情を示す現在点が目標範囲に収束した場合に実行される処理である。
【0051】
感情シーケンス終了処理において学習データ管理部103は、会話開始位置の記録領域に記録されているθ成分の値を取得し(ステップS51)、この値が「恥」、「怖」、「哀」、「厭」、「怒」、「昂」、「驚」、「喜」、「好」、「安」の何れの種類の感情が割り当てられた領域に含まれるかを判定し(ステップS52)、この領域を開始位置とする学習データが以前に蓄積されていない場合(ステップS53:No)、一時学習データ記録領域に記録されている経由点を、新たな学習データとして蓄積する(ステップS54)。
【0052】
ステップS52で判定した領域を開始位置とする学習データが以前に蓄積されている場合(ステップS53:Yes)には、この学習データの経由点の数と、一時学習データ記録領域に記録されている経由点の数とを比較する(ステップS55)。一時学習データ記録領域に記録されている経由点の数の方が少なければ(ステップS55:Yes)、既存の学習データを破棄し、一時学習データ記録領域に記録されている経由点を、新たな学習データとして蓄積する。
【0053】
最後にステップS56において一時学習データをリセットする。以上が感情シーケンス終了処理の詳細である。
以上、本実施形態に係る対話処理装置によれば、現在のユーザ感情よりも目標とする感情の収束状態に近い経由点での感情種別、及び感情の強さと対応するような語彙を用いて、応答文を作成することができる。これにより、目標とする感情の収束状態に緩やかに近づけるようなユーザ感情の変化を促すことができる。このような緩やかな感情変化を促す応答は、人間と対面しているかのような印象をユーザに与えることができる。
【0054】

(変形例)
以上、本発明に係る対話処理装置について、実施形態に基づいて説明したが、本発明はこれらの実施形態に限られない。例えば、以下のような変形例が考えられる。
(1)本発明は、各実施形態で説明したフローチャートの処理手順が開示する記録方法であるとしてもよい。また、これらの方法をコンピュータにより実現するプログラムであるとしてもよいし、前記プログラムからなるデジタル信号であるとしてもよい。
【0055】
また、本発明は、前記プログラム又は前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなど、に記録したものとしてもよい。
また、本発明は、前記プログラム又は前記デジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク等を経由して伝送するものとしてもよい。
【0056】
また、前記プログラム又は前記デジタル信号を前記記録媒体に記録して移送することにより、又は前記プログラム又は前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
(2)経由点は現在のユーザ感情よりも目標とする感情の収束状態に近い点であればよく、上記実施形態とは異なる手法により決定してもよい。
【0057】
例えば、先ず現在点からθ成分だけ変化させ、R成分は現在点と同じ値に設定した経由点を決定し、このような経由点を用いて試行を繰り返した結果、無効試行が所定回数(例えば2回)連続した場合に、次の試行からは現在点からR成分だけ減少させ、θ成分は現在点と同じ値に設定した経由点を決定するという手法を用いてもよい。
(3)上記実施形態では、学習データを、数列fθ{θ1、θ2、・・・、θn}、数列fR{R1、R2、・・・、Rn}というデータ形式で保持するとしたが、学習データは他のデータ形式であってもよい。
【0058】
例えば、横軸を試行回数t、縦軸をθ又はRとした直交座標に過去のエピソードでの経由点をプロットし、これらから最小二乗法により近似直線θ=at+b、又はR=at+bを求めることができる。このf(t)=at+bを学習データとして、t回目のθ、Rを決定してもよい。
また他の例として、上述の近似直線の傾きaを学習データとしてもよい。この場合には、初回試行の現在点を切片とした関数f(t)=at+θ1、f(t)=at+R1を生成して経由点を決定することができる。ここでθ1は初回試行での現在点のθ成分、R1は、初回試行での現在点R成分である。
【0059】
(4)知識データベースを、対話処理装置の外部に設けてもよい。例えば、インターネットに接続されたサーバ装置を知識データベースとして機能させ、図16に示すように対話処理装置に通信インターフェースを設け、無線LAN等のネットワークを介して知識データベースと通信する構成としてもよい。このような変形例では、インターネットを介して知識データベースの収集語彙を適時更新することが容易になる。
【0060】
(5)上記実施形態では、ST emotionの出力を極座標上に合成して現在点を得るとした。しかしながら、ユーザ感情の現在点を表現する方法は、必ずしも極座標に限定されるものではない。
例えば、上記実施形態で説明した極座標に、ST emotionの出力値のうち「興奮」の値を対応させたz軸を追加することで、ユーザ感情の現在点を平面座標ではなく、空間座標で表現することもできる。
【0061】
(6)各実施形態及び変形例をそれぞれ組み合わせるとしてもよい。
【産業上の利用可能性】
【0062】
本発明は、ユーザとの対話を行う玩具、ロボット装置等に有用である。
【符号の説明】
【0063】
1 対話処理装置
10 マイコンシステム
11 音声認識部
12 感情認識部
13 感情表現制御部
14 知識データベース
15 応答文作成部
16 音声合成部
20 マイク
30 スピーカ
101 座標変換部
102 経由点算出部
103 学習データ管理部
104 語彙選択部
105 マハラノビステーブル保持部

【特許請求の範囲】
【請求項1】
ユーザの感情の認識と、知識データベースを用いたユーザに対する感情表現とを実行する対話処理装置であって、
ユーザ感情の認識結果から、感情の種別及び感情の強さを成分とした座標系における現在点を得るとともに、この座標系において現在点よりも目標とする感情の収束状態に近い経由点を決定する処理を含み、
知識データベースは、複数の語彙及び定型文のそれぞれを、感情の種別及び感情の強さに応じたパラメータに関連付けて示すものであり、
前記ユーザに対する感情表現は、経由点での感情の種別及び感情の強さに応じたパラメータで知識データベースを検索することで、対話に用いるべき語彙及び定型文の少なくとも一方を得て、その取得結果を用いた応答文を作成することでなされる
ことを特徴とする対話処理装置。
【請求項2】
前記座標系は、θ成分の領域毎に感情の種別を割り当て、感情の強さをR成分とした極座標系であり、
前記パラメータは、感情の種別及び感情の強さをX−Y成分とした直交座標系における、知識データベースに収録された語彙及び定型文を母集団としたマハラノビス距離である
ことを特徴とする請求項1記載の対話処理装置。
【請求項3】
前記極座標系のθ成分により示される感情の種別は、前記極座標系において時計回りに、安、好、喜、驚、昂、怒、厭、哀、怖、恥のそれぞれの感情である
ことを特徴とする請求項2記載の対話処理装置。
【請求項4】
経由点の決定は、
現在点のθ成分よりも安、好、喜の感情種別が割り当てられた領域に近い値を経由点のθ成分として設定する第1の処理、及び、現在点のR成分よりも感情の強さを弱めた値を経由点のR成分として設定する第2の処理の少なくとも一方を実行することでなされる
ことを特徴とする請求項3記載の対話処理装置。
【請求項5】
前記対話処理装置は、作成した応答文をユーザに提示し、提示後のユーザ感情を新たに認識する試行を繰り返すことにより、経由点の決定方法を強化学習する学習機能を有する
ことを特徴とする請求項2記載の対話処理装置。
【請求項6】
学習機能は、
経由点のθ成分と新たに認識されたユーザ感情に係る新たな現在点のθ成分との差、及び、経由点のR成分と前記新たな現在点のR成分との差が規定値以内である場合に、経由点を一時学習データとして蓄積し、
認識されたユーザ感情が目標とする感情の収束状態となった場合に、一時学習データとして蓄積されている経由点の件数が既存の学習結果よりも少なければ、一時学習データを新たな学習結果に設定する
ことを特徴とする請求項5記載の対話処理装置。
【請求項7】
学習結果は、試行回数tから導くことができる関数θ=f(t)、及び、関数R=f(t)として記憶され、
経由点の決定は、これらの関数に基づき、θ、Rを決定することでなされる
ことを特徴とする請求項6記載の対話処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2012−93972(P2012−93972A)
【公開日】平成24年5月17日(2012.5.17)
【国際特許分類】
【出願番号】特願2010−240953(P2010−240953)
【出願日】平成22年10月27日(2010.10.27)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成21年度、経済産業省、全国中小企業団体中央会、ものづくり中小企業製品開発等支援補助金(試作開発等支援事業)委託事業、産業技術力強化法第19条の適用を受ける特許出願
【出願人】(510286042)MTIジャパン株式会社 (1)
【Fターム(参考)】