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

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

▶ KDDI株式会社の特許一覧

特許7105749キャラクタに応じたテキストを発話するエージェントのプログラム、装置及び方法
<>
  • 特許-キャラクタに応じたテキストを発話するエージェントのプログラム、装置及び方法 図1
  • 特許-キャラクタに応じたテキストを発話するエージェントのプログラム、装置及び方法 図2
  • 特許-キャラクタに応じたテキストを発話するエージェントのプログラム、装置及び方法 図3
  • 特許-キャラクタに応じたテキストを発話するエージェントのプログラム、装置及び方法 図4
  • 特許-キャラクタに応じたテキストを発話するエージェントのプログラム、装置及び方法 図5
  • 特許-キャラクタに応じたテキストを発話するエージェントのプログラム、装置及び方法 図6
  • 特許-キャラクタに応じたテキストを発話するエージェントのプログラム、装置及び方法 図7
  • 特許-キャラクタに応じたテキストを発話するエージェントのプログラム、装置及び方法 図8
  • 特許-キャラクタに応じたテキストを発話するエージェントのプログラム、装置及び方法 図9
  • 特許-キャラクタに応じたテキストを発話するエージェントのプログラム、装置及び方法 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-07-14
(45)【発行日】2022-07-25
(54)【発明の名称】キャラクタに応じたテキストを発話するエージェントのプログラム、装置及び方法
(51)【国際特許分類】
   G06F 16/535 20190101AFI20220715BHJP
   H04L 51/04 20220101ALI20220715BHJP
   G06F 16/90 20190101ALI20220715BHJP
   G06Q 50/00 20120101ALI20220715BHJP
   G10L 15/22 20060101ALI20220715BHJP
   G10L 13/00 20060101ALI20220715BHJP
【FI】
G06F16/535
H04L51/04
G06F16/90 100
G06Q50/00 300
G10L15/22 300Z
G10L13/00 100M
【請求項の数】 12
(21)【出願番号】P 2019177865
(22)【出願日】2019-09-27
(65)【公開番号】P2021056668
(43)【公開日】2021-04-08
【審査請求日】2021-07-16
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100135068
【弁理士】
【氏名又は名称】早原 茂樹
(72)【発明者】
【氏名】田原 俊一
(72)【発明者】
【氏名】帆足 啓一郎
【審査官】松尾 真人
(56)【参考文献】
【文献】特開2019-139282(JP,A)
【文献】特開2014-206773(JP,A)
【文献】特開2017-207947(JP,A)
【文献】田原 俊一,対話シナリオにおけるキャラクタ性を強調した名詞への自動置換手法の提案と評価,第11回データ工学と情報マネジメントに関するフォーラム (第17回日本データベース学会年次大会) [online],日本データベース学会,2019年03月06日,DEIM Forum 2019 E1-2, Internet<URL:http://db-event.jpn.org/deim2019/post/papers/2.pdf>
【文献】田原 俊一,ニュース関連ツイートの感情極性に基づく共感対話システムの提案と評価,第10回データ工学と情報マネジメントに関するフォーラム (第16回日本データベース学会年次大会) [Online] ,電子情報通信学会データ工学研究専門委員会 日本データベース学会 情報処理学会データベースシステム研究会,2018年03月06日, DEIM Forum 2018 D6-4, Internet<URL:http://db-event.jpn.org/deim2018/data/papers/19.pdf>
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
G06Q 10/00-99/00
H04L 51/00-51/58
G10L 15/22
G10L 13/00
(57)【特許請求の範囲】
【請求項1】
所定コンテンツに関して、ユーザ発話テキストを入力し、キャラクタ発話テキストを返答するエージェントとしてコンピュータを機能させるプログラムであって、
ユーザと対話するキャラクタ毎に、ペルソナキーワードが付与されており、
SNS(Social Networking Service)サーバから、所定コンテンツに関して投稿されたリプライ元コメントと、各リプライ元コメントに関して投稿されたリプライコメントとを収集するリプライコメント収集手段と、
ユーザ発話テキストに最も類似するリプライ元コメントを検索するリプライ元コメント検索手段と、
検索されたリプライ元コメントに対する複数のリプライコメントについて、各リプライコメントを投稿した複数のユーザアカウントを検索するユーザアカウント検索手段と、
SNSサーバから、検索された複数のユーザアカウントにおける過去の投稿コメントを収集する投稿コメント収集手段と、
複数のユーザアカウントの過去の投稿コメントの中で、ペルソナキーワードを含む割合が最も高いユーザアカウントを決定するユーザアカウント決定手段と、
決定されたユーザアカウントについて、リプライコメント収集手段によって収集されたリプライコメントを、キャラクタ発話テキストとして返答するキャラクタ返答手段と
してコンピュータを機能させることを特徴とするプログラム。
【請求項2】
リプライ元コメント検索手段は、
ユーザ発話テキストに出現する名詞と同じ名詞を最も多く含むリプライ元コメント、
又は、
ユーザ発話テキストの文字要素に基づくベクトルに対して、コサイン類似度が最も高いベクトルを持つリプライ元コメント
を検索する
ようにコンピュータを更に機能させることを特徴とする請求項1に記載のプログラム。
【請求項3】
SNSサーバから収集した投稿コメント群を、ペルソナキーワードを含む投稿コメント群と、ペルソナキーワードを含まない投稿コメント群とに区分し、ペルソナキーワードを含む投稿コメント群に特徴的に出現する名詞を、関連キーワードとして抽出する関連キーワード抽出手段と
して更に機能させ、
ユーザアカウント決定手段は、ペルソナキーワード及び/又は関連キーワードを含む割合が最も高いユーザアカウントを決定する
ようにコンピュータを機能させることを特徴とする請求項1又は2に記載のプログラム。
【請求項4】
関連キーワード抽出手段は、赤池情報量規準(AIC:Akaike's Information Criterion)を用いて、特定のペルソナキーワードを含む投稿コメント群P1に対する任意のキーワードを含む投稿コメント群P2の評価値V(P1,P2)を、以下のように算出し
p11:特定のペルソナキーワードを含む投稿コメント群P1の中で、任意のキーワードを含む投稿コメント群P2の数
p12:特定のペルソナキーワードを含む投稿コメント群P1の中で、任意のキーワードを含まない投稿コメント群P2の数
p21:特定のペルソナキーワードを含まない投稿コメント群P1の中で、任意のキーワードを含む投稿コメント群P2の数
p22:特定のペルソナキーワードを含まない投稿コメント群P1の中で、任意のキーワードを含まない投稿コメント群P2の数
p11+p12+p21+p22=全てのユーザが投稿した投稿コメント数
MLL_IM(P1,P2)=(p11+p12) log(p11+p12)
+(p11+p21) log(p11+p21)
+(p21+p22) log(p21+p22)
+(p12+p22) log(p12+p22)-2N log N
MLL_DM(P1,P2)=p11 log p11+p12 log p12+p21 log p21+p22 log p22-N log N
但し、N=p11+p12+p21+p22
AIC_IM(P1,P2)=-2 × MLL_IM(P1,P2) + 2×2
AIC_IM(P1,P2):特定のペルソナキーワードを含む投稿コメント群と、任意のキーワードを含む投稿コメント群との組の従属AIC
AIC_DM(P1,P2)=-2 × MLL_DM(P1,P2) + 2×3
AIC_DM(P1,P2):特定のペルソナキーワードを含む投稿コメント群と、任意のキーワードを含む投稿コメント群との組の独立AIC
V(P1,P2)=AIC_IM(P1,P2) - AIC_DM(P1,P2)
該評価値V(P1,P2)が所定閾値以上となる、又は、当該評価値V(P1,P2)が大きいものから順に所定数となる、任意のキーワードP2を関連キーワードとして抽出す
ようにコンピュータを機能させることを特徴とする請求項3に記載のプログラム。
【請求項5】
キャラクタに応じた所定コンテンツを選定するために、コンテンツデータベースから、ペルソナキーワード及び/又は関連キーワードを含む割合が最も高いコンテンツを決定するコンテンツ決定手段と
してコンピュータを更に機能させることを特徴とする請求項3又は4に記載のプログラム。
【請求項6】
複数のキャラクタと、キャラクタ毎のペルソナキーワードとが予め設定されており、
SNSサーバから、対話対象となるユーザのユーザアカウントから過去に投稿された投稿コメント群の中に、各キャラクタのペルソナキーワード及び/又は関連キーワードが含まれている割合が最も多いキャラクタを選択するキャラクタ選択手段と
してコンピュータを更に機能させることを特徴とする請求項3から5のいずれか1項に記載のプログラム。
【請求項7】
複数のキャラクタと、キャラクタ毎のペルソナキーワードとが予め設定されており、
対話前に、ユーザに対して、複数のキャラクタの中で、いずれかのキャラクタを選択させるキャラクタ選択手段と
してコンピュータを更に機能させることを特徴とする請求項1から5のいずれか1項に記載のプログラム。
【請求項8】
コンテンツは、現時刻から所定期間前までに報道されたニュース記事であり、
コンテンツ決定手段によって決定された当該ニュース記事のタイトルを、最初に、キャラクタ発話テキストとして出力する
ようにコンピュータを更に機能させることを特徴とする請求項1から7のいずれか1項に記載のプログラム。
【請求項9】
ユーザとキャラクタとが対話フォームを介して対話する対話フォームインタフェース手段として更に機能させ、
対話フォームインタフェース手段は、
ユーザに対して、所定コンテンツに関するテキストを、キャラクタ発話テキストとして表示し、
ユーザに対して、入力フォームを表示して、ユーザ発話テキストを入力させ、
ユーザに対して、キャラクタ返答手段におけるリプライコメントを、キャラクタ発話テキストとして表示する
ようにコンピュータを機能させることを特徴とする請求項1から8のいずれか1項に記載のプログラム。
【請求項10】
ユーザから発話された音声を音声認識処理によって変換したテキストを、ユーザ発話テキストとして入力し、
キャラクタ返答手段におけるリプライコメントから音声変換処理によって変換した音声を、キャラクタ発話テキストとして出力する
ようにコンピュータを機能させることを特徴とする請求項1から8のいずれか1項に記載のプログラム。
【請求項11】
所定コンテンツに関して、ユーザ発話テキストを入力し、キャラクタ発話テキストを返答するエージェント対話装置であって、
ユーザと対話するキャラクタ毎に、ペルソナキーワードが付与されており、
SNSサーバから、所定コンテンツに関して投稿されたリプライ元コメントと、各リプライ元コメントに関して投稿されたリプライコメントとを収集するリプライコメント収集手段と、
ユーザ発話テキストに最も類似するリプライ元コメントを検索するリプライ元コメント検索手段と、
検索されたリプライ元コメントに対する複数のリプライコメントについて、各リプライコメントを投稿した複数のユーザアカウントを検索するユーザアカウント検索手段と、
SNSサーバから、検索された複数のユーザアカウントにおける過去の投稿コメントを収集する投稿コメント収集手段と、
複数のユーザアカウントの過去の投稿コメントの中で、ペルソナキーワードを含む割合が最も高いユーザアカウントを決定するユーザアカウント決定手段と、
決定されたユーザアカウントについて、リプライコメント収集手段によって収集されたリプライコメントを、キャラクタ発話テキストとして返答するキャラクタ返答手段と
を有することを特徴とするエージェント対話装置。
【請求項12】
所定コンテンツに関して、ユーザ発話テキストを入力し、キャラクタ発話テキストを返答する装置のエージェント対話方法であって、
装置は、
ユーザと対話するキャラクタ毎に、ペルソナキーワードが付与されており、
SNSサーバから、所定コンテンツに関して投稿されたリプライ元コメントと、各リプライ元コメントに関して投稿されたリプライコメントとを収集する第1のステップと、
ユーザ発話テキストに最も類似するリプライ元コメントを検索する第2のステップと、
検索されたリプライ元コメントに対する複数のリプライコメントについて、各リプライコメントを投稿した複数のユーザアカウントを検索する第3のステップと、
SNSサーバから、検索された複数のユーザアカウントにおける過去の投稿コメントを収集する第4のステップと、
複数のユーザアカウントの過去の投稿コメントの中で、ペルソナキーワードを含む割合が最も高いユーザアカウントを決定する第5のステップと、
決定されたユーザアカウントについて、リプライコメント収集手段によって収集されたリプライコメントを、キャラクタ発話テキストとして返答する第6のステップと
を実行することを特徴とするエージェント対話方法。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザと対話するエージェント対話システムの技術に関する。
【背景技術】
【0002】
スマートフォンやタブレット、AI(Artificial Intelligence)スピーカのような端末を用いて、ユーザに対して自然に対話するエージェントが広く普及している。エージェントとは、コンピュータグラフィックスや人工音声のようなキャラクタが、ユーザとの間でテキストや音声によって対話する機能をいう。エージェントは、ユーザから見た対話相手として、その時点における状況や、趣味趣向、感情に応じた対話を進行させる。
エージェントは、ユーザプロファイルと同様に、キャラクタに個性(年齢、性別等)を持たせる。ユーザは、例えば個性を持つキャラクタと対話することによって、強い親近感を持つことができる。
【0003】
従来、ユーザが、漫画などの登場人物を模した複数のエージェントの中から1つのエージェントを選択する雑談対話システムの技術がある(例えば特許文献1参照)。この技術によれば、対話システムは、選択されたエージェントに基づく雑談データを予め取得し、対話時に、その雑談データを用いて対話を進行させる。対話の際、スマートフォンのディスプレイには、エージェントの姿が表示される(チャットボット型)。
また、エージェントは、キャラクタの個性に合わせた対話シナリオを、人手で作成する必要がある(例えば非特許文献1参照)。そのために、個性を持つキャラクタのエージェントを作り込むことができる。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2014-98844号公報
【非特許文献】
【0005】
【文献】株式会社アウトソーシングテクノロジー、「ロボット「対話」のためのシナリオ作成サービス開始いたしました。」、[online]、[令和1年9月21日検索]、インターネット<URL:https://www.ostechnology.co.jp/information/20170123/>
【発明の概要】
【発明が解決しようとする課題】
【0006】
前述した特許文献1に記載の技術によれば、ユーザが発話した際に、そのユーザ発話テキストがエージェントの雑談データに含まれていない場合、対話を進行させることができず、対話が破綻するという問題がある。例えば、映画鑑賞を趣味とする個性のキャラクタは、政治やスポーツに関連するユーザ発話テキストに対して、特徴ある返答をすることができない。
【0007】
また、キャラクタ毎に、その個性に応じた対話シナリオを人手で作成しようとすると、コスト的な問題が生じる。勿論、既存の対話シナリオに含まれる名詞を、キャラクタ特有の名詞に置換することによって、そのキャラクタ専用の対話シナリオを作成することはできる。しかしながら、単に名詞が置換されたに過ぎず、キャラクタの個性までも反映した対話シナリオを作成することはできない。即ち、エージェントとして、キャラクタの個性に応じたキャラクタ発話テキストを自動的に生成することは難しい。
【0008】
これに対し、本願の発明者らは、コンテンツ(例えばニュース記事)に対して不特定多数のユーザからの投稿コメントから、エージェントとしてのキャラクタ発話テキストを生成することができないか、と考えた。即ち、キャラクタの個性に近い個性を持つユーザを発見することができれば、そのユーザからの投稿コメントは、そのキャラクタが発話するキャラクタ発話テキストとして近しいものとなるのではないか、と考えた。
【0009】
そこで、本発明は、コンテンツに対する投稿コメントを用いて、ユーザと対話するキャラクタが、その個性に応じたキャラクタ発話テキストを自動的に返答することができるエージェントのプログラム、装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明によれば、所定コンテンツに関して、ユーザ発話テキストを入力し、キャラクタ発話テキストを返答するエージェントとしてコンピュータを機能させるプログラムであって、
ユーザと対話するキャラクタ毎に、ペルソナキーワードが付与されており、
SNS(Social Networking Service)サーバから、所定コンテンツに関して投稿されたリプライ元コメントと、各リプライ元コメントに関して投稿されたリプライコメントとを収集するリプライコメント収集手段と、
ユーザ発話テキストに最も類似するリプライ元コメントを検索するリプライ元コメント検索手段と、
検索されたリプライ元コメントに対する複数のリプライコメントについて、各リプライコメントを投稿した複数のユーザアカウントを検索するユーザアカウント検索手段と、
SNSサーバから、検索された複数のユーザアカウントにおける過去の投稿コメントを収集する投稿コメント収集手段と、
複数のユーザアカウントの過去の投稿コメントの中で、ペルソナキーワードを含む割合が最も高いユーザアカウントを決定するユーザアカウント決定手段と、
決定されたユーザアカウントについて、リプライコメント収集手段によって収集されたリプライコメントを、キャラクタ発話テキストとして返答するキャラクタ返答手段と
してコンピュータを機能させることを特徴とする。
【0011】
本発明のプログラムにおける他の実施形態によれば、
リプライ元コメント検索手段は、
ユーザ発話テキストに出現する名詞と同じ名詞を最も多く含むリプライ元コメント、
又は、
ユーザ発話テキストの文字要素に基づくベクトルに対して、コサイン類似度が最も高いベクトルを持つリプライ元コメント
を検索する
ようにコンピュータを更に機能させることも好ましい。
【0012】
本発明のプログラムにおける他の実施形態によれば、
SNSサーバから収集した投稿コメント群を、ペルソナキーワードを含む投稿コメント群と、ペルソナキーワードを含まない投稿コメント群とに区分し、ペルソナキーワードを含む投稿コメント群に特徴的に出現する名詞を、関連キーワードとして抽出する関連キーワード抽出手段と
して更に機能させ、
ユーザアカウント決定手段は、ペルソナキーワード及び/又は関連キーワードを含む割合が最も高いユーザアカウントを決定する
ようにコンピュータを機能させることも好ましい。
【0013】
本発明のプログラムにおける他の実施形態によれば、
関連キーワード抽出手段は、赤池情報量規準(AIC:Akaike's Information Criterion)を用いて、特定のペルソナキーワードを含む投稿コメント群P1に対する任意のキーワードを含む投稿コメント群P2の評価値V(P1,P2)を、以下のように算出し
p11:特定のペルソナキーワードを含む投稿コメント群P1の中で、任意のキーワードを含む投稿コメント群P2の数
p12:特定のペルソナキーワードを含む投稿コメント群P1の中で、任意のキーワードを含まない投稿コメント群P2の数
p21:特定のペルソナキーワードを含まない投稿コメント群P1の中で、任意のキーワードを含む投稿コメント群P2の数
p22:特定のペルソナキーワードを含まない投稿コメント群P1の中で、任意のキーワードを含まない投稿コメント群P2の数
p11+p12+p21+p22=全てのユーザが投稿した投稿コメント数
MLL_IM(P1,P2)=(p11+p12) log(p11+p12)
+(p11+p21) log(p11+p21)
+(p21+p22) log(p21+p22)
+(p12+p22) log(p12+p22)-2N log N
MLL_DM(P1,P2)=p11 log p11+p12 log p12+p21 log p21+p22 log p22-N log N
但し、N=p11+p12+p21+p22
AIC_IM(P1,P2)=-2 × MLL_IM(P1,P2) + 2×2
AIC_IM(P1,P2):特定のペルソナキーワードを含む投稿コメント群と、任意のキーワードを含む投稿コメント群との組の従属AIC
AIC_DM(P1,P2)=-2 × MLL_DM(P1,P2) + 2×3
AIC_DM(P1,P2):特定のペルソナキーワードを含む投稿コメント群と、任意のキーワードを含む投稿コメント群との組の独立AIC
V(P1,P2)=AIC_IM(P1,P2) - AIC_DM(P1,P2)
該評価値V(P1,P2)が所定閾値以上となる、又は、当該評価値V(P1,P2)が大きいものから順に所定数となる、任意のキーワードP2を関連キーワードとして抽出す
ようにコンピュータを機能させることも好ましい。
【0014】
本発明のプログラムにおける他の実施形態によれば、
キャラクタに応じた所定コンテンツを選定するために、コンテンツデータベースから、ペルソナキーワード及び/又は関連キーワードを含む割合が最も高いコンテンツを決定するコンテンツ決定手段と
してコンピュータを更に機能させることも好ましい。
【0015】
本発明のプログラムにおける他の実施形態によれば、
複数のキャラクタと、キャラクタ毎のペルソナキーワードとが予め設定されており、
SNSサーバから、対話対象となるユーザのユーザアカウントから過去に投稿された投稿コメント群の中に、各キャラクタのペルソナキーワード及び/又は関連キーワードが含まれている割合が最も多いキャラクタを選択するキャラクタ選択手段と
してコンピュータを更に機能させることも好ましい。
【0016】
本発明のプログラムにおける他の実施形態によれば、
複数のキャラクタと、キャラクタ毎のペルソナキーワードとが予め設定されており、
対話前に、ユーザに対して、複数のキャラクタの中で、いずれかのキャラクタを選択させるキャラクタ選択手段と
してコンピュータを更に機能させることも好ましい。
【0017】
本発明のプログラムにおける他の実施形態によれば、
コンテンツは、現時刻から所定期間前までに報道されたニュース記事であり、
コンテンツ決定手段によって決定された当該ニュース記事のタイトルを、最初に、キャラクタ発話テキストとして出力する
ようにコンピュータを更に機能させることも好ましい。
【0018】
本発明のプログラムにおける他の実施形態によれば、
ユーザとキャラクタとが対話フォームを介して対話する対話フォームインタフェース手段として更に機能させ、
対話フォームインタフェース手段は、
ユーザに対して、所定コンテンツに関するテキストを、キャラクタ発話テキストとして表示し、
ユーザに対して、入力フォームを表示して、ユーザ発話テキストを入力させ、
ユーザに対して、キャラクタ返答手段におけるリプライコメントを、キャラクタ発話テキストとして表示する
ようにコンピュータを機能させることも好ましい。
【0019】
本発明のプログラムにおける他の実施形態によれば、
ユーザから発話された音声を音声認識処理によって変換したテキストを、ユーザ発話テキストとして入力し、
キャラクタ返答手段におけるリプライコメントから音声変換処理によって変換した音声を、キャラクタ発話テキストとして出力する
ようにコンピュータを機能させることも好ましい。
【0020】
本発明によれば、所定コンテンツに関して、ユーザ発話テキストを入力し、キャラクタ発話テキストを返答するエージェント対話装置であって、
ユーザと対話するキャラクタ毎に、ペルソナキーワードが付与されており、
SNSサーバから、所定コンテンツに関して投稿されたリプライ元コメントと、各リプライ元コメントに関して投稿されたリプライコメントとを収集するリプライコメント収集手段と、
ユーザ発話テキストに最も類似するリプライ元コメントを検索するリプライ元コメント検索手段と、
検索されたリプライ元コメントに対する複数のリプライコメントについて、各リプライコメントを投稿した複数のユーザアカウントを検索するユーザアカウント検索手段と、
SNSサーバから、検索された複数のユーザアカウントにおける過去の投稿コメントを収集する投稿コメント収集手段と、
複数のユーザアカウントの過去の投稿コメントの中で、ペルソナキーワードを含む割合が最も高いユーザアカウントを決定するユーザアカウント決定手段と、
決定されたユーザアカウントについて、リプライコメント収集手段によって収集されたリプライコメントを、キャラクタ発話テキストとして返答するキャラクタ返答手段と
を有することを特徴とする。
【0021】
本発明によれば、所定コンテンツに関して、ユーザ発話テキストを入力し、キャラクタ発話テキストを返答する装置のエージェント対話方法であって、
装置は、
ユーザと対話するキャラクタ毎に、ペルソナキーワードが付与されており、
SNSサーバから、所定コンテンツに関して投稿されたリプライ元コメントと、各リプライ元コメントに関して投稿されたリプライコメントとを収集する第1のステップと、
ユーザ発話テキストに最も類似するリプライ元コメントを検索する第2のステップと、
検索されたリプライ元コメントに対する複数のリプライコメントについて、各リプライコメントを投稿した複数のユーザアカウントを検索する第3のステップと、
SNSサーバから、検索された複数のユーザアカウントにおける過去の投稿コメントを収集する第4のステップと、
複数のユーザアカウントの過去の投稿コメントの中で、ペルソナキーワードを含む割合が最も高いユーザアカウントを決定する第5のステップと、
決定されたユーザアカウントについて、リプライコメント収集手段によって収集されたリプライコメントを、キャラクタ発話テキストとして返答する第6のステップと
を実行することを特徴とする。
【発明の効果】
【0022】
本発明のエージェントのプログラム、装置及び方法によれば、コンテンツに対する投稿コメントを用いて、ユーザと対話するキャラクタが、その個性に応じたキャラクタ発話テキストを自動的に返答することができる。
【図面の簡単な説明】
【0023】
図1】ユーザとキャラクタとの間の対話を表す説明図である。
図2】本発明における対話装置の機能構成図である。
図3】キャラクタのユーザ選択を表すキャラクタ選択部の説明図である。
図4】ペルソナキーワードに基づくキャラクタの自動選択を表すキャラクタ選択部の説明図である。
図5】ペルソナキーワードに対する関連キーワードを抽出する関連キーワード抽出部の説明図である。
図6】ペルソナキーワード及び関連キーワードに基づくキャラクタの自動選択を表すキャラクタ選択部の説明図である。
図7】ユーザに提示するコンテンツを決定するコンテンツ決定部の説明図である。
図8】コンテンツに対するリプライ元コメント及びリプライコメントを収集するリプライコメント収集部の説明図である。
図9】ユーザ発話テキストに類似するリプライ元コメントを検索するリプライ元コメント検索部の説明図である。
図10】ユーザアカウント検索部と、投稿コメント収集部と、ユーザアカウント決定部と、キャラクタ返答部との説明図である。
【発明を実施するための形態】
【0024】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【0025】
図1は、ユーザとキャラクタとの間の対話を表す説明図である。
【0026】
図1によれば、対話装置1は、ユーザ操作に基づく端末2と通信し、ユーザにするエージェントとして機能する。また、図1によれば、コンテンツ(例えばニュース記事)を公開するコンテンツサーバ3と、不特定多数のユーザから投稿された投稿コメントを公開するSNSサーバ4とが、インターネットに接続されている。対話装置1は、インターネットを介してコンテンツサーバ3及びSNSサーバ4からコンテンツや投稿コメントを収集することができる。
【0027】
端末2には、ユーザとの対話インタフェースとなるユーザプログラムが実装されている。端末2は、例えばスマートフォンやタブレットであって、エージェントのキャラクタを表示するディスプレイを有する。端末2は、対話装置1から受信したキャラクタを表示すると共に、キャラクタ発話テキストをユーザへ表示することができる。また、ユーザからユーザ発話テキストの文字入力を受け付けることができる。
また、端末2は、例えば、AIスピーカ(例えばAlexa(登録商標))であって、ユーザに対するマイク及びスピーカを有するものであってもよい。端末2は、キャラクタ発話テキストを音声としてユーザへ発話することができる。また、音声認識によって、ユーザは自声の発話によってユーザ発話テキストを入力することができる。
【0028】
図1によれば、端末2を操作するユーザ@aaaと、対話装置1によって制御されるキャラクタとは、以下のように対話を進行させている。
キャラクタA:「”バドミントンワールドツアーが開催!”というニュースがあるよ」
ユーザ :「体育大を卒業した選手が出場するみたいだね」
キャラクタA:「ラケットワークとフットワークが凄く上手いと思うよ」
ここでは、最初にキャラクタが、コンテンツとしてニュース記事をユーザに提示し、それに対して、ユーザとキャラクタAと間で対話が進行されている。
【0029】
このように、最初に、ユーザと対話するキャラクタの個性に合ったコンテンツ(話題)をユーザに提示する。それに対して、ユーザが発話した際に、そのユーザ発話テキストに応じて更に、そのキャラクタの個性に合った対話を進行させることができる。
【0030】
図2は、本発明における対話装置の機能構成図である。
【0031】
図2によれば、エージェントを実行する対話装置1は、ユーザプログラムを実行する端末2と、ネットワークを介して接続されている。
対話装置1は、端末2からユーザ発話テキストを入力し、キャラクタに応じたキャラクタ発話テキストを返答する。これによって、対話装置1によって制御されるキャラクタは、ユーザとできる限り自然な対話を進行させる。
【0032】
図2によれば、対話装置1は、対話フォームインタフェース部10と、キャラクタ選択部11と、関連キーワード抽出部12と、コンテンツ決定部13と、リプライコメント収集部14と、リプライ元コメント検索部15と、ユーザアカウント検索部16と、投稿コメント収集部17と、ユーザアカウント決定部18と、キャラクタ返答部19とを有する。これら機能構成部は、装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。また、これら機能構成部の処理の流れは、装置の対話方法としても理解できる。
【0033】
[対話フォームインタフェース部10]
対話フォームインタフェース部10は、ユーザとキャラクタとの間で対話フォームを介して対話させる。
対話フォームインタフェース部10は、ユーザに対して、キャラクタの吹き出しとしてキャラクタ発話テキストを表示する。ユーザがその返答をテキストで入力する場合、ユーザに対して入力フォームを表示して、ユーザ発話テキストを入力させる。
また、対話フォームインタフェース部10は、キャラクタ発話テキストを、音声変換処理によって変換した音声として出力するものであってもよい。また、ユーザがその返答を音声で入力する場合、端末2のディスプレイにマイク入力ボタンを表示する。ユーザから発話された音声を音声認識処理によって変換したテキストを、ユーザ発話テキストとして取得する。
【0034】
尚、対話フォームインタフェース部10は、例えばスマートフォンやタブレットのような端末2に予めインストールされたアプリケーションと通信する。端末2に表示される対話フォームは、アプリケーションを実行することによって機能する。
【0035】
[キャラクタ選択部11]
キャラクタ選択部11は、エージェントとして対話を開始する前に、ユーザと対話するキャラクタを選択する。キャラクタ選択部11は、複数のキャラクタの中から、ユーザと対話するキャラクタを決定する。
【0036】
キャラクタ選択部11は、複数の「キャラクタ」と、キャラクタ毎の「ペルソナキーワード」とが予め設定している。図3によれば、以下のように設定されている。
キャラクタA:「バドミントン好き若年女性」
ペルソナキーワード「バドミントン」「化粧」
キャラクタB:「政治経済に詳しいサラリーマン」
ペルソナキーワード「政治」「経済」
・・・・・
「ペルソナキーワード」とは、そのキャラクタを特徴付けるキーワードを意味する。
また、キャラクタ毎に、そのキャラクタの姿を描写した画像(キャラクタアイコン)も登録されている。
【0037】
ここで、キャラクタ選択方法として、ユーザ自らが選択する<キャラクタのユーザ選択>と、対話装置1が自動的に選択する<キャラクタの自動選択>とがある。
【0038】
<キャラクタのユーザ選択>
図3は、キャラクタのユーザ選択を表すキャラクタ選択部の説明図である。
【0039】
キャラクタ選択部11は、複数のキャラクタを、対話フォームインタフェース部10を介して、端末2のディスプレイ上に表示する。そして、対話前に、ユーザは、対話相手として所望するキャラクタを1つ選択する。
図3によれば、ユーザ@aaaは、タップによってキャラクタA「バドミントン好きの若年女性」を選択している。
【0040】
<キャラクタの自動選択>
図4は、ペルソナキーワードに基づくキャラクタの自動選択を表すキャラクタ選択部の説明図である。
【0041】
図4によれば、キャラクタ選択部11は、SNSサーバ4から、対話対象となるユーザのユーザアカウントから過去に投稿された投稿コメント群の中に、各キャラクタの「ペルソナキーワード」が含まれている割合が最も多いキャラクタを選択する。この場合、ユーザ自らがキャラクタを選択することなく、ユーザの日常の投稿コメントの特性に近いキャラクタが自動的に選択される。
【0042】
図4によれば、ユーザ@aaaが、自らのアカウントでSNSサーバ4に投稿した投稿コメント(プロファイルも含む)の中に、各ペルソナキーワードを含む出現回数をカウントする。
「バドミントン」->32回
「化粧」->46回
「政治」->0回
「経済」->2回
そして、キャラクタ毎に、ペルソナキーワードの頻度平均をキャラクタスコアとし、キャラクタスコアが最も高いキャラクタを選択する。
キャラクタA「バドミントン好き若年女性」
平均スコア39(=(32+46)/2)
キャラクタB「政治経済に詳しいサラリーマン男性」
平均スコア1(=(0+2)/2)
この場合、平均スコアが最も高いキャラクタAが、対話相手として選択される。
【0043】
尚、他の実施形態として、端末2がディスプレイを搭載していない場合におけるキャラクタ選択について説明する。
<キャラクタのユーザ選択>
複数のキャラクタの個性又は名前を音声によって読み上げ、ユーザがいずれかを発話によって選択することもできる。
エージェント「A、バドミントン好き若年女性、
B、政治経済に詳しいサラリーマン男性、どちらにしますか?」
ユーザ 「A」
【0044】
<キャラクタの自動選択>
ユーザに所望するキャラクタの個性を発話させて、そのユーザ発話テキスト内の単語と、各キャラクタの個性やペルソナキーワードとの類似度を計算し、類似度が高い方のキャラクタを選択することができる。類似度は、例えば文字要素をベクトル化してコサイン類似度によって算出することもできる。
エージェント「対話したいキャラクタの個性をお答えください」
ユーザ 「スポーツ好きな女性と話したいな」
キャラクタA:「バドミントン好き若年女性」
キャラクタB:「政治経済に詳しいサラリーマン」
(エージェントは、「女性」によって、キャラクタAを自動選択)
エージェント 「キャラクタA、バドミントン好き若年女性、が選択されました」
尚、類似度の算出方法については、後述するリプライ元コメント検索部15の中で説明する。
【0045】
前述した図3及び図4によれば、キャラクタに付与された「ペルソナキーワード」のみを用いている。これに対し、ペルソナキーワードに関連する「関連キーワード」を予め抽出し、ペルソナキーワードと同様に、キャラクタの判定に用いることも好ましい。
【0046】
[関連キーワード抽出部12]
関連キーワード抽出部12は、SNSサーバ4から収集した投稿コメント群を、「ペルソナキーワードを含む投稿コメント群」と、「ペルソナキーワードを含まない投稿コメント群」とに区分し、ペルソナキーワードを含む投稿コメント群に特徴的に出現する名詞を、「関連キーワード」として抽出する。
ここで、SNSサーバ4から収集する投稿コメント群は、不特定多数のユーザ群から投稿されたものであって、特定のユーザに限るものではない。
【0047】
関連キーワード抽出部12は、赤池情報量規準(AIC:Akaike's Information Criterion)を用いて、特定のペルソナキーワードを含む投稿コメント群P1に対する任意のキーワードを含む投稿コメント群P2の評価値V(P1,P2)を算出し、当該評価値V(P1,P2)が所定閾値以上となる、又は、当該評価値V(P1,P2)が大きいものから順に所定数となる、任意のキーワードP2を関連キーワードとして抽出する。
p11:特定のペルソナキーワードを含む投稿コメント群P1の中で、任意のキーワードを含む投稿コメント群P2の数
p12:特定のペルソナキーワードを含む投稿コメント群P1の中で、任意のキーワードを含まない投稿コメント群P2の数
p21:特定のペルソナキーワードを含まない投稿コメント群P1の中で、任意のキーワードを含む投稿コメント群P2の数
p22:特定のペルソナキーワードを含まない投稿コメント群P1の中で、任意のキーワードを含まない投稿コメント群P2の数
p11+p12+p21+p22=全てのユーザが投稿した投稿コメント数
MLL_IM(P1,P2)=(p11+p12) log(p11+p12)
+(p11+p21) log(p11+p21)
+(p21+p22) log(p21+p22)
+(p12+p22) log(p12+p22)-2N log N
MLL_DM(P1,P2)=p11 log p11+p12 log p12+p21 log p21+p22 log p22-N log N
但し、N=p11+p12+p21+p22
AIC_IM(P1,P2)=-2 × MLL_IM(P1,P2) + 2×2
AIC_IM(P1,P2):特定のペルソナキーワードを含む投稿コメント群と、任意のキーワードを含む投稿コメント群との組の従属AIC
AIC_DM(P1,P2)=-2 × MLL_DM(P1,P2) + 2×3
AIC_DM(P1,P2):特定のペルソナキーワードを含む投稿コメント群と、任意のキーワードを含む投稿コメント群との組の独立AIC
V(P1,P2)=AIC_IM(P1,P2) - AIC_DM(P1,P2)
【0048】
図5は、ペルソナキーワードに対する関連キーワードを抽出する関連キーワード抽出部の説明図である。
【0049】
図5によれば、SNSサーバ4から投稿コメント群を収集し、キャラクタ毎に、「ペルソナキーワードを含む投稿コメント群」と、「ペルソナキーワードを含まない投稿コメント群」とに区分する。
キャラクタA:「バドミントン」を含む投稿コメント群
「バドミントン」を含まない投稿コメント群
「化粧」を含む投稿コメント群
「化粧」を含まない投稿コメント群
次に、投稿コメント群に含まれる名詞が高頻度且つ偏って出現する割合として、赤池情報量規準を用いて、各名詞の評価値(度合い)を算出する。そして、その評価値が高い順に、例えば上位3つのキーワードを、そのペルソナキーワードに対する関連キーワードとして対応付ける。
図5によれば、例えばペルソナキーワード「バドミントン」が含まれる投稿コメントには、関連キーワード「シングルス」「ダブルス」「スマッシュ」が、高頻度且つ偏って出現すると認識される。
また、例えばペルソナキーワード「化粧品」が含まれる投稿コメントには、関連キーワード「コスメ」「美容」「口紅」が、高頻度且つ偏って出現すると認識される。
【0050】
図6は、ペルソナキーワード及び関連キーワードに基づくキャラクタの自動選択を表すキャラクタ選択部の説明図である。
【0051】
図6によれば、図4と比較して、関連キーワードも用いて、キャラクタを自動選択する点で異なる。キャラクタ選択部11は、SNSサーバ4から、対話対象となるユーザのユーザアカウントから過去に投稿された投稿コメント群の中に、各キャラクタの「ペルソナキーワード及び/又は関連キーワード」が含まれている割合が最も多いキャラクタを選択することができる。
【0052】
[コンテンツ決定部13]
コンテンツ決定部13は、キャラクタに応じた所定コンテンツを選定するために、コンテンツデータベースから、ペルソナキーワード及び/又は関連キーワードを含む割合が最も高いコンテンツを決定する。
ここで、コンテンツは、例えば現時刻から所定期間前(例えば1週間前)までに報道されたニュース記事であってもよい。コンテンツデータベースは、インターネット上のWebサイトから収集されるものであってもよいし、対話装置1が自ら蓄積したものであってもよい。
コンテンツとなるニュース記事としては、例えばYahoo(登録商標)ニュースのようなものがある。
【0053】
コンテンツ決定部13は、ペルソナキーワードだけでなく、関連キーワードも含む割合が最も高いコンテンツを選択する。これによって、キャラクタに合ったコンテンツを選択することができる。
例えば、ペルソナキーワードが「バドミントン」であれば、「バドミントン」とは直接は関係のない以下のようなニュース記事が選択されることを回避することができる。
ニュース記事「”高校のバドミントン部顧問が、授業中に生徒と大喧嘩”
このようなニュース記事は、「バドミントン」「シングルス」「ダブルス」「スマッシュ」も含む割合が高いコンテンツを選択することによって、検索されなくなる。
【0054】
図7は、ユーザに提示するコンテンツを決定するコンテンツ決定部の説明図である。
【0055】
図7によれば、コンテンツ決定部13は、ペルソナキーワード「バドミントン」(関連キーワード「シングルス」「ダブルス」「スマッシュ」も含む)を含む割合が高い複数のニュース記事(コンテンツ)と、ペルソナキーワード「化粧」(関連キーワード「コスメ」「美容」「口紅」も含む)を含む割合が高い複数のニュース記事とを選択する。
【0056】
例えば以下のような、「バドミントン」を含むニュース記事があるとする。
-------------------------------------------------------------------------------
[タイトル]バドミントン世界大会が開催!
[本文]
5月2日に東京でバドミントン世界大会のオープニングセレモニーが開催される。5月3日は男子シングルスと男子ダブルスの試合を控えており、付近は大混雑になると予想される。男子シングルスでは、期待の新人Tが試合に出場する。
-------------------------------------------------------------------------------
「バドミントン」の関連キーワードが、以下のように検出されるとする。
「シングルス」:AICの度合い=153.6、出現回数2回
「ダブルス」 :AICの度合い=115.2、出現回数1回
「スマッシュ」:AICの度合い=86.3、出現回数0回
このニュース記事のscoreは、以下のように算出される。
score=2×153.6+1×115.2+0×86.3=422.4
このように、ペルソナキーワード毎に、「バドミントン」を含むニュース記事と、「化粧」を含むニュース記事とそれぞれのscoreを算出する。ここでは、最もscoreが高いニュース記事11が決定される。
【0057】
コンテンツ決定部13は、決定したコンテンツを、キャラクタ発話テキストとして、対話フォームインタフェース部10へ出力する。具体的には、ニュース記事11のタイトル「バドミントン世界大会が開催!」を、ユーザ@aaaへ提示する。
キャラクタ発話テキスト:
「”バドミントン世界大会が開催!”というニュースがあるよ」
このように、キャラクタが最初に、そのペルソナキーワード及び関連キーワードに基づく話題を、ユーザ@aaaへ発話する。そして、これに対するユーザからの発話を待つ。
【0058】
[リプライコメント収集部14]
リプライコメント収集部14は、SNSサーバ4から、所定コンテンツに関して投稿されたリプライ元コメントと、各リプライ元コメントに関して投稿されたリプライコメントとのセットを収集する。
「リプライ元コメント」とは、ニュース記事のようなコンテンツに対する、不特定多数のユーザのコメントを意味する。
「リプライコメント」とは、リプライ元コメントに対する、不特定多数のユーザのコメントを意味する。
例えば、コンテンツとなるニュース記事となるYahooニュースの場合、ニュース記事と共に、不特定多数のユーザから投稿されたリプライ元コメント及びリプライコメントとのセットも公開されている。
【0059】
図8は、コンテンツに対するリプライ元コメント及びリプライコメントを収集するリプライコメント収集部の説明図である。
【0060】
図8によれば、ニュース記事11について、複数のリプライ元コメントと、各リプライ元コメントのリプライコメントとが収集されている。
ニュース記事11に対して、ユーザAは、リプライ元コメントとして「女子はいつから始まるのかな?」と投稿しており、そのリプライ元コメントに対して、ユーザBは、リプライコメントとして「来月かららしいよ」と投稿し、ユーザCも、リプライコメントとして「来月だよ。会場行くんだ!」と投稿している。
同様に、ニュース記事11に対して、ユーザDは、リプライ元コメントとして「体育大を卒業した選手が出場するのか~」と投稿しており、それに対するリプライコメントが、ユーザE及びFから投稿されている。また、ユーザGは、リプライ元コメントとして「久しぶりにバドミントンやろうかね」と投稿しており、それに対するリプライコメントが、ユーザH、I及びJから投稿されている。
【0061】
[リプライ元コメント検索部15]
リプライ元コメント検索部15は、ユーザ発話テキストに最も類似するリプライ元コメントを検索する。リプライ元コメント検索部15は、例えば以下のいずれかによって、最も類似するリプライ元コメントを検索する。
(1)ユーザ発話テキストに出現する名詞と同じ名詞を最も多く含むリプライ元コメント、
(2)ユーザ発話テキストの文字要素に基づくベクトルに対して、コサイン類似度が最も高いベクトルを持つリプライ元コメント
【0062】
図9は、ユーザ発話テキストに類似するリプライ元コメントを検索するリプライ元コメント検索部の説明図である。
【0063】
図9によれば、ユーザ@aaaは、キャラクタに対して以下のように発話している。
キャラクタ発話テキスト:
「”バドミントン世界大会が開催!”というニュースがあるよ」
ユーザ発話テキスト:
「体育大を卒業した選手が出場するみたいだね」
この場合、ユーザ発話テキスト「体育大を卒業した選手が出場するみたいだね」に最も類似するリプライ元コメントを検索する。
そして、ニュース記事11に対する複数のリプライ元コメントの中から、以下のリプライ元コメントが検索される。
リプライ元コメント(ユーザD):
「体育大卒業した選手が出場するのか~」
【0064】
<キーワードの類似度算出方法>
前述したキャラクタ選択部11のユーザの自動選択や、リプライ元コメント検索部15のリプライ元コメントの検索における、キーワードの類似度算出方法について説明する。類似度は、例えば、キーワード(テキストに含まれる文字要素)をベクトルに変換し、2つのベクトル間の距離を「コサイン類似度」として算出するものであってもよい。
【0065】
具体的には、ペルソナキーワードや関連キーワードを、Bag Of Wordsを用いて特徴ベクトルに変換する。また、ユーザ発話テキスト及びリプライ元コメントを、形態素解析によって複数の単語に分解した上で、Bag Of Wordsを用いて特徴ベクトルに変換する。
「Bag-of-Words」とは、テキストに含まれる各単語の出現頻度のみを表現したベクトルをいう。ここでは、単語の出現順は無視される。この特徴ベクトルは、単語を軸とし、出現頻度を値として、その空間の1点にそのテキストを位置付けたものである。
そして、ユーザ発話テキストaの特徴ベクトルVaと、リプライ元コメントbの特徴ベクトルVbとの間で、コサイン類似度S(a,b)を算出する。
S(a,b)=cosθ=(Va・Vb)/(|Va||Vb|)
コサイン類似度S(a,b)は、0~1の値となり、類似性が高いほど1に近づく。
【0066】
ここで、ユーザ発話テキストからみて、コサイン類似度Sが所定閾値を超えるリプライ元コメントが検出されなかった場合、改めて、Word2vecを用いてコサイン類似度Sを算出することも好ましい。具体的には、ユーザ発話テキスト及びリプライ元コメントを、形態素解析によって複数の単語に分解し、Word2vecを用いて特徴ベクトルに変換する。
「Word2vec」とは、単語の意味や文法を捉えるために単語をベクトル表現化して次元を圧縮する技術をいう。
勿論、Bag Of WordsやWord2vecに限ることなく、各単語の品詞又は意味を解析した特徴ベクトルに変換することができればよい。
【0067】
[ユーザアカウント検索部16]
ユーザアカウント検索部16は、検索されたリプライ元コメントに対する複数のリプライコメントについて、各リプライコメントを投稿した複数のユーザアカウントを検索する。
【0068】
図10は、ユーザアカウント検索部と、投稿コメント収集部と、ユーザアカウント決定部と、キャラクタ返答部との説明図である。
【0069】
前述した図8図10によれば、以下のようにユーザアカウントE及びFが検索する。
リプライ元コメント(ユーザD):
「体育大卒業した選手が出場するのか~」
リプライコメント(ユーザE):
「体育大出身なのは期待できるよね」
リプライコメント(ユーザF):
「ラケットワークとフットワークが凄く上手いと思うよ」
即ち、ユーザDが投稿したリプライ元コメントと、ユーザFが投稿したリプライ元コメントとは、ユーザ発話テキスト「体育大を卒業した選手が出場するみたいだね」に対して、キャラクタが発話しそうなものとなる。
ユーザアカウント検索部16は、検索結果としてユーザE及びFを、投稿コメント収集部17へ出力する。
【0070】
[投稿コメント収集部17]
投稿コメント収集部17は、SNSサーバ4から、検索された複数のユーザアカウントにおける過去の投稿コメントを収集する。
収集される過去の投稿コメントとしては、各ユーザアカウントについて、特定のSNSサーバ4に対する過去の全ての投稿コメントであってもよいし、例えばYahooニュースに対する過去の全ての投稿コメントであってもよい。特に、Yahooニュースの場合、SNSサーバ4と同様に、各ユーザアカウントにおける過去に投稿された全てのコメントを取得することができる。
【0071】
図10によれば、ユーザE及びFは、過去に以下のようなコメントを投稿している。
ユーザE:「今日の夕ご飯ハンバーグだった。」
「運動不足だなー、、、」
「今日映画でも観に行くか~」
・・・・・
ユーザF:「今日試合頑張ろう」
「今日はバドミントンのシングルスの試合だから水分補給をしっかりしよう」
「コンビニいってお菓子を買おう」
・・・・・
【0072】
[ユーザアカウント決定部18]
ユーザアカウント決定部18は、複数のユーザアカウントの過去の投稿コメントの中で、ペルソナキーワード及び/又は関連キーワードを含む割合が最も高いユーザアカウントを決定する。
【0073】
図10によれば、ユーザアカウント決定部18は、ユーザアカウント毎に、過去の投稿コメントの中で、ペルソナキーワード及び関連キーワードが高頻度に偏って出現する割合を算出する。この算出方法は、前述した関連キーワード抽出部12及び図5における赤池情報量規準(AIC)に基づくものであってもよい。
例えば、ユーザEの過去の投稿コメント群について、「バドミントン」を含む投稿コメント群と、「バドミントン」を含まない投稿コメント群とに分類し、AICの度合いを算出する。また、関連キーワード「シングルス」「ダブルス」「スマッシュ」についても、AICの度合いを算出する。
同様に、ユーザFの過去の投稿コメント群についても、「バドミントン」「シングルス」「ダブルス」「スマッシュ」について、AICの度合いを算出する。
最終的に、全てのキーワードのAICの度合いの加算値が最も高いユーザアカウントが決定される。図10によれば、ユーザFが決定される。
【0074】
[キャラクタ返答部19]
キャラクタ返答部19は、決定されたユーザアカウントについて、リプライコメント収集部14によって収集されたリプライコメントを、キャラクタ発話テキストとして返答する。
【0075】
図10によれば、ユーザFのリプライコメントが、キャラクタ発話テキストとして出力される。
リプライコメント(ユーザF):
「ラケットワークとフットワークが凄く上手いと思うよ」
最終的に、キャラクタAとユーザ@aaaとの間で、前述した図1のような対話が成立する。
【0076】
以上、詳細に説明したように、本発明のエージェントのプログラム、装置及び方法によれば、コンテンツに対する投稿コメントを用いて、ユーザと対話するキャラクタが、その個性に応じたキャラクタ発話テキストを自動的に返答することができる。
【0077】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【0078】
1 対話装置
10 対話フォームインタフェース部
11 キャラクタ選択部
12 関連キーワード抽出部
13 コンテンツ決定部
14 リプライコメント収集部
15 リプライ元コメント検索部
16 ユーザアカウント検索部
17 投稿コメント収集部
18 ユーザアカウント決定部
19 キャラクタ返答部
2 端末
3 コンテンツサーバ
4 SNSサーバ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10