(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025011152
(43)【公開日】2025-01-23
(54)【発明の名称】情報処理装置、情報処理方法及びプログラム
(51)【国際特許分類】
G06F 16/90 20190101AFI20250116BHJP
【FI】
G06F16/90 100
【審査請求】有
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2024171351
(22)【出願日】2024-09-30
(62)【分割の表示】P 2023112890の分割
【原出願日】2023-07-10
(71)【出願人】
【識別番号】502305722
【氏名又は名称】伊藤 庸一郎
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】伊藤 庸一郎
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175EA01
5B175FB04
5B175HA01
(57)【要約】
【課題】ユーザ対話の結果、複数のルールツリーのターゲットエレメントバリューが得られた場合に、その内容からより自然な言語表現を生成する。
【解決手段】情報処理装置は、ユーザが選択したペルソナに関連付けられるRTCコンテンツテーブルを生成し、選択されたペルソナを含むペルソナ群の全てのエレメント及びエレメントバリューを取得し、取得したエレメント及びエレメントバリューに基づいてRTCコンテンツテーブルに入力されたユーザ入力を分析することにより関連するエレメント及びエレメントバリューを特定し、特定したエレメント及びエレメントバリューがターゲットエレメント及びターゲットエレメントバリューであるという条件で、ターゲットエレメント及びターゲットエレメントバリュー、並びにRTCコンテンツテーブルに入力された全てのユーザ入力に対する変換処理を行い、ユーザ提示のために変換結果をRTCコンテンツテーブルに出力する。
【選択図】
図11
【特許請求の範囲】
【請求項1】
ユーザによって選択されたペルソナに関連付けられるRTCコンテンツテーブルを生成することと、
選択された前記ペルソナを含むペルソナ群の全てのエレメント及びエレメントバリューを取得することと、
取得したエレメント及びエレメントバリューに基づいて、前記RTCコンテンツテーブルに入力されたユーザ入力を分析することにより、関連するエレメント及びエレメントバリューを特定することと、
特定したエレメント及びエレメントバリューがターゲットエレメント及びターゲットエレメントバリューであるという条件で、前記ターゲットエレメント及び前記ターゲットエレメントバリュー、並びに前記RTCコンテンツテーブルに入力された全てのユーザ入力に対する変換処理を行うことと、
前記ユーザに提示するために、変換結果を前記RTCコンテンツテーブルに出力することと、
を実行するように構成される、情報処理装置。
【請求項2】
特定したエレメント及びエレメントバリューがターゲットエレメント及びターゲットエレメントバリューではないという条件で、特定したエレメント及びエレメントバリューに基づいて自然言語生成処理を行って、生成された自然言語表現を前記ユーザに提示するために前記RTCコンテンツテーブルに入力することをさらに実行するように構成される、請求項1の情報処理装置。
【請求項3】
ペルソナ群のそれぞれのペルソナに関連付けられる全てのエレメント及びエレメントバリューを第1のエレメント及び第1のエレメントバリューとして取得することと、
前記ペルソナを生成する際に、ペルソナのエレメントとして選択されなかったエレメント及びエレメントバリューを第2のエレメント及び第2のエレメントバリューとして取得することと、
事例の元データからの入力データが取得した第1のエレメント及び第1のエレメントバリュー並びに第2のエレメント及び第2のエレメントバリューのいずれに対応するかを判定し、判定結果としてのエレメント及び事例の組み合わせを記憶することと、
を実行するように構成される、情報処理装置。
【請求項4】
情報処理装置によって実行される方法であって、
ユーザによって選択されたペルソナに関連付けられるRTCコンテンツテーブルを生成することと、
選択された前記ペルソナを含むペルソナ群の全てのエレメント及びエレメントバリューを取得することと、
取得したエレメント及びエレメントバリューに基づいて、前記RTCコンテンツテーブルに入力されたユーザ入力を分析することにより、関連するエレメント及びエレメントバリューを特定することと、
特定したエレメント及びエレメントバリューがターゲットエレメント及びターゲットエレメントバリューであるという条件で、前記ターゲットエレメント及び前記ターゲットエレメントバリュー、並びに前記RTCコンテンツテーブルに入力された全てのユーザ入力に対する変換処理を行うことと、
前記ユーザに提示するために、変換結果を前記RTCコンテンツテーブルに出力することと、
を備える方法。
【請求項5】
特定したエレメント及びエレメントバリューがターゲットエレメント及びターゲットエレメントバリューではないという条件で、特定したエレメント及びエレメントバリューに基づいて自然言語生成処理を行って、生成された自然言語表現を前記ユーザに提示するために前記RTCコンテンツテーブルに入力することをさらに備える、請求項4の方法。
【請求項6】
情報処理装置によって実行される方法であって、
ペルソナ群のそれぞれのペルソナに関連付けられる全てのエレメント及びエレメントバリューを第1のエレメント及び第1のエレメントバリューとして取得することと、
前記ペルソナを生成する際に、ペルソナのエレメントとして選択されなかったエレメント及びエレメントバリューを第2のエレメント及び第2のエレメントバリューとして取得することと、
事例の元データからの入力データが取得した第1のエレメント及び第1のエレメントバリュー並びに第2のエレメント及び第2のエレメントバリューのいずれに対応するかを判定し、判定結果としてのエレメント及び事例の組み合わせを記憶することと、
を備える方法。
【請求項7】
請求項4乃至6のいずれか一項に記載の方法をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。より詳細に言えば、本発明は、複数の思考を複数のペルソナ(ルールツリー)にそれぞれ関連付けて、それらを多重で扱えるように制御し、また、生成系AIなどの変換機能を介してより自然な言語の出力結果を提供する情報処理装置、情報処理方法及びプログラムに関する。また、本発明は、新たな入力データから導き出せるエレメント及びエレメントバリューの組み合わせを事例データに追加して、ペルソナをブラッシュアップし、エンドユーザに関連付けられる入力データに基づくペルソナを生成する情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【0002】
人工知能の技術分野におけるエキスパートシステム(特許文献1)は、特定のテーマについてエレメント(条件属性)とエレメントバリュー(条件属性値)を登録し、さらに、ターゲットエレメント(結論属性)とターゲットエレメントバリュー(結論属性値)を登録することにより決定木を生成する。エキスパートシステムは、決定木を利用してユーザに対して特定のテーマについてのコンサルティングを行うことができる。
【0003】
決定木を生成する技術として、ペルソナ化システム(特許文献2)も知られている。ペルソナ化システムは、事例学習・機械学習ツールを備えている。このツールは、入力データに基づく事例をエレメント(条件属性)及びターゲットエレメント(結論属性)の組で表現し、また、事例を元に観測されたエレメントバリュー(条件属性値)からターゲットエレメントバリュー(結論属性値)を推定するルールを学習して決定木(以下、「ルールツリー」と言う)を生成する。このツールは、予め設定された質問項目(エレメント)の応答の仕方(エレメントバリュー)に基づいて自動的にルールツリーを辿ることによって、ターゲットバリューを出力する(オートコンサルティング)。特許文献2は、複数のルールツリーの間を行き来する技術を開示しているが、これは、呼び出すルールツリーのアドレスをキー情報として任意のエレメントに設定することによって行われている。
【0004】
近年、人工知能の分野において生成系AIと呼ばれる技術が登場している。生成系AIは、発展途上の技術ではあるものの、入力情報と予め学習した情報とに基づいて、文章、画像、音楽などを新たに生成して出力する機能を有している。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特許第5572615号公報
【特許文献2】特許第7216449号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
現代社会の様々な問題は複合的である。人が抱えている問題は、一見して特定のテーマに分類できるように見える場合もあるが、実際には色々な要素が混ざり合い、様々な原因が重なることにより問題が生じていることがある。あるテーマや問題について人間同士で会話をする際、特定のキーワードが登場したら別のテーマや問題に話題が変わることもある。このようなケースでは、特定の分野の専門家だけでコンサルティングを行うことができず、他の分野の専門家の協力を得なければならない。
【0007】
従来技術は、特定のテーマや問題についてユーザにコンサルティングを行うために予めルールツリーを生成しておく。このようにして生成されたルールツリーを利用したとしても、複合的なテーマや問題に対するコンサルティングを適切に行うことは困難である。複数のテーマや問題を扱えるようにするためには、複数の思考に対処できるルールツリーを生成する必要がある。しかしながら、ユーザに対して様々な問題に対するコンサルティングを行うためには、複数の思考を1つにまとめた巨大なルールツリーを生成しておかなければならない。
【0008】
図1は、従来技術において1つの巨大なルールツリーを生成する過程を説明する図である。巨大なルールツリーは、様々な問題に対するコンサルティングができるように様々なエレメントと事例に基づいて生成される。巨大なルールツリーは、複数の思考に対処可能というメリットはあるものの、
(1)生成する際に多くの事例を必要とするため完成させるまでに膨大な時間がかかること、
(2)様々なテーマや問題に派生する可能性を考慮すると、1つの事例に対して必要な情報(エレメント)が多くなってしまうこと、及び
(3)必要な要素(エレメント)が事後的に不足していると分かった場合、あるいは事後的に増えた場合、全ての事例について要素を追加する必要が出てくること、
といったデメリットがある。
【0009】
特定のテーマや問題から別のテーマや問題に話題が移行する場合には、特許文献2に開示されているように、呼び出すルールツリーのアドレスをキー情報として任意のエレメントに設定する必要があった。
図2は、呼び出すルールツリーのアドレスをキー情報として任意のエレメントに設定する概念を説明する図である。
図2において、塗りつぶされたエレメントには、呼び出し先のルールツリーのアドレスが設定されている。このような従来技術では、どのエレメントにどのアドレスを設定するのかについて決定することは困難であり、場合によっては、ルールツリーが硬直的なものとなる恐れがあった。
【0010】
従来のルールツリーを用いたコンサルティングでは、ユーザ対話の結果辿られたツリーのターゲットエレメントバリューがそのまま出力されていたため、不自然な言語表現の出力結果となることがあった。
【0011】
従来は、事例からルールツリーを生成することができていたが、事例そのものはルールツリーの生成者が用意する必要があった。生成者が、エレメントやバリューを含む適切な事例データを用意することは、大きな負荷であり、生成者は、どのようにエレメントを設定したらいいのか、及び既存のペルソナとの整合性をどのように取っていったらいいのかを判断するのが困難であった。
【0012】
このため、複数のルールツリーを用いて複数の思考を容易に構成することができ、所望のテーマや問題に対するルールツリーを自動的に選択することができる情報処理が求められている。また、ユーザ対話の結果、1または複数のルールツリーのターゲットエレメントバリューが得られた場合に、その内容をより自然な言語表現に変換することができる情報処理が求められている。さらに、新たな入力データに基づいて既存のペルソナのエレメント及びエレメントバリューと整合性が取れる事例データを容易に生成することができる情報処理が求められている。
【0013】
本発明は、このような課題を解決するためになされたものであり、複数の思考を複数のペルソナ(ルールツリー)に関連付けて、それらを多重で扱えるように制御する情報処理装置、情報処理方法及びプログラムを提供することを目的とする。
【0014】
本発明は、ユーザ対話の結果、複数のルールツリーのターゲットエレメントバリューが得られた場合に、その内容をより自然な言語表現に変換する、あるいはその内容に基づいて自然な言語表現を新規に生成する情報処理装置及び情報処理方法を提供することを目的とする。
【0015】
本発明は、ユーザが用意した新たな入力データから導き出せるエレメントとそのバリューの組み合わせを、既存のペルソナのエレメント及びエレメントバリューの組み合わせと整合性を取れる形態で、新たな事例データとして追加する情報処理装置及び情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【0016】
上記の課題を解決するために、本発明に係る情報処理装置は、
ユーザによって選択されたペルソナに関連付けられるRTCコンテンツテーブルを生成することと、
選択された前記ペルソナを含むペルソナ群の全てのエレメント及びエレメントバリューを取得することと、
取得したエレメント及びエレメントバリューに基づいて、前記RTCコンテンツテーブルに入力されたユーザ入力を分析することにより、関連するエレメント及びエレメントバリューを特定することと、
特定したエレメント及びエレメントバリューがターゲットエレメント及びターゲットエレメントバリューであるという条件で、前記ターゲットエレメント及び前記ターゲットエレメントバリュー、並びに前記RTCコンテンツテーブルに入力された全てのユーザ入力に対する変換処理を行うことと、
前記ユーザに提示するために、変換結果を前記RTCコンテンツテーブルに出力することと、
を実行するように構成される。
【発明の効果】
【0017】
本発明によれば、複数の思考を複数のペルソナ(ルールツリー)にそれぞれ関連付けて、それらを多重で扱えるように制御することができるので、様々なテーマや問題に対する汎用的なコンサルティングを行えるようになる。本発明は、従来技術よりも各ペルソナのエレメントが少なくなるので事例が少なくて済み、事例当たりの情報量が少なくて済む。本発明では、必要なエレメントを事後的に追加する場合でも、関連するペルソナの更新だけで済み、制御対象となる範囲が小さくなる。また、本発明では、各ペルソナが従来技術よりも比較的小さくなるため、ルールの確認やメンテナンスがしやすくなる。
【0018】
本発明によれば、ユーザ対話の結果として得られる、複数のルールツリーのターゲットエレメントバリューをより自然な言語表現に変換して、あるいはより自然な言語表現を新規に生成して出力することができるので、ユーザはペルソナとの対話をより自然な言語表現で行えるようになる。
【0019】
本発明によれば、ペルソナ(ルールツリー)を用いたサービス中であっても、新たな事例データを追加し、追加した事例データに基づいてルールツリーを更新することができるため、ペルソナを成長させることができ、また、本サービスが利用される地域に合わせたローカライズを行うことができ、さらに、エンドユーザごとの事例データを用意することにより、各ルールツリーがエンドユーザに合わせたテーラーメードなルールツリーにそれぞれ成長することができるようになる。
【図面の簡単な説明】
【0020】
本明細書において開示される実施形態の詳細な理解は、添付図面に関連して例示される以下の説明から得ることができる。
【
図1】従来技術において巨大なルールツリーを生成する過程を説明する図である。
【
図2】呼び出すルールツリーのアドレスをキー情報として任意のエレメントに設定する概念を説明する図である。
【
図3】本発明に係る情報処理装置10、ユーザ端末11及びデザイナー端末12を含むシステム全体の構成を説明する図である。
【
図4】事例データ情報106が格納する、エレメント及び事例情報の一例を示す図である。
【
図5】事例データに基づいて情報処理装置10によって生成されるペルソナ(ルールツリー)の一例を示す図である。
【
図6】情報処理装置10によって生成されるペルソナ(ルールツリー)の概念を説明する図である。
【
図7】複数のペルソナを使用してユーザの特定の話題に対してレコメンドを行う処理を説明するフロー図である。
【
図8】「ペルソナとユーザとの対話」例とペルソナ群に対して行われる情報処理を説明する図である。
【
図9】新規のペルソナを追加するとともに、関連するペルソナのみを修正する処理を説明するフロー図である。
【
図10】既存のペルソナ群が新しいペルソナ群に構成される処理のイメージを説明する図である。
【
図11】複数のペルソナを使用したユーザ対話の結果を自然な日本語に変換して出力する処理フローを説明する図である。
【
図12】事例データに基づいて生成された複数のペルソナ、及びそれらのペルソナに含まれなかったエレメントの概念を説明する図である。
【
図13】情報処理装置10が新たな事例の元データと発見取得要求(ALL)により取得した全てのエレメント及びエレメントバリューの組み合わせに基づいて認識結果を事例データとして追加する処理の概念を説明する図である。
【発明を実施するための形態】
【0021】
以下、図面を参照しながら本発明の実施形態について詳細に説明する。複数の図面において同一の符号は同一の要素を表し、重複した説明は省略する。本明細書で挙げる例は、一例であって、本明細書の記載によって何らかの制限を意図したものではない。
【0022】
(システム構成)
図3は、本発明に係る情報処理装置10、ユーザ端末11及びデザイナー端末12を含むシステム全体の構成を説明する図である。情報処理装置10、ユーザ端末11及びデザイナー端末12は、ネットワーク13を介して相互に通信可能なように接続されている。
図3では、ユーザ端末11及びデザイナー端末12は、1つずつしか示されていないがこれらは複数存在し得る。
【0023】
図3に示すように、情報処理装置10は、一般的なコンピュータと同様に、バス120などによって相互に接続された制御部101、主記憶部102、補助記憶部103、IF部104及び出力部105を備える。情報処理装置10は、ファイル/データベースなどの形式で、事例データ情報106及びルールツリー情報107を備える。
【0024】
制御部101は、中央処理装置(CPU)とも呼ばれ、情報処理装置10の各構成要素の制御やデータの演算を行い、また、補助記憶部103に格納されている各種プログラムを主記憶部102に読み出して実行する。主記憶部102は、メインメモリとも呼ばれ、受信した各種データ、コンピュータ実行可能な命令及び当該命令による演算処理後のデータなどを記憶する。補助記憶部103は、ハードディスク(HDD)などに代表される記憶装置であり、データやプログラムを長期的に保存する。
【0025】
図3の実施形態は、制御部101、主記憶部102及び補助記憶部103を同一のコンピュータの内部に設ける実施形態について説明するが、他の実施形態として、情報処理装置10は、制御部101、主記憶部102及び補助記憶部103を複数個使用することにより、複数のコンピュータによる並列分散処理を実現するように構成することもできる。他の実施形態として、情報処理装置10のための複数のサーバを設置し、複数のサーバが一つの補助記憶部103を共有する実施形態にすることも可能である。
【0026】
IF部104は、他のシステムや装置との間でデータを送受信する際のインターフェース(IF)の役割を果たし、システムオペレータから各種コマンドや入力データ(各種マスタ、テーブルなど)を受け付けるインターフェースを提供する。出力部105は、処理されたデータを表示する表示画面や当該データを印刷するための印刷手段を提供する。
【0027】
事例データ情報106は、ペルソナ(ルールツリー)を生成する元となるエレメント及び事例情報を格納する。
図4は、事例データ情報106が格納する、エレメント及び事例情報の一例を示す。
図4に示されるように、事例データは、従来技術よりも少ない適量のエレメント及び当該エレメントに対応する事例情報を含んでおり、各ペルソナ(ルールツリー)を生成するための事例の数は従来技術よりも少なくなるように構成され得る。情報処理装置10は、新たな入力データに対する自然言語認識部の認識結果に基づいてエレメント及び事例情報を含む事例データを生成して、あるいはデザイナー端末12から事例データを取得して、事例データ情報106に追加する。
【0028】
ルールツリー情報107は、ペルソナ(ルールツリー)の情報を格納する。
図5は、事例データに基づいて情報処理装置10によって生成されるペルソナ(ルールツリー)の一例を示す。
図5に示されるように、ペルソナは、そのルールツリーが従来技術よりも比較的小さくなるので内容の確認やメンテナンスが容易となる。
【0029】
図6は、情報処理装置10によって生成されるペルソナ(ルールツリー)の概念を説明する図である。ルールツリーは、複数のエレメント111及びエレメントバリュー112の組み合わせを有している。ルールツリー内の任意のエレメントとエレメントバリューは、ターゲットエレメントとターゲットエレメントバリューであってよく、例えば、ツリーの最下層のエレメントバリュー112は、ターゲットエレメントバリュー(すなわち、ペルソナの結論)であってよい。ルールツリーは、エレメントの内容に応じてターゲットエレメントの数が変動してもよい。本明細書では、エレメント111及びエレメントバリュー112を総称して、エレメント100と呼ぶことがある。
【0030】
エレメント100は、ルールを生成した事象の名前、エレメントタイプ、エレメント名、エレメント値、情報エントロピー値、及びエイリアスを少なくとも含むことができる。ルールを生成した事象の名前は、ルールツリーを生成する元となった事例(例えば、後述する「健康」「ボディメイク」「コスト」「食事選択」「体調」など)またはペルソナ化された対象者を示す。エレメントタイプは、エレメントのタイプが条件なのか結論なのかを示すフラグである。エレメント名は、条件や結論の内容を示す名前である。エレメント値は、条件や結論の属性値を示す。情報エントロピー値は、ルールツリーが生成された際に情報処理装置10によって算出された当該エレメントのエントロピー値を示す。エントロピー値は、当該エレメントがどれほどの情報を有しているか(「情報価値」とも言う)を示すことが可能であり、エントロピー値が高いとは相対的に多くの情報を含んでいる、すなわち、情報価値が相対的に高いことを示し、一方、エントロピー値が低いとは相対的に少ない情報を含んでいる、すなわち、情報価値が相対的に低いことを示す。エイリアスは、同じ意味の関連エレメントが同一あるいは他のペルソナに存在する場合のその同じ意味と関連させた値、すなわち、読み替え値(同義語)を示すことができる。エイリアスは、複数の読み替え値を有することができる。
【0031】
情報処理装置10は、
図6に示すようなルールツリーを生成する(構成する)際、各エレメント(「ノード」とも言う)に対するルールを生成した事象の名前、エレメント名、エレメント値、情報エントロピー値、及びエイリアスを設定することができる。情報処理装置10は、設定したこれらの情報をルールツリー情報107に格納することができる。
【0032】
ユーザ端末11は、情報処理装置10にアクセスすることで1つ以上のペルソナを呼び出し、それらのルールツリーを利用してペルソナと対話する、すなわち、コンサルティングを受けることができる。
【0033】
デザイナー端末12は、情報処理装置10によって提供される入力画面などを介して、ペルソナを生成する元となるエレメント及び事例の情報(事例データ情報)を情報処理装置10に登録することができる。
【0034】
本発明の一実施形態は、プログラムモジュール等のコンピュータによって実行されるコンピュータ実行可能命令という一般的文脈で説明することができる。一般に、プログラムモジュールは、特定のジョブを実行する、または特定の抽象データ型を実現する、ルーチン、プログラム、オブジェクト、構成要素、データ構造等を含む。本発明の一実施形態はまた、分散コンピューティング環境で実現することができ、ジョブは、通信ネットワークを通して接続された遠隔処理装置によって実行される。分散コンピューティング環境では、プログラムモジュールを、ローカルコンピュータストレージ媒体及び遠隔コンピュータストレージ媒体内に配置することができる。
【0035】
(複数のペルソナを使用してレコメンドを行う処理)
図7は、複数のペルソナを使用してユーザの特定の話題に対してレコメンドを行う処理の一例を説明するフロー図である。この処理フローの説明では、1つの事例として、食事についてのレコメンドを複数のペルソナを使用して行う例を挙げ、ノードのエントロピー値を使用した処理を説明する。ルールツリー情報107には、「健康」「ボディメイク」「コスト」及び「食事選択」のペルソナが格納されているものとし、それぞれのペルソナには以下のエレメントが少なくとも含まれているものとするが、これらに限定されるわけではない。
「健康」ペルソナ:カロリー、各種栄養素など
「ボディメイク」ペルソナ:カロリー、各種栄養素、筋肉量、目標体重など
「コスト」ペルソナ:食材価格、冷蔵庫の中身など
「食事選択」ペルソナ:最近食べたもの、他ペルソナターゲットなど
【0036】
S701にて、情報処理装置10は、話題に関連付けられるペルソナ(例えば、「健康」ペルソナ)をルールツリー情報107から読み出し、当該ルールツリーの各ノードのエントロピー値を取得する。話題は、ユーザ端末11から受信してもいいし、あるいは後述するS709の処理により候補となった話題でよい。情報処理装置10は、取得したエントロピー値の中で最も高い値のエントロピー値を有するノードを「優先順位が高いエレメント」として特定し、特定したエレメントに関連付けられるプログラムを実行する。例えば、最も高い値のエントロピー値を有するノードが当該ルールツリーにおける最上位ノードである場合、情報処理装置10は、最上位ノードに関連付けられるプログラムを実行する。
【0037】
図8は、本処理フローで実行される「ペルソナとユーザとの対話」例とペルソナ群に対して行われる情報処理を説明する図である。
図8の例では、S701の処理により「健康」ペルソナの最上位ノードが特定されてマーク付けされている。
【0038】
ここで、ペルソナのエントロピー値について説明する。ペルソナ(ルールツリー)の各ノードには、情報処理装置10によって算出されたエントロピー値が関連付けられている。エントロピー値は、当該ノードが有する情報量(情報価値)を示しており、エントロピー値が高いほど情報量も多いことを示している。本実施例では、エントロピー値が高い、すなわち、多くの情報を含んでいるノードを「優先順位が高いエレメント」とする。
【0039】
本発明の一実施形態では、情報処理装置10は、デザイナー端末12からの指示に基づいて、パラメータや重み付けを用いて各ノードのエントロピー値を変更することにより、エレメント選出方法を制御するように構成されることも可能である。本発明では、情報処理装置10は、デザイナー端末12からの設定命令を介してエレメント選出方法を制御する情報を設定することができる。すなわち、情報処理装置10は、上述した「エントロピー値」以外の、エレメントに関連付けられる情報に基づいてエレメント選出を行うように構成されることもできる。
【0040】
S702にて、情報処理装置10は、特定したエレメントに関連付けられるプログラムが実行されると、エレメントに関連付けられるコメントをユーザ端末11に表示する(
図8の「A」の矢印)。
図8の「A」に示されるように、情報処理装置10は、「1日の接種カロリーはどのくらいですか?」といったコメントをユーザ端末11のディスプレイに表示することができる。
【0041】
S703にて、情報処理装置10は、ユーザ端末11からユーザ回答のバリュー値を取得し(
図8の「B」の矢印)、特定したエレメントと取得したバリューの組み合わせを、当該ペルソナのノード上でバリュー値取得済とする処理を行う。この処理により、「健康」ペルソナの最上位ノードと、それに関連付けられるバリューがバリュー値取得済としてマーク付けされてよい。なお、バリュー値が取得済であることが分かればよいので、マーク付け以外にも任意の値をエレメントやエレメントバリューにセットして取得済であることを示してもよく、そのやり方は特に限定されない。
【0042】
S704にて、情報処理装置10は、特定したエレメントと取得したバリューの組み合わせを持つノードが他のペルソナに存在するかどうかを判定するためにルールツリー情報107に問い合わせを行う。より詳細に言えば、情報処理装置10は、この組み合わせのエレメントに設定されているエイリアスを読み出し、読み出したエイリアスと同じ読み替え値、及び所定の基準により同じ読み替え値として許容可能な(すなわち、類似の)読み替え値を有するエイリアスが設定されているエレメントを特定する。特定されたエレメントは、同じペルソナのルールツリー内に存在してもいいし、他のペルソナのルールツリー内に存在してもよい。なお、本発明では、情報処理装置10は、エイリアスを使用せずに、エレメントとバリューの組み合わせ自体を利用して、同じ及び類似の組み合わせが存在するかどうかを判定することもできる。
【0043】
問い合わせの結果、同じ及び類似の組み合わせが存在すると判定された場合、S705にて、情報処理装置10は、判定された1つ以上のペルソナのエレメントとエレメントバリューの1つ以上の組み合わせについてもバリューを取得済であるとマーク付けする。例えば、
図8の「C」では、「ボディメイク」ペルソナの特定のエレメントとエレメントバリューの組み合わせが同じ組み合わせであると判定され、情報処理装置10によってマーク付けされている。
【0044】
S706にて、情報処理装置10は、S703及びS705の処理にてマーク付けした(すなわち、バリュー値取得済とした)各ペルソナのトップノードからターゲットエレメントの間に存在するエレメントとエレメントバリューが全て取得済になったかどうかを判定する。
図8の例では、「ボディメイク」ペルソナのトップノードからターゲットエレメントの間に存在するエレメントとバリューが全て取得済になっている。
【0045】
全て取得済になったと判定された場合、S707にて、情報処理装置10は、ターゲットエレメントのバリュー(すなわち、当該ペルソナの結論)を取得したものとし、ターゲットエレメントバリューのコメント(バリュー値)をユーザ端末11のディスプレイに表示する。
図8の「D」では、情報処理装置10は、「ボディメイクの観点からすると、今はもう少ししっかり食べて欲しいですね」というコメントをユーザ端末11のディスプレイに表示している。
【0046】
S708にて、情報処理装置10は、取得したターゲットエレメントバリューと同じ及び類似のエレメントが他のペルソナにも存在するかどうかを判定するためにルールツリー情報107に問い合わせを行う。より詳細に言えば、情報処理装置10は、ターゲットエレメントに設定されているエイリアスを読み出し、読み出したエイリアスと同じ読み替え値、及び所定の基準により同じ読み替え値として許容可能な読み替え値を有するエイリアスが設定されているエレメントの存在を判定する。判定の結果、存在する場合には、情報処理装置10は、それらのエレメントについてもバリューを取得済であるとマーク付けする。この処理の後、S706に処理が戻る。
【0047】
S704の問い合わせ処理の結果、同じ及び類似の組み合わせが存在しないと判定された場合、およびS706の判定処理の結果、各ペルソナのトップノードからターゲットエレメントの間に存在するエレメントとエレメントバリューが全て取得済になっていないと判定された場合、S709にて、情報処理装置10は、次の話題を選択する。
【0048】
S709にて、情報処理装置10は、S704にて特定されたエレメントが存在するペルソナのルールツリーの各エレメントのうちマーク付けされていないノードのエントロピー値を比較し、「優先順位が高いエレメント」を選択する。選択されたエレメントが次の話題となり、S701に処理が戻り、情報処理装置10は、「優先順位が高いエレメント」として選択されたエレメントに関連付けられるプログラムを実行する。その後、処理はS702に移行する。
【0049】
あるいは、S709にて、情報処理装置10は、S706にて判定した各ペルソナのルールツリーの各エレメントのうちマーク付けされていないノードのエントロピー値を比較し、「優先順位が高いエレメント」を選択する。選択されたエレメントが次の話題となり、S701に処理が戻り、情報処理装置10は、「優先順位が高いエレメント」として選択されたエレメントに関連付けられるプログラムを実行する。その後、処理はS702に移行する。
【0050】
S709にて、2つの処理を説明したが、前者は同一ペルソナ内のエントロピー値を比較しているのに対し、後者は同一及び他のペルソナ内のエントロピー値を比較している点で異なる。すなわち、後者の場合、話題が他のペルソナから選択される可能性がある。
【0051】
上記の実施形態の一例では、次の話題となるエレメントは、エントロピー値に基づいて決定されているが、これは1つの例にすぎない。本発明では、情報処理装置10は、所定の要件に基づいて特定されるエレメントを次の話題のエレメントとして選択することができる。
【0052】
エレメントを特定するための所定の要件は、大きく2つに分けられる。1つは、情報処理装置10が、任意のセンサあるいはデバイスを介して取得できる文字情報、音声情報及び画像情報のうちの1つ以上に基づいてエレメントを特定することを示す。もう1つは、情報処理装置10が、ルールツリーから得られる情報に基づいてエレメントを特定することを示す。
【0053】
前者についてより詳細に言えば、情報処理装置10は、任意のセンサあるいはデバイスを介して取得した以下の情報のうちの1つ以上に基づいて次の話題のエレメントを選択することができる。
・任意の顔認証システムから取得したユーザの表情を予め学習していた様々な人の表情と比較して、ユーザの感情が好意的なのか、否定的なのかを判断して、現在の話題のルールツリーを使用した対話を続けるか、他の話題のルールツリーに移行できるような対話(例:ところで、〇〇について・・・、など)をするかを決定する。
・ユーザによって入力された文字列に予め定められた言葉が含まれているかどうかに基づいて、ユーザがまだ対話を続けたそうか否かを判定する。対話を続けたそうと判定した場合には、現在選択されているルールツリーのエレメントのうち、まだバリュー値が得られていないエレメントを次の話題として選択する。一方、例えば、同じ内容の対話が所定回数以上続く、飽きていることを示唆するような言葉が出てきた、対話の文章の長さが前回の入力よりも所定の割合以上少なくなり、興味が薄れていることが示唆される等、対話を続けたくなさそうと判定した場合には、別のルールツリーに変更する。
【0054】
後者についてより詳細に言えば、情報処理装置10は、「エントロピー値」以外の、エレメントに関連付けられる情報に基づいて次の話題のエレメントを選択することができる。
・話題となっている複数のルールツリーのそれぞれのトップノードからターゲットエレメントまでのそれぞれのルートについて、エレメントバリューがマーク付けされている(値が分かっている)数と全てのエレメントの数の比率を算出し、算出した比率が一番高いルートのルールツリーを次の話題のルールツリーとして選択する。その後、選択したルールツリーの当該ルートのエレメントのうち、任意のエレメントを次の話題としてユーザに提供する。このようにすることで、情報処理装置10は、結論が出そうなルールツリーから優先して選択することができるようになる。
【0055】
上記のような処理フローにより、情報処理装置10は、複数のペルソナを使用してユーザの特定の話題に対してレコメンドを行うことができるようになる。このため、従来技術では、特定のテーマや問題についてユーザにコンサルティングを行うために予めルールツリーを用意しておく必要があったが、本発明によれば、エレメントに関連付けられるエントロピー値及びエイリアスなどのエレメントに関連付けられる情報や、任意のセンサあるいはデバイスを介して取得した情報などを使用することで別のルールツリーのエレメントを繋げることができるので、複合的な問題に対するコンサルティングも可能になる。
【0056】
(ペルソナを追加する処理)
図9及び
図10を参照しながら、既存のペルソナ群にある観点が抜けていることが判明した際に、その観点に基づく新規のペルソナを追加するとともに、関連するペルソナのみを修正する情報処理を説明する。
図9は、新規のペルソナを追加するとともに、関連するペルソナのみを修正する処理を説明するフロー図である。
図10は、既存のペルソナ群が新しいペルソナ群に構成される処理のイメージを説明する図である。
【0057】
本処理フローでは、既存のペルソナ群を生成後、「食事選択」ペルソナによる料理レコメンドに体調の良し悪しの観点(エレメント)が抜けており、体調の良し悪しについてはペルソナによる判断が必要であるため、ペルソナ群の再構成が必要となったケースを取り上げる。例えば、「体調」ペルソナのエレメントとしては、持病、胃もたれ、カロリー、栄養素などが挙げられるが、これらに限定されるわけではない。
【0058】
S901にて、情報処理装置10は、追加する「体調」ペルソナの事例データをデザイナー端末12から取得し、事例データ情報106に格納する。デザイナーは、既存ペルソナのエレメントを考慮した上で、新規追加する「体調」ペルソナの事例データと、変更対象の既存ペルソナの事例データを準備している。
図10に示されるように、「体調」ペルソナの事例データに含まれるエレメントは、既存ペルソナにも含まれている共通エレメントと、新規に追加するエレメントが混在している。
【0059】
S902にて、情報処理装置10は、追加した事例データに基づいて「体調」ペルソナのルールツリーを生成し、ルールツリー情報107に格納する。
【0060】
S903にて、情報処理装置10は、修正する「食事選択」ペルソナの事例データをデザイナー端末12から取得し、事例データ情報106に格納されているデータをアップデートする。
【0061】
S904にて、情報処理装置10は、アップデートされた事例データに基づいて「食事選択」ペルソナのルールツリーを再生成する。
【0062】
上述したように、本処理フローでは、追加するエレメントが関連するペルソナのみ新規に生成し、あるいは修正する(差し替える)だけで済み、関連しないペルソナについては変更しないため、制御対象となる範囲が相対的に小さくなり、各ペルソナのメンテナンスや内容の確認が格段にし易くなる。すなわち、
図10に示した新しいペルソナ群は、最小限の追加及び修正処理により再構成されることができる。なお、上記のフローは、順序を変えてもよく、例えば、S902とS903の処理順序を変更してもよい。
【0063】
(出力結果を自然な言語に変換する処理)
図11は、複数のペルソナを使用したユーザ対話の結果を自然な日本語に変換して出力する処理フローを説明する。事例から生成されたルールツリーのエレメント及びターゲットエレメントのバリューを編集せずにそのまま出力した場合には、自然な言語表現にならない場合がある。このため、情報処理装置10は、
図11に示すような方法にしたがってユーザに提示する出力内容を自然な言語表現にすることができる。
【0064】
以下で説明する例では、ユーザは、ペルソナとの対話を開始する際に、大まかな対話のテーマ、すなわち、対象となり得るペルソナを選択しているものとする。例えば、ユーザは、健康、学習、買い物、趣味などといった大まかな対話のテーマを選択することができ、それにより、情報処理装置10は、対象となるペルソナ(ルールツリー)を選択することができるようになる。
【0065】
S1101にて、情報処理装置10は、ユーザとペルソナとの対話が開始される際に、当該ユーザ対話に関連付けられるリアルタイムコミュニケーションコンテンツテーブル(本明細書では「RTCコンテンツテーブル」と称す)を生成し、選択されたペルソナの最上位ノードに設定された対話開始時の発言(例えば、「こんにちは。何お話ししましょうか?」など)をRTCコンテンツテーブルに入力し、ユーザ端末11に提供する。これにより、ユーザ端末11のディスプレイには、対話開始時の発言が表示される。
【0066】
S1102にて、ユーザは対話開始時の発言に対して、あるいはペルソナから受け取った対話内容に対して、ユーザ端末11を介してRTCコンテンツテーブルにユーザ入力を行い、情報処理装置10は、RTCコンテンツテーブルのユーザ入力を受信する。
【0067】
S1103にて、情報処理装置10の自然言語認識部は、選択されているペルソナを含むペルソナ群の全てのエレメント及びエレメントバリューを発見取得要求(GROUP)により取得し、取得した情報に基づいてRTCコンテンツテーブルのユーザ入力の内容を分析する。ユーザ入力の文章は、ルールツリーのエレメント、ターゲットエレメント、及びそれらのバリューの情報と一致していないことがある。そのため、自然言語認識部は、ユーザ入力の文章を所定のルールに従って分節して、分節したワードごとに取得したエレメント及びエレメントバリューの組み合わせと一致または類似するかどうかを判定し、分節したワードごとに関連するエレメント及びエレメントバリューを特定する。本発明では、情報処理装置10は、分節したワードごとに取得したエレメント及びエレメントバリューの組み合わせと類似するかどうかを類似基準テーブルに記載されている類似表現に基づいて決定することができる。類似基準テーブルに記載されている類似表現は、2つの表現が同一ではないものの、類似と見なし得る表現を示す。類似表現は、例えば、「A」という表現が「A1」や「A2」という表現と類似していることを示すことができる。
【0068】
S1104にて、情報処理装置10は、S1103にて特定したエレメントがターゲットエレメントであるかどうかを判定する。ルールツリーのエレメントにはエレメントタイプ(ターゲットフラグ)が設定可能であり、それぞれのエレメントがターゲットエレメント(結論)であるか、またはエレメント(条件)であるかを設定することができる。判定の結果、ターゲットエレメントである場合にはS1106に処理が進み、ターゲットエレメントではない場合にはS1105に処理が進む。
【0069】
S1105にて、情報処理装置10は、特定したエレメントとエレメントバリューの情報を使用して生成要求機能による自然言語生成処理を行って、特定したエレメントとエレメントバリューに関連付けられる第1の自然言語表現をRTCコンテンツテーブルに入力し、ユーザ端末11に提供する。情報処理装置10の生成要求機能による自然言語生成処理は、1つのエレメント及びエレメントバリューの情報を自然な表現に変換することを示す。
【0070】
S1106にて、情報処理装置10は、特定したターゲットエレメントとターゲットエレメントバリュー、及びRTCコンテンツテーブルにそれまでに入力された内容を使用して、情報処理装置10の変換部に変換処理を実行させる。変換部は、生成系AIと連携し生成系AIに備えられている機能を利用して、ターゲットエレメントとターゲットエレメントバリュー、及びRTCコンテンツテーブルの入力内容に基づいて第2の自然言語表現を生成する。「第2の自然言語表現」は、生成系AIに備えられている機能を利用して生成された自然言語表現を示す。
【0071】
「第1の自然言語表現」は、エレメントとエレメントバリューの値を自然な言語表現に変換したものであるため、情報処理装置10の生成要求機能により処理可能である。一方、「第2の自然言語表現」は、1以上のペルソナのターゲットエレメント及びターゲットエレメントバリュー、並びにRTCコンテンツテーブルの入力内容から生成されるため、処理対象の情報が多く、生成系AIに備えられている機能を利用して自然言語表現を生成することとしている。
【0072】
情報処理装置10は、上記のような自然な言語表現を生成する際に、言葉と意図を分けて言語表現を生成することができる。詳細に言えば、情報処理装置10は、生成系AIと連携し生成系AIに備えられている機能を利用しているので、ペルソナの出した結論(ターゲットエレメント、バリュー)を話題となっている時代に即した、また、その土地に合わせた言葉を生成することができる。また、情報処理装置10は、複数のペルソナが出した結論(ターゲットエレメント、バリュー)の組み合わせによって適切な言葉を生成することができる。例えば、第1のペルソナが「励ます」という結論を出した際に、第2のペルソナが「諭すように」という結論を出した場合に生成される言葉と、第1のペルソナが「励ます」という結論を出した際に、第2のペルソナが「相手の立場に共感して」という結論を出した場合に生成される言葉とでは表現が異なってくる。それぞれの結論に応じて適切な言葉は異なるが、情報処理装置10は、生成系AIに備えられている機能を利用して複数のペルソナが出した結論を適切な表現にしてRTCコンテンツテーブルに出力することができる。従って、本発明によれば、複数のペルソナが出した結論の組み合わせごとに異なる言葉を用意しておく必要がなくなる。
【0073】
S1107にて、情報処理装置10は、変換結果、すなわち、第2の自然言語表現をRTCコンテンツテーブルに入力し、ユーザ端末11に提供する。これにより、情報処理装置10は、複数のペルソナを利用したユーザ対話について、より自然な言語表現の対話結果をユーザに提供することができるようになる。
【0074】
(情報処理装置10の自然言語認識部の認識結果を事例に追加する処理)
情報処理装置10は、自然言語認識部の認識結果を新たな事例として事例データ情報106に格納することができる。上記では、
図4及び
図5を参照しながら、情報処理装置10が事例データからペルソナ(ルールツリー)を生成することを説明したが、ペルソナを生成する際には、事例データに含まれていたエレメントを全て使用することはなく、情報価値の低い一部のエレメントは剪定される。
図12は、事例データに基づいて生成された複数のペルソナ、及びそれらのペルソナに含まれなかったエレメントの概念を説明する図である。
図12に示されるように、情報処理装置10は、事例データから第1のペルソナ、第2のペルソナなどを生成してルールツリー情報107に格納し、剪定されたエレメントの情報を補助記憶部103に格納する。
【0075】
上記で説明した発見取得要求は、エレメント及びエレメントバリューの組み合わせを取得する機能であり、情報処理装置10は、発見取得要求を使用する際、以下の4つのパラメータを指定して取得する情報の範囲を制御することができる。なお、S1103では、発見取得要求(GROUP)を利用しているので、その対話において選択されているペルソナを含むペルソナ群の全てのエレメント及びエレメントバリューを取得している。
【0076】
【0077】
図13は、情報処理装置10が新たな事例の元データと発見取得要求(ALL)により取得した全てのエレメント及びエレメントバリューの組み合わせに基づいて認識結果を事例データとして追加する処理の概念を説明する。情報処理装置10は、事例の元データからの入力データが取得したどのエレメント及びエレメントバリューに対応するかを判定し、判定結果(認識結果)としてのエレメント及び事例の組み合わせを事例データ情報106に格納する。この処理により、事例データが蓄積され、ペルソナ群がブラッシュアップされることになる。
【0078】
以上、例示的な実施形態を参照しながら本発明の原理を説明したが、本発明の要旨を逸脱することなく、構成及び細部において変更する様々な実施形態を実現可能である。すなわち、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様を採用することが可能である。
【符号の説明】
【0079】
10 情報処理装置
11 ユーザ端末
12 デザイナー端末
101 制御部
102 主記憶部
103 補助記憶部
104 IF部
105 出力部
106 事例データ情報
107 ルールツリー情報
111 エレメント
112 エレメントバリュー