以下に、本願に係る情報処理装置、情報処理方法、及び情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法、及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
(実施形態)
〔1.情報処理〕
図1を用いて、実施形態に係る情報処理の一例について説明する。図1は、実施形態に係る情報処理の一例を示す図である。図1の例では、情報処理装置100(図3参照)が所定のエリアAR11(Aエリア)に位置する第1ユーザの行動情報に基づいて生成したモデルを用いて、他のエリアAR12(Xエリア)に位置する第2ユーザに関する情報を生成する場合を示す。なお、図1の例では、コンテンツ配信の一形態としてプッシュ通知を例として示すが、コンテンツ配信は種々の態様であってもよい。例えば、情報処理システム1におけるコンテンツ配信は、プッシュ通知に限らず、端末装置10からコンテンツを要求する、いわゆるプル型のコンテンツ配信であってもよい。例えば、プッシュ通知は、ユーザによる端末装置10の操作に依らず、端末装置10において出力される情報であってもよい。例えば、プッシュ通知は、所定の情報を能動的にユーザに通知することであってもよい。また、以下では、プッシュ通知に対する選択や指定により、プッシュ通知に関する情報を端末装置10に表示させる操作を開封操作とする場合がある。また、ここでいうエリアの大きさや形状は、処理の目的等に応じて適宜設定されてもよい。例えば、エリアは、「県」、「市」、「区」、「町」等の種々の大きさのエリアが適宜設定されてもよい。
〔情報処理システムの構成〕
図1の説明に先立って、図2を用いて情報処理システム1の構成について説明する。図2は、実施形態に係る情報処理システムの構成例を示す図である。図2に示すように、情報処理システム1は、端末装置10と、情報提供装置50と、情報処理装置100とが含まれる。端末装置10と、情報提供装置50と、情報処理装置100とは所定のネットワークNを介して、有線または無線により通信可能に接続される。なお、図2に示した情報処理システム1には、複数台の端末装置10や、複数台の情報提供装置50や、複数台の情報処理装置100が含まれてもよい。
端末装置10は、ユーザによって利用される情報処理装置である。端末装置10は、ユーザによる種々の操作を受け付ける。なお、以下では、端末装置10をユーザと表記する場合がある。すなわち、以下では、ユーザを端末装置10と読み替えることもできる。なお、上述した端末装置10は、例えば、スマートフォンや、タブレット型端末や、ノート型PC(Personal Computer)や、デスクトップPCや、携帯電話機や、PDA(Personal Digital Assistant)等により実現される。図1は、端末装置10がスマートフォンである場合を示す。
また、端末装置10は、GPS(Global Positioning System)センサ等の機能を有し、位置を検知し、取得可能であるものとする。例えば、端末装置10は、情報処理装置100に位置情報等の行動情報を送信する。なお、端末装置10は、上記に限らず、種々のセンサを有してもよい。例えば、端末装置10は、音声センサ(マイク)、加速度センサ、ジャイロセンサ、温度センサ、湿度センサ、照度センサ、圧力センサ、近接センサ、ニオイや汗や心拍や脈拍や脳波等の生体情報を取得するためのセンサ等の種々のセンサを有してもよい。そして、端末装置10は、各種センサにより検知された種々のセンサ情報を情報処理装置100に送信してもよい。例えば、端末装置10は、音声センサによりユーザの発話情報(センサ情報)を検知し、検知した発話情報(センサ情報)を情報処理装置100に送信してもよい。
例えば、端末装置10は、温度センサや気圧センサ等の種々の機能を有し、温度や気圧等のユーザの置かれている周辺情報を検知し、取得可能であってもよい。また、端末装置10は、心拍センサ等の種々の機能を有し、ユーザの生体情報を検知し、取得可能であってもよい。例えば、端末装置10を利用するユーザは、端末装置10と通信可能なウェアラブルデバイスを身に付けることにより、端末装置10によりユーザ自身の生体情報を取得可能としてもよい。例えば、端末装置10を利用するユーザは、端末装置10と通信可能なリストバンド型のウェアラブルデバイスを身に付けることにより、端末装置10によりユーザ自身の心拍(脈拍)に関する情報を端末装置10が取得可能としてもよい。
ここでいう、コンテンツの配信に関するコンテキスト情報(以下、単に「コンテキスト情報」ともいう)は、コンテンツの配信に関する種々のコンテキストを示す情報が含まれる。例えば、コンテキスト情報には、コンテンツの配信先となるユーザのコンテキストを示す情報やユーザが位置する場所のコンテキストを示す情報が含まれる。例えば、コンテキスト情報には、ユーザの属性に関する情報が含まれてもよい。例えば、コンテキスト情報には、ユーザがどのようなユーザであるかを示す情報が含まれてもよい。例えば、コンテキスト情報には、年齢、プロフィール、興味などの種々のユーザに関する情報が含まれてもよい。例えば、コンテキスト情報には、時間や場所のコンテキストに関する情報が含まれてもよい。例えば、コンテキスト情報には、プッシュ通知が行われた際の時間や場所がどのような状況であるかを示す情報が含まれてもよい。例えば、コンテキスト情報には、時間帯に関する情報が含まれてもよい。例えば、コンテキスト情報には、時間帯が0〜23時台の24の時間帯のうちいずれに対応するかを示す情報が含まれてもよい。例えば、コンテキスト情報には、時間帯が朝(4−10時等)、昼(10−16時等)、夜(16−22時等)、深夜(22−4時等)の4つの時間帯のうちいずれに対応するかを示す情報が含まれてもよい。例えば、コンテキスト情報には、ユーザの位置に対応する店舗やスタジアム等の施設名を示すPOI(Point of Interest:関心地点)に関する情報が含まれてもよい。例えば、コンテキスト情報には、ユーザがその場所に位置した滞在(滞留)時間や、場所の属性(商業地や住宅地等)や時間の属性(朝や夜等)などの種々の時間や場所に関する情報が含まれてもよい。
例えば、コンテキスト情報には、環境のコンテキストに関する情報が含まれてもよい。例えば、コンテキスト情報には、プッシュ通知が行われた際のユーザの周囲がどんな環境かを示す情報が含まれてもよい。例えば、コンテキスト情報には、天気、ユーザの感情(気分)、気温、気圧などの種々の情報(周辺情報)が含まれてもよい。例えば、コンテキスト情報には、天気が晴れ、曇り、雨、雪のうちいずれに対応するかを示す情報が含まれてもよい。例えば、コンテキスト情報には、ユーザの気分がプラスの感情であるか、マイナスの感情であるかを示す情報が含まれてもよい。例えば、コンテキスト情報には、ユーザの気分が、喜びや楽しみ等のプラスの感情であるか、怒りや哀しみ等のマイナスの感情であるかを示す情報が含まれてもよい。
例えば、情報処理装置100は、ユーザに関する種々の情報に基づいて、ユーザの感情(気分)を推定する。例えば、情報処理装置100は、ユーザの行動情報に基づいて、ユーザの感情を推定する。情報処理装置100は、種々の従来技術を適宜用いて、ユーザの感情を推定する。例えば、情報処理装置100は、ユーザが閲覧したコンテンツ(閲覧コンテンツ)やユーザが検索に用いたクエリ等のユーザが入力した種々の入力情報を用いてユーザの感情を推定する。例えば、情報処理装置100は、閲覧コンテンツ中の文字情報や入力情報を構文解析等の種々の従来技術を適宜用いて解析することにより、ユーザの感情を推定してもよい。例えば、情報処理装置100は、種々の感情ごとにキーワードの一覧(感情キーワード一覧)を記憶部120(図3参照)に記憶し、閲覧コンテンツ中の文字情報や入力情報に含まれるキーワードが最も該当する感情をユーザの感情として推定してもよい。例えば、情報処理装置100は、プラスの感情及びマイナスの感情の各々に対応するキーワードの感情キーワード一覧を用いて、プラスの感情及びマイナスの感情のうち、閲覧コンテンツ中の文字情報や入力情報に含まれるキーワードが多い方の感情をユーザの感情として推定してもよい。また、情報処理装置100は、ユーザの発話を変換した文字情報と、上記の感情キーワード一覧とを用いて、ユーザの感情を推定してもよい。
例えば、情報処理装置100は、ユーザが利用する端末装置により検知されたセンサ情報に基づいて、ユーザの感情を推定する。例えば、情報処理装置100は、ユーザの歩幅や振幅等に関するセンサ情報に基づいて、ユーザの感情を推定してもよい。また、例えば、情報処理装置100は、ユーザの心拍や血圧等の生体情報やユーザの顔を撮像した画像情報等を用いてユーザの感情を推定してもよい。なお、上記は一例であり、情報処理装置100は、ユーザの感情を推定可能であれば、どのような手法により推定してもよい。例えば、情報処理装置100は、ユーザの発話のトーン(音の調子)などにより、ユーザの感情を推定してもよい。例えば、情報処理装置100は、ユーザの発話のトーン(音の調子)が高い場合、ユーザの感情を喜びや楽しみのプラスの感情であると推定してもよい。例えば、情報処理装置100は、ユーザの発話のトーン(音の調子)が弱い場合、ユーザの感情を怒りや悲しみのマイナスの感情であると推定してもよい。例えば、情報処理装置100は、ユーザが購買した商品の数や金額が所定の閾値以上である場合、ユーザの感情を喜びや楽しみのプラスの感情であると推定してもよい。例えば、情報処理装置100は、ユーザが購買した商品の数や金額が所定の閾値未満である場合、ユーザの感情を怒りや悲しみのマイナスの感情であると推定してもよい。
例えば、コンテキスト情報には、気温が高、中、低のうちいずれに対応するかを示す情報が含まれてもよい。例えば、コンテキスト情報には、気温が、平均気温に対して高(+5℃以上等)、中(±5℃未満)、低(−5℃以下等)のうちいずれに対応するかを示す情報が含まれてもよい。例えば、コンテキスト情報には、気圧が高、中、低のうちいずれに対応するかを示す情報が含まれてもよい。例えば、コンテキスト情報には、気圧が、直前(例えば10分前や1時間前等)の気圧に対して高(+1ヘクトパスカル以上等)、中(±1ヘクトパスカル未満)、低(−1ヘクトパスカル以下等)のうちいずれに対応するかを示す情報が含まれてもよい。例えば、コンテキスト情報には、操作内容に関する情報が含まれてもよい。例えば、コンテキスト情報には、どんな操作(プッシュ通知)かを示す情報や通知内容のカテゴリを示す情報や、アプリティザーかどうかを示す情報などの種々の情報が含まれてもよい。なお、上記は例示であり、コンテキスト情報には、上記に限らず種々の情報が含まれてもよい。
例えば、コンテキスト情報には、ユーザや端末装置10の状況やユーザや端末装置10の環境(背景)に基づいて推定されるユーザの状況等に関する情報が含まれてもよい。また、コンテキスト情報には、ユーザに提供されるコンテンツの内容、ユーザが反応したコンテンツの内容、ユーザの属性、ユーザの現在位置、現在時刻、ユーザが置かれた物理環境、ユーザが置かれた社会環境、ユーザの運動状態、および、推定されるユーザの感情等の種々の情報が含まれてもよい。また、コンテキスト情報には、ユーザや端末装置10の状況やユーザや端末装置10の環境(背景)に基づいて推定されるユーザの心理状態等の種々の情報が含まれてもよい。
情報提供装置50は、種々のオープンデータを有する情報処理装置である。例えば、情報提供装置50は、オープンデータを提供する。情報提供装置50は、いわゆる広く開かれた利用が許可されているデータであるオープンデータを情報処理装置100へ提供する情報処理装置である。例えば、情報提供装置50は、各自治体が管理し、自治体が保有するデータをオープンデータとして外部に提供する情報処理装置であってもよい。また、例えば、情報提供装置50は、気象庁が管理するサーバ等の種々の情報処理装置であってもよい。情報提供装置50は、利用が許可されているデータ(情報)であれば、上記に限らず、道路情報等の交通に関するオープンデータや天気や気温等の気象に関するオープンデータや地理空間情報、防災・減災情報、調達情報、統計情報等の種々のオープンデータを提供してもよい。
例えば、情報提供装置50は、AエリアやBエリア等のオープンデータを情報処理装置100へ提供する。例えば、情報提供装置50は、AエリアやBエリア等に関する環境情報を情報処理装置100へ提供する。例えば、情報提供装置50は、Aエリアの交通情報等の種々の環境情報を情報処理装置100へ提供する。例えば、情報提供装置50は、Bエリアの交通情報や人口構成に関する情報等の種々の環境情報を情報処理装置100へ提供する。このように、環境情報には、ユーザの周辺における道路情報や気象情報等の種々の情報が含まれてもよい。
情報処理装置100は、コンテンツの配信時点とは異なる他の時点に関するコンテキストの各要素と、コンテンツに対する第1ユーザの所定の行動との関係度合いを示す関係度情報に基づいて、第2ユーザの所定の行動に関係する要素を示す関係要素情報を生成する情報処理装置である。情報処理装置100は、コンテンツが配信された第2ユーザの所定の行動に関する行動情報が取得された場合に、行動情報と、関係度情報とに基づいて、第2ユーザの所定の行動に関係する要素を示す関係要素情報を生成する生成装置である。図1の例では、情報処理装置100は、コンテンツの配信時点とは異なる他の時点に関するコンテキストの各要素に関する特徴量を含むモデルを用いて、第2ユーザの所定の行動に関係する要素を示す関係要素情報を生成する。情報処理装置100は、コンテンツの配信における収益性を予測するモデルを用いて、第2ユーザの所定の行動に関係する要素を示す関係要素情報を生成する。なお、ここでいうコンテンツの配信における収益性とは、コンテンツの配信により所定の主体に収益(利益)をもたらす可能性があるものであれば、種々のものであってもよい。コンテンツの配信における収益性は、コンテンツの配信に関連する主体であれば、どの主体における収益性であってもよい。例えば、コンテンツの配信における収益性は、配信されたコンテンツに関する商品をユーザが購入することにより、商品の提供元が得る利益を示すものであってもよい。例えば、ユーザがコンテンツを閲覧する時間が長い程、そのコンテンツに関するユーザの購買等の所定の主体に収益(利益)をもたらす行動が起こる可能性が高いと推定されるため、コンテンツの配信における収益性は、配信されたコンテンツをユーザがどの程度の時間閲覧するかを示すものであってもよい。すなわち、情報処理装置100は、コンテンツに対するユーザの行動を予測するモデルを用いて、第2ユーザの所定の行動に関係する要素を示す関係要素情報を生成する。また、情報処理装置100は、図11に示すモデルM11のように、コンテンツの開封確率を予測するモデル生成し、そのモデルを用いて、第2ユーザの所定の行動に関係する要素を示す関係要素情報を生成してもよい。
情報処理装置100は、所定のエリアに位置するユーザが利用する端末装置10においてプッシュ通知されたコンテンツに対する、当該ユーザの所定の操作の有無を示す操作情報に基づいて、所定のエリアとは異なる他のエリアに位置するユーザが利用する端末装置10にコンテンツがプッシュ通知される場合に、当該コンテンツに対する当該ユーザの所定の操作の有無を予測する予測情報を生成する情報処理装置である。例えば、情報処理装置100は、端末装置10から位置情報を含む行動情報等の種々の情報を取得する。また、例えば、情報処理装置100は、情報提供装置50からオープンデータ等の種々の情報を取得する。
ここから、図1を用いて、情報処理装置100(図3参照)による情報処理の一例を説明する。まず、図1に示すマップ情報MP1について、簡単に説明する。図1に示すマップ情報MP1は、所定の範囲に含まれるエリア等を模式的に示す図である。例えば、マップ情報MP1は、AエリアやXエリアへの端末装置10へのプッシュ通知の状況を模式的に示すための図である。
図1の例では、情報処理装置100は、あるユーザが利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザにより開封されたことを示す情報を取得する(ステップS1−1)。例えば、情報処理装置100は、Aエリアに位置するユーザU1(図4参照)が利用する端末装置10に所定のコンテンツ(例えばコンテンツCT11等)がプッシュ通知され、ユーザU1により開封されたことを示す情報を取得する。このように、「ユーザU*(*は任意の数値)」と記載した場合、そのユーザはユーザID「U*」により識別されるユーザであることを示す。例えば、「ユーザU1」と記載した場合、そのユーザはユーザID「U1」により識別されるユーザである。
例えば、情報処理装置100は、Aエリアの部分エリアLC1−1内に位置するユーザU1が利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザU1により開封されたことを示す情報を取得する。なお、部分エリアLC1−1は、Aエリアにおける所定の範囲内のエリアであってもよい。部分エリアLC1−1は、部分エリアLC1−1の範囲内を代表する1つの位置情報であってもよい。例えば、部分エリアLC1−1は、部分エリアLC1−1の範囲内の中心の位置情報であってもよい。また、部分エリアLC1−1は、部分エリアLC1−1の範囲内の中心の位置情報とその中心からの範囲(例えば100m以内等)を示す情報の組み合わせであってもよい。また、部分エリアLC1−1は、部分エリアLC1−1の範囲内の位置の一覧であってもよい。また、図1の例では、情報処理装置100は、ステップS1−1で通知されたコンテンツ(コンテンツCT11)が開封後に、ユーザにより時間RTM1の間閲覧されたことを示す情報を取得する(ステップS2)。例えば、情報処理装置100は、ステップS1−1で通知されたコンテンツが開封後に、ユーザの端末装置10に時間RTM1の間表示されたことを示す情報を取得してもよい。
また、情報処理装置100は、ユーザU1が利用する端末装置10からセンサ情報等の情報を取得し、各時点におけるユーザU1の感情を推定する。例えば、情報処理装置100は、ユーザU1に所定のコンテンツが配信された日時(日時dt11)とは異なる時点におけるセンサ情報に基づいて、日時dt11とは異なる時点におけるユーザU1の感情を推定する。例えば、情報処理装置100は、日時dt11よりも5分前の時点において、ユーザU1が利用する端末装置10から取得したセンサ情報に基づいて、日時dt11から5分前のユーザU1の感情を推定する。例えば、情報処理装置100は、日時dt11よりも1分前の時点において、ユーザU1が利用する端末装置10から取得したセンサ情報に基づいて、日時dt11から1分前のユーザU1の感情を推定する。また、情報処理装置100は、推定した各時点のユーザU1の感情を、ユーザU1に対応付けて記憶部120(図3参照)に記憶する。なお、情報処理装置100は、各時点におけるユーザU1の感情を示す情報を外部の情報処理装置から取得してもよい。
なお、情報処理装置100は、ユーザへ配信したコンテンツのみに限らず、そのコンテンツ配信後において、そのコンテンツと所定の関連を有するコンテンツ群全体のユーザの閲覧時間を示す情報を用いてもよい。例えば、情報処理装置100は、ユーザU1へ配信したコンテンツCT11のみに限らず、そのコンテンツCT11配信後において、そのコンテンツCT11と所定の関連を有するコンテンツ群全体のユーザU1の閲覧時間を示す情報を用いてもよい。例えば、情報処理装置100は、ユーザU1へのコンテンツCT11配信後において、そのコンテンツCT11が属するサイト(サイトSTX)のコンテンツ群全体のユーザU1の閲覧時間を示す情報を用いてもよい。すなわち、情報処理装置100は、サイトSTXに関連するコンテンツのユーザへの配信後に、サイトSTXに関連するコンテンツ群をユーザが閲覧した時間(収益性)を、予測情報の生成の対象としてもよい。この場合、例えば、情報処理装置100は、サイトSTXに関連するコンテンツのユーザへの配信後に、ユーザの行動によりサイトSTXを運営する事業者が得る利益(収益性)を、予測情報の生成の対象としてもよい。
例えば、情報処理装置100は、端末装置10から取得した情報を行動情報記憶部123(図5参照)に格納する。なお、端末装置10へのコンテンツの提供は、情報処理装置100が予測情報の生成に用いる情報を取得可能であれば、情報処理装置100が行ってもよいし、他の装置が行ってもよい。例えば、端末装置10へのコンテンツの提供は、情報処理装置100が予測情報の生成に用いる情報を取得可能であれば、どの装置が行ってもよい。
また、図1の例では、情報処理装置100は、あるユーザが利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザにより開封されなかったことを示す情報を取得する(ステップS1−2)。例えば、情報処理装置100は、Aエリアに位置するユーザU2(図4参照)が利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザU2により開封されなかったことを示す情報を取得する。例えば、情報処理装置100は、Aエリアの部分エリアLC1−2内に位置するユーザU2が利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザU2により開封されなかったことを示す情報を取得する。
また、情報処理装置100は、ユーザU2が利用する端末装置10からセンサ情報等の情報を取得し、各時点におけるユーザU2の感情を推定する。例えば、情報処理装置100は、ユーザU2に所定のコンテンツが配信された日時(日時dt21)とは異なる時点におけるセンサ情報に基づいて、日時dt21とは異なる時点におけるユーザU2の感情を推定する。例えば、情報処理装置100は、日時dt21よりも5分前の時点において、ユーザU2が利用する端末装置10から取得したセンサ情報に基づいて、日時dt21から5分前のユーザU2の感情を推定する。例えば、情報処理装置100は、日時dt21よりも1分前の時点において、ユーザU2が利用する端末装置10から取得したセンサ情報に基づいて、日時dt21から1分前のユーザU2の感情を推定する。また、情報処理装置100は、推定した各時点のユーザU2の感情を、ユーザU2に対応付けて記憶部120(図3参照)に記憶する。なお、情報処理装置100は、各時点におけるユーザU2の感情を示す情報を外部の情報処理装置から取得してもよい。
なお、図1の例では、説明を簡単にするために、ステップS1−1、S1−2の2回のプッシュ通知に関するユーザの操作を図示するが、Aエリア内に位置するユーザに対して多数(例えば1000万回等)のプッシュ通知がされ、その通知に対するユーザの開封操作の有無を示す操作情報等の行動情報を情報処理装置100が取得するものとする。また、ステップS1−1、S1−2は、処理を説明するためのものであり、ステップS1−1、S1−2のいずれが先に行われてもよく、各ステップS1−1、S1−2は、複数回行われてもよい。以下、ステップS1−1、S1−2を区別せずに説明する場合、ステップS1と総称する。
また、情報処理装置100は、ステップS1において取得したプッシュ通知に関するユーザの行動情報に基づいて、予測情報を生成するために用いるモデルを生成する(ステップS3)。例えば、情報処理装置100は、Aエリアにおける第1ユーザの行動情報に基づいて、配信されたコンテンツに対するユーザの行動を予測するモデルを生成する。例えば、情報処理装置100は、Aエリアにおける第1ユーザの行動情報に基づいて、コンテンツが配信されたユーザによるコンテンツに対する行動を予測するモデルを生成する。例えば、情報処理装置100は、Aエリアにおける第1ユーザのコンテキスト情報に基づいて、配信されたコンテンツに対するユーザの行動を予測するモデルを生成する。例えば、情報処理装置100は、コンテキスト情報に基づいて、配信されたコンテンツが開封され、どの程度閲覧されるかを予測するモデルを生成する。例えば、情報処理装置100は、オープンデータ記憶部121やユーザ情報記憶部122や行動情報記憶部123等に格納された各種情報に基づいて、プッシュ通知における収益性を予測するモデルを生成する。例えば、情報処理装置100は、オープンデータ記憶部121やユーザ情報記憶部122や行動情報記憶部123等に格納された各種情報に基づいて、プッシュ通知されたコンテンツに対するユーザの行動を予測するモデルを生成する。
例えば、情報処理装置100は、オープンデータ記憶部121に記憶されたAエリアの環境情報に基づいて、モデルを生成する。例えば、情報処理装置100は、ユーザ情報記憶部122に記憶されたAエリアに位置するユーザのユーザ情報に基づいて、モデルを生成する。例えば、情報処理装置100は、行動情報記憶部123に記憶されたAエリアに位置するユーザの行動情報に基づいて、モデルを生成する。また、例えば、情報処理装置100は、ユーザにプッシュ通知されたコンテンツに関する情報を加味してモデルを生成してもよい。例えば、情報処理装置100は、ユーザにプッシュ通知されたコンテンツのカテゴリを要素とする特徴量を含むモデルを生成してもよい。
ここで、情報処理装置100は、各要素に対応する各特徴量を含むモデルを生成する。すなわち、情報処理装置100は、モデルの特徴量を決定し、各特徴量の重みを学習することにより、モデルを生成する。例えば、情報処理装置100は、クロネッカー積等の種々の従来技術により、コンテキスト情報の要素を組み合わせた特徴量を用いてモデルの生成を行ってもよい。例えば、情報処理装置100は、2以上の要素を組み合わせた特徴量を含むモデルを生成する。例えば、情報処理装置100は、コンテキスト情報の要素を組み合わせた特徴量を決定する。例えば、情報処理装置100は、コンテキスト情報の各カテゴリ間の要素を組み合わせた特徴量を決定する。
例えば、情報処理装置100は、コンテキスト情報のうち、コンテンツ配信時点とは別の時点のコンテキストの要素(「第1要素」ともいう)に対応する要素群EL1と、第1要素とは異なる要素(「第2要素」ともいう)に対応する要素群EL2との各組み合わせに基づいて、モデルの特徴量を決定する。例えば、情報処理装置100は、要素群EL1の第1要素と、要素群EL2の第2要素との各組合せを、モデルの特徴量に決定する。例えば、情報処理装置100は、要素群EL1の第1要素である「5分前にプラス感情」や「1分前にマイナス感情」や「3分前に雨」等と、要素群EL2の第2要素である「30代」や「男性」や「サッカー場」等との各組合せを、モデルの特徴量に決定する。
図1の例では、情報処理装置100は、5分前にプラス感情、30代及び男性の組合せに対応する特徴量#1や、5分前にプラス感情、30代及び女性の組合せに対応する特徴量#2や、5分前にプラス感情、20代及び男性の組合せに対応する特徴量#3等をモデルM1の特徴量に決定する。なお、図1の例では図示を省略するが、情報処理装置100は、1分前にプラス感情、30代及び男性の組合せに対応する特徴量#4や、30分前にプラス感情、30代及び女性の組合せに対応する特徴量#5や、3分前に晴れ及びサッカー場の組合せに対応する特徴量#11や、1時間前に雨及びサッカー場の組合せに対応する特徴量#12等の種々の特徴量を、モデルM1の特徴量に決定する。例えば、情報処理装置100は、記憶部120(図3参照)に記憶された「5分前にプラス感情」、「10分前にプラス感情」、「1時間前に雨」等のコンテキストに関する要素のコンテキスト要素一覧情報や、「30代」、「20代」、「男性」、「女性」等のユーザの属性に関する要素の属性要素一覧情報を用いて、組合せを決定してもよい。例えば、情報処理装置100は、コンテキスト要素一覧情報から選択した第1要素と、属性要素一覧情報から選択した第2要素とを組み合せることにより、各組合せを示す情報を生成してもよい。例えば、情報処理装置100は、数千万や数億の特徴量を、モデルM1に含ませる特徴量に決定してもよい。
また、モデルに含まれる特徴量は要素が組み合わされたものに限らず、情報処理装置100は、コンテキスト情報の一の要素のみに対応する特徴量を含むモデルの生成を行ってもよい。また、情報処理装置100は、4以上の種々の要素が組み合わされた特徴量に対応する特徴量を含むモデルの生成を行ってもよい。例えば、情報処理装置100は、要素「5分前にプラス感情」のみに対応する特徴量や要素「3分前に雨」のみに対応する特徴量を含むモデルの生成を行ってもよい。なお、上記の要素の組合せは一例であり、例えば要素群EL1内の要素間の組合せ等、種々の組合せであってもよい。
例えば、情報処理装置100は、プッシュ通知されたコンテンツが開封された場合の情報を正解情報(正例)として、プッシュ通知されたコンテンツに対するユーザの行動を予測するモデルを生成してもよい。例えば、情報処理装置100は、プッシュ通知されたコンテンツが開封された場合のユーザのユーザ情報やユーザの位置情報やユーザの行動情報やユーザの環境情報等の種々のコンテキスト情報を正解情報として、プッシュ通知されたコンテンツに対するユーザの行動を予測するモデルを生成してもよい。例えば、情報処理装置100は、ユーザU1が部分エリアLC1−1においてプッシュ通知されたコンテンツを開封した場合、ユーザU1のユーザ情報やユーザU1の位置情報やユーザU1の行動情報やユーザU1の環境情報等の種々のコンテキスト情報を正解情報として、プッシュ通知されたコンテンツに対するユーザの行動を予測するモデルを生成してもよい。例えば、情報処理装置100は、ユーザU1へのコンテンツの配信に関するコンテキスト情報を用いて、モデルM1を生成する。例えば、情報処理装置100は、ユーザU1へのコンテンツの配信時点とは異なる他の時点に関するコンテキスト情報を用いて、モデルM1を生成する。例えば、情報処理装置100は、ユーザU1へのコンテンツの配信時点とは異なる他の時点におけるユーザU1の位置の天候やユーザU1の感情等を含む種々のコンテキスト情報を用いて、モデルM1を生成する。例えば、情報処理装置100は、ユーザU1へのコンテンツの配信時点よりも前の時点、すなわち過去におけるユーザU1の位置の天候やユーザU1の感情等を含む種々のコンテキスト情報を用いて、モデルM1を生成する。なお、過去に限らず、情報処理装置100は、ユーザU1へのコンテンツの配信時点よりも後の時点、すなわち未来におけるユーザU1の位置の天候やユーザU1の感情等を含む種々のコンテキスト情報を用いて、モデルM1を生成してもよい。なお、情報処理装置100は、ユーザU1へのコンテンツの配信時点よりも過去や未来のコンテキスト情報に限らず、ユーザU1へのコンテンツの配信時点におけるコンテキスト情報を用いて、モデルM1を生成してもよい。
図1の例では、情報処理装置100は、コンテンツが開封された場合、コンテンツ開封後のユーザのコンテンツの閲覧時間に基づいて、収益性に関するユーザの行動の度合いを示す複数のレベルのうちいずれに該当するかで各配信におけるユーザの行動のレベルを決定する。
例えば、情報処理装置100は、ユーザのコンテンツの閲覧時間が5秒未満である場合、その配信におけるユーザの行動のレベルをレベルLV1として、スコア「1」を出力するように学習することにより、予測するモデルを生成する。例えば、情報処理装置100は、図1に示すユーザU1の閲覧時間である時間RTM1が5秒未満の所定の時間(例えば3秒)である場合、ユーザU1への配信におけるコンテキスト情報が入力された場合、スコア「1」を出力するように学習することにより、予測するモデルを生成する。
また、例えば、情報処理装置100は、ユーザのコンテンツの閲覧時間が5秒以上1分未満である場合、その配信におけるユーザの行動のレベルをレベルLV2として、スコア「2」を出力するように学習することにより、予測するモデルを生成する。例えば、情報処理装置100は、図1に示すユーザU1の閲覧時間である時間RTM1が5秒以上1分未満の所定の時間(例えば30秒)である場合、ユーザU1への配信におけるコンテキスト情報が入力された場合、スコア「2」を出力するように学習することにより、予測するモデルを生成する。
また、例えば、情報処理装置100は、ユーザのコンテンツの閲覧時間が1分以上5分未満である場合、その配信におけるユーザの行動のレベルをレベルLV3として、スコア「3」を出力するように学習することにより、予測するモデルを生成する。例えば、情報処理装置100は、図1に示すユーザU1の閲覧時間である時間RTM1が1分以上5分未満の所定の時間(例えば2分)である場合、ユーザU1への配信におけるコンテキスト情報が入力された場合、スコア「3」を出力するように学習することにより、予測するモデルを生成してもよい。なお、上記は一例であり、情報処理装置100は、種々のレベルを用いて、また、情報処理装置100は、閲覧時間に限らず、種々の収益性を予測するモデルを生成してもよい。
また、例えば、情報処理装置100は、プッシュ通知されたコンテンツが開封されなかった場合の情報を不正解情報(負例)として、プッシュ通知されたコンテンツに対するユーザの行動を予測するモデルを生成してもよい。例えば、情報処理装置100は、ユーザがコンテンツの開封操作を行わなかった場合、その配信におけるユーザの行動のレベルをレベルLV0として、スコア「0」を出力するように学習することにより、予測するモデルを生成する。例えば、情報処理装置100は、プッシュ通知されたコンテンツが開封されなかった場合のコンテキスト情報が入力された場合、スコア「0」を出力するように学習することにより、予測するモデルを生成してもよい。
例えば、情報処理装置100は、プッシュ通知されたコンテンツが開封されなかった場合のユーザのユーザ情報やユーザの位置情報やユーザの行動情報やユーザの環境情報等の種々のコンテキスト情報を不正解情報として、プッシュ通知されたコンテンツに対するユーザの行動を予測するモデルを生成してもよい。例えば、情報処理装置100は、ユーザU2が部分エリアLC1−2においてプッシュ通知されたコンテンツを開封しなかった場合、ユーザU2のユーザ情報やユーザU2の位置情報やユーザU2の行動情報やユーザU2の環境情報等の種々のコンテキスト情報を不正解情報として、プッシュ通知されたコンテンツに対するユーザの行動を予測するモデルを生成してもよい。例えば、情報処理装置100は、ユーザU2へのコンテンツの配信に関するコンテキスト情報を用いて、モデルM1を生成する。例えば、情報処理装置100は、ユーザU2へのコンテンツの配信時点とは異なる他の時点に関するコンテキスト情報を用いて、モデルM1を生成する。例えば、情報処理装置100は、ユーザU2へのコンテンツの配信時点とは異なる他の時点におけるユーザU2の位置の天候やユーザU2の感情等を含む種々のコンテキスト情報を用いて、モデルM1を生成する。例えば、情報処理装置100は、ユーザU2へのコンテンツの配信時点よりも前の時点、すなわち過去におけるユーザU2の位置の天候やユーザU2の感情等を含む種々のコンテキスト情報を用いて、モデルM1を生成する。なお、過去に限らず、情報処理装置100は、ユーザU2へのコンテンツの配信時点よりも後の時点、すなわち未来におけるユーザU2の位置の天候やユーザU1の感情等を含む種々のコンテキスト情報を用いて、モデルM1を生成してもよい。
図1の例では、情報処理装置100は、モデル情報MDに示すようにモデルM1のモデル情報を生成する。例えば、情報処理装置100は、モデル情報記憶部125(図7参照)に示すように、モデルM1を生成する。
図7中のモデル情報記憶部125に示すモデルM1には、「特徴量#1(5分前にプラス感情×30代×男性)」〜「特徴量#3(5分前にプラス感情×20代×男性)」等の各特徴量(素性)に各重み(値)が対応付けて記憶される。例えば、図7に示す例において、モデルM1に関するモデル情報は、5分前にプラス感情、30代及び男性の組合せに対応する特徴量#1の重みが「0.5」、5分前にプラス感情、30代及び女性の組合せに対応する特徴量#2の重みが「−0.1」、5分前にプラス感情、20代及び男性の組合せに対応する特徴量#3の重みが「0.2」等であることを示す。なお、各モデルの生成は、機械学習に関する種々の従来技術を適宜用いて行われてもよい。例えば、モデルの生成は、SVM(Support Vector Machine)等の教師あり学習の機械学習に関する技術を用いて行われてもよい。なお、上記モデルの生成に関する記載は例示であり、モデルの生成は、取得可能な情報等に応じて適宜選択された学習手法により行われてもよい。このように、情報処理装置100は、モデルM1の特徴量#1〜特徴量#3等の各特徴量の重みを学習することにより、モデルM1を生成する。
例えば、情報処理装置100は、コンテンツの配信に関するコンテキスト情報を入力とし、入力に基づいてスコアを出力するモデルM1を生成する。例えば、情報処理装置100は、コンテキスト情報を入力とし、入力したコンテキスト情報に対応するユーザによる配信されたコンテンツに対する行動の可能性を示すスコアを出力するモデルM1を生成する。例えば、情報処理装置100は、コンテキスト情報を入力とし、入力したコンテキスト情報に対応するコンテンツの配信におけるユーザの行動(収益性)のレベルを示すスコアを出力するモデルM1を生成する。なお、情報処理装置100は、図11のモデルM11に示すように、コンテンツが配信されたユーザが開封操作の行動を行う確率を示すスコアを出力するモデルをモデルM1として生成してもよい。
そして、情報処理装置100は、生成したモデルM1に基づいて、コンテンツに対するユーザの所定の行動との関係度合いを示す関係度情報を生成する(ステップS4)。図1の例では、情報処理装置100は、生成したモデルM1に基づいて、コンテンツに対するユーザの開封行動との関係度合いを示す関係度情報を生成する。情報処理装置100は、生成したモデルM1に基づいて、コンテンツに対するユーザの閲覧行動との関係度合いを示す関係度情報を生成する。
例えば、情報処理装置100は、モデルM1の各特徴量の重みに基づいて、コンテンツに対するユーザの所定の行動との関係度合いを示す関係度情報を生成する。例えば、情報処理装置100は、モデルM1の特徴量のうち、重みの絶対値が大きい特徴量の順位が高くなるように、各特徴量に対応する関係情報が順位付けられた関係度情報を生成する。そして、情報処理装置100は、生成した関係度情報を関係度情報記憶部127に記憶する。
図1の関係度情報記憶部127中の「対象行動」は、対象とするユーザの所定の行動を示す。また、図1の関係度情報記憶部127中の「順位」は、各関係情報の対象行動との関係の度合いの順位(ランキング)を示す。図1の関係度情報記憶部127中の「関係情報ID」は、関係情報を識別するための情報を示す。図1の関係度情報記憶部127中の「重み」は、関係情報に対応する特徴量の重みを示す。図1の関係度情報記憶部127中の「要素#1」〜「要素#3」等は、関係情報に対応する特徴量の要素を示す。
図1の関係度情報記憶部127では、対象行動がユーザのコンテンツに対する行動であることを示す。例えば、対象行動がユーザのコンテンツ開封等の行動であることを示す。また、関係情報ID「ST1」により識別される関係情報(関係情報ST1)は、重みが「0.5」の特徴量に対応し、要素#1が「5分前にプラス感情」であり、要素#2が「30代」であり、要素#3が「男性」であることを示す。すなわち、関係情報ST1は、モデルM1の特徴量#1に対応する。
このように、図1の例では、情報処理装置100は、モデルM1の特徴量のうち、特徴量#1が重みの絶対値が最も大きいため、特徴量#1に対応する関係情報ST1の順位を1位に決定する。情報処理装置100は、モデルM1の特徴量のうち、特徴量#1の要素「5分前にプラス感情」、「30代」及び「男性」の組合せがユーザのコンテンツ開封等の行動に関係性が有ることを示す関係度情報を生成する。情報処理装置100は、要素「5分前にプラス感情」、「30代」及び「男性」の組合せの関係情報ST1の重みがプラス値であるため、30代男性のユーザがコンテンツに対する行動を行う場合、その行動の5分前のユーザの感情がプラス感情であった可能性が高いと推定することができる。
また、情報処理装置100は、モデルM1の特徴量のうち、要素「1分前にマイナス感情」、「20代」及び「女性」の組合せに対応する特徴量が重みの絶対値が特徴量#1の次に大きいため、その特徴量に対応する関係情報ST2の順位を2位に決定する。情報処理装置100は、要素「1分前にマイナス感情」、「20代」及び「女性」の組合せの関係情報ST2の重みがマイナス値であるため、20代女性のユーザがコンテンツに対する行動を行う場合、その行動の1分前のユーザの感情がマイナス感情であった可能性が低いと推定することができる。
なお、情報処理装置100は、特徴量の重みが大きい方から順にランキングを決定してもよい。この場合、情報処理装置100は、重みが大きい特徴量の要素がユーザのコンテンツ開封等の行動に影響することを示す関係度情報を生成する。
そして、情報処理装置100は、生成した関係度情報に基づいて、関係要素情報を生成する。まず、情報処理装置100は、関係要素情報を生成する対象となるユーザ(対象ユーザ)を決定する(ステップS5)。図1の例では、情報処理装置100は、Xエリアに位置するユーザU3を対象ユーザに決定する。情報処理装置100は、Aエリア以外の他のエリアであるXエリアに位置する第2ユーザであるユーザU3を対象ユーザに決定する。
そして、図1の例では、Xエリアに位置するユーザU3にコンテンツがプッシュ通知され、ユーザU3がコンテンツを開封する。これにより、情報処理装置100は、ユーザU3が利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザU3により開封されたことを示す情報を取得する(ステップS6)。例えば、情報処理装置100は、Xエリアに位置するユーザU3がプッシュ通知された所定のコンテンツ(例えばコンテンツCT11等)を開封したことを示す行動情報を取得する。
そして、情報処理装置100は、ユーザU3の行動が所定の基準を満たすかどうかを判定する。例えば、情報処理装置100は、ユーザU3の行動情報とコンテンツを開封したことを条件とする所定の条件とを比較することにより、所定の基準を満たすかどうかを判定する。例えば、情報処理装置100は、コンテンツが配信されたユーザの行動情報にそのコンテンツの開封の行動情報が含まれる場合、所定の基準を満たすと判定する。なお、所定の基準は、コンテンツ開封の条件に限らず、種々の条件等、適宜設定されてもよい。
情報処理装置100は、ユーザU3の行動が所定の基準を満たすと判定したため、関係要素情報を生成する(ステップS7)。図1の例では、情報処理装置100は、関係度情報記憶部127に記憶された情報を用いて、関係要素情報を生成する。情報処理装置100は、関係度情報記憶部127に記憶された情報を用いて、ユーザU3によるコンテンツの開封に関する関係要素情報を生成する。例えば、情報処理装置100は、ユーザ情報記憶部(図4参照)に記憶されたユーザU3の属性情報に基づいて、ユーザU3によるコンテンツの開封に関する関係要素情報を生成する。例えば、情報処理装置100は、ユーザU3の属性情報である年齢「30代」及び性別「男性」に基づいて、ユーザU3によるコンテンツの開封に関する関係要素情報を生成する。
情報処理装置100は、関係度情報記憶部127に記憶された関係情報のうち、要素に「30代」や「男性」が含まれる関係情報を選択する。例えば、情報処理装置100は、要素に「30代」や「男性」が含まれる関係情報のうち、順位が高い方から所定数(例えば5や10)の関係情報を選択する。図1の例では、情報処理装置100は、順位が高い方から順に、要素に「30代」や「男性」が含まれる関係情報ST1等を選択する。
ここで、情報処理装置100は、選択した関係情報ST1の重みがプラス値であるため、対象ユーザであるユーザU3の5分前の感情が「プラス」である可能性が高いと推定する。
また、図示することは省略するが、図1の例では、情報処理装置100は、要素「6分前にプラス感情」及び「30代」の組合せに対応する関係情報(関係情報STX)を選択しており、関係情報STXの重みがマイナス値であるものとする。そのため、情報処理装置100は、対象ユーザであるユーザU3の6分前の感情が「プラス」ではない、すなわち「マイナス」である可能性が高いと推定する。
これにより、情報処理装置100は、Xエリアに位置する対象ユーザであるユーザU3の関係要素情報FINF1を生成する。図1の例では、情報処理装置100は、ユーザU3のコンテンツの開封操作に基づいて、Xエリアに位置するユーザU3の5分前の感情がプラスの感情であり、6分前の感情がマイナスの感情であると推定されることを示す関係要素情報FINF1を生成する。このように、情報処理装置100は、ユーザU3の感情が6分前にマイナス感情であり、5分前にプラス感情に変化したことを示す関係要素情報FINF1を生成する。情報処理装置100は、関係要素情報FINF1に基づいて、プッシュ通知を開封したユーザU3について、開封の6分前から5分前の間にマイナスからプラスの感情に変化したと推定する。これにより、情報処理装置100は、関係要素情報FINF1に基づいて、ユーザU3が属する30代男性のユーザについては、マイナスからプラスの感情に変化した後に、コンテンツの開封操作を行う可能性が高いと推定することができる。例えば、情報処理装置100は、関係要素情報FINF1に基づいて、ユーザU3が属する30代男性のユーザについては、6分前から5分前の間にマイナスからプラスの感情に変化した場合にコンテンツの開封操作を行う可能性が高いと推定することができる。
上述のように、情報処理装置100は、生成したモデルM1を用いることにより、ユーザの行動に関係する要素を示す情報を適切に生成することができる。図1の例では、情報処理装置100は、Aエリアの第1ユーザの情報により生成したモデルM1、及びAエリアとは異なるXエリアの第2ユーザの行動情報を用いて、第2ユーザの行動に関係する要素を示す情報を適切に生成することができる。具体的には、情報処理装置100は、Aエリアの第1ユーザの情報により生成したモデルM1、及びXエリアの第2ユーザの行動情報を用いて、Xエリアのコンテキストを推定する情報を適切に生成することができる。
これにより、情報処理装置100は、コンテキストを適切に推定することができる。つまり、情報処理装置100は、モデルM1の目的変数(出力値(スコア))に対応するユーザのコンテンツの開封操作を示す情報から、モデルM1の従属変数(特徴量)に対応するコンテキストを逆推定することができる。すなわち、情報処理装置100は、モデルM1の目的変数(出力値(スコア))から、モデルM1の従属変数(特徴量)に対応するコンテキストを逆推定することにより、コンテンツ配信時点とは異なる他の時点におけるコンテキストを適切に推定することができる。このように、情報処理装置100は、コンテンツ配信時点以前や以後などにおけるコンテキストの変化を適切に推定することができる。
図1の例では、30代男性のユーザU3は、配信されたコンテンツを開封する行動を行っている。そして、情報処理装置100は、30代男性のユーザU3がコンテンツの配信の数分前にマイナスからプラスの感情に変化したと推定する。そのため、情報処理装置100は、30代男性のユーザ群は、感情がマイナスからプラスに変化した後のタイミングでコンテンツを配信すると開封する可能性が高くなると推定ことができる。このように、情報処理装置100は、ユーザにどのような感情の変化が有った場合に、行動を起こしやすいかを推定することができる。
〔1−1.情報の生成例〕
なお、図1は一例であり、情報処理装置100は、上記に限らず、種々の情報を生成してもよい。この点について、図11を用いて以下説明する。図11は、実施形態に係る情報処理の一例を示す図である。図11において図1と同様の点については適宜説明を省略する場合がある。図11の例では、情報処理装置100(図3参照)が所定のエリアAR11(Aエリア)におけるプッシュ通知に関するユーザの操作情報等の行動情報に基づいて、他のエリアAR21(Bエリア)にプッシュ通知に関する予測情報を生成する場合を示す。なお、図11の例では、コンテンツ配信の一形態としてプッシュ通知を例として示すが、コンテンツ配信は種々の態様であってもよい。例えば、情報処理システム1におけるコンテンツ配信は、プッシュ通知に限らず、端末装置10からコンテンツを要求する、いわゆるプル型のコンテンツ配信であってもよい。
例えば、図11の例では、Bエリアにおけるプッシュ通知に関する実際のユーザの操作情報等の行動情報が不足している等の理由により、Bエリアにおけるプッシュ通知の開封率の分布情報を精度よく生成することが難しい場合を示す。例えば、プッシュ通知は、ユーザによる端末装置10の操作に依らず、端末装置10において出力される情報であってもよい。例えば、プッシュ通知は、所定の情報を能動的にユーザに通知することであってもよい。また、ここでいう開封率とは、例えば、端末装置10に表示されたプッシュ通知をユーザが開封操作を行った割合を示す。また、開封操作とは、プッシュ通知に対する選択や指定等のユーザの所定の操作であってもよい。例えば、開封操作とは、プッシュ通知に関する情報を端末装置10に表示させるユーザの所定の操作であってもよい。例えば、図11の例では、ステップS10に示すように、Bエリアにおける通知回数は少ないものとする。なお、ステップS10は、Bエリアの通知回数が少ないことを図示するためのものであり、処理手順には含まれなくてもよい。
まず、図11に示すマップ情報MP1−1〜MP1−3について、簡単に説明する。図11に示すマップ情報MP1−1〜MP1−3は、所定の範囲に含まれるエリア等を模式的に示す図である。例えば、マップ情報MP1−1は、AエリアやBエリアへの端末装置10へのプッシュ通知の状況を模式的に示すための図である。また、例えば、マップ情報MP1−2は、Aエリアにおける端末装置10へのプッシュ通知の開封率の分布情報を模式的に示すための図である。また、例えば、マップ情報MP1−3は、Bエリアにおける端末装置10へのプッシュ通知の開封率の予測情報を模式的に示すための図である。また、マップ情報MP1−1〜MP1−3に示す範囲(エリア)は、同一のエリアである。また、以下では、マップ情報MP1−1〜MP1−3について、特に区別なく説明する場合には、マップ情報MP1と記載する。
図11の例では、情報処理装置100は、あるユーザが利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザにより開封されたことを示す情報を取得する(ステップS11−1)。例えば、情報処理装置100は、Aエリアに位置するユーザU1(図4参照)が利用する端末装置10に所定のコンテンツ(例えばコンテンツCT11等)がプッシュ通知され、ユーザU1により開封されたことを示す情報を取得する。例えば、情報処理装置100は、Aエリアの部分エリアLC1−1内に位置するユーザU1が利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザU1により開封されたことを示す情報を取得する。なお、部分エリアLC1−1は、Aエリアにおける所定の範囲内のエリアであってもよい。また、図11の例では、情報処理装置100は、ステップS11−1で通知されたコンテンツ(コンテンツCT11)が開封後に、ユーザにより時間RTM1の間閲覧されたことを示す情報を取得してもよい。例えば、情報処理装置100は、ステップS11−1で通知されたコンテンツが開封後に、ユーザの端末装置10に時間RTM1の間表示されたことを示す情報を取得してもよい。
例えば、情報処理装置100は、端末装置10から取得した情報を行動情報記憶部123(図5参照)に格納する。なお、端末装置10へのコンテンツの提供は、情報処理装置100が予測情報の生成に用いる情報を取得可能であれば、情報処理装置100が行ってもよいし、他の装置が行ってもよい。例えば、端末装置10へのコンテンツの提供は、情報処理装置100が予測情報の生成に用いる情報を取得可能であれば、どの装置が行ってもよい。
また、図11の例では、情報処理装置100は、あるユーザが利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザにより開封されなかったことを示す情報を取得する(ステップS11−2)。例えば、情報処理装置100は、Aエリアに位置するユーザU2(図4参照)が利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザU2により開封されなかったことを示す情報を取得する。例えば、情報処理装置100は、Aエリアの部分エリアLC1−2内に位置するユーザU2が利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザU2により開封されなかったことを示す情報を取得する。
なお、図11の例では、説明を簡単にするために、ステップS11−1、S11−2の2回のプッシュ通知に関するユーザの操作を図示するが、Aエリア内に位置するユーザに対して多数(例えば1000万回等)のプッシュ通知がされ、その通知に対するユーザの開封操作の有無を示す操作情報等の行動情報を情報処理装置100が取得するものとする。また、ステップS11−1、S11−2は、処理を説明するためのものであり、ステップS11−1、S11−2のいずれが先に行われてもよく、各ステップS11−1、S11−2は、複数回行われてもよい。以下、ステップS11−1、S11−2を区別せずに説明する場合、ステップS11と総称する。
そして、情報処理装置100は、プッシュ通知に関する操作情報等の行動情報に基づいて、分布情報を生成する(ステップS12)。例えば、情報処理装置100は、プッシュ通知に関する操作情報に基づいて、コンテンツの開封率を算出することにより、分布情報を生成する。例えば、情報処理装置100は、ステップS11において取得した操作情報に基づいて生成した分布情報を分布情報記憶部124(図6参照)に記憶する。例えば、情報処理装置100は、Aエリアを集計対象エリアとする分布情報を分布情報記憶部124に記憶する。
図6中の分布情報記憶部124に示す「集計対象エリア」は、分布情報を収集する対象となったエリアを示す。また、図6中の分布情報記憶部124に示す「分布情報」は、集計対象エリアについて収集された分布情報を示す。図6中の分布情報記憶部124に示す「部分エリア」は、集計対象エリア内の部分エリアを示す。図6中の分布情報記憶部124に示す「プッシュ回数」は、対応する部分エリアに位置するユーザにプッシュ通知が行われた回数を示す。また、図6中の分布情報記憶部124に示す「開封回数」は、対応する部分エリアに位置するユーザがプッシュ通知を開封した回数を示す。また、「開封率(%)」は、対応する部分エリアに位置するユーザがプッシュ通知を開封した割合(=開封回数/プッシュ回数×100)を示す。例えば、「開封率(%)」は、0〜100(%)の値となる。例えば、情報処理装置100は、開封率を算出する。
例えば、図6中の分布情報記憶部124に示す例において、集計対象エリア「Aエリア」についての分布情報は、Aエリア内の部分エリアLC1−1に位置するユーザに「10000(回)」のプッシュ通知が行われたことを示す。また、例えば、部分エリアLC1−1に位置するユーザがプッシュ通知を「2000(回)」開封したことを示す。また、例えば、部分エリアLC1−1に位置するユーザの開封率が、1万回の通知のうち、2千回開封されているため、「20(%)」であることを示す。例えば、情報処理装置100は、部分エリアLC1−1に位置するユーザの開封率を、「20%(=2000/10000*100)」と算出する。
なお、情報処理装置100は、上記に限らず、種々の情報により、開封率を算出してもよい。例えば、情報処理装置100は、モデルM11が出力したスコア自体を用いて、部分エリアLC1−1に位置するユーザの開封率を算出してもよい。例えば、情報処理装置100は、部分エリアLC1−1におけるコンテンツ配信のコンテキスト情報が入力されたモデルM11が出力したスコアの平均値を、部分エリアLC1−1に位置するユーザの開封率として算出してもよい。例えば、情報処理装置100は、部分エリアLC1−1におけるコンテンツ配信についてモデルM11が出力したスコアの合計値を、出力回数で除することにより、部分エリアLC1−1に位置するユーザの開封率を算出してもよい。例えば、情報処理装置100は、部分エリアLC1−1におけるコンテンツ配信についてモデルM11が出力したスコアの合計値が「45(=0.2+0.5+…)」であり、出力回数が「100」回である場合、部分エリアLC1−1に位置するユーザの開封率を「45%(=45/100*100)」と算出してもよい。
図11の例では、情報処理装置100は、Aエリアを集計対象エリアとする分布情報DM11を生成する。図11中のマップ情報MP1−2のAエリアに示す分布情報DM11は、各部分エリアにおける開封率の高低をヒートマップのような表示態様で示す。図11の例では、ハッチングが濃い部分エリア程、開封率の高いことを示す。図11の例では、分布情報DM11は、Aエリア中の部分エリアLC1−1等において開封率の高いことを示す。また、図11の例では、分布情報DM11は、Aエリア中の部分エリアLC1−2等において開封率の低いことを示す。すなわち、Aエリアにおいては、その中央部付近での開封率が高く、中心から離れるにつれて開封率が低下することを示す。
また、情報処理装置100は、ステップS11において取得したプッシュ通知に関する操作情報等の行動情報に基づいて、予測情報を生成するために用いるモデルを生成する(ステップS13)。例えば、情報処理装置100は、Aエリアにおける操作情報等の行動情報に基づいて、プッシュ通知を開封するかどうかを予測するモデルを生成する。例えば、情報処理装置100は、コンテキスト情報に基づいて、コンテンツの配信における配信におけるユーザの行動(収益性)を予測するモデルを生成する。例えば、情報処理装置100は、コンテキスト情報に基づいて、配信されたコンテンツが開封されるかを予測するモデルを生成する。例えば、情報処理装置100は、オープンデータ記憶部121やユーザ情報記憶部122や行動情報記憶部123等に格納された各種情報に基づいて、プッシュ通知を開封するかどうかを予測するモデルを生成する。例えば、情報処理装置100は、オープンデータ記憶部121に記憶されたAエリアの環境情報に基づいて、モデルを生成する。例えば、情報処理装置100は、ユーザ情報記憶部122に記憶されたAエリアに位置するユーザのユーザ情報に基づいて、モデルを生成する。例えば、情報処理装置100は、行動情報記憶部123に記憶されたAエリアに位置するユーザの行動情報に基づいて、モデルを生成する。また、例えば、情報処理装置100は、ユーザにプッシュ通知されたコンテンツに関する情報を加味してモデルを生成してもよい。
例えば、情報処理装置100は、プッシュ通知されたコンテンツが開封された場合の情報を正解情報(正例)として、プッシュ通知を開封するかどうかを予測するモデルを生成してもよい。例えば、情報処理装置100は、プッシュ通知されたコンテンツが開封された場合のコンテキスト情報が入力された場合、スコア「1」を出力するように学習することにより、モデルM11を生成してもよい。例えば、情報処理装置100は、プッシュ通知されたコンテンツが開封された場合のユーザのユーザ情報やユーザの位置情報やユーザの行動情報やユーザの環境情報等の種々のコンテキスト情報を正解情報として、プッシュ通知を開封するかどうかを予測するモデルを生成してもよい。例えば、情報処理装置100は、ユーザU1が部分エリアLC1−1においてプッシュ通知されたコンテンツを開封した場合、ユーザU1のユーザ情報やユーザU1の位置情報やユーザU1の行動情報やユーザU1の環境情報等の種々のコンテキスト情報を正解情報として、プッシュ通知を開封するかどうかを予測するモデルを生成してもよい。
また、例えば、情報処理装置100は、プッシュ通知されたコンテンツが開封されなかった場合の情報を不正解情報(負例)として、プッシュ通知を開封するかどうかを予測するモデルを生成してもよい。例えば、情報処理装置100は、プッシュ通知されたコンテンツが開封されなかった場合のコンテキスト情報が入力された場合、スコア「0」を出力するように学習することにより、モデルM11を生成してもよい。例えば、情報処理装置100は、プッシュ通知されたコンテンツが開封されなかった場合のユーザのユーザ情報やユーザの位置情報やユーザの行動情報やユーザの環境情報等の種々のコンテキスト情報を不正解情報として、プッシュ通知を開封するかどうかを予測するモデルを生成してもよい。例えば、情報処理装置100は、ユーザU2が部分エリアLC1−2においてプッシュ通知されたコンテンツを開封しなかった場合、ユーザU2のユーザ情報やユーザU2の位置情報やユーザU2の行動情報やユーザU2の環境情報等の種々のコンテキスト情報を不正解情報として、プッシュ通知を開封するかどうかを予測するモデルを生成してもよい。
図11の例では、情報処理装置100は、モデル情報MDに示すようにモデルM11のモデル情報を生成する。例えば、情報処理装置100は、モデル情報記憶部125(図7参照)に示すように、モデルM11を生成する。例えば、情報処理装置100は、コンテンツの配信に関するコンテキスト情報を入力とし、入力に基づいてスコアを出力するモデルM11を生成する。例えば、情報処理装置100は、コンテキスト情報を入力とし、入力したコンテキスト情報に対応するコンテンツの配信においてユーザが所定の行動を行う確率を示すスコアを出力するモデルM11を生成する。この場合、情報処理装置100は、モデルM11が出力するスコアを、ユーザが所定の行動を行う確率を示す値として用いてもよい。例えば、情報処理装置100は、モデルM11が出力するスコアを、ユーザがコンテンツを開封する開封確率を示す値として用いてもよい。例えば、情報処理装置100は、コンテキスト情報を入力とし、入力したコンテキスト情報に対応するコンテンツの配信においてユーザが所定の行動を行う可能性の程度を示すスコアを出力するモデルM11を生成する。例えば、情報処理装置100は、コンテキスト情報を入力とし、入力したコンテキスト情報に対応するコンテンツの配信においてユーザが所定の行動を行う度合い(レベル)を示すスコアを出力するモデルM11を生成する。
例えば、情報処理装置100は、ユーザ情報やユーザの位置する周囲の環境情報等のコンテキスト情報が入力されたモデルM11が出力したスコアが「0.7」である場合、そのユーザがプッシュ通知を開封する確率が「70%(=0.7*100)」であると判定してもよい。例えば、情報処理装置100は、モデルM11が出力する0〜1の値の範囲のスコアを、0%〜100%に対応付けてもよい。例えば、情報処理装置100は、コンテキスト情報が入力されたモデルM11が出力したスコアが「0」である場合、そのユーザがプッシュ通知を開封する確率が「0%(=0*100)」であると判定してもよい。例えば、情報処理装置100は、コンテキスト情報が入力されたモデルM11が出力したスコアが「1」である場合、そのユーザがプッシュ通知を開封する確率が「100%(=1*100)」であると判定してもよい。
また、例えば、情報処理装置100は、モデルM11が0未満の値、すなわちマイナス値のスコアを出力する場合、マイナス値のスコアを、0%に対応付けてもよい。例えば、情報処理装置100は、コンテキスト情報が入力されたモデルM11が出力したスコアが「−1」である場合、そのユーザがプッシュ通知を開封する確率が「0%」であると判定してもよい。この場合、例えば、情報処理装置100は、プッシュ通知されたコンテンツが開封されなかった場合のコンテキスト情報が入力された場合、0以下のスコアを出力するように学習することにより、モデルM11を生成してもよい。
また、例えば、情報処理装置100は、モデルM11が1より大きい値のスコアを出力する場合、1より大きい値のスコアを、100%に対応付けてもよい。例えば、情報処理装置100は、コンテキスト情報が入力されたモデルM11が出力したスコアが「3」である場合、そのユーザがプッシュ通知を開封する確率が「100%」であると判定してもよい。このように、情報処理装置100は、コンテキスト情報を入力とし、入力したコンテキスト情報に対応するコンテンツの配信においてユーザが所定の行動を行う確率(程度)を示すスコアを出力するモデルM11を生成してもよい。この場合、例えば、情報処理装置100は、プッシュ通知されたコンテンツが開封された場合のコンテキスト情報が入力された場合、1以上のスコアを出力するように学習することにより、モデルM11を生成してもよい。例えば、情報処理装置100は、開封されたコンテンツによる収益に応じて、コンテキスト情報が入力された場合、1以上のスコアを出力するように学習することにより、モデルM11を生成してもよい。
例えば、情報処理装置100は、ユーザ情報やユーザの位置する周囲の環境情報等のコンテキスト情報を入力とし、入力に基づいてスコアを出力するモデルM11を生成する。例えば、情報処理装置100は、コンテキスト情報を入力とし、入力に基づいてスコアを出力するモデルM11を生成する。例えば、情報処理装置100は、ユーザ情報やユーザの位置する周囲の環境情報等のコンテキスト情報を入力とし、入力に基づいてスコアをモデルM11が出力するスコアが所定の閾値(例えば、「0.5」等)以上である場合に、そのユーザがプッシュ通知されるコンテンツを開封すると判定してもよい。例えば、情報処理装置100は、生成したモデルM11をモデル情報記憶部125(図7参照)に記憶してもよい。なお、図11に示すモデルM11は、図1に示すモデルM1と同じモデルであってもよい。なお、各モデルの生成は、機械学習に関する種々の従来技術を適宜用いて行われてもよい。例えば、モデルの生成は、SVM(Support Vector Machine)等の教師あり学習の機械学習に関する技術を用いて行われてもよい。
そして、情報処理装置100は、生成したモデルM11に基づいて、予測情報を生成する(ステップS14)。例えば、情報処理装置100は、生成したモデルM11に基づいて、コンテンツの開封率を算出することにより、予測情報を生成する。例えば、情報処理装置100は、モデルM11と、予測対象エリアであるBエリアに関する各種情報とに基づいて、Bエリアに関する予測情報を生成する。
情報処理装置100は、予測対象エリアのオープンデータを取得する。図11の例では、情報処理装置100は、Bエリアの環境情報EDを取得する。例えば、情報処理装置100は、オープンデータ記憶部121(図3参照)からBエリアの環境情報等の種々の情報を取得してもよい。
また、例えば、情報処理装置100は、予測対象エリアに位置するユーザ情報を取得する。図11の例では、情報処理装置100は、Bエリアのユーザ情報UDを取得する。例えば、情報処理装置100は、ユーザ情報記憶部122(図4参照)に示すようなユーザ情報や行動情報記憶部123(図5参照)に示すようなユーザの行動情報を取得する。
例えば、情報処理装置100は、ユーザ情報記憶部122(図4参照)に格納された位置情報がBエリアに対応するユーザを対象として、Bエリアの予測情報を生成してもよい。例えば、情報処理装置100は、位置情報がBエリア内の部分エリアLC2−1であるユーザU3やBエリア内の部分エリアLC2−2であるユーザU4等を対象として、Bエリアの予測情報を生成してもよい。
例えば、情報処理装置100は、ユーザU3のユーザ情報やユーザU3の環境情報等のコンテキスト情報をモデルM11に入力することにより、ユーザU3がプッシュ通知を開封するかを予測してもよい。例えば、情報処理装置100は、ユーザU3の位置情報や行動情報等を含む種々の情報をモデルM11に入力し、モデルM11が所定の閾値未満のスコアを出力した場合、ユーザU3がプッシュ通知を開封しないと判定してもよい。この場合、情報処理装置100は、ユーザU3がプッシュ通知を開封しないことを示す情報を記憶部120(図3参照)へ格納したり、部分エリアLC2−1においてプッシュ通知が1回行われることを示す情報を予測情報記憶部126(図8参照)に格納したりしてもよい。
また、例えば、情報処理装置100は、ユーザU4のユーザ情報やユーザU4の環境情報等のコンテキスト情報をモデルM11に入力することにより、ユーザU4がプッシュ通知を開封するかを予測してもよい。例えば、情報処理装置100は、ユーザU4の位置情報や行動情報等を含む種々の情報をモデルM11に入力し、モデルM11が所定の閾値以上のスコアを出力した場合、ユーザU4がプッシュ通知を開封すると判定してもよい。この場合、情報処理装置100は、ユーザU4がプッシュ通知を開封することを示す情報を記憶部120へ格納したり、部分エリアLC2−2においてプッシュ通知が1回行われ、開封されることを示す情報を予測情報記憶部126(図8参照)に格納したりしてもよい。
例えば、情報処理装置100は、所定の時間帯にBエリアに位置するユーザを対象として、予測情報を生成してもよい。例えば、情報処理装置100は、朝の時間帯(6時〜10時)にBエリアに位置するユーザを対象として、朝のBエリアに対応する予測情報を生成してもよい。例えば、情報処理装置100は、夜の時間帯(19時〜23時)にBエリアに位置するユーザを対象として、夜のBエリアに対応する予測情報を生成してもよい。
上述のように、情報処理装置100は、モデルM11と、種々の情報に基づいてBエリアに関する予測情報を生成する。例えば、情報処理装置100は、Bエリアを予測対象エリアとする予測情報を予測情報記憶部126に記憶する。
図8中の予測情報記憶部126に示す「予測対象エリア」は、予測情報を生成する対象となったエリアを示す。また、図8中の予測情報記憶部126に示す「予測情報」は、予測対象エリアについて生成された予測情報を示す。図8中の予測情報記憶部126に示す「部分エリア」は、予測対象エリア内の部分エリアを示す。図8中の予測情報記憶部126に示す「プッシュ回数」は、予測情報の生成において、対応する部分エリアに位置するユーザにプッシュ通知が行われると予測された回数を示す。また、図8中の予測情報記憶部126に示す「開封回数」は、予測情報の生成において、対応する部分エリアに位置するユーザによってプッシュ通知の開封が行われると予測された回数を示す。また、図8中の予測情報記憶部126に示す「開封率(%)」は、予測情報の生成において、対応する部分エリアに位置するユーザがプッシュ通知を開封すると予測される割合(=開封回数/プッシュ回数×100)を示す。例えば、「開封率(%)」は、0〜100(%)の値となる。例えば、情報処理装置100は、ユーザの開封率を算出する。
例えば、図8中の予測情報記憶部126に示す例において、予測対象エリア「Bエリア」についての予測情報は、Bエリア内の部分エリアLC2−1に位置するユーザに「2000(回)」のプッシュ通知が行われると予測されることを示す。また、例えば、Bエリア内の部分エリアLC2−1に位置するユーザがプッシュ通知を「40(回)」開封すると予測されることを示す。また、例えば、Bエリア内の部分エリアLC2−1に位置するユーザの開封率が、2千回の通知のうち、40回開封されると予測されるため、「2(%)」であることを示す。例えば、情報処理装置100は、部分エリアLC2−1に位置するユーザの開封率を、「2%(=40/2000*100)」と算出する。
図11の例では、情報処理装置100は、Bエリアを予測対象エリアとする予測情報PM11を生成する。図11中のマップ情報MP1−3のBエリアに示す予測情報PM11は、各部分エリアにおける開封率の高低をヒートマップのような表示態様で示す。図11の例では、ハッチングが濃い部分エリア程、予測される開封率の高いことを示す。図11の例では、予測情報PM11は、Bエリア中の右下の部分エリア等において開封率の高いことを示す。図11の例では、予測情報PM11は、Bエリア中の部分エリアLC2−2等において開封率のやや高いことを示す。また、図11の例では、予測情報PM11は、Bエリア中の部分エリアLC2−1等において開封率の低いことを示す。すなわち、Bエリアにおいては、その右下部分付近での開封率が高く、右下から離れるにつれて開封率が低下することを示す。
このように、情報処理装置100は、プッシュ通知の実績が不十分なBエリアについてプッシュ通知の開封率を予測する予測情報を生成する。これにより、情報処理装置100は、プッシュ通知の実績が不十分なBエリアについてもプッシュ通知に関する種々のサービスを精度よく行うことが可能となる。例えば、情報処理装置100は、人口が多いエリア等の情報が収集容易な地点については、そのエリアの情報を用いて分布情報を生成することが可能である。一方、情報処理装置100は、人口が少ない等の理由により取得可能な情報量が十分でないエリアについては、そのエリアの情報を用いて分布情報を生成することが難しい。そのため、情報処理装置100は、情報が十分なエリアの情報を用いて、情報が不十分なエリアの予測情報を生成することにより、情報が不十分なエリアについても所望の予測が可能となる。このように、情報処理装置100は、実績が十分に取得可能な所定のエリアの情報に基づいて、実績が不十分な取得可能な他のエリアにおけるユーザの所定の操作の有無を予測可能にすることができる。また、例えば、情報処理装置100は、特定のPOIが位置する周辺は開封率が高い傾向にあることを示す予測情報を生成することができる。例えば、情報処理装置100は、特定の属性のユーザが多いエリアは開封率が高い傾向にあることを示す予測情報等を生成することができる。また、例えば、情報処理装置100は、同じ位置であっても、時間帯に応じて予測情報を生成することにより、所定のイベントが行われるタイミングで開封率が高くなることを示す予測情報等を生成することができる。
上述のように情報処理装置100が生成する予測情報に基づいて、種々の予測が可能となる。例えば、情報処理装置100が位置(エリア等)及び時間(時間帯等)に基づく予測情報を生成することにより、生成された予測情報により、あるエリアにおいて開封率が高くなるタイミングが予測可能となる。例えば、情報処理装置100が位置(エリア等)及び時間(時間帯等)に基づく予測情報を生成することにより、生成された予測情報により、バス停付近のエリアであって、かつ、学生が集まるタイミングで、そのバス停付近での開封率が高くなること等が予測可能となる。また、情報処理装置100が位置(エリア等)及び時間(時間帯等)に基づく予測情報を生成することにより、生成された予測情報により、バス停付近のエリアであって、かつ、学生が集まるタイミング、かつバスが来る直前で、そのバス停付近での開封率が高くなること等が予測可能となる。
また、例えば、情報処理装置100が位置(エリア等)及び時間(時間帯等)に基づく予測情報を生成することにより、生成された予測情報により、重要なレースが開催される競馬場付近のエリアであって、かつ、重要なレースが出走するタイミングで、その競馬場付近での開封率が高くなること等が予測可能となる。また、例えば、情報処理装置100が位置(エリア等)及び時間(時間帯等)に基づく予測情報を生成することにより、生成された予測情報により、重要なレースが開催される競馬場付近のエリアであって、かつ、重要なレースが出走前の所定のタイミング(例えば、出走前20分等)で、その競馬場付近での開封率が高くなること等が予測可能となる。また、情報処理装置100は、このような予測情報を用いて、エリアにおいて開封率が高くなる時間帯でのそのエリアにおける広告配信については、他の時間帯よりも料金を高くしてもよい。また、例えば、情報処理装置100は、このような予測情報を用いて、エリアにおいて開封率が高くなる時間帯でのそのエリアに位置する端末装置10に配信するコンテンツ中の広告枠への表示単価を、他の時間帯よりも高くしてもよい。なお、上記は一例であり、情報処理装置100は、予測情報を種々のサービスに利用してもよい。
例えば、情報処理装置100は、生成した予測情報に基づいて、プッシュ通知を行ってもよい。例えば、情報処理装置100は、予測情報PM11中のハッチングが濃い部分(Bエリア中の右下)に位置するユーザに対して、プッシュ通知を行ってもよい。また、例えば、情報処理装置100は、生成した予測情報を外部の情報処理装置へ提供してもよい。例えば、情報処理装置100は、コンテンツ提供サービスを行う外部装置へ予測情報を提供してもよい。
〔1−1−1.シミュレーションによる予測情報の生成〕
上述したように、情報処理装置100は、予測対象エリアであるBエリアに位置するユーザの行動情報や周囲の環境情報等のコンテキスト情報と、モデルM11とに基づいて予測情報を生成する場合を示したが、所定のシミュレーションにより予測情報を生成してもよい。この場合、情報処理装置100の記憶部120には、仮想空間に関する情報等の所定のシミュレータに関する各種情報が格納されたシミュレータ情報記憶部(図示省略)が含まれてもよい。例えば、情報処理装置100は、Bエリアにおける人流やBエリアの特長のコンテキスト情報を反映した仮想空間上のBエリアに基づいて予測情報を生成してもよい。
また、情報処理装置100のモデル情報記憶部125には、シミュレーションにおいてエージェントに適用されるモデル(以下、「エージェントモデル」ともいう)が格納されてもよい。例えば、情報処理装置100は、シミュレーションにおいてエージェントに適用するモデルを生成してもよい。例えば、情報処理装置100は、ユーザの行動情報に基づいてモデルを生成する。例えば、情報処理装置100は、Aエリアにおけるユーザの行動情報に基づいて、エージェントモデルを生成してもよい。例えば、情報処理装置100は、ユーザの行動情報に基づいて、各属性に応じたエージェントモデルを生成する。例えば、情報処理装置100は、ユーザの行動情報に基づいて、20代男性のエージェントモデルや20代女性のエージェントモデル等の種々のエージェントモデルを生成してもよい。例えば、情報処理装置100は、オープンデータ等の種々の環境情報を加味して、エージェントモデルを生成してもよい。例えば、情報処理装置100は、生成したエージェントモデルをモデル情報記憶部125に記憶してもよい。
例えば、情報処理装置100がシミュレータ情報記憶部に記憶された仮想空間に関する情報等の所定のシミュレータに関する各種情報を用いて、所定のシミュレータにおけるエージェントの行動に関するシミュレーション情報(シミュレーションログ)を生成してもよい。例えば、情報処理装置100は、モデル情報記憶部125に記憶されたエージェントモデルをエージェントに割り当て、プッシュ通知やその開封に関するシミュレーションを行うことによりシミュレーション情報(シミュレーションログ)を生成してもよい。また、情報処理装置100は、生成したシミュレーション情報に基づいて、予測情報を生成してもよい。
例えば、情報処理装置100は、予測対象エリアであるBエリアにおけるユーザ(人間)の行動をシミュレーションしてシミュレーションログを生成してもよい。例えば、Bエリアにおける実際のユーザへのプッシュ通知の回数が不足している等の理由により、Bエリアにおけるプッシュ通知の開封率を予測するために、シミュレーションに基づいて予測情報を生成してもよい。
例えば、情報処理装置100は、各エージェントに適用するエージェントモデルを決定する。例えば、情報処理装置100は、Bエリアの環境情報EDに含まれるBエリアの人口構成等に関する情報に基づいて、各エージェントに適用するエージェントモデルを決定してもよい。例えば、情報処理装置100は、属性情報として年齢及び性別に関するBエリアの人口構成に基づいて、各エージェントに適用するエージェントモデルを決定してもよい。なお、人口構成に用いる属性情報は年齢や性別に限らず、種々の属性情報が用いられてもよい。
以下の例では、Bエリアの人口構成は20代男性が多いものとする。例えば、情報処理装置100は、Bエリアにおける人間の数(人口等)だけエージェントを生成する。図11の例では、情報処理装置100は、Bエリアにおける人口が5万人であり、5万のエージェントを生成するものとする。例えば、情報処理装置100は、Aエリアにおける人口構成を反映するように5万のエージェントに属性を割り当てる。例えば、情報処理装置100は、Bエリアにおける20代男性の割合が50%である場合、2万5千のエージェントに20代男性の属性を割り当てる。また、例えば、情報処理装置100は、Bエリアにおける20代女性の割合が20%である場合、1万のエージェントに20代女性の属性を割り当てる。
例えば、情報処理装置100は、20代男性の属性のエージェントには、20代男性に対応するエージェントモデルを適用する。例えば、情報処理装置100は、20代男性の属性が割り当てられた2万5千のエージェントには、20代男性に対応するエージェントモデルを適用する。また、例えば、情報処理装置100は、20代女性の属性が割り当てられた1万のエージェントには、20代女性に対応するエージェントモデルを適用する。
例えば、情報処理装置100は、エージェントモデルを適用したエージェントによりシミュレーションを行う。例えば、Bエリアに対応する仮想空間に適用された各エージェントは、各自に割り当てられたエージェントモデルに応じて行動を行う。例えば、20代男性に対応するエージェントモデルが適用されたエージェントは、所定のタイミングでプッシュ通知がされた場合、その時点のBエリアにおける位置や状況等のコンテキストに応じて、プッシュ通知を開封するかどうかを決定する。また、例えば、20代女性に対応するエージェントモデルが適用されたエージェントは、所定のタイミングでプッシュ通知がされた場合、その時点のBエリアにおける位置や状況等のコンテキストに応じて、プッシュ通知を開封するかどうかを決定する。
このように、情報処理装置100は、Bエリアに対応する仮想空間において各エージェントに行動を行わせることにより、シミュレーションログを生成する。例えば、情報処理装置100は、生成したシミュレーションログを記憶部120に格納してもよい。例えば、情報処理装置100は、生成したシミュレーションログに基づいて予測情報を生成する。例えば、情報処理装置100は、Bエリアに対応するシミュレーションログに基づいて、Bエリアを予測対象エリアとする予測情報(図11中の予測情報PM11等)を生成する。
〔1−2.モデルの生成について〕
情報処理装置100は、上記に限らず種々の方法によりモデルを生成してもよい。例えば、情報処理装置100は、生成したモデルの情報を用いて、モデルを生成(更新)してもよい。情報処理装置100は、生成したモデルの情報をフィードバックして、モデルを生成(更新)してもよい。例えば、情報処理装置100は、生成したモデルの情報を制約条件として用いることにより、モデルを生成(更新)してもよい。例えば、情報処理装置100は、生成したモデルの情報のうち、所定の条件を満たす特徴量を制約条件として、モデルを生成(更新)してもよい。
例えば、情報処理装置100は、生成したモデルの情報のうち、重みの絶対値が所定の閾値(例えば0.01や0.001等)以下である特徴量を除いた特徴量を含むモデルを生成(更新)してもよい。例えば、情報処理装置100は、生成したモデルM1のうち、重みの絶対値が0.00001であり、所定の閾値(0.001)以下である特徴量(特徴量#X)を除いてモデルM1を生成(更新)してもよい。例えば、情報処理装置100は、特徴量#Xが要素「サッカー場」及び「きゅうり」の組合せに対応する場合、関係性の低い要素の組合せに対応する特徴量を除外することにより、モデルM1をより適切に生成(更新)することができる。
〔2.情報処理装置の構成〕
次に、図3を用いて、実施形態に係る情報処理装置100の構成について説明する。図3は、実施形態に係る情報処理装置の構成例を示す図である。図3に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130とを有する。なお、情報処理装置100は、情報処理装置100の管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
(通信部110)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワーク(例えば図2中のネットワークN)と有線または無線で接続され、端末装置10との間で情報の送受信を行う。
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。実施形態に係る記憶部120は、図3に示すように、オープンデータ記憶部121と、ユーザ情報記憶部122と、行動情報記憶部123と、分布情報記憶部124と、モデル情報記憶部125と、予測情報記憶部126と、関係度情報記憶部127とを有する。
また、図示することは省略するが、オープンデータ記憶部121には、種々のオープンデータが記憶される。例えば、オープンデータ記憶部121には、工事や渋滞等の道路情報等の交通に関する情報や、天気や気温等の気象に関する情報や、家計や消費等の経済に関する情報等を含むオープンデータが記憶されてもよい。
また、図示することは省略するが、記憶部120には、コンテンツCT11等のコンテンツ情報を記憶するコンテンツ情報記憶部が含まれる。コンテンツ情報記憶部は、コンテンツを識別する情報(コンテンツID等)に対応付けて各コンテンツの内容に示すタグ情報(例えば、サッカー、きゅうり等)を記憶する。コンテンツ情報記憶部には、コンテンツCT11等のコンテンツ自体やコンテンツCT11等のコンテンツのカテゴリ(例えば、スポーツ、芸能等)を示す情報などの種々のコンテンツに関する情報が記憶される。また、図示することは省略するが、記憶部120には、店舗やスタジアム等の各POIの施設名や施設の位置やエリア等を記憶するPOI情報記憶部が含まれる。POI情報記憶部は、各POIを識別する情報(POIのID等)に対応付けて各POIのカテゴリ等の種々の情報を記憶する。
(ユーザ情報記憶部122)
実施形態に係るユーザ情報記憶部122は、ユーザに関する各種情報を記憶する。例えば、ユーザ情報記憶部122は、ユーザ属性に関する各種情報やユーザの行動に関する各種情報を記憶する。図4は、実施形態に係るユーザ情報記憶部の一例を示す図である。図4に示すユーザ情報記憶部122は、「ユーザID」、「年齢」、「性別」、「自宅」、「勤務地」、「興味」、「位置情報」といった項目が含まれる。
「ユーザID」は、ユーザを識別するための識別情報を示す。また、「年齢」は、ユーザIDにより識別されるユーザの年齢を示す。なお、「年齢」は、例えば35歳など、ユーザIDにより識別されるユーザの具体的な年齢であってもよい。また、「性別」は、ユーザIDにより識別されるユーザの性別を示す。
また、「自宅」は、ユーザIDにより識別されるユーザの自宅の位置情報を示す。なお、図4に示す例では、「自宅」は、「LC11」といった抽象的な符号を図示するが、緯度や経度を示す情報であってもよい。また、例えば、「自宅」は、地域名や住所であってもよい。
また、「勤務地」は、ユーザIDにより識別されるユーザの勤務地の位置情報を示す。なお、図4に示す例では、「勤務地」は、「LC12」といった抽象的な符号を図示するが、緯度や経度を示す情報であってもよい。また、例えば、「勤務地」は、地域名や住所であってもよい。
また、「興味」は、ユーザIDにより識別されるユーザの興味を示す。すなわち、「興味」は、ユーザIDにより識別されるユーザが関心の高い対象を示す。なお、図4に示す例では、「興味」は、各ユーザに1つずつ図示するが、複数であってもよい。
また、「位置情報」は、所定の日時(例えば予測情報の生成時)におけるユーザの位置情報を示す。例えば、「位置情報」は、所定の日時(例えば予測情報の生成時)の前に取得された最新のユーザの位置情報を示す。なお、図4の例では「位置情報」を抽象的な符号「LC1−1」等で図示するが、「位置情報」には、具体的な緯度経度情報等が記憶されてもよい。
例えば、図4に示す例において、ユーザID「U1」により識別されるユーザの年齢は、「20代」であり、性別は、「男性」であることを示す。また、例えば、ユーザID「U1」により識別されるユーザは、自宅が「LC11」であることを示す。また、例えば、ユーザID「U1」により識別されるユーザは、勤務地が「LC12」であることを示す。また、例えば、ユーザID「U1」により識別されるユーザは、「経済」に興味があることを示す。例えば、ユーザU1については、Aエリアの部分エリアLC1−1内に位置したことを示す位置情報が所定の日時の前に最後に取得された位置情報、すなわち最新の位置情報であることを示す。
なお、ユーザ情報記憶部122は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、ユーザ情報記憶部122は、ユーザの属性情報として、年齢や性別に加えて他のデモグラフィック属性情報やサイコグラフィック属性情報を記憶してもよい。例えば、ユーザ情報記憶部122は、氏名、家族構成、収入等の情報を記憶してもよい。
(行動情報記憶部123)
実施形態に係る行動情報記憶部123は、ユーザの行動に関する各種情報を記憶する。図5は、実施形態に係る行動情報記憶部の一例を示す図である。例えば、行動情報記憶部123は、各ユーザの端末装置10に提供したコンテンツに対するユーザの行動情報を記憶する。図5に示す行動情報記憶部123には、「ユーザID」、「行動ID」、「種別」、「内容」、「日時」、「位置」といった項目が含まれる。なお、ユーザの行動には、ユーザが能動的に行った行動に限らず、ユーザに対して行われた行動、すなわちユーザが受動的な行動等の種々の行動が含まれてもよい。
「ユーザID」は、ユーザを識別するための識別情報を示す。例えば、ユーザID「U1」により識別されるユーザは、図1の例に示したユーザU1に対応する。また、「行動ID」は、ユーザの行動を識別する情報を示す。また、「種別」は、対応するユーザの行動の種別に関する情報を示す。また、「内容」は、対応するユーザの行動において対象となった内容を示す。「日時」は、対応するユーザの行動が行われた日時を示す。「日時」には、「dt11」等のように抽象的に図示するが、「2018年9月13日22時31分52秒」等の具体的な日時が記憶されてもよい。
また、「位置」は、ユーザの行動に対応するユーザの位置情報を示す。例えば、「位置」は、ユーザの行動情報が取得された際のユーザの位置情報を示す。なお、図5の例では「位置」を抽象的な符号「LC1−1」等で図示するが、「位置情報」には、具体的な緯度経度情報等が記憶されてもよい。また、「位置情報」には、店舗やスタジアム等の施設名を示すPOI(関心地点)名やエリア等が含まれてもよい。
例えば、図5の例では、ユーザID「U1」により識別されるユーザ(ユーザU1)は、行動ID「AC11」により識別される行動(行動AC11)や行動ID「AC12」により識別される行動(行動AC12)等を行ったことを示す。具体的には、図5の例では、日時dt11に部分エリアLC1−1内に位置するユーザU1について、コンテンツCT11の通知(行動AC11)が行われたことを示す。例えば、行動AC11は、日時dt11にコンテンツCT11がユーザU1が利用する端末装置10にプッシュ通知により提供されたことを示す。また、図5の例ではユーザU1は、日時dt11においてコンテンツCT11がプッシュ通知された後の日時dt12において、部分エリアLC1−1内でコンテンツCT11を開封する操作(行動AC12)を行ったことを示す。また、図5の例ではユーザU1は、時間RTM1(例えば5分や10分等)の間、コンテンツCT11の閲覧(行動AC13)を行ったことを示す。例えば、ユーザU1は、日時dt12から日時dt13までの間の時間RTM1に亘って、部分エリアLC1−1内でコンテンツCT11の閲覧(行動AC13)を行ったことを示す。
なお、行動情報記憶部123は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、行動情報記憶部123は、各行動情報が取得された際のユーザの位置情報を各行動情報に対応付けて記憶してもよい。また、図5では、ユーザIDごとに行動情報が行動情報記憶部123に記憶される場合を示したが、行動情報は、ユーザIDごとに限らず、例えば時刻順に記憶されてもよい。
(分布情報記憶部124)
実施形態に係る分布情報記憶部124は、分布に関する各種情報を記憶する。図6は、実施形態に係る分布情報記憶部の一例を示す図である。例えば、分布情報記憶部124は、各集計対象エリアの分布情報を記憶する。図6に示す分布情報記憶部124には、「集計対象エリア」、「分布情報」といった項目が含まれる。「分布情報」には、「部分エリア」、「プッシュ回数」、「開封回数」、「開封率(%)」といった項目が含まれる。
「集計対象エリア」は、分布情報を収集する対象となったエリアを示す。また、「分布情報」は、集計対象エリアについて収集された分布情報を示す。「部分エリア」は、集計対象エリア内の部分エリアを示す。「プッシュ回数」は、対応する部分エリアに位置するユーザにプッシュ通知が行われた回数を示す。また、「開封回数」は、対応する部分エリアに位置するユーザがプッシュ通知を開封した回数を示す。また、「開封率(%)」は、対応する部分エリアに位置するユーザがプッシュ通知を開封した割合(=開封回数/プッシュ回数×100)を示す。例えば、「開封率(%)」は、0〜100(%)の値となる。
例えば、図6に示す例において、集計対象エリア「Aエリア」について分布情報が収集されたことを示す。集計対象エリア「Aエリア」は、図11中のエリアAR11に対応する。例えば、集計対象エリア「Aエリア」内の部分エリアLC1−1に位置するユーザに「10000(回)」のプッシュ通知が行われたことを示す。また、例えば、集計対象エリア「Aエリア」内の部分エリアLC1−1に位置するユーザがプッシュ通知を「2000(回)」開封したことを示す。また、例えば、集計対象エリア「Aエリア」内の部分エリアLC1−1に位置するユーザの開封率が、1万回の通知のうち、2千回開封されているため、「20(%)」であることを示す。
なお、分布情報記憶部124は、上記に限らず、目的に応じて種々の情報を記憶してもよい。
(モデル情報記憶部125)
実施形態に係るモデル情報記憶部125は、モデルに関する情報を記憶する。例えば、モデル情報記憶部125は、予測情報の生成に用いるモデル情報を記憶する。図7は、実施形態に係るモデル情報記憶部の一例を示す図である。図7に示すモデル情報記憶部125は、モデル情報として、モデルM1等に対応させて「特徴量#1(5分前にプラス感情×30代×男性)」〜「特徴量#3(5分前にプラス感情×20代×男性)」等といった項目を有する。
例えば、図7に示す例において、モデルM1に関するモデル情報は、5分前にプラス感情、30代及び男性の組合せに対応する特徴量#1の重みが「0.5」、5分前にプラス感情、30代及び女性の組合せに対応する特徴量#2の重みが「−0.1」、5分前にプラス感情、20代及び男性の組合せに対応する特徴量#3の重みが「0.2」等であることを示す。例えば、モデルの素性(特徴量)がm次元のベクトルで表現される場合、特徴量数(素性数)はm個になり、特徴量##1〜特徴量#mの重みが記憶される。例えば、各特徴量の重みは、実数であり、マイナス値であってもよい。
なお、モデル情報記憶部125は、上記に限らず、目的に応じて種々のモデル情報を記憶してもよい。例えば、モデル情報記憶部125は、確率モデル等の種々のモデル情報が記憶されてもよい。
(予測情報記憶部126)
実施形態に係る予測情報記憶部126は、予測に関する各種情報を記憶する。例えば、予測情報記憶部126は、予測に関する各種情報や予測により生成される各種情報を記憶する。図8は、実施形態に係る予測情報記憶部の一例を示す図である。図8に示す予測情報記憶部126は、「予測対象エリア」、「予測情報」といった項目が含まれる。「予測情報」には、「部分エリア」、「プッシュ回数」、「開封回数」、「開封率(%)」といった項目が含まれる。
「予測対象エリア」は、予測情報を生成する対象となったエリアを示す。また、「予測情報」は、予測対象エリアについて生成された予測情報を示す。「部分エリア」は、予測対象エリア内の部分エリアを示す。「プッシュ回数」は、予測情報の生成において、対応する部分エリアに位置するユーザにプッシュ通知が行われると予測された回数を示す。また、「開封回数」は、予測情報の生成において、対応する部分エリアに位置するユーザによってプッシュ通知の開封が行われると予測された回数を示す。また、「開封率(%)」は、予測情報の生成において、対応する部分エリアに位置するユーザがプッシュ通知を開封すると予測される割合(=開封回数/プッシュ回数×100)を示す。例えば、「開封率(%)」は、0〜100(%)の値となる。
例えば、図8に示す例において、予測対象エリア「Bエリア」について予測情報が生成されたことを示す。予測対象エリア「Bエリア」は、図11中のエリアAR21に対応する。例えば、予測対象エリア「Bエリア」内の部分エリアLC2−1に位置するユーザに「2000(回)」のプッシュ通知が行われると予測されることを示す。また、例えば、予測対象エリア「Bエリア」内の部分エリアLC2−1に位置するユーザがプッシュ通知を「40(回)」開封すると予測されることを示す。また、例えば、予測対象エリア「Bエリア」内の部分エリアLC2−1に位置するユーザの開封率が、2千回の通知のうち、40回開封されると予測されるため、「2(%)」であることを示す。
なお、予測情報記憶部126は、上記に限らず、目的に応じて種々の情報を記憶してもよい。
(関係度情報記憶部127)
実施形態に係る関係度情報記憶部127は、ユーザの所定の行動に関係する要素に関する各種情報を記憶する。例えば、関係度情報記憶部127は、ユーザの所定の行動を予測するモデルの特徴量のうち、ユーザの所定の行動に関係する特徴量に関する各種情報を記憶する。図9は、実施形態に係る関係度情報記憶部の一例を示す図である。図9に示す関係度情報記憶部127は、「対象行動」、「順位」、「関係情報ID」、「重み」、「要素#1」、「要素#2」、「要素#3」といった項目が含まれる。関係度情報記憶部127には、「要素#1」〜「要素#3」に限らず、「要素#4」、「要素#5」等、特徴量に対応する要素の数に応じた項目が含まれる。
「対象行動」は、対象とするユーザの所定の行動を示す。また、「順位」は、各関係情報の対象行動との関係の度合いの順位(ランキング)を示す。図9の例では、「順位」は、各関係情報の重みの絶対値が大きい程、高い順位(ランキング)が割り当てられる場合を示す。「関係情報ID」は、関係情報を識別するための情報を示す。「重み」は、関係情報に対応する特徴量の重みを示す。「要素#1」〜「要素#3」等は、関係情報に対応する特徴量の要素を示す。
図9に示す例では、対象行動がユーザのコンテンツに対する行動であることを示す。例えば、対象行動がユーザのコンテンツ開封等の行動であることを示す。また、関係情報ID「ST1」により識別される関係情報(関係情報ST1)は、重みが「0.5」の特徴量に対応し、要素#1が「5分前にプラス感情」であり、要素#2が「30代」であり、要素#3が「男性」であることを示す。すなわち、関係情報ST1は、モデルM1の特徴量#1に対応する。
なお、関係度情報記憶部127は、上記に限らず、目的に応じて種々の情報を記憶してもよい。
(制御部130)
図3の説明に戻って、制御部130は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラム(決定プログラムや情報処理プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
図3に示すように、制御部130は、取得部131と、決定部132と、生成部133と、提供部134とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図3に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
(取得部131)
取得部131は、各種情報を取得する。取得部131は、端末装置10等の外部装置から各種情報を取得する。取得部131は、記憶部120から各種情報を取得する。取得部131は、外部の情報処理装置から各種情報を取得する。取得部131は、オープンデータ記憶部121やユーザ情報記憶部122や行動情報記憶部123や分布情報記憶部124やモデル情報記憶部125や予測情報記憶部126や関係度情報記憶部127から各種情報を取得する。取得部131は、所定のユーザの行動情報を取得する。取得部131は、オープンデータに関する情報を取得する。取得部131は、端末装置10から位置情報等の行動情報を取得する。
取得部131は、コンテンツの配信時点とは異なる他の時点に関するコンテキストの各要素と、コンテンツに対する第1ユーザの所定の行動との関係度合いを示す関係度情報を取得する。取得部131は、所定のエリアに位置する第1ユーザの所定の行動に関する他の行動情報に基づいて生成された関係度情報と、所定のエリア以外とは異なる他のエリアに位置する第2ユーザの行動情報を取得する。
取得部131は、各要素に対応する各特徴量を含むモデルであって、コンテキストのコンテキスト情報に基づいて、コンテンツに対するユーザの所定の行動の予測に用いるモデルを取得する。取得部131は、コンテキスト情報の入力に応じて、コンテンツに対するユーザの所定の行動に関するスコアを出力するモデルを取得する。取得部131は、ユーザに配信されたコンテンツに対する、ユーザの所定の行動に関する行動情報である正解情報と、コンテキスト情報に基づいて生成されたモデルを取得する。取得部131は、他の時点におけるユーザの感情を含む各要素と、コンテンツに対する第1ユーザの所定の行動との関係度合いを示す関係度情報を取得する。取得部131は、コンテンツの配信時点よりも前の時点である他の時点におけるユーザの感情を含む各要素と、コンテンツに対する第1ユーザの所定の行動との関係度合いを示す関係度情報を取得する。
取得部131は、所定のエリアに位置するユーザが利用する端末装置10に配信されたコンテンツに対する、当該ユーザの所定の操作の有無を示す操作情報等の行動情報を取得する。取得部131は、所定のエリアに位置するユーザが利用する端末装置においてプッシュ通知されたコンテンツに対する、当該ユーザの所定の操作の有無を示す操作情報等の行動情報を取得する。取得部131は、所定のエリアに位置するユーザが利用する端末装置においてプッシュ通知されたコンテンツに対する、当該ユーザによる開封操作の有無を示す操作情報等の行動情報を取得する。
取得部131は、所定のエリア内においてプッシュ通知されたコンテンツに対して、ユーザが所定の操作を行った際の当該ユーザの位置情報が対応付けられた操作情報等の行動情報を取得する。取得部131は、所定のエリア内においてプッシュ通知されたコンテンツに対して、ユーザが所定の操作を行った際の時間情報が対応付けられた操作情報等の行動情報を取得する。取得部131は、所定のエリア内においてプッシュ通知されたコンテンツに対して、ユーザが所定の操作を行った際のコンテキスト情報が対応付けられた操作情報等の行動情報を取得する。取得部131は、所定のエリア内においてプッシュ通知されたコンテンツに対して、ユーザが所定の操作を行った際の所定のエリアに関する環境情報が対応付けられた操作情報等の行動情報を取得する。
図1の例では、取得部131は、あるユーザが利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザにより開封されたことを示す情報を取得する。取得部131は、Aエリアに位置するユーザU1が利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザU1により開封されたことを示す情報を取得する。取得部131は、Aエリアの部分エリアLC1−1内に位置するユーザU1が利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザU1により開封されたことを示す情報を取得する。
取得部131は、通知されたコンテンツ(コンテンツCT11)が開封後に、ユーザにより時間RTM1の間閲覧されたことを示す情報を取得する。取得部131は、ステップS1−1で通知されたコンテンツが開封後に、ユーザの端末装置10に時間RTM1の間表示されたことを示す情報を取得してもよい。
取得部131は、あるユーザが利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザにより開封されなかったことを示す情報を取得する。取得部131は、Aエリアに位置するユーザU2が利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザU2により開封されなかったことを示す情報を取得する。取得部131は、Aエリアの部分エリアLC1−2内に位置するユーザU2が利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザU2により開封されなかったことを示す情報を取得する。
取得部131は、ユーザU3が利用する端末装置10に所定のコンテンツがプッシュ通知され、ユーザU3により開封されたことを示す情報を取得する。取得部131は、Xエリアに位置するユーザU3がプッシュ通知された所定のコンテンツ(例えばコンテンツCT11等)を開封したことを示す行動情報を取得する。
取得部131は、予測対象エリアのオープンデータを取得する。図11の例では、取得部131は、Bエリアの環境情報EDを取得する。取得部131は、オープンデータ記憶部121(図3参照)からBエリアの環境情報等の種々の情報を取得してもよい。
また、取得部131は、予測対象エリアに位置するユーザ情報を取得する。図11の例では、取得部131は、Bエリアのユーザ情報UDを取得する。取得部131は、ユーザ情報記憶部122(図4参照)に示すようなユーザ情報や行動情報記憶部123(図5参照)に示すようなユーザの行動情報を取得する。
(決定部132)
決定部132は、各種情報を決定する。決定部132は、各種情報を判定する。決定部132は、記憶部120に記憶された各種情報に基づいて、種々の情報を決定する。決定部132は、記憶部120に記憶された各種情報に基づいて、種々の情報を判定する。決定部132は、オープンデータ記憶部121やユーザ情報記憶部122や行動情報記憶部123や分布情報記憶部124やモデル情報記憶部125や予測情報記憶部126や関係度情報記憶部127等に基づいて、各種情報を決定する。決定部132は、オープンデータ記憶部121やユーザ情報記憶部122や行動情報記憶部123や分布情報記憶部124やモデル情報記憶部125や予測情報記憶部126や関係度情報記憶部127等に基づいて、各種情報を判定する。決定部132は、取得部131により取得された各種情報に基づいて、種々の情報を決定する。決定部132は、取得部131により取得された各種情報に基づいて、種々の情報を判定する。決定部132は、生成部133により生成された各種情報に基づいて、種々の情報を決定する。決定部132は、生成部133により生成された各種情報に基づいて、種々の情報を判定する。決定部132は、予測情報の生成に用いるモデルを決定する。図11の例では、決定部132は、予測情報の生成に用いるモデルをモデルM11に決定する。
図1の例では、決定部132は、2以上の要素を組み合わせた特徴量を含むモデルを生成する。例えば、決定部132は、コンテキスト情報の要素を組み合わせた特徴量を決定する。例えば、決定部132は、コンテキスト情報の各カテゴリ間の要素を組み合わせた特徴量を決定する。
例えば、決定部132は、コンテキスト情報のうち、コンテンツ配信時点とは別の時点のコンテキストの第1要素に対応する要素群EL1と、第1要素とは異なる第2要素に対応する要素群EL2との各組み合わせに基づいて、モデルの特徴量を決定する。例えば、決定部132は、要素群EL1の第1要素と、要素群EL2の第2要素との各組合せを、モデルの特徴量に決定する。例えば、決定部132は、要素群EL1の第1要素である「5分前にプラス感情」や「1分前にマイナス感情」や「3分前に雨」等と、要素群EL2の第2要素である「30代」や「男性」や「サッカー場」等との各組合せを、モデルの特徴量に決定する。
決定部132は、5分前にプラス感情、30代及び男性の組合せに対応する特徴量#1や、5分前にプラス感情、30代及び女性の組合せに対応する特徴量#2や、5分前にプラス感情、20代及び男性の組合せに対応する特徴量#3等をモデルM1の特徴量に決定する。決定部132は、モデルM1の特徴量のうち、特徴量#1が重みの絶対値が最も大きいため、特徴量#1に対応する関係情報ST1の順位を1位に決定する。決定部132は、モデルM1の特徴量のうち、要素「1分前にマイナス感情」、「20代」及び「女性」の組合せに対応する特徴量が重みの絶対値が特徴量#1の次に大きいため、その特徴量に対応する関係情報ST2の順位を2位に決定する。
決定部132は、生成した関係度情報に基づいて、関係要素情報を生成する。決定部132は、関係要素情報を生成する対象となるユーザ(対象ユーザ)を決定する。決定部132は、Xエリアに位置するユーザU3を対象ユーザに決定する。決定部132は、Aエリア以外の他のエリアであるXエリアに位置する第2ユーザであるユーザU3を対象ユーザに決定する。
決定部132は、ユーザU3の行動が所定の基準を満たすかどうかを判定する。例えば、決定部132は、ユーザU3の行動情報とコンテンツを開封したことを条件とする所定の条件とを比較することにより、所定の基準を満たすかどうかを判定する。例えば、決定部132は、コンテンツが配信されたユーザの行動情報にそのコンテンツの開封の行動情報が含まれる場合、所定の基準を満たすと判定する。
決定部132は、ユーザ情報やユーザの位置する周囲の環境情報等を入力とし、入力に基づいてスコアをモデルM11が出力するスコアが所定の閾値(例えば、「0.5」等)以上である場合に、そのユーザがプッシュ通知されるコンテンツを開封すると判定してもよい。決定部132は、ユーザU3の位置情報や行動情報等を含む種々の情報をモデルM11に入力し、モデルM11が所定の閾値未満のスコアを出力した場合、ユーザU3がプッシュ通知を開封しないと判定してもよい。決定部132は、ユーザU4の位置情報や行動情報等を含む種々の情報をモデルM11に入力し、モデルM11が所定の閾値以上のスコアを出力した場合、ユーザU4がプッシュ通知を開封すると判定してもよい。
決定部132は、各エージェントに適用するエージェントモデルを決定する。決定部132は、Bエリアの環境情報EDに含まれるBエリアの人口構成等に関する情報に基づいて、各エージェントに適用するエージェントモデルを決定してもよい。決定部132は、属性情報として年齢及び性別に関するBエリアの人口構成に基づいて、各エージェントに適用するエージェントモデルを決定してもよい。
(生成部133)
生成部133は、各種情報を生成する。生成部133は、各種情報を推定する。生成部133は、各種情報を選択する。生成部133は、各種情報を抽出する。生成部133は、各種情報を算出する。生成部133は、記憶部120に記憶された各種情報に基づいて、種々の情報を推定する。生成部133は、記憶部120に記憶された各種情報に基づいて、種々の情報を選択する。生成部133は、記憶部120に記憶された各種情報に基づいて、種々の情報を抽出する。生成部133は、記憶部120に記憶された各種情報に基づいて、種々の情報を算出する。生成部133は、オープンデータ記憶部121やユーザ情報記憶部122や行動情報記憶部123や分布情報記憶部124やモデル情報記憶部125や予測情報記憶部126や関係度情報記憶部127等に基づいて、各種情報を推定する。生成部133は、オープンデータ記憶部121やユーザ情報記憶部122や行動情報記憶部123や分布情報記憶部124やモデル情報記憶部125や予測情報記憶部126や関係度情報記憶部127等に基づいて、各種情報を選択する。生成部133は、オープンデータ記憶部121やユーザ情報記憶部122や行動情報記憶部123や分布情報記憶部124やモデル情報記憶部125や予測情報記憶部126や関係度情報記憶部127等に基づいて、各種情報を抽出する。生成部133は、取得部131により取得された各種情報に基づいて、種々の情報を推定する。生成部133は、取得部131により取得された各種情報に基づいて、種々の情報を選択する。生成部133は、取得部131により取得された各種情報に基づいて、種々の情報を抽出する。生成部133は、取得部131により取得された情報を用いて、ユーザのコンテキストを推定する。
生成部133は、記憶部120に記憶される各種情報を生成する。生成部133は、分布情報記憶部124に記憶される分布情報を生成する。生成部133は、モデル情報記憶部125に記憶されるモデルを生成する。生成部133は、予測情報記憶部126に記憶される予測情報を生成する。
生成部133は、コンテンツが配信された第2ユーザの所定の行動に関する行動情報が取得された場合に、行動情報と、関係度情報とに基づいて、第2ユーザの所定の行動に関係する要素を示す関係要素情報を生成する。生成部133は、行動情報と、関係度情報とに基づいて、他のエリアにおける所定の行動に関係する要素を示す関係要素情報を生成する。
生成部133は、モデルに基づいて、関係要素情報を生成する。生成部133は、第2ユーザの行動情報が所定の条件を満たす場合、モデルに基づいて、関係要素情報を生成する。生成部133は、モデルにおける各特徴量の重みを示す関係度情報に基づいて、関係要素情報を生成する。生成部133は、モデルの各特徴量のうち、対応する重みが所定の条件を満たす特徴量を選択することにより、関係要素情報を生成する。生成部133は、モデルの各特徴量のうち、対応する重みの絶対値が所定の閾値以上である特徴量を選択することにより、関係要素情報を生成する。
図1の例では、生成部133は、モデル情報MDに示すようにモデルM1のモデル情報を生成する。例えば、生成部133は、モデル情報記憶部125(図7参照)に示すように、モデルM1を生成する。生成部133は、モデルM1の特徴量#1〜特徴量#3等の各特徴量の重みを学習することにより、モデルM1を生成する。
生成部133は、生成したモデルM1に基づいて、コンテンツに対するユーザの所定の行動との関係度合いを示す関係度情報を生成する。生成部133は、生成したモデルM1に基づいて、コンテンツに対するユーザの開封行動との関係度合いを示す関係度情報を生成する。生成部133は、生成したモデルM1に基づいて、コンテンツに対するユーザの閲覧行動との関係度合いを示す関係度情報を生成する。
例えば、生成部133は、モデルM1の各特徴量の重みに基づいて、コンテンツに対するユーザの所定の行動との関係度合いを示す関係度情報を生成する。例えば、生成部133は、モデルM1の特徴量のうち、重みの絶対値が大きい特徴量の順位が高くなるように、各特徴量に対応する関係情報が順位付けられた関係度情報を生成する。
図1の例では、生成部133は、モデル情報MDに示すようにモデルM1のモデル情報を生成する。例えば、生成部133は、モデル情報記憶部125(図7参照)に示すように、モデルM1を生成する。生成部133は、モデルM1の特徴量#1〜特徴量#3等の各特徴量の重みを学習することにより、モデルM1を生成する。
例えば、生成部133は、モデルM1の各特徴量の重みに基づいて、コンテンツに対するユーザの所定の行動との関係度合いを示す関係度情報を生成する。例えば、生成部133は、モデルM1の特徴量のうち、重みの絶対値が大きい特徴量の順位が高くなるように、各特徴量に対応する関係情報が順位付けられた関係度情報を生成する。
生成部133は、ユーザU3の行動が所定の基準を満たすと判定したため、関係要素情報を生成する。図1の例では、生成部133は、関係度情報記憶部127に記憶された情報を用いて、関係要素情報を生成する。生成部133は、関係度情報記憶部127に記憶された情報を用いて、ユーザU3によるコンテンツの開封に関する関係要素情報を生成する。例えば、生成部133は、ユーザ情報記憶部(図4参照)に記憶されたユーザU3の属性情報に基づいて、ユーザU3によるコンテンツの開封に関する関係要素情報を生成する。例えば、生成部133は、ユーザU3の属性情報である年齢「30代」及び性別「男性」に基づいて、ユーザU3によるコンテンツの開封に関する関係要素情報を生成する。
生成部133は、関係度情報記憶部127に記憶された関係情報のうち、要素に「30代」や「男性」が含まれる関係情報を選択する。例えば、生成部133は、要素に「30代」や「男性」が含まれる関係情報のうち、順位が高い方から所定数(例えば5や10)の関係情報を選択する。図1の例では、生成部133は、順位が高い方から順に、要素に「30代」や「男性」が含まれる関係情報ST1等を選択する。
生成部133は、Xエリアに位置する対象ユーザであるユーザU3の関係要素情報FINF1を生成する。図1の例では、生成部133は、ユーザU3のコンテンツの開封操作に基づいて、Xエリアに位置するユーザU3の5分前の感情がプラスの感情であり、6分前の感情がマイナスの感情であると推定されることを示す関係要素情報FINF1を生成する。
生成部133は、取得部131により取得された操作情報等の行動情報に基づいて、所定のエリアとは異なる他のエリアに位置するユーザが利用する端末装置10にコンテンツが配信される場合に、当該コンテンツに対する当該ユーザの所定の操作の有無を予測する予測情報を生成する。生成部133は、取得部131により取得された操作情報等の行動情報に基づいて、所定のエリアとは異なる他のエリアに位置するユーザが利用する端末装置にコンテンツがプッシュ通知される場合に、当該コンテンツに対する当該ユーザの所定の操作の有無を予測する予測情報を生成する。生成部133は、取得部131により取得された操作情報等の行動情報に基づいて、他のエリアに位置するユーザが利用する端末装置にコンテンツがプッシュ通知される場合に、当該コンテンツに対する当該ユーザの開封操作の有無を予測する予測情報を生成する。
生成部133は、操作情報等の行動情報に基づいて、他のエリア内においてプッシュ通知されるコンテンツに対してユーザが所定の操作を行う位置を予測する予測情報を生成する。生成部133は、操作情報等の行動情報に基づいて、他のエリア内においてプッシュ通知されるコンテンツに対してユーザが所定の操作を行う時間を予測する予測情報を生成する。
生成部133は、操作情報等の行動情報と、他のエリア内に位置するユーザのコンテキスト情報とに基づいて、他のエリア内においてプッシュ通知されるコンテンツに対するユーザの所定の操作の有無を予測する予測情報を生成する。生成部133は、操作情報等の行動情報と、他のエリア内に関する環境情報とに基づいて、他のエリア内においてプッシュ通知されるコンテンツに対するユーザの所定の操作の有無を予測する予測情報を生成する。
生成部133は、操作情報等の行動情報に基づいて、他のエリアにおいてプッシュ通知されるコンテンツに対して、所定の操作を行うユーザに関する分布を示す分布情報を予測情報として生成する。生成部133は、操作情報等の行動情報に基づいて、他のエリアにおいてプッシュ通知されるコンテンツに対して、所定の操作を行うユーザの他のエリアにおける分布を示す分布マップを予測情報として生成する。
生成部133は、プッシュ通知に関する操作情報等の行動情報に基づいて、分布情報を生成する。図11の例では、生成部133は、Aエリアを集計対象エリアとする分布情報DM11を生成する。生成部133は、プッシュ通知に関する操作情報等の行動情報に基づいて、予測情報を生成するために用いるモデルを生成する。生成部133は、Aエリアにおける操作情報等の行動情報に基づいて、プッシュ通知を開封するかどうかを予測するモデルを生成する。
生成部133は、オープンデータ記憶部121やユーザ情報記憶部122や行動情報記憶部123等に格納された各種情報に基づいて、プッシュ通知を開封するかどうかを予測するモデルを生成する。生成部133は、オープンデータ記憶部121に記憶されたAエリアの環境情報に基づいて、モデルを生成する。生成部133は、行動情報記憶部123に記憶されたAエリアに位置するユーザのユーザ情報に基づいて、モデルを生成する。生成部133は、ユーザ情報記憶部122に記憶されたAエリアに位置するユーザの行動情報に基づいて、モデルを生成する。生成部133は、ユーザにプッシュ通知されるコンテンツに関する情報を加味してモデルを生成してもよい。
生成部133は、プッシュ通知されるコンテンツが開封された場合の情報を正解情報(正例)として、プッシュ通知を開封するかどうかを予測するモデルを生成してもよい。生成部133は、プッシュ通知されるコンテンツが開封された場合のユーザのユーザ情報やユーザの位置情報やユーザの行動情報やユーザの環境情報等の種々のコンテキスト情報を正解情報として、プッシュ通知を開封するかどうかを予測するモデルを生成してもよい。生成部133は、ユーザU1が部分エリアLC1−1においてプッシュ通知されるコンテンツを開封した場合、ユーザU1のユーザ情報やユーザU1の位置情報やユーザU1の行動情報やユーザU1の環境情報等の種々のコンテキスト情報を正解情報として、プッシュ通知を開封するかどうかを予測するモデルを生成してもよい。
また、生成部133は、プッシュ通知されるコンテンツが開封されなかった場合の情報を不正解情報(負例)として、プッシュ通知を開封するかどうかを予測するモデルを生成してもよい。生成部133は、プッシュ通知されるコンテンツが開封されなかった場合のユーザのユーザ情報やユーザの位置情報やユーザの行動情報やユーザの環境情報等の種々のコンテキスト情報を不正解情報として、プッシュ通知を開封するかどうかを予測するモデルを生成してもよい。生成部133は、ユーザU2が部分エリアLC1−2においてプッシュ通知されるコンテンツが開封しなかった場合、ユーザU2のユーザ情報やユーザU2の位置情報やユーザU2の行動情報やユーザU2の環境情報等の種々のコンテキスト情報を不正解情報として、プッシュ通知を開封するかどうかを予測するモデルを生成してもよい。
図11の例では、生成部133は、モデル情報MDに示すようにモデルM11のモデル情報を生成する。生成部133は、モデル情報記憶部125(図7参照)に示すように、モデルM11を生成する。生成部133は、ユーザ情報やユーザの位置する周囲の環境情報等を含むコンテキスト情報を入力とし、入力に基づいてスコアを出力するモデルM11を生成する。生成部133は、コンテキスト情報を入力とし、入力に基づいてスコアを出力するモデルM11を生成する。生成部133は、生成したモデルM11に基づいて、予測情報を生成する。生成部133は、モデルM11と、予測対象エリアであるBエリアに関する各種情報とに基づいて、Bエリアに関する予測情報を生成する。
生成部133は、所定の時間帯にBエリアに位置するユーザを対象として、予測情報を生成してもよい。生成部133は、朝の時間帯(6時〜10時)にBエリアに位置するユーザを対象として、朝のBエリアに対応する予測情報を生成してもよい。生成部133は、夜の時間帯(19時〜23時)にBエリアに位置するユーザを対象として、夜のBエリアに対応する予測情報を生成してもよい。
図11の例では、生成部133は、Bエリアを予測対象エリアとする予測情報PM11を生成する。生成部133は、プッシュ通知の実績が不十分なBエリアについてプッシュ通知の開封率を予測する予測情報を生成する。
(提供部134)
提供部134は、各種情報を提供する。提供部134は、外部の情報処理装置へ各種情報を提供する。提供部134は、端末装置10に各種情報を提供する。提供部134は、端末装置10等の外部の情報処理装置に各種情報を提供する。提供部134は、端末装置10に各種情報を送信する。提供部134は、端末装置10に各種情報を配信する。提供部134は、取得部131により取得された各種情報に基づいて、種々の情報を提供する。提供部134は、決定部132により決定された各種情報に基づいて、種々の情報を提供する。提供部134は、生成部133により生成された各種情報に基づいて、種々の情報を提供する。提供部134は、生成部133により生成された予測情報に基づいて、種々のサービスを提供してもよい。
提供部134は、生成した予測情報に基づいて、プッシュ通知を行ってもよい。図11の例では、提供部134は、予測情報PM11中のハッチングが濃い部分(Bエリア中の右下)に位置するユーザに対して、プッシュ通知を行ってもよい。提供部134は、生成した予測情報を外部の情報処理装置へ提供してもよい。提供部134は、コンテンツ提供サービスを行う外部装置へ予測情報を提供してもよい。
〔3.情報処理のフロー〕
次に、図10を用いて、実施形態に係る情報処理システム1による情報処理の手順について説明する。図10は、実施形態に係る情報処理の一例を示すフローチャートである。
図10に示すように、情報処理装置100は、コンテンツの配信時点とは異なる他の時点に関するコンテキストの各要素と、コンテンツに対する第1ユーザの所定の行動との関係度合いを示す関係度情報を取得する(ステップS101)。そして、情報処理装置100は、コンテンツが配信された第2ユーザの所定の行動に関する行動情報が取得する(ステップS102)。そして、情報処理装置100は、行動情報と、関係度情報とに基づいて、第2ユーザの所定の行動に関係する要素を示す関係要素情報を生成する(ステップS103)。
〔4.効果〕
上述してきたように、実施形態に係る情報処理装置100は、取得部131と、生成部133とを有する。取得部131は、コンテンツの配信時点とは異なる他の時点に関するコンテキストの各要素と、コンテンツに対する第1ユーザの所定の行動との関係度合いを示す関係度情報を取得する。生成部133は、コンテンツが配信された第2ユーザの所定の行動に関する行動情報が取得された場合に、行動情報と、関係度情報とに基づいて、第2ユーザの所定の行動に関係する要素を示す関係要素情報を生成する。
このように、実施形態に係る情報処理装置100は、コンテンツが配信された第2ユーザの所定の行動に関する行動情報が取得された場合に、行動情報と、コンテンツの配信時点とは異なる他の時点に関するコンテキストの各要素と、コンテンツに対する第1ユーザの所定の行動との関係度合いを示す関係度情報とに基づいて、第2ユーザの所定の行動に関係する要素を示す関係要素情報を生成することにより、ユーザの行動に関係する要素を示す情報を適切に生成することができる。
また、実施形態に係る情報処理装置100において、取得部131は、所定のエリアに位置する第1ユーザの所定の行動に関する他の行動情報に基づいて生成された関係度情報と、所定のエリア以外とは異なる他のエリアに位置する第2ユーザの行動情報を取得する。生成部133は、行動情報と、関係度情報とに基づいて、他のエリアにおける所定の行動に関係する要素を示す関係要素情報を生成する。
このように、実施形態に係る情報処理装置100は、所定のエリアに位置する第1ユーザの所定の行動に関する他の行動情報に基づいて生成された関係度情報と、所定のエリア以外とは異なる他のエリアに位置する第2ユーザの行動情報に基づいて、他のエリアにおける所定の行動に関係する要素を示す関係要素情報を生成することにより、ユーザの行動に関係する要素を示す情報を適切に生成することができる。例えば、情報処理装置100は、情報が十分な第1エリアの情報を用いて、情報が不十分な第2エリアに位置するユーザの予測情報を生成することにより、情報が不十分なエリアについても所望の予測が可能となる。
また、実施形態に係る情報処理装置100において、取得部131は、各要素に対応する各特徴量を含むモデルであって、コンテキストのコンテキスト情報に基づいて、コンテンツに対するユーザの所定の行動の予測に用いるモデルを取得する。生成部133は、モデルに基づいて、関係要素情報を生成する。
このように、実施形態に係る情報処理装置100は、各要素に対応する各特徴量を含むモデルであって、コンテキストのコンテキスト情報に基づいて、コンテンツに対するユーザの所定の行動の予測に用いるモデルに基づいて、関係要素情報を生成することにより、ユーザの行動に関係する要素を示す情報を適切に生成することができる。
また、実施形態に係る情報処理装置100において、取得部131は、コンテキスト情報の入力に応じて、コンテンツに対するユーザの所定の行動に関するスコアを出力するモデルを取得する。
このように、実施形態に係る情報処理装置100は、コンテキスト情報の入力に応じて、コンテンツに対するユーザの所定の行動に関するスコアを出力するモデルに基づいて、関係要素情報を生成することにより、ユーザの行動に関係する要素を示す情報を適切に生成することができる。
また、実施形態に係る情報処理装置100において、生成部133は、第2ユーザの行動情報が所定の条件を満たす場合、モデルに基づいて、関係要素情報を生成する。
このように、実施形態に係る情報処理装置100は、第2ユーザの行動情報が所定の条件を満たす場合、モデルに基づいて、関係要素情報を生成することにより、ユーザの行動に関係する要素を示す情報を適切に生成することができる。
また、実施形態に係る情報処理装置100において、生成部133は、モデルにおける各特徴量の重みを示す関係度情報に基づいて、関係要素情報を生成する。
このように、実施形態に係る情報処理装置100は、モデルにおける各特徴量の重みを示す関係度情報に基づいて、関係要素情報を生成することにより、ユーザの行動に関係する要素を示す情報を適切に生成することができる。
また、実施形態に係る情報処理装置100において、生成部133は、モデルの各特徴量のうち、対応する重みが所定の条件を満たす特徴量を選択することにより、関係要素情報を生成する。
このように、実施形態に係る情報処理装置100は、モデルの各特徴量のうち、対応する重みが所定の条件を満たす特徴量を選択することにより、関係要素情報を生成することにより、ユーザの行動に関係する要素を示す情報を適切に生成することができる。
また、実施形態に係る情報処理装置100において、生成部133は、モデルの各特徴量のうち、対応する重みの絶対値が所定の閾値以上である特徴量を選択することにより、関係要素情報を生成する。
このように、実施形態に係る情報処理装置100は、モデルの各特徴量のうち、対応する重みの絶対値が所定の閾値以上である特徴量を選択することにより、関係要素情報を生成することにより、ユーザの行動に関係する要素を示す情報を適切に生成することができる。
また、実施形態に係る情報処理装置100において、取得部131は、ユーザに配信されたコンテンツに対する、ユーザの所定の行動に関する行動情報である正解情報と、コンテキスト情報に基づいて生成されたモデルを取得する。
このように、実施形態に係る情報処理装置100は、ユーザに配信されたコンテンツに対する、ユーザの所定の行動に関する行動情報である正解情報と、コンテキスト情報に基づいて生成されたモデルに基づいて、関係要素情報を生成することにより、ユーザの行動に関係する要素を示す情報を適切に生成することができる。
また、実施形態に係る情報処理装置100において、取得部131は、他の時点におけるユーザの感情を含む各要素と、コンテンツに対する第1ユーザの所定の行動との関係度合いを示す関係度情報を取得する。
このように、実施形態に係る情報処理装置100は、他の時点におけるユーザの感情を含む各要素と、コンテンツに対する第1ユーザの所定の行動との関係度合いを示す関係度情報に基づいて、関係要素情報を生成することにより、ユーザの行動に関係する要素を示す情報を適切に生成することができる。
また、実施形態に係る情報処理装置100において、取得部131は、コンテンツの配信時点よりも前の時点である他の時点におけるユーザの感情を含む各要素と、コンテンツに対する第1ユーザの所定の行動との関係度合いを示す関係度情報を取得する。
このように、実施形態に係る情報処理装置100は、コンテンツの配信時点よりも前の時点である他の時点におけるユーザの感情を含む各要素と、コンテンツに対する第1ユーザの所定の行動との関係度合いを示す関係度情報に基づいて、関係要素情報を生成することにより、ユーザの行動に関係する要素を示す情報を適切に生成することができる。
〔5.ハードウェア構成〕
上述してきた実施形態に係る情報処理装置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上にロードされたプログラムを実行することにより、制御部130の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置からネットワークNを介してこれらのプログラムを取得してもよい。
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の行に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
〔6.その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上述してきた各実施形態に記載された各処理は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。