IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ KDDI株式会社の特許一覧

特許7221902ユーザの関心度に応じて対話内容を切り替える対話装置、プログラム及び方法
<>
  • 特許-ユーザの関心度に応じて対話内容を切り替える対話装置、プログラム及び方法 図1
  • 特許-ユーザの関心度に応じて対話内容を切り替える対話装置、プログラム及び方法 図2
  • 特許-ユーザの関心度に応じて対話内容を切り替える対話装置、プログラム及び方法 図3
  • 特許-ユーザの関心度に応じて対話内容を切り替える対話装置、プログラム及び方法 図4
  • 特許-ユーザの関心度に応じて対話内容を切り替える対話装置、プログラム及び方法 図5
  • 特許-ユーザの関心度に応じて対話内容を切り替える対話装置、プログラム及び方法 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-02-06
(45)【発行日】2023-02-14
(54)【発明の名称】ユーザの関心度に応じて対話内容を切り替える対話装置、プログラム及び方法
(51)【国際特許分類】
   G06F 40/30 20200101AFI20230207BHJP
   G06F 40/247 20200101ALI20230207BHJP
   G06F 40/279 20200101ALI20230207BHJP
   G10L 15/10 20060101ALI20230207BHJP
   G06T 7/00 20170101ALI20230207BHJP
【FI】
G06F40/30
G06F40/247
G06F40/279
G10L15/10 500Z
G06T7/00 660A
【請求項の数】 9
(21)【出願番号】P 2020044600
(22)【出願日】2020-03-13
(65)【公開番号】P2021144633
(43)【公開日】2021-09-24
【審査請求日】2022-01-18
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100135068
【弁理士】
【氏名又は名称】早原 茂樹
(72)【発明者】
【氏名】呉 剣明
(72)【発明者】
【氏名】内藤 正樹
【審査官】長 由紀子
(56)【参考文献】
【文献】特開2008-254122(JP,A)
【文献】特開2007-047488(JP,A)
【文献】特開2020-166839(JP,A)
【文献】特開2017-67851(JP,A)
【文献】特開2010-225115(JP,A)
【文献】米国特許出願公開第2017/0060994(US,A1)
【文献】堀内 理沙 外3名,雑談システムにおける話題転換,言語処理学会第15回年次大会発表論文集,日本,言語処理学会,2009年03月02日,pp.312-315
【文献】別所 克人 外4名,雑談対話における話題継続願望判定の検討,第74回 言語・音声理解と対話処理研究会資料 (SIG-SLUD-B501) ,日本,一般社団法人人工知能学会,2015年07月15日,pp.1-6
【文献】栂井 良太 外4名,非言語音響情報を利用した話題誘導を行う情報収集対話システム ,FIT2017 第16回情報科学技術フォーラム 講演論文集 第2分冊 選奨論文・一般論文 データベース 自然言語・音声・音楽 人工知能・ゲーム 生体情報科学,一般社団法人情報処理学会 一般社団法人電子情報通信学会,2017年09月05日,pp.171-172
(58)【調査した分野】(Int.Cl.,DB名)
G06F 40/00-58
G10L 15/10
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
複数の対話学習エンジンから選択した対話学習エンジンを用いて、ユーザと対話する対話装置において、
全ての対話学習エンジンから対話シナリオを取得し、全ての対話シナリオから所定条件に基づく複数の語彙を抽出する語彙抽出手段と、
抽出された複数の語彙を、意味属性的に類似するクラスタに分類したシソーラス辞書を作成すると共に、現在の対話内容に対応する語彙にマーカーを付すシソーラス辞書作成手段と、
対話中のユーザに基づくマルチメディアデータを取得するユーザデータ取得手段と、
マルチメディアデータから、現在の対話内容に対するユーザの関心度を推定する関心度推定エンジンと、
シソーラス辞書のマーカー語彙と類似度が最も高い対話シナリオを持つ対話学習エンジンを選択する対話学習エンジン選択手段と、
関心度が高いほどマーカー語彙と同じクラスタに属する他の語彙へ、関心度が低いほどマーカー語彙と異なるクラスタに属する語彙へ、マーカーを移動させるマーカー語彙移動制御手段と
を有することを特徴とする対話装置。
【請求項2】
語彙及び対話シナリオは、意味属性的に近いほど距離が近くなるようにベクトル表現されており、
シソーラス辞書作成手段は、語彙同士のベクトルの距離が近いほど同一のクラスタに分類する
ことを特徴とする請求項1に記載の対話装置。
【請求項3】
マーカー語彙移動制御手段は、関心度が低いほどマーカー語彙との距離が遠いクラスタに属する語彙へ、マーカーを移動させる
ことを特徴とする請求項1又は2に記載の対話装置。
【請求項4】
複数の対話学習エンジンは、汎用対話学習エンジンに加えて、時事用対話学習エンジン、テレビ用対話学習エンジン、及び/又は、専門用対話学習エンジンを含む
ことを特徴とする請求項1から3のいずれか1項に記載の対話装置。
【請求項5】
対話装置は、カメラに接続されており、
マルチメディアデータは、カメラによって撮影されたユーザの顔画像の特徴量であり、
関心度推定エンジンは、学習段階として、顔画像の特徴量とユーザの関心度とを対応付けて学習したものであり、推定段階として、マルチメディアデータとしての顔画像の特徴量を入力し、ユーザの関心度を出力する
ことを特徴とする請求項1から4のいずれか1項に記載の対話装置。
【請求項6】
関心度推定エンジンにおける顔画像の特徴量は、顔表情、視線及び/又は仕草に基づくものである
ことを特徴とする請求項5に記載の対話装置。
【請求項7】
対話装置は、マイクに接続されており、
マルチメディアデータは、マイクによって収音されたユーザの発話音声から音声認識された発話文であり、
関心度推定エンジンは、学習段階として、ユーザにおける発話文の特徴量とユーザの関心度とを対応付けて学習したものであり、推定段階として、マルチメディアデータとしての発話文の特徴量を入力し、ユーザの関心度を出力する
ことを特徴とする請求項1から6のいずれか1項に記載の対話装置。
【請求項8】
複数の対話学習エンジンから選択した対話学習エンジンを用いて、ユーザと対話する装置に搭載されたコンピュータを機能させるプログラムにおいて、
全ての対話学習エンジンから対話シナリオを取得し、全ての対話シナリオから所定条件に基づく複数の語彙を抽出する語彙抽出手段と、
抽出された複数の語彙を、意味属性的に類似するクラスタに分類したシソーラス辞書を作成すると共に、現在の対話内容に対応する語彙にマーカーを付すシソーラス辞書作成手段と、
対話中のユーザに基づくマルチメディアデータを取得するユーザデータ取得手段と、
マルチメディアデータから、現在の対話内容に対するユーザの関心度を推定する関心度推定エンジンと、
シソーラス辞書のマーカー語彙と類似度が最も高い対話シナリオを持つ対話学習エンジンを選択する対話学習エンジン選択手段と、
関心度が高いほどマーカー語彙と同じクラスタに属する他の語彙へ、関心度が低いほどマーカー語彙と異なるクラスタに属する語彙へ、マーカーを移動させるマーカー語彙移動制御手段と
してコンピュータを機能させることを特徴とするプログラム。
【請求項9】
複数の対話学習エンジンから選択した対話学習エンジンを用いて、ユーザと対話する装置の対話方法において、
装置は、
全ての対話学習エンジンから対話シナリオを取得し、全ての対話シナリオから所定条件に基づく複数の語彙を抽出し、抽出された複数の語彙を、意味属性的に類似するクラスタに分類したシソーラス辞書を作成すると共に、現在の対話内容に対応する語彙にマーカーを付すシソーラス辞書と、
対話中のユーザに基づくマルチメディアデータから、現在の対話内容に対するユーザの関心度を推定する関心度推定エンジンと
を有し、
対話中のユーザに基づくマルチメディアデータを取得する第1のステップと、
関心度推定エンジンを用いて、取得したマルチメディアデータから、現在の対話内容に対するユーザの関心度を推定する第2のステップと、
関心度が高いほどマーカー語彙と同じクラスタに属する他の語彙へ、関心度が低いほどマーカー語彙と異なるクラスタに属する語彙へ、マーカーを移動させる第3のステップと、
シソーラス辞書のマーカー語彙と類似度が最も高い対話シナリオを持つ対話学習エンジンを選択する第4のステップと、
を繰り返し実行することを特徴とする装置の対話方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザと自然な対話を実現する対話装置の技術に関する。
【背景技術】
【0002】
対話装置は、一般的に、マイクによってユーザの発話音声を収音し、その発話音声から音声認識によってテキストに変換し、そのテキストに応じた対話文を生成し、その対話文から音声合成によって生成した対話音声をスピーカから発声する。対話型AI(Artificial Intelligence)としては、例えば、「Siri(登録商標)」や「しゃべってコンシェル(登録商標)」のような対話システムや、「Google Home(登録商標)」や「Amazon Echo(登録商標)」のようなスマートスピーカがある。このような技術は、音楽の再生や、天気予報・ニュースを知らせるなどの特定タスクを実行することに適する。
【0003】
また、ユーザの対話相手を擬人化した「SOTA(登録商標)」や「ユニボー(登録商標)」のようなロボットの技術もある。この技術によれば、ロボットは、ユーザの周辺状況からキーワードを抽出し、そのキーワードをテンプレートに埋め込んだ対話文を生成し、その対話文をユーザへ発声する。これによって、対話のきっかけをユーザの周辺状況から得ることができる。
【0004】
従来、ユーザからの要求に返答するだけでなく、対話を継続するための技術がある。例えば複数の対話学習エンジンを備えた上で、ユーザから入力された発話文と過去の対話履歴とを用いて、強く関連する対話学習エンジンを選択し、その対話学習エンジンから返答する技術がある(例えば特許文献1参照)。
また、話題毎にキーワードリストを対応付けた上で、ユーザの発話文の中から形態素解析によって複数のキーワードを抽出し、キーワードリストと所定関係(類似関係及び上下関係)にある話題で対話を継続させる技術もある(例えば特許文献2参照)。この技術によれば、キーワードと関係がない対話に対しては、予め用意された対話シナリオに沿って対話を進行させる。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2007-47488号公報
【文献】特開2017-49471号公報
【非特許文献】
【0006】
【文献】NTTコミュニケーション科学基礎研究所、「汎用的な意味解析技術への挑戦」、[online]、[令和2年3月5日]、インターネット<URL:https://www.ntt.co.jp/journal/0806/files/jn200806024.pdf>
【文献】MathWorks、「顔認識」、[online]、[令和2年3月5日]、インターネット<https://jp.mathworks.com/discovery/face-recognition.html>
【発明の概要】
【発明が解決しようとする課題】
【0007】
前述した特許文献1及び2に記載の技術は、予め用意された対話シナリオに沿って対話を進行するために、話題が少ないという課題があった。特に、特許文献2に記載の技術は、ユーザの発話文と話題との所定関係でしか参照していないために、話題の展開は、キーワードリストに依存することとなっていた。
【0008】
これに対し、発明者らは、対話を継続させるために、ユーザの関心度の高い話題で、対話内容を展開する「雑談対話型AI」を開発することはできないか、と考えた。
【0009】
そこで、本発明は、ユーザに飽きられることなく雑談のような対話を継続するために、ユーザの関心度に応じて対話内容を切り替える対話装置、プログラム及び方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明によれば、複数の対話学習エンジンから選択した対話学習エンジンを用いて、ユーザと対話する対話装置において、
全ての対話学習エンジンから対話シナリオを取得し、全ての対話シナリオから所定条件に基づく複数の語彙を抽出する語彙抽出手段と、
抽出された複数の語彙を、意味属性的に類似するクラスタに分類したシソーラス辞書を作成すると共に、現在の対話内容に対応する語彙にマーカーを付すシソーラス辞書作成手段と、
対話中のユーザに基づくマルチメディアデータを取得するユーザデータ取得手段と、
マルチメディアデータから、現在の対話内容に対するユーザの関心度を推定する関心度推定エンジンと、
シソーラス辞書のマーカー語彙と類似度が最も高い対話シナリオを持つ対話学習エンジンを選択する対話学習エンジン選択手段と、
関心度が高いほどマーカー語彙と同じクラスタに属する他の語彙へ、関心度が低いほどマーカー語彙と異なるクラスタに属する語彙へ、マーカーを移動させるマーカー語彙移動制御手段と
を有することを特徴とする。
【0011】
本発明の対話装置における他の実施形態によれば、
語彙及び対話シナリオは、意味属性的に近いほど距離が近くなるようにベクトル表現されており、
シソーラス辞書作成手段は、語彙同士のベクトルの距離が近いほど同一のクラスタに分類する
ことも好ましい。
【0012】
本発明の対話装置における他の実施形態によれば、
マーカー語彙移動制御手段は、関心度が低いほどマーカー語彙との距離が遠いクラスタに属する語彙へ、マーカーを移動させる
ことも好ましい。
【0013】
本発明の対話装置における他の実施形態によれば、
複数の対話学習エンジンは、汎用対話学習エンジンに加えて、時事用対話学習エンジン、テレビ用対話学習エンジン、及び/又は、専門用対話学習エンジンを含む
ことも好ましい。
【0014】
本発明の対話装置における他の実施形態によれば、
対話装置は、カメラに接続されており、
マルチメディアデータは、カメラによって撮影されたユーザの顔画像の特徴量であり、
関心度推定エンジンは、学習段階として、顔画像の特徴量とユーザの関心度とを対応付けて学習したものであり、推定段階として、マルチメディアデータとしての顔画像の特徴量を入力し、ユーザの関心度を出力する
ことも好ましい。
【0015】
本発明の対話装置における他の実施形態によれば、
関心度推定エンジンにおける顔画像の特徴量は、顔表情、視線及び/又は仕草に基づくものである
ことも好ましい。
【0016】
本発明の対話装置における他の実施形態によれば、
対話装置は、マイクに接続されており、
マルチメディアデータは、マイクによって収音されたユーザの発話音声から音声認識された発話文であり、
関心度推定エンジンは、学習段階として、ユーザにおける発話文の特徴量とユーザの関心度とを対応付けて学習したものであり、推定段階として、マルチメディアデータとしての発話文の特徴量を入力し、ユーザの関心度を出力する
ことも好ましい。
【0017】
本発明によれば、複数の対話学習エンジンから選択した対話学習エンジンを用いて、ユーザと対話する装置に搭載されたコンピュータを機能させるプログラムにおいて、
全ての対話学習エンジンから対話シナリオを取得し、全ての対話シナリオから所定条件に基づく複数の語彙を抽出する語彙抽出手段と、
抽出された複数の語彙を、意味属性的に類似するクラスタに分類したシソーラス辞書を作成すると共に、現在の対話内容に対応する語彙にマーカーを付すシソーラス辞書作成手段と、
対話中のユーザに基づくマルチメディアデータを取得するユーザデータ取得手段と、
マルチメディアデータから、現在の対話内容に対するユーザの関心度を推定する関心度推定エンジンと、
シソーラス辞書のマーカー語彙と類似度が最も高い対話シナリオを持つ対話学習エンジンを選択する対話学習エンジン選択手段と、
関心度が高いほどマーカー語彙と同じクラスタに属する他の語彙へ、関心度が低いほどマーカー語彙と異なるクラスタに属する語彙へ、マーカーを移動させるマーカー語彙移動制御手段と
してコンピュータを機能させることを特徴とする。
【0018】
本発明によれば、複数の対話学習エンジンから選択した対話学習エンジンを用いて、ユーザと対話する装置の対話方法において、
装置は、
全ての対話学習エンジンから対話シナリオを取得し、全ての対話シナリオから所定条件に基づく複数の語彙を抽出し、抽出された複数の語彙を、意味属性的に類似するクラスタに分類したシソーラス辞書を作成すると共に、現在の対話内容に対応する語彙にマーカーを付すシソーラス辞書と、
対話中のユーザに基づくマルチメディアデータから、現在の対話内容に対するユーザの関心度を推定する関心度推定エンジンと
を有し、
対話中のユーザに基づくマルチメディアデータを取得する第1のステップと、
関心度推定エンジンを用いて、取得したマルチメディアデータから、現在の対話内容に対するユーザの関心度を推定する第2のステップと、
関心度が高いほどマーカー語彙と同じクラスタに属する他の語彙へ、関心度が低いほどマーカー語彙と異なるクラスタに属する語彙へ、マーカーを移動させる第3のステップと、
シソーラス辞書のマーカー語彙と類似度が最も高い対話シナリオを持つ対話学習エンジンを選択する第4のステップと、
を繰り返し実行することを特徴とする。
【発明の効果】
【0019】
本発明の対話装置、プログラム及び方法によれば、ユーザに飽きられることなく雑談のような対話を継続するために、ユーザの関心度に応じて対話を進行させることができる。
【図面の簡単な説明】
【0020】
図1】本発明における対話装置の周辺環境を表すシステム構成図である。
図2】本発明における対話装置の機能構成図である。
図3】本発明における語彙抽出部及びシソーラス辞書作成部の説明図である。
図4】本発明における関心度推定エンジンの説明図である。
図5】本発明におけるマーカー語彙移動制御部及び対話学習エンジン選択部の説明図である。
図6】対話装置とユーザとの間の対話を表すシーケンス図である。
【発明を実施するための形態】
【0021】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【0022】
図1は、本発明における対話装置の周辺環境を表すシステム構成図である。
【0023】
図1によれば、対話装置1は、キャラクタとしてのロボットであり、ユーザと雑談のような対話を継続するために、ユーザの関心度に応じて対話を進行させることができる。
対話装置1は、対話用のユーザインタフェースの入出力デバイスとして、マイク及びスピーカを搭載する。マイクによってユーザの発話音声を収音し、スピーカによって対話音声をユーザへ発声する。
また、対話用のユーザインタフェースの入出力デバイスとして、キー及びディスプレイを搭載したものであってもよい。ユーザのキー入力によって発話文を取得し、ディスプレイによって対話文をユーザへ明示するものであってもよい。
【0024】
対話装置1は、対話中のユーザの関心度を推定するために、ユーザに基づくマルチメディアデータを取得する。ここで、マルチメディアデータの取得用のユーザインタフェースとして、以下の2つの実施形態がある。
<第1の実施形態:ユーザの顔画像を撮影するカメラの場合>
<第2の実施形態:ユーザの声を収音するマイク場合>
(マイクは、対話用のユーザインタフェースと同様)
【0025】
図2は、本発明における対話装置の機能構成図である。
【0026】
図2によれば、対話装置1は、複数の異なる対話学習エンジン101~10nと、語彙抽出部11と、シソーラス辞書作成部12と、ユーザデータ取得部13(顔画像認識部131、音声認識部132)と、関心度推定エンジン14と、マーカー語彙移動制御部15と、対話学習エンジン選択部16と、対話実行部171と、音声変換部172とを有する。これら機能構成部は、対話装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現できる。また、これら機能構成部の処理の流れは、装置の対話方法としても理解できる。
【0027】
[対話学習エンジン101~10n]
対話装置1は、異なる複数の対話学習エンジン101~10nを備える。対話学習エンジン10はそれぞれ、特有の「対話シナリオ」を記憶している。対話学習エンジン10は、ユーザからの発話文に応じて、対話シナリオを辿りながら対話を進行する。
対話シナリオとは、対話文を含む対話ノードを、ユーザの発話文に応じてツリー状に辿るように構成したものである。例えば、ユーザの入力に対する応答パターンを記述するFST(Finite State Transducer)のスクリプトファイルで記述されたものであってもよい。
【0028】
対話学習エンジン10としては、例えば、汎用対話学習エンジンに加えて、時事用対話学習エンジン、テレビ用対話学習エンジン、及び/又は、専門用対話学習エンジンを含むものであってもよい。人間同士の雑談のように、現在進行中の話題と共通性を持ちながら、異なる分野の話題へ展開するために、複数の異なる分野の対話学習エンジンを備える。これによって、話題が豊富で飽きられにくい雑談的な対話を実現することができる。
【0029】
(汎用対話学習エンジン)
汎用対話学習エンジンは、例えば日常的な対話を進行する対話シナリオを記憶する。例えばクラウドソーシングによって構築された一般的な人間同士の対話を想定したものである。
(時事用対話学習エンジン)
時事用対話学習エンジンは、例えばニュースの話題に基づく対話を進行する対話シナリオを記憶する。例えばSNS(Social Networking Service)上で話題になっているニュースや、そのニュースに対するコメント(ツイート等)に基づく対話を進行する。
(テレビ用対話学習エンジン)
テレビ用対話学習エンジンは、例えばテレビの番組コンテンツに基づく対話を進行する対話シナリオを記憶する。例えば現在放送中の番組コンテンツのメタデータ(例えば電子番組表や、ナレーションの字幕など)に基づく話題を進行する。
(専門用対話学習エンジン)
専門用対話学習エンジンは、例えば科学技術のような特定の専門分野に基づく対話を進行する対話シナリオを記憶する。
その他、様々な性質を持つ対話学習エンジンを備えることが好ましい。
【0030】
図3は、本発明における語彙抽出部及びシソーラス辞書作成部の説明図である。
【0031】
[語彙抽出部11]
語彙抽出部11は、全ての対話学習エンジン101~10nから対話シナリオを取得し、全ての対話シナリオから所定条件に基づく複数の語彙(有効単語の群)を抽出する。対話シナリオは、ユーザの発話文に対する応答文を記述したものであって、テキスト群である。
語彙抽出部11は、これら対話シナリオの大量のテキスト群から、形態素解析によって一般名詞を抽出する(図3参照)。抽出された多数の一般名詞は、シソーラス辞書作成部12へ出力される。
【0032】
[シソーラス辞書作成部12]
シソーラス辞書作成部12は、抽出された複数の語彙を、意味属性的に類似するクラスタに分類したシソーラス(thesaurus)辞書を作成する。
【0033】
「語彙」は、意味属性的に近いほど距離(ユークリッド距離)が近くなるように、例えばWord2vecに基づくベクトル(分散ベクトル)で表現する。
「Word2vec」とは、単語の意味や文法を捉えるために単語をベクトル表現化して次元を圧縮する技術をいう。2つの語彙について、類似度が高いほどベクトル間距離は短くなり、類似度が低いほどベクトル間距離は長くなる。当然、同一カテゴリに属する語彙同士は、類似度が高くなる(ベクトル間距離は短くなる)。
語彙の類似度は、以下のようにコサイン類似度で表される。
S(a,b)=cosθ=(Va・Vb)/(|Va||Vb|)
Va:第1の語彙の特徴ベクトル
Vb:第2の語彙の特徴ベクトル
S(a,b):0~1(類似度が高いほど1に近づく)
【0034】
「シソーラス辞書」は、第1の語彙から第2の語彙までの距離を、第1の話題から第2の話題へ遷移した際の話題展開度合いを意味する。
本発明のシソーラス辞書は、各語彙のベクトルのユークリッド距離が近い(同義語又は関連語)ほど、同一のクラスタに分類するようにする。例えばk-meansのようなクラスタリング手法を用いて、多数の語彙を複数のクラスタに分類する。図3によれば、1つのカテゴリに複数の語彙が含まれている。同じクラスタに属する語彙同士は、ベクトルのユークリッド距離が近いものとなる。
尚、シソーラス辞書は、Wordnetを用いて、各カテゴリ階層の下に複数の語彙を置くサブ・ツリー構造に分類されたものであってもよい。
【0035】
図3によれば、1つのカテゴリと複数の語彙とが以下のような関係にある。
カテゴリ「国内」=>語彙「政治」「社会」「人」
カテゴリ「国際」=>語彙「中韓露」「米EU」「・・・」
・・・・・・・
例えば、語彙「政治」「社会」「人」のベクトル間距離は、比較的近くなる。また、語彙「中韓露」「米EU」のベクトル間距離も、比較的近くなる。一方で、語彙「社会」と語彙「中韓露」とのベクトル間距離は、比較的遠くなる。
また、カテゴリも、ベクトル表現される。例えばカテゴリ「国内」のベクトルは、語彙「政治」「社会」「人」のベクトルの平均値としてもよい。
【0036】
また、シソーラス辞書作成部12は、各対話シナリオもベクトル表現する。例えば、「対話シナリオに含まれる全ての語彙」について、全ての語彙のベクトルを平均化して、1つのベクトルで表現するようにする。即ち、1つの語彙又はカテゴリと、1つの対話シナリオとを、ベクトルの距離を類似度で判定することができる。
これによって、語彙、カテゴリ及び対話シナリオは、意味属性的に近いほど距離が近くなるようにベクトル表現される。
【0037】
更に、シソーラス辞書には、現在の対話内容に対応する語彙にマーカーが付されている。本発明によれば、シソーラス辞書の中で、語彙に付されるマーカーを移動させることによって、そのマーカー語彙又はカテゴリに基づく話題へ切り替わるように展開される。マーカー語彙の移動については、マーカー語彙移動制御部15によって後述する。
【0038】
尚、任意の語彙について、最も類似度が高いカテゴリに属するものであっても、その語彙とカテゴリとのベクトル間の距離が所定閾値以上である場合、「未知語」と判定するものであってもよい。その場合、全ての未知語に対して、クラスタリングを実行し、新規に複数のカテゴリを構成することもできる。
【0039】
<第1の実施形態:ユーザの顔画像を撮影するカメラの場合>
[ユーザデータ取得部13]
ユーザデータ取得部13は、対話中のユーザに基づくマルチメディアデータを取得する。第1の実施形態におけるマルチメディアデータは、カメラによって撮影された顔画像となる。
【0040】
(顔画像認識部131)
顔画像認識部131は、インカメラによって撮影されたユーザの顔画像(映像)を入力し、各画像からユーザ毎の顔領域を検出する。顔領域は、顔の特徴から作成されたテンプレートと一致する画像部分が検索される。例えば、顔のパーツの相対位置や大きさ、目や鼻やほお骨やあごの形を用いる。
そして、顔画像認識部131は、時系列の各画像から、顔パラメータの時系列変化を特徴量として抽出する。顔画像の時系列の特徴量は、顔表情、視線及び/又は仕草に基づくものである。尚、顔認識アルゴリズムとしては、様々な既存の方法がある(例えば非特許文献2参照)。
そして、顔画像の時系列の特徴量は、関心度推定エンジン14へ出力される。
【0041】
[関心度推定エンジン14]
関心度推定エンジン14は、マルチメディアデータ(顔画像の特徴量)から、現在の対話内容に対するユーザの関心度を推定する。
【0042】
図4は、本発明における関心度推定エンジンの説明図である。
【0043】
図4によれば、関心度推定エンジン14は、学習段階として、顔画像の特徴量とユーザの関心度とを対応付けて学習したものである。
学習段階における教師データの顔画像として、例えばIMDb(Internet Movie Database)のデータセット(例えば45,723枚)を用いることができる。各顔画像から時系列の特徴量を抽出し、その特徴量には、ユーザの関心度が付与されている。例えば目を見開いている顔画像の特徴量には、比較的高い関心度が付与されており、伏し目がちな顔画像の特徴量には、比較的低い関心度が付与されている。これら、顔画像の特徴量とユーザの関心度とが対応付けられた教師データを、例えば畳み込みニューラルネットワークに基づいて学習させる。
その後、推定段階として、関心度推定エンジン14は、ユーザの顔画像の特徴量を入力することによって、推定した関心度を出力する。推定した関心度は、マーカー語彙移動制御部15へ出力される。
【0044】
図5は、本発明におけるマーカー語彙移動制御部及び対話学習エンジン選択部の説明図である。
【0045】
[対話学習エンジン選択部16]
対話学習エンジン選択部16は、複数の対話学習エンジンの中から、いずれか1つの対話エンジンを選択する。このとき、シソーラス辞書の「マーカー語彙」と類似度が最も高い対話シナリオを持つ対話学習エンジンを選択する。
【0046】
図5によれば、シソーラス辞書には、カテゴリ毎に複数の語彙が含むクラスタが表されている。また、以下のように、カテゴリ毎に、いずれかの対話学習エンジンに紐付けられている。
時事用対話学習エンジン <->カテゴリ「国内」「国際」
経済用対話学習エンジン <->カテゴリ「経済」
テレビ用対話学習エンジン<->カテゴリ「エンタメ」「スポーツ」
技術用対話学習エンジン <->カテゴリ「IT」「科学」
汎用対話学習エンジン <->カテゴリ「ライフ」
地域用対話学習エンジン <->カテゴリ「地域」
シソーラス辞書によれば、複数の「語彙」が属する各カテゴリは、ベクトル表現されている。また、各対話学習エンジン10の対話シナリオ全体についても、ベクトル表現される。この場合、各カテゴリを、ベクトル表現としても最も類似する対話シナリオを持つ対話学習エンジン10に紐付けることができる。
結果的に、「マーカー語彙」に対して、類似度が最も高い対話シナリオを持つ対話学習エンジン10を選択することができる。
【0047】
[マーカー語彙移動制御部15]
マーカー語彙移動制御部15は、関心度が高いほどマーカー語彙と同じクラスタに属する他の語彙(同義語又は関連語)へ、関心度が低いほどマーカー語彙と異なるクラスタに属する語彙(反義語又は無関連語)へ、マーカーを移動させる。
【0048】
図6は、対話装置とユーザとの間の対話を表すシーケンス図である。
【0049】
図6(a)のシーケンスによれば、図5のマーカー語彙移動制御部15について、「ユーザの関心度が高い」場合について表す。
(S11)対話装置1は、経過時点t0で、シーケンス辞書におけるマーカーを、語彙「ゲーム」に付しているとする。図5によれば、語彙「ゲーム」は、カテゴリ「エンタメ」に属し、テレビ用対話学習エンジンが選択されているとする。
(S12)マーカー語彙「ゲーム」のカテゴリ「エンタメ」に対して、テレビ用対話学習エンジンが選択されている(図5参照)。テレビ用対話学習エンジンは、対話シナリオの中から「ゲーム」に適する対話文「ゲームは、AAAが今、流行ってるね!」を出力している。
(S13)これに対し、対話装置1は、ユーザの顔画像(マルチメディアデータ)を撮影する。その顔画像から、ユーザの関心度0.9が推定されたとする。例えば、閾値0.7以上は、関心度が高いと判定することができる。
(S14)このとき、対話装置1は、経過時点t1で、シーケンス辞書におけるマーカーを、関連度に応じたベクトル距離で、同じカテゴリ(クラスタ)に属する語彙「テレビ」へ移動させる(図5参照)。
(S15)マーカー語彙「テレビ」のカテゴリ「エンタメ」に対して、テレビ用対話学習エンジンが選択されている。テレビ用対話学習エンジンは、ユーザの発話文「僕は、BBBが好きだけど」を取得し、対話シナリオの中から「テレビ」「BBB」に適する対話文「BBBは、芸人Xが得意だって!」を出力している。
【0050】
図6(b)のシーケンスによれば、図5のマーカー語彙移動制御部15について、「ユーザの関心度が低い」場合について表す。
(S21)図6(a)のS11と同様。
(S22)図6(a)のS12と同様。
(S23)これに対し、対話装置1は、ユーザの顔画像(マルチメディアデータ)を撮影する。その顔画像から、ユーザの関心度0.2が推定されたとする。例えば、閾値0.3以下は、関心度が低いと判定することができる。
(S24)このとき、対話装置1は、経過時点t1で、シーケンス辞書におけるマーカーを、関連度に応じたベクトル距離で、別のカテゴリ(クラスタ)に属する語彙「ヘルス」へ移動させる(図5参照)。
(S25)マーカー語彙「ヘルス」のカテゴリ「ライフ」に対して、汎用対話学習エンジンが選択されている。汎用対話学習エンジンは、ユーザの発話文「・・・」を取得し、対話シナリオの中から「ヘルス」に適する対話文「毎日、運動はしてますか?」を出力している。
【0051】
このように、マーカー語彙移動制御部15は、関心度が低いほどマーカー語彙とのユークリッド距離が遠いクラスタに属する語彙へ、マーカーを移動させる。即ち、関心度の大きさに応じて、次にマーカーを移動させる距離を制御する。現在指示の距離が遠くなるほど、異なる話題で対話文が生成されることとなる。
【0052】
[対話実行部171・音声変換部172]
対話実行部171は、対話学習エンジン選択部16によって選択された対話学習エンジンを用いて、ユーザに対する対話文を出力する。
音声変換部172は、対話実行部171から出力された対話文を、音声合成によって音声信号に変換し、その音声信号をスピーカへ出力する。
このようにして、対話装置1は、ユーザとの間で、音声によって対話を進行していく。
【0053】
<第2の実施形態:ユーザの声を収音するマイク場合>
第1の実施形態によれば、ユーザに基づくマルチメディアデータが、カメラによって撮影されたユーザの顔画像であるとして説明した。
これに対して、第2の実施形態によれば、ユーザに基づくマルチメディアデータが、マイクによって収音されたユーザの声であるとする。この場合、図2によれば、ユーザデータ取得部13は、音声認識部132として機能する。
【0054】
(音声認識部132)
音声認識部132は、マイクによって収音されたユーザが発話した声から音声認識によって、発話文を出力する。
この場合、関心度推定エンジン14は、学習段階として、発話文の特徴量とユーザの関心度とを対応付けて学習したものとなる。また、関心度推定エンジン14は、推定段階として、マルチメディアデータとしての発話文を入力し、ユーザの関心度を出力する
【0055】
以上、詳細に説明したように、本発明の対話装置、プログラム及び方法によれば、ユーザに飽きられることなく雑談のような対話を継続するために、ユーザの関心度に応じて対話を進行させることができる。
尚、被験者実験の結果、政治やスポーツなどの幅広い話題に対して、従来技術における対話装置に対して、本発明の対話装置は、雑談のような対話を、2~3倍の時間の長さで継続することができた。
【0056】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【0057】
1 対話装置
10 対話学習エンジン
11 語彙抽出部
12 シソーラス辞書作成部
13 ユーザデータ取得部
131 顔画像認識部
132 音声認識部
14 関心度推定エンジン
15 マーカー語彙移動制御部
16 対話学習エンジン選択部
171 対話実行部
172 音声変換部
図1
図2
図3
図4
図5
図6