JP2020034626A - ユーザ発話テキストに応じてエージェントを交代させるプログラム、サーバ及び方法 - Google Patents

ユーザ発話テキストに応じてエージェントを交代させるプログラム、サーバ及び方法 Download PDF

Info

Publication number
JP2020034626A
JP2020034626A JP2018158795A JP2018158795A JP2020034626A JP 2020034626 A JP2020034626 A JP 2020034626A JP 2018158795 A JP2018158795 A JP 2018158795A JP 2018158795 A JP2018158795 A JP 2018158795A JP 2020034626 A JP2020034626 A JP 2020034626A
Authority
JP
Japan
Prior art keywords
agent
user
text
similarity
utterance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018158795A
Other languages
English (en)
Other versions
JP6909189B2 (ja
Inventor
俊一 田原
Shunichi Tawara
俊一 田原
啓一郎 帆足
Keiichiro Hoashi
啓一郎 帆足
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KDDI Corp
Original Assignee
KDDI Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by KDDI Corp filed Critical KDDI Corp
Priority to JP2018158795A priority Critical patent/JP6909189B2/ja
Publication of JP2020034626A publication Critical patent/JP2020034626A/ja
Application granted granted Critical
Publication of JP6909189B2 publication Critical patent/JP6909189B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】ユーザに対して1体のエージェントのみが対話することなく、ユーザ発話テキストに応じてエージェントを交代させるプログラム等を提供する。【解決手段】エージェント管理プログラムであって、エージェント毎に、ユーザ想定テキストとエージェント発話テキストとを対応付けたエージェントデータベースと、現選択のエージェントに対するユーザからのユーザ発話テキストと、全てのエージェントに含まれるユーザ想定テキストそれぞれとの類似度を算出する類似度算出手段と、現選択のエージェントの全てのユーザ想定テキストの類似度が所定閾値以上でない場合、類似度が所定閾値以上で且つ最も高いユーザ想定テキストを含む他のエージェントに交代するエージェント選択手段としてコンピュータを機能させる。【選択図】図1

Description

本発明は、シナリオを用いてユーザと対話するエージェント対話システムの技術に関する。
スマートフォンやタブレット端末では、ユーザに対して自然に対話する対話システムが普及しつつある。特に、コンピュータグラフィックスのキャラクタが、ユーザと音声やテキストで対話する機能を、「エージェント」と称す。エージェントは、ユーザから見て、ユーザに特別な意識を持たせることなく、ユーザの状況や、趣味趣向、感情に応じた対話を成立させる。
従来、漫画などの登場人物を模した複数のエージェントの中から、ユーザが1体のエージェントを選択することができる雑談対話システムの技術がある(例えば特許文献1参照)。この技術によれば、対話システムは、選択されたエージェントに基づく雑談データを取得し、対話時にその雑談データを用いて返答を生成する。対話の際、スマートフォンのディスプレイには、エージェントの姿が表示される(チャットボット型)。但し、エージェントの雑談データに含まれていないユーザからの発話に対しては、返答を生成することができない
尚、対話システムについて、ユーザの印象を調査した文献もある(例えば非特許文献1参照)。この文献によれば、ユーザは、キャラクタ性を持つ1体のエージェントとの対話システムと、キャラクタ性を持つ3体のエージェントとの対話システムとを用いている。但し、Wizard of Oz方式で実験したものに過ぎず、システム化されていない。
特開2014−98844号公報
Ana Paula Chaves, Marco Aurelio Gerosa, "\lochSingle or Multiple Conversational Agents? An Interactional Coherence Comparison"\loch ACM CHI Conference on Human Factors in Computing Systems. (2018, April)
前述した特許文献1によれば、チャットボット型のように、ユーザが1体のエージェントと対話する際に、ユーザの発話に対して、エージェントに返答候補が無い場合、その対話が破綻してしまうことになる。
そこで、本発明は、ユーザ発話テキストに応じてエージェントを交代させることができるプログラム、サーバ及び方法を提供することを目的とする。
本発明によれば、ユーザ発話テキストを入力し、エージェント発話テキストを返答する複数のエージェントを管理するようにコンピュータを機能させるエージェント管理プログラムであって、
エージェント毎に、ユーザ想定テキストとエージェント発話テキストとを対応付けたエージェントデータベースと、
現選択のエージェントに対するユーザからのユーザ発話テキストと、全てのエージェントに含まれるユーザ想定テキストそれぞれとの類似度を算出する類似度算出手段と、
現選択のエージェントの全てのユーザ想定テキストの類似度が所定閾値以上でない場合、類似度が所定閾値以上で且つ最も高いユーザ想定テキストを含む他のエージェントに交代するエージェント選択手段と
してコンピュータを機能させることを特徴とする。
本発明のプログラムにおける他の実施形態によれば、
エージェント選択手段によって他のエージェントに交代した際に、当該他のエージェントについて類似度が最も高いユーザ想定テキストに対応するエージェント発話テキストを返答する
ようにコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
エージェントデータベースは、エージェント毎に、エージェントペルソナテキストを更に対応付けており、
類似度算出手段は、ユーザ発話テキストと、各エージェントのエージェントペルソナテキストとの類似度を、当該エージェントの各ユーザ想定テキストの類似度に重み付ける
ようにコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
ユーザ毎に、ユーザプロファイルテキストを蓄積したユーザプロファイル蓄積手段として更に機能させ、
類似度算出手段は、当該ユーザのユーザプロファイルテキストと、各エージェントのエージェントペルソナテキスト及び/又はエージェント発話テキストとの類似度を、当該エージェントの全てのユーザ想定テキストの類似度に重み付ける
ようにコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
ユーザプロファイル蓄積手段は、SNS(Social Networking Service)によって各ユーザのユーザプロファイルテキストを取得する
ようにコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
エージェントペルソナテキストは、敬語表現の有無を含んでおり、
類似度算出手段は、更に、ユーザ発話テキストの敬語表現の有無と、複数のエージェントにおける敬語表現の有無とが不一致となる場合、当該エージェントの全てのユーザ想定テキストの類似度を零とする
ようにコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
類似度算出手段は、ユーザ発話テキストとユーザ想定テキストとの両方を文字要素に基づくベクトルに変換し、2つのベクトル間の距離をコサイン類似度として算出する
ようにコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
ユーザ発話テキストは、ユーザから発話された音声を音声認識処理によって変換したテキストであるか、又は、ユーザから入力されたテキストである
ことも好ましい。
本発明のプログラムにおける他の実施形態によれば、
エージェント選択手段は、現選択のエージェントから他のエージェントへ交代させる際に、現選択のエージェントが当該他のエージェントへ交代する旨のエージェント発話テキストを送信し、その後、当該他のエージェントにおける最も類似度が高いユーザ想定テキストに対応するエージェント発話テキストを送信する
ことも好ましい。
本発明によれば、前述したエージェント管理プログラムと通信する装置に搭載されたコンピュータを機能させるユーザプログラムであって、
エージェント管理プログラムによって選択されたエージェントのキャラクタをディスプレイに表示すると共に、エージェント発話テキストをユーザに明示し、ユーザによって入力又は発話されたユーザ発話テキストをエージェント管理プログラムへ送信する
ようにコンピュータを機能させることも好ましい。
本発明によれば、ユーザ操作に基づく端末に対して、ユーザ発話テキストに応じてエージェント発話テキストを返答する複数のエージェントを管理する対話サーバであって、
エージェント毎に、ユーザ想定テキストとエージェント発話テキストとを対応付けたエージェントデータベースと、
現選択のエージェントに対するユーザからのユーザ発話テキストと、全てのエージェントに含まれるユーザ想定テキストそれぞれとの類似度を算出する類似度算出手段と、
現選択のエージェントの全てのユーザ想定テキストの類似度が所定閾値以上でない場合、類似度が所定閾値以上で且つ最も高いユーザ想定テキストを含む他のエージェントに交代するエージェント選択手段と
を有することを特徴とする。
本発明によれば、ユーザ操作に基づく端末に対して、ユーザ発話テキストに応じてエージェント発話テキストを返答する複数のエージェントを管理する装置のエージェント管理方法であって、
装置は、エージェント毎に、ユーザ想定テキストとエージェント発話テキストとを対応付けたエージェントデータベースと、
装置は、
現選択のエージェントに対するユーザからのユーザ発話テキストと、全てのエージェントに含まれるユーザ想定テキストそれぞれとの類似度を算出する第1のステップと、
現選択のエージェントの全てのユーザ想定テキストの類似度が所定閾値以上でない場合、類似度が所定閾値以上で且つ最も高いユーザ想定テキストを含む他のエージェントに交代する第2のステップと
を実行することを特徴とする。
本発明のプログラム、サーバ及び方法によれば、ユーザ発話テキストに応じてエージェントを交代させることができる。特に、現選択のエージェントについて、ユーザ発話テキストに対して応答候補となるエージェント発話テキストが無い場合、他のエージェントに交代することによって、ユーザから見た対話内容を充実させることができる。
本発明における対話サーバの機能構成図である。 エージェントデータベースに登録された各エージェントのテーブルである。 本発明におけるテキスト間の類似度の算出を表す説明図である。 ユーザ発話テキストとユーザ想定テキストとの類似度の算出を表す説明図である。 ユーザ発話テキストとエージェントペルソナテキストとの類似度の算出を表す説明図である。 ユーザとエージェントとの間の敬語表現に基づく類似度の算出を表す説明図である。 ユーザプロファイルテキストとエージェントペルソナテキストとの類似度の算出を表す説明図である。
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
図1は、本発明における対話サーバの機能構成図である。
図1によれば、エージェントを実行する対話サーバ1は、ユーザプログラムを実行する端末2と、ネットワークを介して接続されている。
端末2は、例えばスマートフォンであって、ユーザに対するマイク及びスピーカと、エージェントのキャラクタを表示するディスプレイとを有する。
端末2には、ユーザとの対話のインタフェースとなるユーザプログラムが実装されており、対話サーバ1から受信したエージェントキャラクタをディスプレイに表示すると共に、エージェント発話テキストをユーザに明示する。また、ユーザから発話又は入力されたユーザ発話テキストは、対話サーバ1へ送信される。
ユーザ発話テキストは、ユーザから発話された音声を音声認識処理によって変換したテキストであるか、又は、ユーザから入力されたテキストである。ユーザが音声発話で入力する場合、端末2のディスプレイにマイク入力ボタンを表示し、ユーザが発話テキストを入力する場合、端末2のディスプレイに入力フォームを表示する。
対話サーバ1は、ユーザ発話テキストを入力し、エージェント発話テキストを返答する複数のエージェントを管理する。対話サーバ1のエージェントは、ユーザと対話的にシナリオを進行させる。
図1によれば、対話サーバ1は、既存機能として、対話インタラクション部100と、エージェント対話部101とを有する。
また、対話サーバ1は、本発明の機能として、エージェントデータベース110と、類似度算出部111と、エージェント選択部112と、ユーザプロファイル蓄積部113とを有する。
これら機能構成部は、装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。また、これら機能構成部の処理の流れは、エージェント選択方法としても理解できる。
[対話インタラクション部100]
対話インタラクション部100は、端末2のユーザプログラムと、エージェント対話部101のエージェントとのインタフェースとなる。対話インタラクション部100は、端末2へ、エージェント対話部101におけるキャラクタ及びエージェント発話テキストを送信すると共に、端末2から、ユーザ発話テキストを受信し、エージェント対話部101へ出力する。
[エージェント対話部101]
エージェント対話部101は、複数のエージェントを管理し、エージェント選択部112から指示されたエージェントを起動する。
そして、エージェント対話部101は、対話インタラクション部100から入力したユーザ発話テキストを、類似度算出部111へ出力する。また、エージェント対話部101は、エージェント選択部112から指示されたエージェントに基づいて、そのエージェント発話テキストを、対話インタラクション部100へ出力する。
エージェント対話部101は、エージェント選択部112からの指示に応じて、エージェントを交代させる。
[エージェントデータベース110]
エージェントデータベース110は、エージェント毎に、「ユーザ想定テキスト」と「エージェント発話テキスト」とを対応付けたものである。
図2は、エージェントデータベースに登録された各エージェントのテーブルである。
図2のエージェントデータベース110によれば、ユーザからユーザ想定テキストが発話された場合、そのエージェントは、それに対応するエージェント発話テキストを返答する、ことを意味する。
また、エージェントデータベース110は、エージェント毎に、「エージェントペルソナテキスト」を更に対応付けていることも好ましい。エージェントは、擬人化したものであるので、そのキャラクタ特性としてのエージェントペルソナテキストを持つ。
図2には、4つのエージェントが登録されている。
例えばエージェント1は、エージェントペルソナテキストとして、「年齢:22歳」「職業:学生」「趣味:バイク」等が登録されている。
エージェント1は、ユーザ想定テキスト「休講になった」がユーザから発話された場合、エージェント発話テキスト「ラッキー!このゲーム面白いよ」をユーザへ返答する。
また、エージェント1は、ユーザ想定テキスト「バイト探してる」がユーザから発話された場合、エージェント発話テキスト「埼玉にこの求人があるよ」をユーザへ返答する。
このように他にも、エージェント2「職業:会社員」、エージェント3「ジムトレーナ」、エージェント4「職業:バイト」が登録されている。
尚、エージェントデータべース110は、ユーザ想定テキスト及びエージェント発話テキストの組を、ツリー状に並べたものであってもよい。ユーザからの返答に応じて、ツリーを辿って、ユーザとの間の対話を進めることもできる。
[ユーザプロファイル蓄積部113]
ユーザプロファイル蓄積部113は、ユーザ毎に、ユーザプロファイルテキストを蓄積する。
ユーザプロファイルテキストは、SNS(Social Networking Service)によってユーザ毎に取得されたものであってもよい。例えばSNSのプロファイルを、ユーザプロファイルテキストとしてもよい。
また、例えばSNSの投稿文から、ユーザの趣味嗜好や最新の状況に関する情報を抽出し、それをユーザプロファイルテキストとしてもよい。例えば、そのユーザの投稿文を形態素解析によって単語を抽出し、TF−IDF(Term Frequency - Inverse Document Frequency:単語の出現頻度−逆出現頻度)によって特徴的な単語を、ユーザプロファイルテキストとすることも好ましい。
[類似度算出部111]
<ユーザ発話テキストとユーザ想定テキストとの類似度>
類似度算出部111は、現選択のエージェントに対するユーザからの「ユーザ発話テキスト」と、現選択のエージェントも含めた全てのエージェントに含まれる「ユーザ想定テキスト」それぞれとの類似度を算出する。
類似度算出部111は、ユーザ発話テキストとユーザ想定テキストとの両方を文字要素に基づくベクトルに変換し、2つのベクトル間の距離を「コサイン類似度」として算出する。
具体的には、ユーザ発話テキストを、形態素解析によって複数の単語に分解し、Bag Of Wordsを用いて特徴ベクトルに変換する。「Bag-of-Words」とは、テキストに含まれる各単語の出現頻度のみを表現したベクトルをいう。ここでは、単語の出現順は無視される。この特徴ベクトルは、単語を軸とし、出現頻度を値として、その空間の1点にそのテキストを位置付けたものである。
同様に、全てのエージェントに含まれる各ユーザ想定テキストを、形態素解析によって複数の単語に分解し、Bag Of Wordsを用いて特徴ベクトルに変換する。
そして、類似度算出部111は、ユーザ発話テキストioの平均特徴ベクトルと、全てのエージェントに含まれる各ユーザ想定テキストajの平均特徴ベクトルとの間で、コサイン類似度S(io,aj)を算出する。
i:ユーザ
io:ユーザ発話テキストの識別子(ユーザiのo番目の発話)
a:エージェントの識別子
aj:ユーザ想定テキストの識別子
例えば以下の概念式で算出される。
Vio:ユーザ発話テキストioにおける単語群の特徴ベクトル
Vaj:エージェントaのユーザ想定テキストajにおける単語群の特徴ベクトル
S(io,aj)=cosθ=(Vio・Vaj)/(|Vio||Vaj|)
コサイン類似度S(io,aj)は、0〜1の値となり、類似性が高いほど1に近づく。
ここで、ユーザ発話テキストからみて、コサイン類似度Sが所定閾値を超えるユーザ想定テキストが検出されなかった場合、改めて、Word2vecを用いてコサイン類似度Sを算出する。「Word2vec」とは、単語の意味や文法を捉えるために単語をベクトル表現化して次元を圧縮する技術をいう。
具体的には、ユーザ発話テキストを、形態素解析によって複数の単語に分解し、Word2vecを用いて特徴ベクトルに変換する。同様に、全てのエージェントに含まれる各ユーザ想定テキストを、形態素解析によって複数の単語に分解し、Word2vecを用いて特徴ベクトルに変換する。
勿論、Bag Of WordsやWord2vecに限ることなく、各単語の品詞又は意味を解析した特徴ベクトルに変換することができればよい。
[エージェント選択部112]
エージェント選択部112は、現選択のエージェントの全てのユーザ想定テキストの類似度が所定閾値以上でない場合、類似度が所定閾値以上で且つ最も高いユーザ想定テキストを含む他のエージェントに交代する。
また、エージェント選択部112によって他のエージェントに交代した際に、エージェント対話部101へ、交代した当該他のエージェントについて類似度が最も高いユーザ想定テキストに対応するエージェント発話テキストを返答するべく指示する。
図3は、本発明におけるテキスト間の類似度の算出を表す説明図である。
最初に、ユーザに対して、エージェント2が選択されているとする。
(S31)ユーザは、ユーザ発話テキスト「今日会社行ったけど疲れたなあ」と発話したとする。
このとき、ユーザ発話テキストと、エージェント2に登録された全てのユーザ想定テキストとのコサイン類似度を算出する。
ユーザ発話テキスト:「今日会社行ったけど疲れたなあ」
(エージェント2)
ユーザ想定テキスト:「会社は疲れます」 ★コサイン類似度Sが最高
「プレゼン発表がありました」
「会議が多かったです」
・・・・・・
「ジムには行ってない」
ここで、ユーザ発話テキスト「今日会社行ったけど疲れたなあ」に対して、ユーザ想定テキスト「会社は疲れます」とのコサイン類似度Sが最も高いとする。また、そのコサイン類似度Sは、所定閾値(例えば0.7)以上であったとする。
(S32)最も高いコサイン類似度Sが所定閾値以上であるので、エージェント2を交代しない。そして、ユーザ想定テキスト「会社は疲れます」に対応して、エージェント2から、エージェント発話テキスト「週末までの我慢です」を、エージェント対話部101へ指示する。
即ち、現選択のエージェントの中に、ユーザ発話テキストに対して所定閾値以上のコサイン類似度Sとなるユーザ想定テキストが1つでもあれば、エージェントを交代しない。
(S33)これに対して、ユーザは、ユーザ発話テキスト「ジムに行って体力つけなきゃ」と発話したとする。
このとき、ユーザ発話テキストと、エージェント2に登録された全てのユーザ想定テキストとのコサイン類似度を算出する。
ユーザ発話テキスト:「ジムに行って体力つけなきゃ」
(エージェント2)
ユーザ想定テキスト:「会社は疲れます」
「プレゼン発表がありました」
「会議が多かったです」
・・・・・・
「ジムには行ってない」 ★コサイン類似度が最高
ここで、ユーザ発話テキスト「ジムに行って体力つけなきゃ」に対して、ユーザ想定テキスト「ジムには行ってない」のコサイン類似度Sが最も高いとする。しかしながら、そのコサイン類似度Sは、所定閾値(例えば0.7)よりも低いとする。
この場合、ユーザ発話テキストと、エージェント2以外の他のエージェントにおける、全てのユーザ想定テキストとのコサイン類似度Sを算出する。
図4は、ユーザ発話テキストとユーザ想定テキストとの類似度の算出を表す説明図である。
図4によれば、以下のテキスト同士の類似度が算出されている。
ユーザ発話テキスト:「ジムに行って体力つけなきゃ」
(エージェント1)
ユーザ想定テキスト:「休講になった」
「バイト探してる」
「レポートが大変」
・・・・・・
「電車が混んでて大変でした」
(エージェント3)
ユーザ想定テキスト:「筋トレはいいよね」
「ジムには行っている」 ★コサイン類似度Sが最高
「残業が多い」
・・・・・・
「電車が混んでて」
(エージェント4)
ユーザ想定テキスト:「乾燥する季節です」
「友達と買い物に行くよ」
「夜遅くまでバイトだった」
・・・・・・
「電車が混んでて大変」
ここで、ユーザ発話テキスト「ジムに行って体力つけなきゃ」に対して、エージェント3のユーザ想定テキスト「ジムには行っている」のコサイン類似度Sが最も高いとする。また、そのコサイン類似度Sは、所定閾値(例えば0.7)以上であったとする。
(S34)エージェント2にコサイン類似度Sが所定閾値以上となるユーザ想定テキストが無いので、エージェント2から、エージェント3へを交代する。そして、ユーザ想定テキスト「ジムには行っている」に対応して、エージェント3から、エージェント発話テキスト「ジムは会社帰りですか?」を、エージェント対話部101へ指示する。
即ち、現選択のエージェントの中に、ユーザ発話テキストに対して所定閾値以上のコサイン類似度となるユーザ想定テキストが1つもなく、他のエージェントの中に、ユーザ発話テキストに対して所定閾値以上のコサイン類似度となるユーザ想定テキストが1つでもあれば、そのエージェントに交代する。
他の実施形態として、図3によれば、S33の後段にS331のエージェント発話テキストが返答されている。
ユーザから見て、エージェント2からS32のエージェント発話テキスト「週末までの我慢です」に対して、S33のユーザ発話テキスト「ジムに行って体力つけなきゃ」と返答した後、急に、別のエージェント3からS34のエージェント発話テキスト「ジムは会社帰りですか?」と言われると、違和感があり、自然な対話の流れではない。現在まで対話していたエージェント2が突然居なくなり、他のエージェント3から急に発話されてしまうためである。
そのために、エージェント選択部112は、現選択のエージェントから他のエージェントへ交代させる際に、現選択のエージェントが当該他のエージェントへ交代する旨のエージェント発話テキストを送信し、その後、当該他のエージェントにおける最も類似度が高いユーザ想定テキストに対応するエージェント発話テキストを送信する。
図3のS331によれば、交代前のエージェント2が、エージェント発話テキスト「そう言えば、ジムトレーナさんも同じこと言ってました」と発話することによって、ユーザに対して、ジムトレーナのエージェント3を予め意識させておくことができる。
類似度算出部111は、前述した実施形態によれば、<ユーザ発話テキストとユーザ想定テキストとの類似度S>を算出する。
これに対して、他の実施形態として、この類似度に、以下のような類似度を「重み付け」ることも好ましい。
<ユーザ発話テキストとエージェントペルソナテキストとの類似度W1
<ユーザ発話テキストの敬語表現と、エージェント発話テキストの敬語表現との関係K>
<ユーザプロファイルテキストとエージェントペルソナテキストとの類似度W2
<ユーザプロファイルテキストとユーザ想定テキストとの類似度W3
<ユーザ発話テキストとエージェントペルソナテキストとの類似度W1
図5は、ユーザ発話テキストとエージェントペルソナテキストとの類似度の算出を表す説明図である。
類似度算出部111は、ユーザ発話テキストioと、各エージェントaのエージェントペルソナテキストPaとの類似度W1(コサイン類似度)を、当該エージェントの各ユーザ想定テキストの類似度Sに重み付ける。
Pa:エージェントaのエージェントペルソナテキスト
1(io,Pa)
<ユーザ発話テキストの敬語表現と、エージェント発話テキストの敬語表現との関係K>
図6は、ユーザとエージェントとの間の敬語表現に基づく類似度の算出を表す説明図である。
他の実施形態として、エージェントペルソナテキストが、敬語表現の有無を含んでいることも好ましい。
類似度算出部111は、ユーザ発話テキストが敬語表現であるか否かを判定するために、ユーザ発話テキストを形態素解析した述語によって判定するものであってもよいし、ユーザプロファイルに記述されたものであってもよい。
同様に、エージェント発話テキストが敬語表現であるか否かを判定するために、エージェント発話テキストを形態素解析した述語によって判定するものであってもよいし、エージェントペルソナテキストに記述されたものであってもよい。
そして、類似度算出部111は、ユーザ発話テキストの敬語表現(有/無)と、各エージェントのエージェント発話テキストの敬語表現(有/無)とが一致しているか否かを判定する。ここで、ユーザ発話テキストの敬語表現が有りで、エージェント発話テキストの敬語表現が無しの場合、そのエージェントを選択しない。その場合、そのエージェントにおける全てのユーザ想定テキストのコサイン類似度を、零とするのが好ましい。ユーザが敬語で話すのに対し、エージェントが平常語で話すことは、自然な対話とはいえない。
i:ユーザ
a:エージェント
K(i,a)=0, 0<K(i,a)≦1
ユーザ発話テキストとエージェント発話テキストとの敬語表現が一致する場合、Kに対して0.00より大きく1.00以下の任意の数とする。一方で、一致しない場合、K=0とする。
また、ユーザプロファイルテキストの年齢と、エージェントプロファイルテキストの年齢とを比較するものであってもよい。
ユーザの年齢が、エージェントの年齢よりも高い場合、エージェント発話テキストは、敬語であることが好ましい。その場合、敬語表現無しとなるエージェントが選択されないように、そのようなエージェントにおける全てのユーザ想定テキストのコサイン類似度を、零とする。年上の相手と対話する場合、敬語を使うのが一般的であるからである。
<ユーザプロファイルテキストとエージェントペルソナテキストとの類似度W2
図7は、ユーザプロファイルテキストとエージェントペルソナテキストとの類似度の算出を表す説明図である。
類似度算出部111は、当該ユーザのユーザプロファイルテキストuと、各エージェントaのエージェントペルソナテキストPaとの類似度W2(コサイン類似度)を、当該エージェントの全てのユーザ想定テキストの類似度Sに重み付ける。
u:ユーザプロファイルテキスト
Pa:エージェントaのエージェントペルソナテキスト
2(u,Pa)
ユーザプロファイルテキストとエージェントペルソナテキストとの類似度が大きいほど、ユーザは、自らの趣味嗜好に近いエージェントほど親近感を持つ。前述した図3の場合、ユーザに対して、年齢や職業が類似するエージェント2が選択される。
<ユーザプロファイルテキストとユーザ想定テキストとの類似度W3
類似度算出部111は、当該ユーザのユーザプロファイルテキストuと、各エージェントaのユーザ想定テキストajとの類似度W3(コサイン類似度)を、当該エージェントの全てのユーザ想定テキストの類似度Sに重み付ける。
u:ユーザプロファイルテキスト
aj:エージェントaのユーザ想定テキストj
3(u,aj)
最終的に、ユーザ想定テキストの類似度S(io,aj)に、他の類似度Wを重み付けた総合類似度Sallを、以下のように算出する。
ここで、エージェント交代の場合と、初期エージェントの選択の場合とがある。
<エージェント交代の場合>
Sall(io,aj)=S(io,aj)×W1(io,Pa)×K(i,a)
敬語有無K=0の場合、Sall(io,aj)=0となる。
そして、総合類似度Sallが最も高いユーザ想定テキストを検出し、そのユーザ想定テキストを登録する「エージェント」を選択する。また、そのユーザ想定テキスト対応するエージェント発話テキストが、エージェント対話部101へ指示される。
尚、Sall(io,aj)=S(io,aj)×W1(io,aj)×K×W2(io,aj)×W3(io,aj)としてもよい。但し、W2(io,aj)×W3(io,aj)の重みの寄与率は低いことが好ましい。エージェント交代の判定が、ユーザプロファイルに引っ張られないようにすべきという理由に基づく。
<初期エージェントの選択の場合>
Sall(io,aj)=W2(u,Pa)×W3(u,aj)
対話開始時にはユーザ発話テキストが存在しないために、ユーザプロファイルを比較対象として、エージェントを選択することが好ましい。
以上、詳細に説明したように、本発明のプログラム、サーバ及び方法によれば、ユーザ発話テキストに応じてエージェントを交代させることができる。特に、現選択のエージェントについて、ユーザ発話テキストに対して応答候補となるエージェント発話テキストが無い場合、他のエージェントに交代することによって、ユーザから見た対話内容を充実させることができる。
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
1 対話サーバ
100 対話インタラクション部
101 エージェント対話部
110 エージェントデータベース
111 類似度算出部
112 エージェント選択部
113 ユーザプロファイル蓄積部
2 端末

Claims (12)

  1. ユーザ発話テキストを入力し、エージェント発話テキストを返答する複数のエージェントを管理するようにコンピュータを機能させるエージェント管理プログラムであって、
    エージェント毎に、ユーザ想定テキストとエージェント発話テキストとを対応付けたエージェントデータベースと、
    現選択のエージェントに対するユーザからのユーザ発話テキストと、全てのエージェントに含まれるユーザ想定テキストそれぞれとの類似度を算出する類似度算出手段と、
    現選択のエージェントの全てのユーザ想定テキストの類似度が所定閾値以上でない場合、類似度が所定閾値以上で且つ最も高いユーザ想定テキストを含む他のエージェントに交代するエージェント選択手段と
    してコンピュータを機能させることを特徴とするエージェント管理プログラム。
  2. 前記エージェント選択手段によって他のエージェントに交代した際に、当該他のエージェントについて前記類似度が最も高いユーザ想定テキストに対応するエージェント発話テキストを返答する
    ようにコンピュータを機能させることを特徴とする請求項1に記載のエージェント管理プログラム。
  3. 前記エージェントデータベースは、エージェント毎に、エージェントペルソナテキストを更に対応付けており、
    前記類似度算出手段は、前記ユーザ発話テキストと、各エージェントのエージェントペルソナテキストとの類似度を、当該エージェントの各ユーザ想定テキストの類似度に重み付ける
    ようにコンピュータを機能させることを特徴とする請求項1又は2に記載のエージェント管理プログラム
  4. ユーザ毎に、ユーザプロファイルテキストを蓄積したユーザプロファイル蓄積手段として更に機能させ、
    前記類似度算出手段は、当該ユーザのユーザプロファイルテキストと、各エージェントのエージェントペルソナテキスト及び/又はエージェント発話テキストとの類似度を、当該エージェントの全てのユーザ想定テキストの類似度に重み付ける
    ようにコンピュータを機能させることを特徴とする請求項3に記載のエージェント管理プログラム。
  5. 前記ユーザプロファイル蓄積手段は、SNS(Social Networking Service)によって各ユーザのユーザプロファイルテキストを取得する
    ようにコンピュータを機能させることを特徴とする請求項4に記載のエージェント管理プログラム。
  6. 前記エージェントペルソナテキストは、敬語表現の有無を含んでおり、
    前記類似度算出手段は、更に、前記ユーザ発話テキストの敬語表現の有無と、複数のエージェントにおける敬語表現の有無とが不一致となる場合、当該エージェントの全てのユーザ想定テキストの類似度を零とする
    ようにコンピュータを機能させることを特徴とする請求項3から5のいずれか1項に記載のエージェント管理プログラム。
  7. 前記類似度算出手段は、ユーザ発話テキストとユーザ想定テキストとの両方を文字要素に基づくベクトルに変換し、2つのベクトル間の距離をコサイン類似度として算出する
    ようにコンピュータを機能させることを特徴とする請求項1から6のいずれか1項に記載のエージェント管理プログラム。
  8. 前記ユーザ発話テキストは、ユーザから発話された音声を音声認識処理によって変換したテキストであるか、又は、ユーザから入力されたテキストである
    ことを特徴とする請求項1から7のいずれか1項に記載のエージェント管理プログラム。
  9. 前記エージェント選択手段は、現選択のエージェントから他のエージェントへ交代させる際に、現選択のエージェントが当該他のエージェントへ交代する旨のエージェント発話テキストを送信し、その後、当該他のエージェントにおける最も類似度が高いユーザ想定テキストに対応するエージェント発話テキストを送信する
    ことを特徴とする請求項1から8のいずれか1項に記載のエージェント管理プログラム。
  10. 請求項1から9のいずれか1項に記載のエージェント管理プログラムと通信する装置に搭載されたコンピュータを機能させるユーザプログラムであって、
    前記エージェント管理プログラムによって選択されたエージェントのキャラクタをディスプレイに表示すると共に、前記エージェント発話テキストをユーザに明示し、ユーザによって入力又は発話されたユーザ発話テキストを前記エージェント管理プログラムへ送信する
    ようにコンピュータを機能させることを特徴とするユーザプログラム。
  11. ユーザ操作に基づく端末に対して、ユーザ発話テキストに応じてエージェント発話テキストを返答する複数のエージェントを管理する対話サーバであって、
    エージェント毎に、ユーザ想定テキストとエージェント発話テキストとを対応付けたエージェントデータベースと、
    現選択のエージェントに対するユーザからのユーザ発話テキストと、全てのエージェントに含まれるユーザ想定テキストそれぞれとの類似度を算出する類似度算出手段と、
    現選択のエージェントの全てのユーザ想定テキストの類似度が所定閾値以上でない場合、類似度が所定閾値以上で且つ最も高いユーザ想定テキストを含む他のエージェントに交代するエージェント選択手段と
    を有することを特徴とする対話サーバ。
  12. ユーザ操作に基づく端末に対して、ユーザ発話テキストに応じてエージェント発話テキストを返答する複数のエージェントを管理する装置のエージェント管理方法であって、
    前記装置は、エージェント毎に、ユーザ想定テキストとエージェント発話テキストとを対応付けたエージェントデータベースと、
    前記装置は、
    現選択のエージェントに対するユーザからのユーザ発話テキストと、全てのエージェントに含まれるユーザ想定テキストそれぞれとの類似度を算出する第1のステップと、
    現選択のエージェントの全てのユーザ想定テキストの類似度が所定閾値以上でない場合、類似度が所定閾値以上で且つ最も高いユーザ想定テキストを含む他のエージェントに交代する第2のステップと
    を実行することを特徴とするエージェント管理方法。
JP2018158795A 2018-08-27 2018-08-27 ユーザ発話テキストに応じてエージェントを交代させるプログラム、サーバ及び方法 Active JP6909189B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018158795A JP6909189B2 (ja) 2018-08-27 2018-08-27 ユーザ発話テキストに応じてエージェントを交代させるプログラム、サーバ及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018158795A JP6909189B2 (ja) 2018-08-27 2018-08-27 ユーザ発話テキストに応じてエージェントを交代させるプログラム、サーバ及び方法

Publications (2)

Publication Number Publication Date
JP2020034626A true JP2020034626A (ja) 2020-03-05
JP6909189B2 JP6909189B2 (ja) 2021-07-28

Family

ID=69667883

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018158795A Active JP6909189B2 (ja) 2018-08-27 2018-08-27 ユーザ発話テキストに応じてエージェントを交代させるプログラム、サーバ及び方法

Country Status (1)

Country Link
JP (1) JP6909189B2 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002132804A (ja) * 2000-10-24 2002-05-10 Sanyo Electric Co Ltd ユーザ支援システム
JP2006268428A (ja) * 2005-03-24 2006-10-05 Kenwood Corp 情報呈示装置、情報呈示方法、および、情報呈示用プログラム
JP2011103018A (ja) * 2009-11-10 2011-05-26 Nippon Telegr & Teleph Corp <Ntt> 質問応答装置、質問応答方法、質問応答プログラム
JP2014167722A (ja) * 2013-02-28 2014-09-11 Nihon Unisys Ltd 商品情報提供システムおよび商品情報提供用プログラム
JP2014182548A (ja) * 2013-03-19 2014-09-29 Nihon Unisys Ltd 商品情報提供システムおよび商品情報提供用プログラム
JP2017108767A (ja) * 2015-12-14 2017-06-22 カシオ計算機株式会社 対話装置、ロボット、対話方法及びプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002132804A (ja) * 2000-10-24 2002-05-10 Sanyo Electric Co Ltd ユーザ支援システム
JP2006268428A (ja) * 2005-03-24 2006-10-05 Kenwood Corp 情報呈示装置、情報呈示方法、および、情報呈示用プログラム
JP2011103018A (ja) * 2009-11-10 2011-05-26 Nippon Telegr & Teleph Corp <Ntt> 質問応答装置、質問応答方法、質問応答プログラム
JP2014167722A (ja) * 2013-02-28 2014-09-11 Nihon Unisys Ltd 商品情報提供システムおよび商品情報提供用プログラム
JP2014182548A (ja) * 2013-03-19 2014-09-29 Nihon Unisys Ltd 商品情報提供システムおよび商品情報提供用プログラム
JP2017108767A (ja) * 2015-12-14 2017-06-22 カシオ計算機株式会社 対話装置、ロボット、対話方法及びプログラム

Also Published As

Publication number Publication date
JP6909189B2 (ja) 2021-07-28

Similar Documents

Publication Publication Date Title
US11397507B2 (en) Voice-based virtual area navigation
CN107924372B (zh) 信息处理系统和信息处理方法
Ridout Well-being and creative methodologies as a tool for communicating with health and social care practitioners
JP4354313B2 (ja) ユーザ間親密度測定システム及びユーザ間親密度測定プログラム
JP6400445B2 (ja) 会話分析装置、会話分析システム、会話分析方法及び会話分析プログラム
CN110249325A (zh) 具有通信模型的输入系统
CN111672098A (zh) 虚拟对象标记方法、装置、电子设备以及存储介质
JPWO2016178329A1 (ja) 情報処理システム、制御方法、および記憶媒体
CN113612677A (zh) 信息处理系统和信息处理方法
US20230128422A1 (en) Voice Command Integration into Augmented Reality Systems and Virtual Reality Systems
EP3627304A1 (en) Interactive responding method and computer system using the same
KR102078209B1 (ko) 텍스트 메시지를 브이모지로 표현하는 아바타 비주얼 변환 장치 및 메시지 변환 방법
JP2019133451A (ja) 評価方法、評価装置、評価プログラム、および、評価システム
JP2014167517A (ja) 会話提供システム、ゲーム提供システム、会話提供方法、ゲーム提供方法及びプログラム
US11289099B2 (en) Information processing device and information processing method for determining a user type based on performed speech
KR101567154B1 (ko) 다중 사용자 기반의 대화 처리 방법 및 이를 수행하는 장치
US11100944B2 (en) Information processing apparatus, information processing method, and program
CN103297389B (zh) 人机对话方法及装置
JP6909189B2 (ja) ユーザ発話テキストに応じてエージェントを交代させるプログラム、サーバ及び方法
WO2020027073A1 (ja) 情報処理装置および情報処理方法
JP2021051693A (ja) 発話システム、発話推薦装置、発話推薦プログラムおよび発話推薦方法
CN114566187B (zh) 操作包括电子装置的系统的方法、电子装置及其系统
JP2014149571A (ja) コンテンツ検索装置
CN115499613A (zh) 视频通话方法、装置、电子设备及存储介质
JP4914691B2 (ja) ネットワークコミュニケーション装置、システム、方法およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200616

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210525

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210601

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210622

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210630

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210702

R150 Certificate of patent or registration of utility model

Ref document number: 6909189

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150