以下に、本願に係る決定装置、決定方法、及び決定プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る決定装置、決定方法、及び決定プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
(実施形態)
〔1.決定処理〕
まず、図1を用いて、実施形態に係る決定処理の一例について説明する。図1は、実施形態に係る決定処理の一例を示す図である。図1では、決定装置100がユーザの情報の関連付け(紐付け)を行う一例を示す。また、図1では、決定装置100が紐付けた情報を用いてモデルを生成する一例を示す。以下では、ユーザの行動情報とそのユーザの感情情報である正解情報が対応付けられた情報(データ)を「学習データ」ともいう。
〔決定システムの構成〕
まず、図1の説明に先立って、図3に示す決定システム1について説明する。図3に示すように、決定システム1は、端末装置10と、サービス提供装置50と、決定装置100とが含まれる。端末装置10と、サービス提供装置50と、決定装置100とは所定のネットワークNを介して、有線または無線により通信可能に接続される。図3は、実施形態に係る決定システムの構成例を示す図である。なお、図3に示した決定システム1には、複数台の端末装置10や、複数台のサービス提供装置50や、複数台の決定装置100が含まれてもよい。
端末装置10は、ユーザによって利用される情報処理装置である。端末装置10は、例えば、スマートフォンや、タブレット型端末や、ノート型PC(Personal Computer)や、デスクトップPCや、携帯電話機や、PDA(Personal Digital Assistant)等により実現される。図1に示す例においては、端末装置10がユーザが利用するスマートフォンである場合を示す。なお、以下では、端末装置10をユーザと表記する場合がある。すなわち、以下では、ユーザを端末装置10と読み替えることもできる。具体的には、図1では、端末装置10がユーザID「U1」により識別されるユーザ(以下、「ユーザU1」とする場合がある)が利用するスマートフォンである場合を示す。
また、端末装置10は、GPS(Global Positioning System)センサ等の機能を有し、ユーザの位置情報(センサ情報)を検知し、取得するものとする。また、端末装置10は、通信を行っている基地局の位置情報や、WiFi(登録商標)(Wireless Fidelity)の電波を用いてユーザの位置情報を推定し、取得してもよい。なお、以下では位置情報を単に「位置」と記載する場合がある。また、端末装置10は、GPSセンサ等に限らず種々のセンサにより、各種センサ情報を検知してもよい。また、端末装置10は、加速度センサの機能を有し、ユーザの移動における加速度情報(センサ情報)を検知し、取得する。また、端末装置10は、温度センサや気圧センサ等の種々の機能を有し、温度や気圧等のユーザの置かれている環境情報を検知し、取得可能であってもよい。また、端末装置10は、心拍センサ等の種々の機能を有し、ユーザの生体情報を検知し、取得可能であってもよい。例えば、端末装置10を利用するユーザは、端末装置10と通信可能なウェアラブルデバイスを身に付けることにより、端末装置10によりユーザ自身のコンテキスト情報を取得可能としてもよい。例えば、端末装置10を利用するユーザは、端末装置10と通信可能なリストバンド型のウェアラブルデバイスを身に付けることにより、端末装置10によりユーザ自身の心拍(脈拍)に関する情報を端末装置10が取得可能としてもよい。例えば、端末装置10は、タッチパネルディスプレイによりユーザの操作を受け付ける。
また、図1に示す例においては、端末装置10を利用するユーザに応じて、端末装置10を端末装置10−1〜10−5として説明する。例えば、端末装置10−1は、ユーザU1により使用される端末装置10である。また、例えば、端末装置10−2は、ユーザU2により使用される端末装置10である。また、以下では、端末装置10−1〜10−5について、特に区別なく説明する場合には、端末装置10と記載する。なお、上記のように、「ユーザU*(*は任意の数値)」と記載した場合、そのユーザはユーザID「U*」により識別されるユーザであることを示す。例えば、「ユーザU1」と記載した場合、そのユーザはユーザID「U1」により識別されるユーザである。
サービス提供装置50は、ユーザに動画配信サービス(単に「動画サービス」ともいう)であるAサービスを提供する情報処理装置である。例えば、サービス提供装置50は、端末装置10を利用するユーザに動画サービスを提供する。例えば、サービス提供装置50は、端末装置10にAサービスに関する各種情報を提供する。
決定装置100は、ユーザに関する情報が所定の条件を満たす場合、ユーザが回答したアンケートに関するアンケート情報を、ユーザの行動情報に関連付けると決定する情報処理装置である。また、決定装置100は、ユーザの行動情報と、ユーザの感情に関する感情情報とに基づいて、行動情報が入力される入力ユーザの感情を推定するモデルを生成する情報処理装置である。また、決定装置100は、推定したユーザの感情に関する情報に基づいて、種々のサービスを提供する。例えば、決定装置100は、推定したユーザの感情に関する情報をサービス提供装置50に提供し、提供された情報を用いてサービス提供装置50がユーザへ種々のサービスを提供するがこの点については、図11で説明する。
まず、図1を用いて、実施形態に係る決定処理の一例について説明する。図1では、決定装置100が所定の条件に基づいて、各ユーザから収集した行動情報とアンケート回答とを関連付ける(紐付ける)場合を示す。また、図1では、決定装置100が関連付けた(紐付けた)行動情報とアンケート回答との組合せ(学習データ)とを用いてユーザの感情を推定するモデルを生成する場合を示す。また、以下では、図1の例を別の観点から示す図2を適宜参照して説明する。図2は、実施形態に係る情報の紐付けの一例を示す図である。
決定装置100は、ユーザU1が利用する端末装置10−1からユーザU1の行動情報を取得する(ステップS11−1)。例えば、決定装置100は、端末装置10−1からユーザU1のAサービスにおける行動情報を取得する。なお、決定装置100は、図2に示すように、電子商取引サービスであるBサービス等のAサービス以外のサービスにおけるユーザの行動情報を取得してもよい。例えば、決定装置100は、端末装置10−1からユーザU1のBサービスにおける行動情報を取得してもよい。
また、決定装置100は、上記に限らずユーザの種々の行動情報を取得してもよい。例えば、決定装置100は、端末装置10−1からユーザU1のインターネット(ウェブ)上における行動情報を取得する。例えば、決定装置100は、ユーザU1がウェブコンテンツを閲覧したことを示す情報や、クエリを用いて検索を行ったことを示す情報の種々のウェブ上での行動情報を取得する。例えば、決定装置100は、ユーザU1の現実世界(以下「実空間」とする)における行動情報を取得してもよい。また、例えば、決定装置100は、ユーザU1がAコンビニでB商品の購入を行ったことを示す情報や、Bレストランで飲食を行ったことを示す情報等の種々の行動情報を取得してもよい。
また、決定装置100は、ユーザU2が利用する端末装置10−2から行動情報を取得する(ステップS11−2)。例えば、決定装置100は、端末装置10−2からユーザU2のAサービスにおける行動情報を取得する。また、決定装置100は、図2に示すように、ユーザU2のAサービスやBサービスにおける行動情報を取得する。また、例えば、決定装置100は、端末装置10−2からユーザU2のウェブ上や実空間における行動情報を取得する。
また、決定装置100は、ユーザU3が利用する端末装置10−3から行動情報を取得する(ステップS11−3)。例えば、決定装置100は、端末装置10−3からユーザU3のAサービスにおける行動情報を取得する。例えば、決定装置100は、ステップS11−3以前の所定の期間内(例えば直近1ヶ月や2週間等)においてユーザU3のAサービスを利用したことを示す行動情報を取得する。例えば、決定装置100は、端末装置10−3からユーザU3のAサービスにおける行動情報等、ユーザU3のウェブ上や実空間における行動情報を取得する。
また、決定装置100は、ユーザU4が利用する端末装置10−4から行動情報を取得する(ステップS11−4)。例えば、決定装置100は、端末装置10−4からユーザU4のAサービスにおける行動情報を取得する。例えば、決定装置100は、ステップS11−4以前の所定の期間内(例えば直近1ヶ月や2週間等)においてユーザU4のAサービスを利用したことを示す行動情報を取得する。例えば、決定装置100は、端末装置10−4からユーザU4のAサービスにおける行動情報等、ユーザU4のウェブ上や実空間における行動情報を取得する。
以下、ステップS11−1〜S11−4を区別せずに説明する場合、ステップS11と総称する。また、ステップS11−1〜S11−4に限らず、各ユーザの行動情報を取得は、複数回行われてもよい。なお、図1では、5人のユーザU1〜U5を図示するが、決定装置100は、ユーザU1〜U5に限らず、多数のユーザ(例えば、100万ユーザや1000万ユーザ等)の行動情報を取得する。また、決定装置100は、各ユーザが利用する端末装置10以外の外部装置から各ユーザの行動情報を取得してもよい。例えば、決定装置100は、各ユーザが利用するサービスを提供する外部装置から各ユーザの行動情報を取得してもよい。
ここで、図1及び図2の例では、決定装置100は、ユーザU5が利用する端末装置10−5からAサービスにおける行動情報を取得していないものとする。すなわち、図1及び図2の例では、ステップS11の時点から所定の期間内にユーザU5がAサービスを利用していないユーザ(以下、「不適合ユーザ」とする)であるものとする。例えば、図1及び図2の例では、ユーザU5が1ヶ月以上Aサービスを利用していない不適合ユーザであるものとする。なお、決定装置100は、所定の期間内におけるAサービスの利用に関する行動情報を含まないユーザU5の行動情報ADT5を取得しているものとする。このように、図1の例では、決定装置100は、所定の期間内においてAサービスを利用しているユーザU1〜U4等を含む利用ユーザ群UG1や、それ以外のユーザU5等の行動情報を取得する。
そして、図1の示す例において、決定装置100は、ユーザが回答したアンケートに関するアンケート情報を取得する。例えば、決定装置100は、いわゆるクラウドソーシングなどによるタスクを行う複数のワーカからアンケート情報を取得する。具体的には、決定装置100は、Aサービスに関するアンケートをクラウドソーシングによりユーザ(ワーカ)に回答させ、その回答を取得する。
例えば、決定装置100は、図2に示すように「あなたはAサービスを友人や同僚に薦めますか?(0〜10で回答)」等の種々の内容のアンケートAN11をクラウドソーシングによりユーザ(ワーカ)に回答させ、その回答を取得する。なお、アンケートについては、ネット・プロモーター・スコア(Net Promoter Score)等の種々の従来手法が用いられてもよい。
例えば、図1の例では、決定装置100は、所定のサイト等にアンケートAN11への回答の仕事(タスク)を掲載し、不特定多数の人(ユーザ)に仕事(タスク)を依頼することにより、アンケートAN11に回答するユーザ(ワーカ)を募集する。なお、上記のようなクラウドソーシングに関する処理は他の外部装置が行い、決定装置100は、他の外部装置からユーザのアンケートへの回答を取得してもよい。なお、図1及び図2の例では、説明を簡単にするために、アンケートAN11が図2に示すように「あなたはAサービスを友人や同僚に薦めますか?(0〜10で回答)」のみであるものとして説明する。
例えば、決定装置100は、ワーカであるユーザU3が利用する端末装置10−3からユーザU3の回答を取得する(ステップS12−1)。例えば、ユーザU3は、端末装置10−3を利用してクラウドソーシングのサイト等においてアンケートAN11への回答のタスクを承諾することにより、アンケートAN11へ回答する。図1の例では、決定装置100は、ユーザU3からアンケートAN11に対する回答がスコア「3」であるとの回答を取得する。
また、例えば、決定装置100は、ワーカであるユーザU4が利用する端末装置10−4からユーザU4の回答を取得する(ステップS12−2)。例えば、ユーザU4は、端末装置10−4を利用してクラウドソーシングのサイト等においてアンケートAN11への回答のタスクを承諾することにより、アンケートAN11へ回答する。図1の例では、決定装置100は、ユーザU4からアンケートAN11に対する回答がスコア「9」であるとの回答を取得する。
また、例えば、決定装置100は、ワーカであるユーザU5が利用する端末装置10−5からユーザU5の回答を取得する(ステップS12−3)。例えば、ユーザU5は、端末装置10−5を利用してクラウドソーシングのサイト等においてアンケートAN11への回答のタスクを承諾することにより、アンケートAN11へ回答する。図1の例では、決定装置100は、ユーザU5からアンケートAN11に対する回答がスコア「1」であるとの回答を取得する。
以下、ステップS12−1〜S12−3を区別せずに説明する場合、ステップS12と総称する。なお、図1では、5人のユーザU1〜U5を図示するが、決定装置100は、ユーザU3〜U5に限らず、多数のユーザ(例えば、1万ユーザや10万ユーザ等)からアンケートへの回答を含むアンケート情報を取得する。また、決定装置100は、各ユーザが利用する端末装置10以外の外部装置から各ユーザのアンケート情報を取得してもよい。例えば、決定装置100は、クラウドソーシングに関するサービスを提供する外部装置から各ユーザのアンケート情報を取得してもよい。このように、決定装置100は、クラウドソーシングにおいてタスクを行うことを承諾したユーザ(ワーカ)から回答を取得する。図1の例では、決定装置100は、ユーザU3〜U5等を含む回答ユーザ群UG2から回答を取得する。
そして、決定装置100は、各ユーザU1〜U5等の行動情報を収集する(ステップS13)。図1の例では、決定装置100は、収集した各ユーザU1〜U5等の行動情報を行動情報記憶部121に記憶する。例えば、決定装置100は、ユーザU1の行動情報ADT1をユーザU1に対応付けて行動情報記憶部121に記憶する。例えば、決定装置100は、ユーザU2の行動情報ADT2をユーザU2に対応付けて行動情報記憶部121に記憶する。例えば、決定装置100は、図2中の行動ログLG11に示すように所定の期間内においてAサービスを利用した利用ユーザ群UG1のユーザの行動ログ等を収集する。
また、決定装置100は、各ユーザU3〜U5等を含む各ワーカからの回答を含むアンケート情報を収集する(ステップS14)。例えば、決定装置100は、図2中のアンケート回答ログAL11に示すように、クラウドソーシングにおいてAサービスのアンケートに回答した回答ユーザ群UG2のユーザのアンケート情報等を収集する。図1の例では、決定装置100は、収集した各ユーザU3〜U5等のアンケート情報を感情情報記憶部122に記憶する。例えば、決定装置100は、各ユーザのアンケート回答とアンケート回答に対応する感情(以下、「対応感情」ともいう)とをユーザに対応付けて感情情報記憶部122に記憶する。
図1中の感情情報記憶部122に示す「ユーザID」は、ユーザを識別するための識別情報を示す。図1中の感情情報記憶部122に示す「アンケート回答」は、対応するユーザが回答した内容を示す。図1中の感情情報記憶部122に示す「対応感情」は、ユーザの感情を示す。例えば、「対応感情」は、所定の閾値とアンケート回答との比較に基づくユーザの行動有無の推定を示す。図1では「対応感情」は、アンケート回答が「6」以下(すなわち「0」〜「6」)である場合は、「嫌悪」と推定され、アンケート回答が「7」、「8」である場合は、「中立」と推定され、アンケート回答が「9」以上(すなわち「9」、「10」)である場合は、「好感」と推定される場合を示す。
図1の例では、決定装置100は、ユーザU3のアンケート回答「3」と対応感情「嫌悪」とをユーザU3に対応付けて感情情報記憶部122に記憶する。例えば、決定装置100は、ユーザU4のアンケート回答「9」と対応感情「好感」とをユーザU4に対応付けて感情情報記憶部122に記憶する。例えば、決定装置100は、ユーザU5のアンケート回答「1」と対応感情「嫌悪」とをユーザU5に対応付けて感情情報記憶部122に記憶する。
そして、決定装置100は、ユーザの行動情報とユーザのアンケート情報とについて、紐付けする対象を決定する(ステップS15)。ここで、図1の例では、感情情報記憶部122に記憶されたアンケート情報には、Aサービスをあまり利用していない不適合ユーザ等のAサービスのアンケートについて回答するのに適切ではないユーザのアンケート情報が含まれる。そのため、決定装置100は、ユーザのアンケート情報のうち、不適合ユーザでないユーザ(以下、「適合ユーザ」とする)のアンケート情報を紐付けする対象を決定する。そして、決定装置100は、適合ユーザのうち、行動情報群に行動情報が含まれるユーザのアンケート情報を、そのユーザの行動情報に紐付けると決定する。
図1の例では、決定装置100は、回答ユーザ群UG2のうち、所定の期間内においてAサービスを利用しているユーザU3を適合ユーザとして、紐付け対象とすることを決定する。例えば、決定装置100は、図2に示すように、ユーザU3の行動と回答とを紐付ける。例えば、決定装置100は、ユーザU3のアンケート情報と行動情報を関連付ける。図1の例では、決定装置100は、紐付情報記憶部123に示すように、ユーザU3の行動情報ADT3と、アンケート情報に含まれるスコア(感情)とを関連付けて記憶する。具体的には、決定装置100は、ユーザU3の行動情報ADT3と、スコア「3」及び感情「嫌悪」とを関連付け、データID「DT1」により識別されるデータ(データDT1)として記憶する。
また、図1の例では、決定装置100は、回答ユーザ群UG2のうち、所定の期間内においてAサービスを利用しているユーザU4を適合ユーザとして、紐付け対象とすることを決定する。例えば、決定装置100は、図2に示すように、ユーザU4の行動と回答とを紐付ける。例えば、決定装置100は、ユーザU4のアンケート情報と行動情報を関連付ける。図1の例では、決定装置100は、紐付情報記憶部123に示すように、ユーザU4の行動情報ADT4と、アンケート情報に含まれるスコア(感情)とを関連付けて記憶する。具体的には、決定装置100は、ユーザU4の行動情報ADT4と、スコア「9」及び感情「好感」とを関連付け、データID「DT2」により識別されるデータ(データDT2)として記憶する。
また、図1の例では、決定装置100は、回答ユーザ群UG2のうち、不適合ユーザであるユーザU5については、紐付け対象にしないと決定する。例えば、決定装置100は、図2に示すように、ユーザU5の回答は行動とは紐付けしないと決定する。
上述したように、決定装置100は、Aサービスのアンケートの回答に相応しくないユーザ(不適合ユーザ)の情報の紐付けを行わないと決定することにより、有用でない情報を利用しないようにすることができる。例えば、クラウドソーシングにおいては、あるタスクを行うワーカには、所定の恩恵(ポイントや金銭等)を目当てにタスクを行うユーザ(不適合ユーザ)が含まれる場合がある。このような不適合ユーザは、タスクに関連していないユーザである場合が多く、このようなユーザ(ワーカ)の情報とタスクを行うのに適したユーザの情報とが混在している場合、情報の精度が低下するという問題がある。そのため、決定装置100は、不適合ユーザの情報の紐付けを行わない、すなわち不適合ユーザの情報を利用しないと決定することにより、適合ユーザのみの情報の利用が可能となり、情報の精度を向上させることができる。したがって、決定装置100は、ユーザの情報を適切に利用可能にすることができる。
また、決定装置100は、回答ユーザ群UG2に含まれる他のユーザについても同様に紐付けを行うかを決定する。図1の例では、決定装置100は、ユーザU18を適合ユーザとして、紐付け対象とすることを決定する。例えば、決定装置100は、ユーザU18の行動情報ADT18と、スコア「7」及び感情「中立」とを関連付け、データID「DT3」により識別されるデータ(データDT3)として記憶する。
そして、決定装置100は、学習データに基づいてモデルを生成する(ステップS16)。例えば、決定装置100は、紐付情報記憶部123中のデータDT1〜DT3等を学習データ(教師データ)として、学習を行なうことにより、モデルを生成する。例えば、決定装置100は、ユーザの行動情報に関する特徴量を用いて、モデルを生成する。また、例えば、決定装置100は、ユーザのウェブ上における行動情報に関する特徴量を用いて、モデルを生成する。例えば、決定装置100は、ユーザの実空間上における行動情報に関する特徴量を用いて、モデルを生成する。このように、決定装置100は、ユーザの行動情報に含まれる特徴を学習し、ユーザの感情に関する情報を推定するモデルを生成する。なお、決定装置100が学習する行動情報に含まれる特徴は、決定装置100の管理者等の人間が決定装置100に入力してもよいし、決定装置100に自動的に学習(抽出)させてもよい。
例えば、決定装置100は、紐付情報記憶部123に記憶されたデータを学習データ(教師データ)として、モデルM1を生成する。例えば、決定装置100は、データDT1に示すように、正解情報がユーザの感情「嫌悪」に対応するスコア「3」である場合、モデルM1にデータDT1に含まれる行動情報が入力された場合に、モデルM1が出力するスコアが「3」に近づくように、学習処理を行う。例えば、決定装置100は、データDT1の行動情報ADT3がモデルM1に入力された場合に、モデルM1が出力するスコアが「3」に近づくように、学習処理を行う。このように、決定装置100は、スコアが所定の閾値(例えば、「7」等)未満のユーザの行動情報を負例(悪い感情)としてモデルを生成する。
また、例えば、決定装置100は、データDT2に示すように、正解情報がユーザの感情「好感」に対応するスコア「9」である場合、モデルM1にデータDT2に含まれる行動情報が入力された場合に、モデルM1が出力するスコアが「9」に近づくように、学習処理を行う。例えば、決定装置100は、データDT2の行動情報ADT4がモデルM1に入力された場合に、モデルM1が出力するスコアが「9」に近づくように、学習処理を行う。このように、決定装置100は、スコアが所定の閾値(例えば、「9」等)以上のユーザの行動情報を正例(良い感情)としてモデルを生成する。
また、例えば、決定装置100は、データDT3に示すように、正解情報がユーザの感情「中立」に対応するスコア「7」である場合、モデルM1にデータDT3に含まれる行動情報が入力された場合に、モデルM1が出力するスコアが「7」に近づくように、学習処理を行う。例えば、決定装置100は、データDT3の行動情報ADT18がモデルM1に入力された場合に、モデルM1が出力するスコアが「7」に近づくように、学習処理を行う。
なお、モデルの学習手法については、上述した手法に限定されるものではなく、任意の公知技術が適用可能である。なお、各モデルの生成は、機械学習に関する種々の従来技術を適宜用いて行われてもよい。例えば、モデルの生成は、SVM(Support Vector Machine)等の教師あり学習の機械学習に関する技術を用いて行われてもよい。また、例えば、モデルの生成は、教師なし学習の機械学習に関する技術を用いて行われてもよい。例えば、モデルの生成は、深層学習(ディープラーニング)の技術を用いて行われてもよい。例えば、モデルの生成は、DNN(Deep Neural Network)やRNN(Recurrent Neural Network)やCNN(Convolutional Neural Network)等の種々のディープラーニングの技術を適宜用いて行われてもよい。なお、上記モデルの生成に関する記載は例示であり、モデルの生成は、取得可能な情報等に応じて適宜選択された学習手法により行われてもよい。すなわち、生成装置100は、学習データに含まれる行動情報が入力された場合に、正解情報に対応するスコアを出力するようにモデルM1を学習可能であれば、どのような手法によりモデルM1の生成を行ってもよい。
上記のような処理により、図1の例では、決定装置100は、モデル情報記憶部124に示すように、モデルID「M1」により識別されるモデル(モデルM1)を生成する。上記のように、「モデルM*(*は任意の数値)」と記載した場合、そのモデルはモデルID「M*」により識別されるモデルであることを示す。例えば、「モデルM1」と記載した場合、そのモデルはモデルID「M1」により識別されるモデルである。また、図1中のモデル情報記憶部124に示すように、モデルM1は推定対象「感情」、すなわちユーザの感情の推定のために用いられるモデルであり、その具体的なモデルデータが「モデルデータMDT1」であることを示す。例えば、決定装置100は、モデルM1にユーザの行動情報を入力することにより、入力した行動情報に対応するユーザ(入力ユーザ)の感情の推定に用いられるスコアを、モデルM1に出力させ、モデルM1が出力するスコアに基づいて入力ユーザの感情を推定する。
上述したように、決定装置100は、行動情報と正解情報とが対応付けられた学習データを用いて学習することにより、ユーザの感情を適切に推定可能にするモデルを生成することができる。したがって、決定装置100は、上述のように生成したモデルを用いることにより、例えば、Aサービスを利用するユーザがどのような感情であるかを精度よく推定することを可能にすることができる。したがって、決定装置100は、ユーザの感情を適切に推定可能にすることができる。
〔1−1.アンケート情報〕
図1の例では、決定装置100は、ユーザが所定期間内にアンケートの対象に関する行動を行っている場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定する。具体的には、決定装置100は、ユーザが所定期間内にアンケートの対象であるAサービスにおける行動を行っている場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定する。なお、上記は一例であり、決定装置100は、種々の情報を適宜用いて決定処理を行ってもよい。
例えば、決定装置100は、アンケートのターゲットリストに含まれるユーザが回答したアンケートに関するアンケート情報を取得する。例えば、決定装置100は、所定の条件を満たすユーザ(ターゲットユーザ)にアンケートを回答させてもよい。例えば、決定装置100は、アンケートのターゲット一覧に含まれるターゲットユーザに対してアンケートへの回答を依頼し、ターゲットユーザが回答したアンケートに関するアンケート情報を取得してもよい。そして、例えば、決定装置100はターゲットユーザのうち、行動情報群にユーザの行動情報が含まれるユーザのアンケート情報を、そのユーザの行動情報に関連付けると決定してもよい。
また、例えば、決定装置100は、アンケートのターゲットリストに含まれるユーザが回答したアンケートに関するアンケート情報を取得してもよい。例えば、決定装置100は、アンケートの対象であるAサービスに関する行動を行ったユーザが回答したアンケートに関するアンケート情報を取得してもよい。
例えば、決定装置100は、ユーザのアンケートの対象に関する行動が所定の条件を満たす場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定してもよい。例えば、決定装置100は、ユーザのアンケートの対象に関する行動が所定量以上である場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定してもよい。例えば、決定装置100は、ユーザのアンケートの対象であるAサービスの利用頻度が所定の閾値以上である場合、そのユーザのアンケート情報を、そのユーザの行動情報に関連付けると決定してもよい。例えば、決定装置100は、ユーザがAサービスのヘビーユーザである場合、そのユーザのアンケート情報を、そのユーザの行動情報に関連付けると決定してもよい。
〔2.決定装置の構成〕
次に、図4を用いて、実施形態に係る決定装置100の構成について説明する。図4は、実施形態に係る決定装置の構成例を示す図である。図4に示すように、決定装置100は、通信部110と、記憶部120と、制御部130とを有する。なお、決定装置100は、決定装置100の管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
(通信部110)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワークNと有線または無線で接続され、端末装置10との間で情報の送受信を行う。
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。実施形態に係る記憶部120は、図4に示すように、行動情報記憶部121と、感情情報記憶部122と、紐付情報記憶部123と、モデル情報記憶部124とを有する。
(行動情報記憶部121)
実施形態に係る行動情報記憶部121は、ユーザの行動に関する各種情報を記憶する。図5は、実施形態に係る行動情報記憶部の一例を示す図である。例えば、行動情報記憶部121は、各ユーザの行動等の各種の行動情報を記憶する。図5に示す行動情報記憶部121には、「ユーザID」、「行動情報」といった項目が含まれる。
「ユーザID」は、ユーザを識別するための識別情報を示す。例えば、ユーザID「U1」により識別されるユーザは、図1の例に示したユーザU1に対応する。「行動情報」は、データIDにより識別されるデータに対応するユーザの行動情報を示す。図5では「行動情報」に「ADT1」といった概念的な情報が格納される例を示したが、実際には、ユーザが行った行動に関する種々の情報、または、その格納場所を示すファイルパス名などが格納される。
例えば、図5に示す例において、ユーザID「U1」により識別されるユーザ(ユーザU1)については、行動情報ADT1が収集されたことを示す。例えば、行動情報ADT1には、ユーザU1のインターネット(ウェブ)上における行動情報が含まれてもよい。例えば、行動情報ADT1には、ユーザU1によるAサービスのサイト内における行動(ページ遷移等)を示す情報や、ある日時にAサービスを利用して動画コンテンツを閲覧したことを示す情報の種々の行動情報が含まれてもよい。例えば、行動情報ADT1には、ユーザU1がある日時にCサイトのコンテンツを閲覧したことを示す情報や、ある日時に「Aサービスが便利」等の所定の入力情報を投稿したことを示す情報の種々のウェブ上での行動情報が含まれてもよい。また、例えば、行動情報ADT1には、ユーザU1がある日時にAコンビニでB商品の購入を行ったことを示す情報や、ある日時にBレストランで飲食を行ったことを示す情報等の種々の情報が含まれてもよい。
なお、行動情報記憶部121は、上記に限らず、目的に応じて種々の情報を記憶してもよい。また、図5では、ユーザIDごとに行動情報が行動情報記憶部121に記憶される場合を示したが、行動情報は、ユーザIDごとに限らず、例えば時刻順に記憶されてもよい。
例えば、行動情報には、「行動ID」、「日時」、「種別」、「内容」といった項目の情報が含まれてもよい。この場合、例えば、「行動ID」は、ユーザの行動を識別する情報を示す。例えば、「日時」は、対応するユーザの行動が行われた日時を示す。例えば、「日時」には、「2017年8月1日22時58分42秒」等の具体的な日時が記憶されてもよい。また、「種別」は、対応するユーザの行動の種別に関する情報を示す。また、「内容」は、対応するユーザの行動において対象となった内容を示す。例えば、ユーザU1について、行動ID「AC11」により識別される行動ログ中の日時には「日時X」が格納され、種別には「閲覧」が格納され、内容には「Aサービスの動画コンテンツ」が格納されてもよい。
(感情情報記憶部122)
実施形態に係る感情情報記憶部122は、ユーザの感情に関する各種情報を記憶する。図6は、実施形態に係る感情情報記憶部の一例を示す図である。図6に示す感情情報記憶部122は、「ユーザID」、「アンケート回答」、「対応感情」といった項目を有する。
「ユーザID」は、ユーザを識別するための識別情報を示す。例えば、ユーザID「U3」により識別されるユーザは、図1の例に示したユーザU3に対応する。「アンケート回答」は、対応するユーザが回答した内容を示す。「対応感情」は、ユーザの感情を示す。例えば、「対応感情」は、所定の閾値とアンケート回答との比較に基づくユーザの行動有無の推定を示す。図6では「対応感情」は、アンケート回答が「6」以下(すなわち「0」〜「6」)である場合は、「嫌悪」が格納され、アンケート回答が「7」、「8」である場合は、「中立」が格納され、アンケート回答が「9」以上(すなわち「9」、「10」)である場合は、「好感」が格納される場合を示す。
例えば、図6に示す例において、ユーザU3のアンケート回答は「3」であり、対応感情が「嫌悪」であることを示す。また、例えば、ユーザU4のアンケート回答は「9」であり、対応感情が「好感」であることを示す。また、例えば、ユーザU5のアンケート回答は「1」であり、対応感情が「嫌悪」であることを示す。
なお、感情情報記憶部122は、上記に限らず、目的に応じて種々の情報を記憶してもよい。
(紐付情報記憶部123)
実施形態に係る紐付情報記憶部123は、紐付けされた各種情報を記憶する。紐付情報記憶部123は、紐付情報を学習データとして記憶する。図7は、実施形態に係る紐付情報記憶部の一例を示す図である。例えば、紐付情報記憶部123は、モデルの生成に用いる教師データを記憶する。図7に示す紐付情報記憶部123には、「データID」、「ユーザID」、「正解情報(スコア(感情))」、「行動情報」といった項目が含まれる。
「データID」は、データを識別するための識別情報を示す。例えば、「データID」は、ユーザの行動情報と感情情報とが紐付けられた情報の組合せを識別するための識別情報を示す。例えば、「データID」は、学習データ(教師データ)として用いられるユーザの行動情報と正解情報との組合せを識別するための識別情報を示す。「ユーザID」は、ユーザを識別するための識別情報を示す。「正解情報(スコア(感情))」は、データIDにより識別されるデータに対応する正解情報を示す。例えば、「正解情報(スコア(感情))」は、データIDにより識別されるデータに対応するユーザの感情を示す。
「行動情報」は、データIDにより識別されるデータに対応するユーザの行動情報を示す。図7では「行動情報」に「ADT3」といった概念的な情報が格納される例を示したが、実際には、ユーザが行った行動に関する種々の情報、または、その格納場所を示すファイルパス名などが格納される。
例えば、図7に示す例において、データID「DT1」により識別されるデータ(学習データDT1)は、ユーザID「U3」により識別されるユーザ(ユーザU3)に対応する情報(データ)であることを示す。また、学習データDT1は、正解情報が「3(嫌悪)」であることを示す。すなわち、学習データDT1は、ユーザU3がAサービスに対して嫌悪の感情を抱いていることを示す。また、学習データDT1は、行動情報ADT3を含むことを示す。
なお、紐付情報記憶部123は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、紐付情報記憶部123は、学習データが追加された日時に関する情報を記憶してもよい。例えば、紐付情報記憶部123には、正解情報が「有(1)」の場合、ユーザがその行動を行った日時を示す情報を記憶してもよい。また、例えば、紐付情報記憶部123は、各学習データがどのような判定処理により追加されたかを示す情報を記憶してもよい。例えば、紐付情報記憶部123は、各学習データが管理者の選択により判定されたか等を示す情報を記憶してもよい。
(モデル情報記憶部124)
実施形態に係るモデル情報記憶部124は、モデルに関する情報を記憶する。例えば、モデル情報記憶部124は、決定処理により生成されたモデル情報(モデルデータ)を記憶する。図8は、実施形態に係るモデル情報記憶部の一例を示す図である。図8に示すモデル情報記憶部124は、「モデルID」、「推定対象」、「モデルデータ」といった項目が含まれる。なお、図8では、モデルM1のみを図示するが、M2、M3、M4、M5等、各推定対象に応じて多数のモデル情報が記憶されてもよい。
「モデルID」は、モデルを識別するための識別情報を示す。例えば、モデルID「M1」により識別されるモデルは、図1の例に示したモデルM1に対応する。「推定対象」は、対応するモデルの推定対象を示す。また、「モデルデータ」は、対応付けられた対応するモデルのデータを示す。例えば、「モデルデータ」には、各層におけるノードと、各ノードが採用する関数と、ノードの接続関係と、ノード間の接続に対して設定される接続係数とを含む情報が含まれる。
例えば、図8に示す例において、モデルID「M1」により識別されるモデル(モデルM1)は、推定対象がユーザの「感情」であり、入力された行動情報に対応するユーザの感情に関する情報の推定に用いられることを示す。また、モデルM1のモデルデータは、モデルデータMDT1であることを示す。
モデルM1(モデルデータMDT1)は、ユーザの行動情報が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力された行動情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、ユーザの感情の推定に用いられるスコアの値を出力層から出力するよう、コンピュータを機能させるためのモデルである。
ここで、モデルM1等が「y=a1*x1+a2*x2+・・・+ai*xi」で示す回帰モデルで実現されるとする。この場合、例えば、モデルM1が含む第1要素は、x1やx2等といった入力データ(xi)に対応する。また、第1要素の重みは、xiに対応する係数aiに対応する。ここで、回帰モデルは、入力層と出力層とを有する単純パーセプトロンと見做すことができる。各モデルを単純パーセプトロンと見做した場合、第1要素は、入力層が有するいずれかのノードに対応し、第2要素は、出力層が有するノードと見做すことができる。
また、モデルM1等がDNN等、1つまたは複数の中間層を有するニューラルネットワーク(neural network)で実現されるとする。この場合、例えば、モデルM1が含む第1要素は、入力層または中間層が有するいずれかのノードに対応する。また、第2要素は、第1要素と対応するノードから値が伝達されるノードである次段のノードに対応する。また、第1要素の重みは、第1要素と対応するノードから第2要素と対応するノードに伝達される値に対して考慮される重みである接続係数に対応する。
なお、モデル情報記憶部124は、上記に限らず、目的に応じて種々のモデル情報を記憶してもよい。
(制御部130)
図4の説明に戻って、制御部130は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、決定装置100内部の記憶装置に記憶されている各種プログラム(決定プログラムや生成プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。制御部130は、モデル情報記憶部124に記憶されているモデルM1等に従った情報処理により、ユーザの行動情報が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力された行動情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、ユーザの感情の推定に用いられるスコアの値を出力層から出力する。
図4に示すように、制御部130は、取得部131と、決定部132と、生成部133と、推定部134と、提供部135とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図4に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。制御部130は、記憶部120に記憶されているモデルM1(モデルデータMDT1)に従った情報処理により、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力された行動情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、ユーザの感情の推定に用いられるスコアの値を出力層から出力する。
(取得部131)
取得部131は、各種情報を取得する。例えば、取得部131は、行動情報記憶部121や、感情情報記憶部122や、紐付情報記憶部123や、モデル情報記憶部124等から各種情報を取得する。また、取得部131は、各種情報を外部の情報処理装置から取得してもよい。また、取得部131は、各種情報を端末装置10等から取得してもよい。例えば、取得部131は、端末装置10からユーザの行動情報を取得する。
取得部131は、ユーザが回答したアンケートに関するアンケート情報を取得する。例えば、取得部131は、複数のユーザの行動情報を含む行動情報群を取得する。例えば、取得部131は、クラウドソーシングにおいてユーザが回答したアンケートに関するアンケート情報を取得する。
例えば、取得部131は、アンケートのターゲットリストに含まれるユーザが回答したアンケートに関するアンケート情報を取得する。例えば、取得部131は、アンケートの対象に関する行動が所定の条件を満たすユーザが回答したアンケートに関するアンケート情報を取得する。例えば、取得部131は、アンケートの対象に関する行動が所定量以上であるユーザが回答したアンケートに関するアンケート情報を取得する。
取得部131は、ユーザの行動情報と、ユーザの感情に関する感情情報とを取得する。例えば、取得部131は、ユーザの行動情報以外の他の行動情報に基づくユーザの感情情報を取得する。
例えば、取得部131は、ユーザが回答したアンケートに関するアンケート情報に基づくユーザの感情情報を取得する。例えば、取得部131は、クラウドソーシングにおいてユーザが回答したアンケートに関するアンケート情報に基づくユーザの感情情報を取得する。例えば、取得部131は、アンケートの対象に関する行動が所定量以上であるユーザが回答したアンケートに関するアンケート情報を取得する。例えば、取得部131は、ユーザがネットワークを介したサービスにおいて入力した入力情報に基づくユーザの感情情報を取得する。例えば、取得部131は、ユーザの行動情報と、ユーザの感情を示すスコアとを取得する。
図1の例では、取得部131は、ユーザU1が利用する端末装置10−1からユーザU1の行動情報を取得する。例えば、取得部131は、端末装置10−1からユーザU1のAサービスにおける行動情報を取得する。例えば、取得部131は、図2に示すように、電子商取引サービスであるBサービス等のAサービス以外のサービスにおけるユーザの行動情報を取得してもよい。例えば、取得部131は、端末装置10−1からユーザU1のBサービスにおける行動情報を取得してもよい。
例えば、取得部131は、端末装置10−1からユーザU1のインターネット(ウェブ)上における行動情報を取得する。例えば、取得部131は、ユーザU1がウェブコンテンツを閲覧したことを示す情報や、クエリを用いて検索を行ったことを示す情報の種々のウェブ上での行動情報を取得する。例えば、取得部131は、ユーザU1の現実世界における行動情報を取得してもよい。例えば、取得部131は、ユーザU1がAコンビニでB商品の購入を行ったことを示す情報や、Bレストランで飲食を行ったことを示す情報等の種々の行動情報を取得してもよい。
また、図1の例では、取得部131は、ユーザU2が利用する端末装置10−2から行動情報を取得する。例えば、取得部131は、端末装置10−2からユーザU2のAサービスにおける行動情報を取得する。例えば、取得部131は、図2に示すように、ユーザU2のAサービスやBサービスにおける行動情報を取得する。また、例えば、決定装置100は、端末装置10−2からユーザU2のウェブ上や実空間における行動情報を取得する。
例えば、取得部131は、ユーザU3が利用する端末装置10−3から行動情報を取得する。例えば、取得部131は、端末装置10−3からユーザU3のAサービスにおける行動情報を取得する。例えば、取得部131は、所定の期間内(例えば直近1週間や3週間等)においてユーザU3のAサービスを利用したことを示す行動情報を取得する。例えば、取得部131は、端末装置10−3からユーザU3のAサービスにおける行動情報等、ユーザU3のウェブ上や実空間における行動情報を取得する。
例えば、取得部131は、ユーザU4が利用する端末装置10−4から行動情報を取得する。例えば、取得部131は、端末装置10−4からユーザU4のAサービスにおける行動情報を取得する。例えば、取得部131は、所定の期間内(例えば直近1ヶ月や2週間等)においてユーザU4のAサービスを利用したことを示す行動情報を取得する。例えば、取得部131は、端末装置10−4からユーザU4のAサービスにおける行動情報等、ユーザU4のウェブ上や実空間における行動情報を取得する。
また、図1の例では、取得部131は、ユーザが回答したアンケートに関するアンケート情報を取得する。例えば、取得部131は、いわゆるクラウドソーシングなどによるタスクを行う複数のワーカからアンケート情報を取得する。例えば、取得部131は、Aサービスに関するアンケートをクラウドソーシングによりユーザ(ワーカ)に回答させ、その回答を取得する。
例えば、取得部131は、図2に示すように「あなたはAサービスを友人や同僚に薦めますか?(0〜10で回答)」等の種々の内容のアンケートAN11をクラウドソーシングによりユーザ(ワーカ)に回答させ、その回答を取得する。
また、図1の例では、取得部131は、ワーカであるユーザU3が利用する端末装置10−3からユーザU3の回答を取得する。例えば、取得部131は、ユーザU3からアンケートAN11に対する回答がスコア「3」であるとの回答を取得する。例えば、取得部131は、ワーカであるユーザU4が利用する端末装置10−4からユーザU4の回答を取得する。例えば、取得部131は、ユーザU4からアンケートAN11に対する回答がスコア「9」であるとの回答を取得する。例えば、取得部131は、ワーカであるユーザU5が利用する端末装置10−5からユーザU5の回答を取得する。例えば、取得部131は、ユーザU5からアンケートAN11に対する回答がスコア「1」であるとの回答を取得する。
(決定部132)
決定部132は、各種情報を推定する。決定部132は、行動情報記憶部121や、感情情報記憶部122や、紐付情報記憶部123や、モデル情報記憶部124等の各種情報に基づいて、種々の決定を行う。
決定部132は、ユーザに関する情報が所定の条件を満たす場合、取得部131により取得されたユーザのアンケート情報を、ユーザの行動情報に関連付けると決定する。例えば、決定部132は、行動情報群にユーザの行動情報が含まれる場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定する。
例えば、決定部132は、ユーザの行動情報にアンケートの対象に関する行動情報が含まれる場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定する。例えば、決定部132は、ユーザが所定期間内にアンケートの対象に関する行動を行っている場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定する。
例えば、決定部132は、ユーザのアンケートの対象に関する行動が所定の条件を満たす場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定する。例えば、決定部132は、ユーザのアンケートの対象に関する行動が所定量以上である場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定する。
図1の例では、決定部132は、ユーザの行動情報とユーザのアンケート情報とについて、紐付けする対象を決定する。例えば、決定部132は、ユーザのアンケート情報のうち、不適合ユーザでないユーザのアンケート情報を紐付けする対象を決定する。例えば、決定部132は、適合ユーザのうち、行動情報群に行動情報が含まれるユーザのアンケート情報を、そのユーザの行動情報に紐付けると決定する。
図1の例では、決定部132は、回答ユーザ群UG2のうち、所定の期間内においてAサービスを利用しているユーザU3を適合ユーザとして、紐付け対象とすることを決定する。例えば、決定部132は、図2に示すように、ユーザU3の行動と回答とを紐付ける。例えば、決定部132は、ユーザU3のアンケート情報と行動情報を関連付ける。例えば、決定部132は、紐付情報記憶部123に示すように、ユーザU3の行動情報ADT3と、アンケート情報に含まれるスコア(感情)とを関連付けて、紐付情報記憶部123に格納する。例えば、決定部132は、ユーザU3の行動情報ADT3と、スコア「3」及び感情「嫌悪」とを関連付け、データID「DT1」により識別されるデータ(データDT1)として、紐付情報記憶部123に格納する。
例えば、決定部132は、回答ユーザ群UG2のうち、所定の期間内においてAサービスを利用しているユーザU4を適合ユーザとして、紐付け対象とすることを決定する。例えば、決定部132は、図2に示すように、ユーザU4の行動と回答とを紐付ける。例えば、決定部132は、ユーザU4のアンケート情報と行動情報を関連付ける。例えば、決定部132は、紐付情報記憶部123に示すように、ユーザU4の行動情報ADT4と、アンケート情報に含まれるスコア(感情)とを関連付けて、紐付情報記憶部123に格納する。例えば、決定部132は、ユーザU4の行動情報ADT4と、スコア「9」及び感情「好感」とを関連付け、データID「DT2」により識別されるデータ(データDT2)として、紐付情報記憶部123に格納する。
また、図1の例では、決定部132は、回答ユーザ群UG2のうち、不適合ユーザであるユーザU5については、紐付け対象にしないと決定する。例えば、決定部132は、図2に示すように、ユーザU5の回答は行動とは紐付けしないと決定する。例えば、決定部132は、ユーザU18を適合ユーザとして、紐付け対象とすることを決定する。例えば、決定部132は、ユーザU18の行動情報ADT18と、スコア「7」及び感情「中立」とを関連付け、データID「DT3」により識別されるデータ(データDT3)として、紐付情報記憶部123に格納する。
(生成部133)
生成部133は、各種情報を生成する。また、生成部133は、行動情報記憶部121や、感情情報記憶部122や、紐付情報記憶部123や、モデル情報記憶部124等の各種情報に基づいて、種々の情報を生成する。
例えば、生成部133は、ユーザの行動情報と、ユーザのアンケート情報に基づくユーザの感情に関する感情情報とを用いて、行動情報が入力される入力ユーザの感情を推定するモデルを生成する。例えば、生成部133は、スコアが所定の閾値以上のユーザの行動情報を正例としてモデルを生成する。例えば、生成部133は、スコアが所定の閾値未満のユーザの行動情報を負例としてモデルを生成する。
また、生成部133は、取得部131より取得されたユーザの行動情報と、ユーザの感情情報とに基づいて、行動情報が入力される入力ユーザの感情を推定するモデルを生成する。また、生成部133は、ユーザの行動情報と、スコアとに基づいて、行動情報が入力される入力ユーザの感情を示すスコアを出力するモデルを生成する。
例えば、生成部133は、モデルM1等を生成し、生成したモデルM1等をモデル情報記憶部124に格納する。なお、生成部133は、いかなる学習アルゴリズムを用いてモデルM1等を生成してもよい。例えば、生成部133は、ニューラルネットワーク、サポートベクターマシン(SVM)、クラスタリング、強化学習等の学習アルゴリズムを用いてモデルM1等を生成する。一例として、生成部133がニューラルネットワークを用いてモデルM1等を生成する場合、モデルM1等は、一以上のニューロンを含む入力層と、一以上のニューロンを含む中間層と、一以上のニューロンを含む出力層とを有する。
生成部133は、モデルを生成し、生成したモデルをモデル情報記憶部124に格納する。具体的には、生成部133は、ユーザの行動情報が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力された行動情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、ユーザの感情の推定に用いられるスコアの値を出力層から出力するモデルを生成する。
例えば、生成部133は、学習データに基づいてモデルを生成する。例えば、生成部133は、学習データに基づいてモデルを生成する。例えば、生成部133は、紐付情報記憶部123中のデータDT1〜DT3等を学習データ(教師データ)として、学習を行なうことにより、モデルを生成する。
図1の例では、生成部133は、モデル情報記憶部124に示すように、モデルM1を生成する。例えば、生成部133は、学習データに基づいてモデルを生成する。例えば、生成部133は、紐付情報記憶部123中のデータDT1〜DT3等を学習データ(教師データ)として、学習を行なうことにより、モデルを生成する。例えば、生成部133は、ユーザの行動情報に関する特徴量を用いて、モデルを生成する。また、例えば、生成部133は、ユーザのウェブ上における行動情報に関する特徴量を用いて、モデルを生成する。例えば、生成部133は、ユーザの実空間上における行動情報に関する特徴量を用いて、モデルを生成する。このように、生成部133は、ユーザの行動情報に含まれる特徴を学習し、ユーザの感情に関する情報を推定するモデルを生成する。なお、生成部133が学習する行動情報に含まれる特徴は、生成部133の管理者等の人間が生成部133に入力してもよいし、生成部133に自動的に学習(抽出)させてもよい。
例えば、生成部133は、紐付情報記憶部123に記憶されたデータを学習データ(教師データ)として、モデルM1を生成する。例えば、生成部133は、データDT1に示すように、正解情報がユーザの感情「嫌悪」に対応するスコア「3」である場合、モデルM1にデータDT1に含まれる行動情報が入力された場合に、モデルM1が出力するスコアが「3」に近づくように、学習処理を行う。例えば、生成部133は、データDT1の行動情報ADT3がモデルM1に入力された場合に、モデルM1が出力するスコアが「3」に近づくように、学習処理を行う。
また、例えば、生成部133は、データDT2に示すように、正解情報がユーザの感情「好感」に対応するスコア「9」である場合、モデルM1にデータDT2に含まれる行動情報が入力された場合に、モデルM1が出力するスコアが「9」に近づくように、学習処理を行う。例えば、生成部133は、データDT2の行動情報ADT4がモデルM1に入力された場合に、モデルM1が出力するスコアが「9」に近づくように、学習処理を行う。
また、例えば、生成部133は、データDT3に示すように、正解情報がユーザの感情「中立」に対応するスコア「7」である場合、モデルM1にデータDT3に含まれる行動情報が入力された場合に、モデルM1が出力するスコアが「7」に近づくように、学習処理を行う。例えば、生成部133は、データDT3の行動情報ADT18がモデルM1に入力された場合に、モデルM1が出力するスコアが「7」に近づくように、学習処理を行う。
また、例えば、生成部133は、紐付情報記憶部123に記憶された学習データを用いて、モデル情報記憶部124に示すようなモデルを生成する。例えば、生成部133は、取得部131により取得された学習データに基づいて、各ユーザの感情の推定に用いられるモデルを生成する。例えば、生成部133は、行動情報と、行動情報に対応する各ユーザの感情に関する感情情報を示す正解情報とを含む学習データに基づいて、各ユーザの感情の推定に用いられるモデルを生成する。
(推定部134)
推定部134は、各種情報を推定する。推定部134は、モデル情報記憶部124に記憶されたモデルを用いて種々の情報を推定する。例えば、推定部134は、取得部131により取得された各種情報に基づいて、種々の情報を推定する。推定部134は、ユーザの行動情報をモデルに入力することにより、ユーザの感情に関する情報を推定する。
例えば、推定部134は、モデルM1にユーザの行動情報を入力することにより、入力した行動情報に対応するユーザの感情に関するスコアを、モデルM1に出力させ、モデルM1が出力するスコアに基づいて、ユーザがどのような感情であるかを推定する。
例えば、推定部134は、上述した回帰モデルやニューラルネットワーク等、任意の構造を有するモデルを用いて、スコアの算出を行う。具体的には、モデルM1は、ユーザの行動情報(すなわち、上述したスコアの算出に用いられる各要素)が入力された場合に、ユーザの感情の推定を定量化した値(すなわち、ユーザがどうような感情であるかを示唆するスコア)を出力するように係数が設定される。推定部134は、このようなモデルM1を用いて、ユーザによる所定の対象に関する行動の確率に関するスコアを算出する。
なお、上記例では、モデルM1が、ユーザの行動情報が入力された場合にユーザによる所定の対象に関する行動の確率の推定を定量化した値を出力するモデルである例を示した。しかし、実施形態に係るモデル(モデルX)は、モデルM1にデータの入出力を繰り返すことで得られる結果に基づいて生成されるモデルであってもよい。例えば、モデルXは、ユーザの行動情報を入力とし、モデルM1が出力するスコアを出力とするよう学習されたモデル(モデルY)であってもよい。または、モデルM1は、ユーザの行動情報を入力とし、モデルYの出力値を出力とするよう学習されたモデルであってもよい。また、推定部134がGAN(Generative Adversarial Networks)を用いた推定処理を行う場合、モデルM1は、GANの一部を構成するモデルであってもよい。
(提供部135)
提供部135は、各種情報を提供する。例えば、提供部135は、端末装置10に各種情報を提供する。提供部135は、推定部134により推定された推定情報に基づくサービスを提供してもよい。例えば、提供部135は、生成部133により生成されたモデルに関する情報を外部の情報処理装置へ提供してもよい。また、例えば、提供部135は、モデルが出力する情報を外部の情報処理装置へ提供してもよい。例えば、提供部135は、生成部133により生成されたマッピング情報を外部の情報処理装置へ提供する。
例えば、提供部135は、ユーザの行動情報と、ユーザのアンケート情報に基づくユーザの感情情報とを用いて、情報提供を行う。例えば、提供部135は、生成部133により生成されたモデルを用いて推定された入力ユーザの感情に関する情報提供を行う。
〔3.決定処理のフロー〕
次に、図9を用いて、実施形態に係る決定システム1による決定処理の手順について説明する。図9は、実施形態に係る決定処理の一例を示すフローチャートである。
図9に示すように、決定装置100は、行動情報を取得する(ステップS101)。例えば、決定装置100は、行動情報記憶部121からユーザU1〜U5の行動情報ADT1〜ADT5等を取得する。
また、決定装置100は、アンケート情報を取得する(ステップS102)。図1の例では、決定装置100は、感情情報記憶部122からユーザU3〜U5等のアンケート情報等を取得する。
そして、決定装置100は、所定の条件を満たすユーザの行動情報とアンケート情報とを紐付けると決定する(ステップS103)。図1の例では、決定装置100は、ユーザU3やユーザU4等の行動情報とアンケート情報とを紐付けると決定する。
〔4.生成処理のフロー〕
次に、図10を用いて、実施形態に係る決定システム1による生成処理の手順について説明する。図10は、実施形態に係る生成処理の一例を示すフローチャートである。
具体的には、図10に示すように、決定装置100は、学習データを取得する(ステップS201)。例えば、決定装置100は、紐付情報記憶部123から学習データを取得する。
その後、決定装置100は、学習データに基づきモデルを生成する(ステップS202)。図1の例では、決定装置100は、紐付情報記憶部123に示すような学習データを用いてモデルM1を生成する。
〔5.推定処理〕
図11を用いて、実施形態に係る推定処理の一例について説明する。図11は、実施形態に係る推定処理の一例を示す図である。図11では、決定装置100は、ユーザの行動情報を取得した場合に、その感情情報に基づいて推定したユーザの感情に関する情報を提供する場合を示す。
まず、決定装置100は、対象ユーザとなるユーザU101の行動情報を取得する(ステップS21)。図11の例では、決定装置100は、ユーザU101が利用する端末装置10からユーザU101の行動情報ADT101を取得する。なお、決定装置100は、サービス提供装置50や他の外部装置からユーザU101の行動情報ADT101を取得してもよい。
行動情報ADT101を生成した決定装置100は、行動情報ADT101をモデルに入力する。例えば、決定装置100は、行動情報ADT101を、モデルM1に入力する。
図11の例では、決定装置100は、処理群PS21に示すような処理により、ユーザU101の感情を示すスコアを算出する。決定装置100は、行動情報ADT101をモデルM1に入力する(ステップS22)。行動情報ADT101が入力されたモデルM1は、スコアを出力する(ステップS23)。モデルM1は、各クラスに対応するスコアを出力する。図11の例では、行動情報ADT101が入力されたモデルM1は、スコアSC11に示すように、スコア「9.5」を出力する。これにより、決定装置100は、モデルM1を用いて、ユーザU101の感情が「好感」であると推定する。
そして、決定装置100は、推定結果を生成する(ステップS24)。図11の例では、決定装置100は、対象ユーザであるユーザU101の感情が「好感」であるとの推定結果情報ER21を生成する。
その後、決定装置100は、推定結果に基づいて情報提供を行う(ステップS25)。図11の例では、決定装置100は、生成した推定結果情報ER21をサービス提供装置50へ提供する。
そして、決定装置100から情報提供を受けたサービス提供装置50は、決定装置100から取得した情報に基づいて、ユーザU101が利用する端末装置10へAサービスを提供する(ステップS26)。
〔6.効果〕
上述してきたように、実施形態に係る決定装置100は、取得部131と、決定部132とを有する。取得部131は、ユーザが回答したアンケートに関するアンケート情報を取得する。また、決定部132は、ユーザに関する情報が所定の条件を満たす場合、取得部131により取得されたユーザのアンケート情報を、ユーザの行動情報に関連付けると決定する。
このように、実施形態に係る決定装置100は、ユーザに関する情報が所定の条件を満たす場合、取得したユーザのアンケート情報を、ユーザの行動情報に関連付けると決定することにより、ユーザの情報を適切に利用可能にすることができる。
また、実施形態に係る決定装置100において、取得部131は、複数のユーザの行動情報を含む行動情報群を取得する。また、決定部132は、行動情報群にユーザの行動情報が含まれる場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定する。
このように、実施形態に係る決定装置100は、複数のユーザの行動情報を含む行動情報群にユーザの行動情報が含まれる場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定することにより、ユーザの情報を適切に利用可能にすることができる。
また、実施形態に係る決定装置100において、決定部132は、ユーザの行動情報にアンケートの対象に関する行動情報が含まれる場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定する。
このように、実施形態に係る決定装置100は、ユーザの行動情報にアンケートの対象に関する行動情報が含まれる場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定することにより、ユーザの情報を適切に利用可能にすることができる。
また、実施形態に係る決定装置100において、決定部132は、ユーザが所定期間内にアンケートの対象に関する行動を行っている場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定する。
このように、実施形態に係る決定装置100は、ユーザが所定期間内にアンケートの対象に関する行動を行っている場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定することにより、ユーザの情報を適切に利用可能にすることができる。
また、実施形態に係る決定装置100において、取得部131は、クラウドソーシングにおいてユーザが回答したアンケートに関するアンケート情報を取得する。
このように、実施形態に係る決定装置100は、クラウドソーシングにおいてユーザが回答したアンケートに関するアンケート情報を取得することにより、ユーザの情報を適切に利用可能にすることができる。
また、実施形態に係る決定装置100において、取得部131は、アンケートのターゲットリストに含まれるユーザが回答したアンケートに関するアンケート情報を取得する。
このように、実施形態に係る決定装置100は、アンケートのターゲットリストに含まれるユーザが回答したアンケートに関するアンケート情報を取得することにより、ユーザの情報を適切に利用可能にすることができる。
また、実施形態に係る決定装置100において、決定部132は、ユーザのアンケートの対象に関する行動が所定の条件を満たす場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定する。
このように、実施形態に係る決定装置100は、ユーザのアンケートの対象に関する行動が所定の条件を満たす場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定することにより、ユーザの情報を適切に利用可能にすることができる。
また、実施形態に係る決定装置100において、決定部132は、ユーザのアンケートの対象に関する行動が所定量以上である場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定する。
このように、実施形態に係る決定装置100は、ユーザのアンケートの対象に関する行動が所定量以上である場合、ユーザのアンケート情報を、ユーザの行動情報に関連付けると決定することにより、ユーザの情報を適切に利用可能にすることができる。
また、実施形態に係る決定装置100は、生成部133を有する。生成部133は、ユーザの行動情報と、ユーザのアンケート情報に基づくユーザの感情に関する感情情報とを用いて、行動情報が入力される入力ユーザの感情を推定するモデルを生成する。
このように、実施形態に係る決定装置100は、ユーザの行動情報と、ユーザのアンケート情報に基づくユーザの感情に関する感情情報とを用いて、行動情報が入力される入力ユーザの感情を推定するモデルを生成することにより、ユーザの情報を適切に利用可能にすることができる。
また、実施形態に係る決定装置100は、提供部135を有する。提供部135は、ユーザの行動情報と、ユーザのアンケート情報に基づくユーザの感情情報とを用いて、情報提供を行う。
このように、実施形態に係る決定装置100は、ユーザの行動情報と、ユーザのアンケート情報に基づくユーザの感情情報とを用いて、情報提供を行うことにより、ユーザの情報を適切に利用可能にすることができる。
〔7.ハードウェア構成〕
上述してきた実施形態に係る決定装置100は、例えば図12に示すような構成のコンピュータ1000によって実現される。図12は、決定装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、ネットワークNを介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータをネットワークNを介して他の機器へ送信する。
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インターフェイス1600を介して出力装置へ出力する。
メディアインターフェイス1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
例えば、コンピュータ1000が実施形態に係る決定装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムまたはデータ(例えば、モデルM1(モデルデータMDT1))を実行することにより、制御部130の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムまたはデータ(例えば、モデルM1(モデルデータMDT1))を記録媒体1800から読み取って実行するが、他の例として、他の装置からネットワークNを介してこれらのプログラムを取得してもよい。
以上、本願の実施形態及び変形例のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の行に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
〔8.その他〕
また、上記実施形態及び変形例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。