(58)【調査した分野】(Int.Cl.,DB名)
前記推定部は、前記行動履歴として、前記対象ユーザの検索履歴であって、前記対象ユーザが前記所定の位置に滞在していた時点よりも過去の検索履歴に基づいて、前記対象ユーザに関連する情報を推定する
ことを特徴とする請求項1に記載の情報処理装置。
前記推定部は、前記他ユーザの行動傾向を示す行動情報のうち、前記対象ユーザに関連する情報以外の情報に対応する行動情報を、前記他ユーザに関連する情報として推定する
ことを特徴とする請求項6に記載の情報処理装置。
前記第1の提供部は、前記情報提供の要求元に対して、前記対象ユーザの行動履歴に含まれる前記対象ユーザの行動を示す行動情報と、前記行動履歴に基づき算出された前記対象ユーザの興味の度合いを示す第1興味スコアとを提供する
ことを特徴とする請求項8または9に記載の情報処理装置。
前記推定部は、前記第2興味スコアをX軸とし、前記滞在スコアをY軸とした場合に、前記取得元ユーザ毎の前記滞在スコアと前記第2興味スコアとが交わるプロットを示す前記散布図から生成された回帰直線に対応する前記相関係数に基づいて、前記予測モデルを推定する
ことを特徴とする請求項12に記載の情報処理装置。
【発明を実施するための形態】
【0010】
以下に、本願にかかる情報処理装置、情報処理方法および情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ説明する。なお、この実施形態により本願にかかる情報処理装置、情報処理方法および情報処理プログラムが限定されるものではない。また、以下の実施形態において、同一の部位には同一の符号を付し、重複する説明は省略される。
【0011】
〔1.情報処理の概要〕
図1〜4を用いて、実施形態にかかる情報処理の一例について説明する。以下では、実施形態にかかる情報処理を第1の情報処理、および、第2の情報処理に分けて説明する。
図1〜
図3は、第1の情報処理を説明する図に対応する。
図4は、第1の情報処理を説明する図に対応する。
図1〜4を用いて実施形態にかかる情報処理の一例を説明する前に、まずは、実施形態にかかる情報処理の概要を示すことにする。
【0012】
例えば、以下で説明する情報処理装置100に対応するアプリケーションが、情報を要求する要求元の端末装置である要求元装置10内に実装されることにより、情報処理装置100は、要求元装置10からの要求を受け付けたり、要求元装置10に対して実施形態にかかる情報処理で得られた推定結果(例えば、ユーザの興味の対象が何であるかが推定された推定結果)を配信することができるようになる。このようなことから、要求元は、上記のアプリケーションを、例えば、ユーザの興味を分析する分析ツールとして使用する場合がある。
【0013】
また、このようなことから、実施形態にかかる情報処理は、上記アプリケーションに対応する処理といえるが、実施形態にかかる情報処理のうち、第1の情報処理、および、第2の情報処理は、それぞれ異なるアプリケーションに対応するものであってもよいし、1つのアプリケーションに対応ものであってもよい。以下の例では、第1の情報処理、および、第2の情報処理を分けて説明しているが、第1の情報処理、および、第2の情報処理は、一連の一つの情報処理として成立することにより、1つのアプリケーションに対応しているものとする。なお、かかるアプリケーションを以下では「アプリAP」と表記する場合がある。
【0014】
また、
図1〜
図4の説明に先立って、
図5を用いて、実施形態にかかる情報処理システムについて説明する。
図5は、実施形態にかかる情報処理システム1の構成例を示す図である。実施形態にかかる情報処理システム1は、
図5に示すように、要求元装置10と、ユーザ装置30と、情報処理装置100とを含む。要求元装置10、ユーザ装置30、情報処理装置100は、ネットワークNを介して有線または無線により通信可能に接続される。なお、
図5に示す情報処理システム1には、複数台の要求元装置10や、複数台のユーザ装置30や、複数台の情報処理装置100が含まれてよい。
【0015】
要求元装置10は、情報(例えば、実施形態にかかる情報処理で得られた推定結果)提供を要求する要求元によって利用される端末装置である。要求元装置10は、例えば、スマートフォンや、タブレット型端末や、ノート型PC(Personal Computer)や、デスクトップPCや、携帯電話機や、PDA(Personal Digital Assistant)等である。また、要求元装置10には、上記のアプリAPがインストールされている。例えば、要求元装置10は、要求元の操作に従って、情報処理装置100に対して各主の入力を行ったり、情報処理装置100から提供(送信)された情報を表示画面Dに表示させる。
【0016】
ユーザ装置30は、一般ユーザによって利用される端末装置である。ユーザ装置30は、例えば、スマートフォンや、タブレット型端末や、ノート型PCや、デスクトップPCや、携帯電話機や、PDA等である。ユーザ装置30は、GPS(Global Positioning System)機能を利用して、自装置の位置情報(自装置を利用するユーザの位置情報)を取得したり、インターネット上でのユーザの行動(例えば、検索行動、購買行動等)に対応する情報処理を実行する。なお、情報処理装置100は、ユーザの位置情報の履歴(位置履歴)や、インターネット上でのユーザの行動の履歴(行動履歴)を適宜取得し所定の記憶部に格納している。また、ユーザ装置30は、GPSに限らず任意の手法で位置情報を取得してよい。例えば、ユーザ装置30は、WiFi(登録商標)由来の電波信号を検知し、検知した電波信号に基づいて位置情報を算出してもよい。
【0017】
ここで、実施形態にかかる情報処理が行われるにあたっての前提について説明する。まず、第1の情報処理に対応する前提について説明する。例えば、上記の従来技術のように、エリア毎に当該エリアににてユーザが行った検索回数に基づいて、検索時に使用されたクエリ(クエリに対応する対象)に対してスコアリングした場合、あるエリアARで特定のクエリQEについて高いスコアが得られたとすれば、エリアARではクエリQEに対応する対象の需要があると予測することができると考えられる。
【0018】
しかしながら、上記の従来技術には、一時的にエリアARを通過する際にユーザがたまたま行った検索行動といった一種のノイズと考えられるユーザの検索行動も処理対象に含まれるため、ユーザの興味の対象を高精度に推定することができるとは限らない。一方で、例えば、エリアARを一時的に通過する等ではなく、エリアARにおいてまとまった時間滞在し、かつ、エリアARに滞在するよりも過去にクエリQEで検索したことのあるユーザについては、かかるユーザは、クエリQEに対応する対象の恩恵を受けるためにエリアARに滞在しているといえる。したがって、このように、確かに特定の位置に滞在していると推測される対象ユーザのみを精度よく抽出できれば、上記のようなノイズと考えられるユーザ(エリアARを一時的に通過したに過ぎないユーザ)を除外することができるため、対象ユーザの行動履歴を紐付けることにより、対象ユーザの興味(需要)を高精度に推定することができるようになる。
【0019】
このような前提を踏まえて、実施形態にかかる情報処理装置100は、実施形態にかかる第1の情報処理を行う。具体的には、情報処理装置100は、ユーザが所定の位置に滞在していた強度を示す滞在スコアを取得し、取得した滞在スコアに基づきユーザのうち所定の位置に滞在していたと推測されるユーザである対象ユーザの行動履歴に基づいて、対象ユーザに関連する情報を推定する。例えば、情報処理装置100は、対象ユーザの検索履歴であって、対象ユーザが所定の位置に滞在していた時点よりも過去の検索履歴に基づいて、対象ユーザに関連する情報を推定する。
【0020】
より詳細には、情報処理装置100は、ユーザのうち滞在スコアが所定値より高いユーザを対象ユーザと定めるとともに、対象ユーザの行動履歴に基づいて、対象ユーザの興味の度合いを示す第1興味スコアであって、対象ユーザの行動傾向の度合いに応じた値を示す第1興味スコアを算出する。そして、情報処理装置100は、第1興味スコアに基づいて、対象ユーザに関連する情報を推定する。
【0021】
また、情報処理装置100は、情報提供の要求元に対して、推定した情報に基づく情報を提供する。
【0022】
次に、第2の情報処理に対応する前提について説明する。例えば、各サービス(ショッピングサービス、オークションサービス等)で利用される所定の対象に対するユーザの興味を予測する予測モデルが多数存在するとする。例えば、かかる予測モデルの一例として、電子書籍好きを予測する電子書籍予測モデルを例に挙げる。この場合、電子書籍予測モデルは、処理対象のユーザの属性情報を入力した場合に、電子書籍に対する処理対象のユーザの興味の度合いを示すスコアを出力するモデル、すなわち電子書籍に対して処理対象のユーザがどれだけ興味があるかを予測する予測モデルである。また、電子書籍予測モデルの予測対象は、電子書籍といえる。
【0023】
このように、所定の対象に対するユーザの興味を予測する予測モデルが多数存在する状況下において、所定の位置に滞在していたと推測されるユーザである対象ユーザに関連する予測モデルはどの(誰の)予測モデルであるかを知りたいといった需要がある。また、対象ユーザと予測モデルの予測対象との関連性を知りたいといった需要がある。
【0024】
このような前提を踏まえて、実施形態にかかる情報処理装置100は、実施形態にかかる第2の情報処理を行う。具体的には、情報処理装置100は、ユーザが所定の位置に滞在していた強度を示す滞在スコアを取得し、滞在スコアが取得された取得元ユーザの滞在スコアと、所定の対象に対するユーザの興味を予測する予測モデルとに基づいて、予測モデルのうち対象ユーザに関連する予測モデルを推定する。例えば、情報処理装置100は、取得元ユーザの滞在スコアと、予測モデルを用いて算出された第2興味スコアであって、所定の対象に対する取得元ユーザの興味の度合いを示す第2興味スコアとに基づいて、対象ユーザに関連する予測モデルを推定する。
【0025】
また、情報処理装置100は、対象ユーザに関連する予測モデルを推定することにより、対象ユーザに関連する予測モデルの予測対象を対象ユーザに関連する情報として推定する。
【0026】
〔2.第1の情報処理の一例〕
さて、ここからはまず、
図1を用いて第1の情報処理の一例について説明する。
図1は、実施形態にかかる第1の情報処理の一例を示す図である。
図1では、実施形態にかかる第1の情報処理の一例を手順を追って説明する。また、情報処理装置100が有する記憶部についても適宜説明する。まず、情報処理装置100が有する記憶部のうち、第1の情報処理と関連性の高い位置履歴記憶部121および検索履歴記憶部122について先に説明しておく。
【0027】
位置履歴記憶部121は、ユーザ装置30を有する各一般ユーザのこれまでの位置であって、所定時刻毎の位置を示す位置情報を位置履歴として記憶する。
図1の例では、位置履歴記憶部121は、「ユーザID」、「時刻情報」、「位置情報」といった項目を有する。「ユーザID」は、一般ユーザまたは一般ユーザのユーザ装置30を識別する識別情報を示す。「時刻情報」は、対応する「位置情報」が示す位置に一般ユーザが居た時刻を示す。
【0028】
「位置情報」は、対応する「時刻情報」が示す時刻における一般ユーザの位置を示す。「位置情報」は、ユーザ装置30がGPS機能を活用して取得した位置情報である。このようなことから、
図1では不図示であるが、情報処理装置100は、ユーザ装置30から適宜位置情報を取得し、取得した位置情報を位置履歴記憶部121に格納している。なお、GPS由来の位置情報は、実際の位置に対して多少誤差がある。このため、情報処理装置100は、ユーザ装置30から取得したGPS由来の位置情報に統計処理を行う等して、より精度のよいもの補正したうえで、補正後の位置情報を位置履歴記憶部121に格納してもよい。例えば、情報処理装置100は、GPS由来の位置情報と、実際の位置情報との関係性が学習されたモデルを用いて、GPS由来の位置情報を補正することができる。
【0029】
また、
図1に示す位置履歴記憶部121の例では、ユーザID「U1」によって識別される一般ユーザ(ユーザU1)が「2019年4月3日15時58分」には位置情報「LC11−1」が示す位置に居た例を示す。
【0030】
検索履歴記憶部122は、ユーザ装置30を有する各一般ユーザのこれまでの検索行動を示す検索情報を当該検索行動が行われた時刻毎に記憶する。なお、ここでいう検索行動とは、この検索行動で用いられた検索クエリを指すものとする。
図1の例では、検索履歴記憶部122は、「ユーザID」、「時刻情報」、「検索行動(検索クエリ)」といった項目を有する。「ユーザID」は、一般ユーザまたは一般ユーザのユーザ装置30を識別する識別情報を示す。「時刻情報」は、対応する「検索行動」が行われた時刻を示す。「検索行動(検索クエリ)」は、検索行動で用いられた検索クエリを示す。
【0031】
すなわち、
図1に示す検索履歴記憶部122の例では、ユーザID「U1」によって識別される一般ユーザ(ユーザU1)が「2019年3月31日15時15分」には検索クエリ「電車遅延」での検索行動を行った例を示す。
【0032】
なお、検索履歴は行動履歴の一例であるが、情報処理装置100は、検索履歴以外にも各種の行動の行動履歴を利用することができる。例えば、情報処理装置100は、購買履歴、サービス(宿泊予約サービス等)利用履歴、会話履歴等を利用することができ、この場合には各行動履歴に対応する記憶部を有する。すなわち、情報処理装置100が利用可能な行動履歴は、検索履歴に限定されないが、本実施形態では検索履歴に絞って説明する。
【0033】
このような状態において、
図1の例では、情報処理装置100に対して情報提供を要求する要求元として要求元R1を例に挙げる。要求元R1が利用する要求元装置10にはアプリAPがインストールされていることにより、要求元装置10は、アプリAPの制御に従って、要求元R1に対して、どの期間においてどの位置(場所)での一般ユーザを処理対象とするかを指定させることができる。より詳細には、要求元装置10は、要求元R1に対して、どの期間においてどの位置(場所)に居た一般ユーザを処理対象として、一般ユーザの興味を分析したいかを指定させることができる。例えば、要求元装置10は、地図情報MPを表示画面に表示することで地図情報MPをに含まれる任意の位置(場所)を指定させる。
【0034】
このような場合、要求元R1は、例えば、マウス操作やタッチ操作等でサイズを制御可能な矩形SQを用いて任意の位置(場所)を囲むことにより、矩形SQ内に含まれる位置を指定する。
図1の例では、要求元R1は、矩形SQを用いて、位置情報LC11で識別される位置(位置LC111)を囲むとととも期間Tを入力したうえで、例えば、送信ボタン(不図示)を押下したものとする。このような操作は、要求元R1が、期間Tにおいて、位置LC111に居た一般ユーザを処理対象とするよう情報処理装置100に対して指定する操作を示す。
【0035】
要求元装置10は、送信ボタンが押下された場合、上記指定を示す指定情報である指定情報SP1を情報処理装置100に送信する。指定情報SP1には、矩形SQで囲まれた位置LC111を示す位置情報LC11が含まれる。また、指定情報SP1には、要求元装置10の識別情報が含まれる。矩形SQが用いられているため、位置情報LC11は、位置範囲であり、位置情報LC11には、例えば、位置情報LC11−1、位置情報LC11−2、位置情報LC11−3・・・等が含まれる。
【0036】
また、
図1では地図情報MP内の任意の位置を矩形SQで囲むという情報指定の手法を例に挙げているがこれは一例に過ぎず、どの期間においてどの位置(場所)での一般ユーザを処理対象とするかを指定させる手法は限定されない。例えば、要求元装置10は、要求元に対して、期間、位置、施設等を手入力させてもよいし、候補一覧の中から指定させてもよい。
【0037】
そして、情報処理装置100は、要求元装置10から指定情報を受け付ける(ステップS11)。上記例の場合、情報処理装置100は、要求元R1の要求元装置10から指定情報SP1を受け付ける。次に、情報処理装置100は、位置履歴記憶部121に記憶される一般ユーザの中から、位置情報LC11を有する所有ユーザ(位置LC111に一瞬でも居たことがあるユーザ)を抽出し、抽出した所有ユーザが、位置LC111に滞在していた強度(確度)を示す滞在スコアを算出する(ステップS12)。例えば、情報処理装置100は、所有ユーザ毎に、当該所有ユーザが位置LC111に滞在していた滞在時間に応じた強度(確度)に基づいて、当該所有ユーザの滞在スコアを算出する。例えば、情報処理装置100は、位置履歴記憶部121において所有ユーザに対応付けられる「時刻情報」に基づいて、位置LC111での滞在スコアを算出する。滞在スコアは、例えば、滞在時間が長い程(強度が高い程)、高い数値を示す。また、本実施形態では、滞在スコアは、0〜10の範囲で表されるものとする。
【0038】
例えば、位置LC111での滞在時間が数秒あるいは数分程度の所有ユーザは、何らかの目的があって位置LC111に滞在していたとはいい難く、例えば、たまたま位置LC111を通りがかっただけと解することができる。一方で、位置LC111での滞在時間がまとまった時間(例えば、15分以上)の所有ユーザは確かな目的があって位置LC111に滞在していたといえる。このような観点から、情報処理装置100は、例えば、滞在時間が長い程、位置LC111に滞在していた可能性が高いことを示すような強度を算出し、算出した強度に基づいて、滞在スコアを算出する。例えば、情報処理装置100は、滞在時間そのものを滞在スコアとして算出してもよいし、滞在時間に応じた強度に対して所定の重み付けをすることにより滞在スコアを算出してもよい。
【0039】
ここで、滞在スコア算出の一例についてより詳細に説明する。例えば、情報処理装置100は、要求元R1にに指定された期間である期間T内での所定時刻毎(例えば、30分間隔の時刻毎)に、当該時刻での滞在スコアを算出する。例えば、期間Tを「2019年4月1日0時00分」〜「2019年4月3日16時00分」とすると、情報処理装置100は、「2019年4月1日0時00分」〜「2019年4月1日0時30分」、「2019年4月1日0時30分」〜「2019年4月1日1時00分」・・・といったような30分おきの時刻(時刻範囲)毎に各所有ユーザの滞在スコアを算出する。
【0040】
ここで、位置LC111に目的がって滞在している所有ユーザであっても、諸事情により、定期的(あるいは一時的)に位置LC111とは別の位置へ移動する場合がある。すなわち、30分の間ずっと位置LC111に滞在しているような滞在パターンもあれば、定期的(あるいは一時的)に位置LC111からは外れるものの結果的には位置LC111に滞在しているような滞在パターンといったように、考慮すべき滞在パターンが複数存在する。したがって、時刻範囲として、「2019年4月1日0時00分」〜「2019年4月1日0時30分」の間の30分間を例に挙げると、情報処理装置100は、この期間内での総滞在時間に応じた強度を算出し、算出した強度に基づき滞在スコアを算出する。
【0041】
このように情報処理装置100は、滞在時間と滞在パターンとに基づいて、滞在時間に応じた強度を算出するとともに、算出した強度に基づいて、滞在スコアを算出する。
【0042】
なお、情報処理装置100は、所有ユーザの位置情報の変化から所有ユーザの移動軌跡を算出することにより、移動軌跡も考慮して強度を算出してもよい。例えば、位置LC111に滞在していたといえる所有ユーザの移動軌跡は、位置情報LC11に含まれる位置情報を繋いで形成される軌跡となることが考えられる。したがって、情報処理装置100は、このような移動軌跡が得られた場合には強度をより高めるような重み付けを行い、位置LC111一時的に通過しただけのような移動軌跡が得られた場合には強度をより下げるような重み付けを行う。
【0043】
ステップS12では、滞在スコアの算出例を示してきたが、かかる算出例は一例に過ぎず、情報処理装置100は、任意の手法で滞在スコアを算出可能でるあること断っておく。
【0044】
次に、情報処理装置100は、ステップS12で算出した滞在スコアを滞在スコア記憶部123に格納する。ここで、
図7に実施形態にかかる滞在スコア記憶部123の一例を示す。
図7の例では、滞在スコア記憶部123は、「要求元ID」、「位置情報」、「期間」、「時刻範囲」、「ユーザID」、「滞在スコア」いった項目を有する。
【0045】
「要求元ID」は、情報処理装置200に対して情報提供を要求した要求元を識別する識別情報を示す。「位置情報」は、対応する要求元が、どの期間(時刻)においてどの位置(場所)でのユーザを処理対象とするかを指定したことによる指定情報に含まれる位置情報を示す。すなわち、「位置情報」は、対応する要求元によって指定された処理対象の位置を示す位置情報である。「期間」は、対応する要求元が、どの期間(時刻)においてどの位置(場所)でのユーザを処理対象とするかを指定したことによる指定情報に含まれる位置情報に含まれる期間を示す。すなわち、「期間」は、対応する要求元によって指定された処理対象の期間を示す。
【0046】
「時刻範囲」は、要求元R1により指定された「期間」内での時刻範囲であって、30分間隔毎の時刻範囲を示す。なお、30分間隔というのは一例に過ぎず、どのような時間間隔で区切られるかは限定されない。
【0047】
「ユーザID」は、「期間」に含まれる「時刻範囲」が示す時刻において、「位置情報」が示す位置に居た(位置情報を有した)所有ユーザを識別する識別情報を示す。「滞在スコア」は、対応する「ユーザID」によって識別される所有ユーザついて算出された滞在スコアであって、「時刻範囲」が示す時刻において「位置情報」が示す位置に所有ユーザが滞在していた強度を示す滞在スコアである。
【0048】
すなわち、
図7の例では、要求元ID「R1」によって識別される要求元R1が、「2019年4月1日0時00分」〜「2019年4月3日16時00分」の期間(期間T)において、位置情報LC11が示す位置(位置LC111)でのユーザを処理対象とするよう指定した例を示す。また、
図7の例では、期間Tに含まれる時刻範囲として、「2019年4月1日0時00分」〜「2019年4月1日0時30分」の間に、位置情報LC11が示す位置に位置したことがある一般ユーザには、所有ユーザU1がおり、この所有ユーザU1について滞在スコア「7.0」が算出された例を示す。
【0049】
次に、情報処理装置100は、滞在スコア記憶部123から滞在スコアを取得し、所有ユーザ毎の滞在スコアに基づいて、当該所有ユーザが位置LC111に滞在していたか否かを推測する(ステップS14)。ステップS12の一例によると、情報処理装置100は、期間Tに含まれる30分間隔の時刻範囲毎に、当該時刻範囲が示す時刻において、位置LC111に滞在していた滞在強度を所有ユーザ毎に算出している。この例によると、情報処理装置100は、時刻範囲毎に、当該時刻範囲が示す時刻において、位置LC111にいた所有ユーザが、実際に、位置LC111に滞在していたといえるか否かを推測する。例えば、情報処理装置100は、所有ユーザのうち、所定値(例えば、5.0)より高い滞在スコアが算出された所有ユーザに対して、実際に、位置LC111に滞在していたと推測するとともに、このような所有ユーザを対象ユーザと定める。
【0050】
また、情報処理装置100は、ステップS14において、期間T内での時刻範囲毎の対象ユーザの人数を推定(カウント)することにより、期間Tでの時間経過に応じた人数変動であって、対象ユーザの人数変動を推定する。これにより、情報処理装置100は、後述するグラフGを生成することができるようになる。
【0051】
次に、情報処理装置100は、検索履歴記憶部122から対象ユーザの検索履歴であって、対象ユーザが位置LC111に滞在していた時点よりも過去の検索履歴を取得し、取得した検索履歴に含まれる検索行動毎に当該検索行動が示す情報に対する、対象ユーザの興味の度合いを示す第1興味スコアを算出する(ステップS15)。ここで、対象ユーザが位置LC111に滞在していた時点よりも過去の検索履歴とは、
図1の例では、例えば、期間Tよりも過去の検索履歴である。また、検索行動が示す情報とは、例えば、その検索行動で用いられた検索クエリである。したがって、
図1の例では、情報処理装置100は、対象ユーザの検索履歴であって、期間Tよりも過去の検索履歴を取得し、取得した検索履歴に含まれる検索クエリ毎に、当該検索クエリに対する対象ユーザの興味の度合い(需要の度合いともいえる)を示す第1興味スコアを算出する。
【0052】
例えば、情報処理装置100は、取得した検索履歴に基づいて、対象ユーザの検索傾向の度合いに応じた値を示す第1興味スコアを算出する。例えば、情報処理装置100は、検索履歴に含まれる検索クエリを用いた検索行動の傾向の度合いに応じた値を示す第1興味スコアを算出する。より詳細には、情報処理装置100は、検索履歴に含まれる検索クエリ毎に当該検索クエリでの検索回数を算出する。そして、情報処理装置100は、算出した検索回数が多い検索クエリ程、その検索クエリで検索される傾向にあるとの判断から、検索回数がより多い検索行動程、高い値を示すような第1興味スコアを算出する。例えば、情報処理装置100は、検索回数がより多い検索行動程、その検索行動での検索傾向の強度を高く算出する。そして、情報処理装置100は、算出した強度に基づいて、第1興味スコアを算出する。この手法は、検索回数が多い程、その検索で用いられた検索クエリに対する興味が高いと考えられることに基づく。
【0053】
なお、情報処理装置100は、例えば、検索行動とこの検索行動での検索回数の組合せと、この検索行動が示す情報に対する興味の度合い(第1興味スコア)との関係性が学習されたモデルを用いて、第1興味スコアを算出してもよい。また、本実施形態では、情報処理装置100は、上記の通り、所定の位置に滞在していた時点よりも過去の検索履歴を用いるものとするが、どのような時間位置の検索履歴を用いるかは限定されず、例えば、情報処理装置100は、所定の位置に滞在していた時点よりも先(未来)の検索履歴を用いてもよい。
【0054】
図1の例では、情報処理装置100は、検索クエリ「歌手MU1」に対して第1興味スコア「2.35」を算出したものとする。かかる例は、情報処理装置100は、検索クエリ「歌手MU1」を用いた検索傾向の強度として「2.35」を算出したことに基づき、第1興味スコア「2.35」を算出した、と言い換えることができる。また、
図1の例では、情報処理装置100は、検索クエリ「施設FA1」に対して第1興味スコア「2.10」を算出したものとする。かかる例は、情報処理装置100は、検索クエリ「施設FA1」を用いた検索傾向の強度として「2.10」を算出したことに基づき、第1興味スコア「2.10」を算出した、と言い換えることができる。また、
図1の例では、情報処理装置100は、検索クエリ「コンサート」に対して第1興味スコア「1.65」を算出したものとする。かかる例は、情報処理装置100は、検索クエリ「コンサート」を用いた検索傾向の強度として「1.65」を算出したことに基づき、第1興味スコア「1.65」を算出した、と言い換えることができる。また、
図1の例では、情報処理装置100は、検索クエリ「グッズ」に対して第1興味スコア「0.93」を算出したものとする。かかる例は、情報処理装置100は、検索クエリ「グッズ」を用いた検索傾向の強度として「0.93」を算出したことに基づき、第1興味スコア「0.93」を算出した、と言い換えることができる。
【0055】
そして、情報処理装置100は、このように算出した第1興味スコアを興味スコア記憶部124に格納する。興味スコア記憶部124については後ほど
図8を用いて説明するが、
図8に示す興味スコア記憶部124の内部構成は上記例に対応している。
【0056】
また、情報処理装置100は、対象ユーザ以外の他ユーザの検索行動のうち、対象ユーザが行った検索行動以外の検索行動に対する、他ユーザ興味の度合いを示す一般興味スコアも算出する(ステップS16)。例えば、情報処理装置100は、検索履歴記憶部122から他ユーザの検索履歴を取得し、取得した検索履歴に含まれる検索行動の中から、対象ユーザに対応する検索クエリ(上記例では、検索クエリ「歌手MU1」での検索、検索クエリ「施設FA1」での検索、検索クエリ「コンサート」での検索、検索クエリ「グッズ」での検索)以外の検索クエリを抽出する。そして、情報処理装置100は、抽出した検索クエリでの検索行動毎に当該検索行動が示す情報(検索クエリ)に対する、他ユーザの興味の度合いを示す一般興味スコアを算出する。
【0057】
例えば、情報処理装置100は、検索履歴に含まれる検索クエリを用いた検索行動の傾向の度合いに応じた値を示す一般興味スコアを算出する。より詳細には、情報処理装置100は、検索履歴に含まれる検索クエリ毎に当該検索クエリでの検索回数を算出する。そして、情報処理装置100は、算出した検索回数が多い検索クエリ程、その検索クエリで検索される傾向にあるとの判断から、検索回数がより多い検索行動程、高い値を示すような第1興味スコアを算出する。つまり、情報処理装置100は、第1興味スコア算出と同様の手法を用いて一般興味スコアを算出することができる。一般興味スコアは、例えば、第1興味スコアに対して、マイナスの値で算出される。
【0058】
図1の例では、情報処理装置100は、検索クエリ「健康診断」に対して一般興味スコア「−0.45」を算出したものとする。かかる例は、情報処理装置100は、検索クエリ「健康診断」を用いた検索傾向の強度として「0.45」を算出したことに基づき、一般興味スコア「−0.45」を算出した、と言い換えることができる。また、
図1の例では、情報処理装置100は、検索クエリ「ゲームアプリ」に対して一般興味スコア「−0.43」を算出したものとする。かかる例は、情報処理装置100は、検索クエリ「ゲームアプリ」を用いた検索傾向の強度として「0.43」を算出したことに基づき、一般興味スコア「−0.43」を算出した、と言い換えることができる。また、
図1の例では、情報処理装置100は、検索クエリ「一人旅」に対して一般興味スコア「0.36」を算出したものとする。かかる例は、情報処理装置100は、検索クエリ「一人旅」を用いた検索傾向の強度として「0.36」を算出したことに基づき、一般興味スコア「−0.36」を算出した、と言い換えることができる。
【0059】
そして、情報処理装置100は、このように算出した一般興味スコアを興味スコア記憶部124に格納する。
図8に示す興味スコア記憶部124の内部構成は上記例に対応している。
【0060】
次に、情報処理装置100は、対象ユーザの検索履歴に基づいて、対象ユーザに関連する情報を推定する(ステップS17)。上記の通り、第1興味スコアは、対象ユーザの検索履歴に基づき算出される。したがって、情報処理装置100は、第1興味スコアに基づいて、対象ユーザに関連する情報を推定する。例えば、情報処理装置100は、第1興味スコアに基づいて、対象ユーザの興味の対象を推定する。また、情報処理装置100は、ステップS17において、一般興味スコアに基づいて、他ユーザに関連する情報の推定も行う。例えば、情報処理装置100は、ステップS16で算出した第1興味スコアのうち、所定閾値より高い第1興味スコアが算出された検索クエリについて、当該検索クエリが示す対象が対象ユーザの興味の対象であると推定する。
【0061】
例えば、第1興味スコアに対する所定閾値として「0.5」が予め定められている場合、情報処理装置100は、検索クエリ「歌手MU1」が示す対象(歌手MU1)、検索クエリ「施設FA1」が示す対象(施設FA1)、検索クエリ「コンサート」が示す対象(コンサート)、検索クエリ「グッズ」が示す対象(グッズ)が対象ユーザの興味の対象であると推定する。また、例えば、一般興味スコアに対する所定閾値として「−0.1」が予め定められている場合、情報処理装置100は、検索クエリ「健康診断」が示す対象(健康診断)、検索クエリ「ゲームアプリ」が示す対象(ゲームアプリ)、検索クエリ「一人旅」が示す対象(一人旅)が他ユーザの興味の対象であると推定する。
【0062】
次に、情報処理装置100は、ステップS14〜S17の中で推定した情報(推定結果)に基づく情報提供を要求元R1に対して行う(ステップS18)。情報処理装置100は、ステップS14において、期間T内での時刻範囲毎の対象ユーザの人数を推定(カウント)することにより、期間Tでの時間経過に応じた人数変動であって、対象ユーザの人数変動を推定している。したがって、情報処理装置100は、期間Tでの時間経過に応じた人数変動であって、対象ユーザの人数変動を示す数値情報の一例として、かかる人数変動を示すグラフGを生成する。そして、情報処理装置100は、生成したグラフGを要求元R1に提供する。
【0063】
ここで、
図2を用いてグラフGについて説明する。
図2は、第1の情報処理に対応するグラフGの一例を示す図である。
図2に示すように、情報処理装置100は、X軸を期間T内での時刻、Y軸を対象ユーザの人数とするグラフGであって、例えば、期間T内での時間範囲毎に推定された対象ユーザの人数をプロットして生成されたグラフGを、要求元Rの要求元装置10に送信する。これにより、要求元R1は、位置LC111に滞在していたユーザの人数は時間帯に応じてどのように変動していたかを把握することができるようになるため、例えば、位置LC111に滞在していたユーザの位置LC111での時間経過に応じた動向を探ることができる。
【0064】
また、情報処理装置100は、ステップS17において、検索クエリ毎の第1興味スコアに基づき対象ユーザの興味の対象を推定するとともに、検索クエリ毎の一般興味スコアに基づき他ユーザの興味の対象を推定している。したがって、情報処理装置100は、検索クエリと興味スコアとが対応付けられた対応表TBを生成する。そして、情報処理装置100は、生成した対応表TBを要求元R1に提供する。
【0065】
ここで、
図3を用いて対応表TBについて説明する。
図3は、第1の情報処理に対応する対応表TBの一例を示す図である。
図3に示すように、情報処理装置100は、対象ユーザの検索行動の傾向のうち、より高い傾向が得られた検索行動を示す検索クエリと、この傾向の度合いに応じて算出された第1興味スコアとを対応付ける。また、情報処理装置100は、他ユーザの検索行動であって、対象ユーザには見られない検索行動の傾向のうち、より高い傾向が得られた検索行動を示す検索クエリと、この傾向の度合いに応じて算出された一般興味スコアとを対応付ける。そして、情報処理装置100は、この対応付けが表示された対応表TBを生成し、生成した対応表TBを要求元R1に提供する。
【0066】
図3の例において、対象ユーザの検索クエリ「歌手MU1」と、第1興味スコア「2.35」との組合せを例に挙げると、要求元R1は、対象ユーザは「歌手MU1」について検索するという過程を経て位置LC111に滞在していたという結果に至ったとの推測を得ることができる。また、要求元R1は、「歌手MU1」という確かな目的(例えば、歌手MU1のコンサートに参加する目的)のために、位置LC111に滞在していたと推測することができる。このような推測の結果、要求元R1は、対象ユーザは「歌手MU1」に興味のある可能性が非常に高いユーザであるとの知見を得ることができる。要求元R1は、例えば、「歌手MU1」に興味のある可能性の高いユーザがわかったので、このユーザにこそ「歌手MU1」に関する製品等をプロモーションする価値が高いとの知見を得ることができる。
【0067】
なお、情報処理装置100は、グラフGと対応表TBとを一度(同時)に提供してもよい。例えば、情報処理装置100は、グラフGと対応表TBとが表示された1つのコンテンツC11を提供してもよい。
【0068】
さて、これまで説明してきたように、情報処理装置100は、ユーザが所定の位置に滞在していた強度を示す滞在スコアを取得し、取得した滞在スコアに基づきユーザのうち所定の位置に滞在していたと推測されるユーザである対象ユーザの行動履歴に基づいて、対象ユーザに関連する情報を推定する。これにより、情報処理装置100は、ノイズと考えられるユーザを効果的に除外することができるため、ユーザの興味の対象を高精度に推定することができる。第2の情報処理は、第1の情報処理に引き続き行われる。したがって、
図4の説明では、
図1で用いた例をそのまま用いることにする。
【0069】
〔3.第2の情報処理の一例〕
次に、
図4を用いて第2の情報処理の一例について説明する。
図4は、実施形態にかかる第2の情報処理の一例を示す図である。
図4では、実施形態にかかる第2の情報処理の一例を手順を追って説明する。また、情報処理装置100が有する記憶部についても適宜説明する。まず、情報処理装置100が有する記憶部のうち、第2の情報処理と関連性の高いモデル情報記憶部125について先に説明しておく。
【0070】
モデル情報記憶部125は、例えば、各サービス(ショッピングサービス、オークションサービス等)で利用される所定の対象に対するユーザの興味を予測する予測モデルに関する情報を記憶する。
図4の例では、モデル情報記憶部125」は、「モデルID」、「モデルデータ」、「予測対象」といった項目を有する。
【0071】
「モデルID」は、予測モデルを識別する識別情報を示す。「モデルデータ」は、予測モデルそのものを示す。「予測対象」は、対応する予測モデルがどのような対象に対する興味を予測するためのものであるかを示す。
【0072】
すなわち、
図4に示すモデル情報記憶部125の例では、モデルID「M1」によって識別される予測モデル(予測モデルM1)は、MDA1というモデル式で表され、かつ、電子書籍に対するユーザの興味の度合いを予測するものである例を示す。
【0073】
このような状態において、情報処理装置100は、要求元R1の指定を示す指定情報SP1に対応する所有ユーザの属性情報と、所有ユーザについてステップS12で算出された滞在スコアを取得する(ステップS21)。情報処理装置100は、所有ユーザの属性情報を所定の外部サーバから取得してもよいし、属性情報を記憶する記憶部を有している場合には、かかる記憶部から取得してもよい。また、情報処理装置100は、例えば、滞在スコア記憶部123から所有ユーザの滞在スコアを取得する。
【0074】
以下の実施形態に示す処理の説明は、処理対象の予測モデルとして予測モデルM1を例に挙げて説明するが、例えば、モデル情報記憶部125に記憶される全ての予測モデルについて同様の処理が行われる。予測モデルM1は、ユーザの属性情報を入力として、電子書籍(予測対象)に対するユーザの興味の度合いを示す第2興味スコアを出力する予測モデルである。
【0075】
例えば、情報処理装置100は、各所有ユーザ属性情報を処理対象の予測モデルである予測モデルM1に入力することにより、予測モデルM1での予測対象に対する各所有ユーザの興味の度合いを示す第2興味スコアを算出する(ステップS22)。
【0076】
次に、情報処理装置100は、第2興味スコアをX軸、滞在スコアをY軸として、所有ユーザ毎の第2興味スコアと滞在スコアとの交点(滞在スコアと第2興味スコアとの組合せの一例)をプロットすることにより、プロットの散布図を生成する(ステップS23)。また、情報処理装置100は、生成した散布図に基づいて、回帰直線を生成し、生成した回帰直線に対応する相関係数を算出する。例えば、情報処理装置100は、最小二乗法を用いて回帰直線を生成するとともに、生成した回帰直線に対応する相関係数を算出する。例えば、情報処理装置100は、全プロットのうち、所定閾値より高い滞在スコアと、その滞在スコアに対応する第2興味スコアとの組合せに対応するプロットを用いて回帰直線を生成する。また、相関係数は、例えば、説明変数(電子書籍)が目的変数(対象ユーザ、あるいは、対象ユーザの興味の対象)のどれくらいを説明しているかを表すものである。
【0077】
次に、情報処理装置100は、相関係数の強さ(回帰直線の当てはまりの強さ)に基づいて、予測モデルM1が対象ユーザ(ステップS14で推測された対象ユーザ)に関連しているか否かを判定し、判定結果に基づいて、対象ユーザに関連している予測モデルを推定する(ステップS25)。例えば、情報処理装置100は、相関係数が所定値より高い場合には、予測モデルM1は対象ユーザに関連していると判定する。つまり、情報処理装置100は、相関係数が所定値より高い場合には、予測モデルM1を対象ユーザに関連する予測モデルとして推定する。また、情報処理装置100は、相関係数が所定値より高いことにより、予測モデルM1を対象ユーザに関連する予測モデルとして推定した場合、予測モデルM1の予測対象である電子書籍を、対象ユーザに関連する情報として推定する。例えば、情報処理装置100は、対象ユーザは「電子書籍」に興味があると推定する。
【0078】
また、
図3の例によると、対象ユーザは「歌手MU1」に最も興味があるといえる。このようなことから、情報処理装置100は、「歌手MU1」に興味がある対象ユーザは、高い確率で「電子書籍」に興味があることを推定することもできる。またこのような推定結果から、情報処理装置100は、例えば、「歌手MU1」と「電子書籍」とは互いに関連性を有するとの推定結果を得ることもできる。
【0079】
次に、情報処理装置100は、対象ユーザに関連する予測モデルと、当該対象ユーザについて推定された各種情報とを提供する(ステップS26)。例えば、情報処理装置100は、ステップS25において、対象ユーザに関連する予測モデルとして予測モデルM1を推定し、また、対象ユーザは「電子書籍」に興味があることを推定したとする。かかる場合、情報処理装置100は、例えば、対象ユーザが「電子書籍」に興味があることが表示されたコンテンツであって、予測モデルM1をダウンロード可能に制御されたコンテンツC12を要求元R1に提供する。
【0080】
なお、情報処理装置100は、ステップS18で情報提供を行うことなく、ステップS26において、これまでの全ての推定結果に基づく情報を提供してもよい。ステップS18では、情報処理装置100が、グラフGと対応表TBとが表示された1つのコンテンツC11を提供してもよい旨説明した。しかし、情報処理装置100は、グラフGと、対応表TBと、対象ユーザが「電子書籍」に興味があることが表示され、かつ、予測モデルM1をダウンロード可能に制御されたコンテンツC2を提供してもよい。なお、情報処理装置100は、ステップS26でコンテンツC2の提供を行う場合、ステップS18を省略してよい。
【0081】
このような情報提供により、要求元R1は、例えば、位置LC111に滞在していたと推測される対象ユーザに関連する予測モデルを知ることができるため、例えば、対象ユーザに関する興味を分析したい場合は、数ある予測モデルの中で予測モデルM1を用いることが効果的であることを容易に知ることができる。また、要求元R1は、対象ユーザが「電子書籍」に興味があること、あるいは、「歌手MU1」と「電子書籍」とは互いに関連性を有することを知ることができるため、例えば、対象ユーザには「電子書籍」からプロモーションしてゆくことが効果的であるとの知見を悦ことができる。
【0082】
さて、これまで説明してきたように、情報処理装置100は、ユーザが所定の位置に滞在していた強度を示す滞在スコアを取得し、滞在スコアが取得された取得元ユーザの滞在スコアと、所定の対象に対するユーザの興味を予測する予測モデルとに基づいて、予測モデルのうち対象ユーザに関連する予測モデルを推定する。これにより、情報処理装置100は、ユーザの興味の対象を高精度に推定することができる。
【0083】
なお、情報処理装置100は、対象ユーザを識別するユーザIDも要求元R1に提供することができる。また、情報処理装置100は、位置LC111に対応する代表的な施設(例えば、公共施設や店舗等)を特定可能な場合には、その施設に関する情報も要求元R1に提供することができる。例えば、情報処理装置100は、
図1の例のように、矩形SQで囲まれた位置である位置LC111には施設FA1が存在することを特定できた場合には、位置LC111には施設FA1の名称や施設FA1の位置情報を提供する。これにより、要求元R1は、例えば、期間Tの間、施設FA1では「歌手MU1」に関するイベントがあったため、対象ユーザは施設FA1に滞在していたといった滞在の原因を推測することができるようになる。
【0084】
〔4.情報処理装置の構成〕
次に、
図6を用いて、実施形態にかかる情報処理装置100について説明する。
図6は、実施形態にかかる情報処理装置100の構成例を示す図である。
図6に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130とを有する。例えば、情報処理装置100は、
図1〜
図4で説明した情報処理を行うサーバ装置である。
【0085】
(通信部110について)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワークNと有線または無線で接続され、例えば、運転要求元装置、ユーザ装置30との間で情報の送受信を行う。
【0086】
(記憶部120について)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ等の半導体メモリ素子またはハードディスク、光ディスク等の記憶装置によって実現される。記憶部120は、位置履歴記憶部121と、検索履歴記憶部122と、滞在スコア記憶部123と、興味スコア記憶部124と、モデル情報記憶部125とを有する。位置履歴記憶部121と、検索履歴記憶部122と、滞在スコア記憶部123と、モデル情報記憶部125については説明済みであるため、ここでの説明は省略する。
【0087】
(興味スコア記憶部124について)
興味スコア記憶部124は、ユーザの対象に対する興味の度合いを示す興味スコアを記憶する。例えば、興味スコア記憶部124は、対象ユーザの興味の度合いを示す第1興味スコアや、他ユーザの興味の度合いを示す一般興味スコアを記憶する。ここで、
図8に実施形態にかかる興味スコア記憶部124の一例を示す。
図8の例では、興味スコア記憶部124は、「検索行動(検索クエリ)」、「第1興味スコア」、「一般興味スコア」といった項目を有する。
【0088】
「検索行動(検索クエリ)」は、対象ユーザまたは他ユーザによる検索行動で用いられた検索クエリを示す。「第1興味スコア」は、対象ユーザの興味の度合いを示す。例えば、第1興味スコアは、検索クエリが示す対象に対する対象ユーザの興味の度合いを示す。「一般興味スコア」は、他ユーザの興味の度合いを示す。例えば、一般興味スコアは、検索クエリが示す対象に対する他ユーザの興味の度合いを示す。一般興味スコアは、例えば、第1興味スコアに対して、マイナスの値で算出される。
【0089】
図8に示す興味スコア記憶部124は、
図1および
図3で説明した例に対応している。すなわち、
図8の例は、検索クエリ「歌手MU1」に対する対象ユーザの第1興味スコアとして「2.35」が算出された例を示す。また、
図8の例は、検索クエリ「健康診断」に対する他ユーザ一般興味スコアとして「2.35」が算出された例を示す。
【0090】
(制御部130について)
図6に戻り、制御部130は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラムがRAMを作業領域として実行されることにより実現される。また、制御部130は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
【0091】
図6に示すように、制御部130は、受付部131と、滞在スコア算出部132と、取得部133と、推測部134と、興味スコア算出部135と、推定部136と、モデル分析部137と、提供部138とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、
図6に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部130が有する各処理部の接続関係は、
図6に示した接続関係に限られず、他の接続関係であってもよい。
【0092】
(受付部131について)
受付部131は、情報提供を希望する要求元から各種情報を受け付ける。例えば、受付部131は、どの期間においてどの位置(場所)での一般ユーザを処理対象とするかが指定された場合に、その指定された内容を示す指定情報を受け付ける。例えば、受付部131は、地図情報MPに含まれる任意の位置が矩形SQで囲まれたうえで送信ボタンが押下された場合に、矩形SQで囲まれた位置を示す位置情報を受け付ける。また、この際に期間も指定された場合には、受付部131は、期間を示す日時情報も受け付ける。また、要求元は個のような指定を要求元装置10を用いて行うため、受付部131は、要求元装置10の識別情報も受け付ける。
【0093】
また、受付部131は、要求元も含めて各種ユーザに関する情報も受け付けることができる。例えば、受付部131は、各ユーザの位置情報をユーザ装置30から受け付け(取得し)、受け付けた位置情報を位置履歴記憶部121に格納する。また、受付部131は、各ユーザの行動情報(例えば、検索行動を示す検索情報)を所定のサーバ装置、あるいは、ユーザ装置30から受け付ける(取得する)。例えば、受付部131、検索情報を受け付けた場合には、受け付けた検索情報を検索履歴記憶部122に格納する。
【0094】
(滞在スコア算出部132について)
滞在スコア算出部132は、ユーザが所定の位置に滞在していた強度を示す滞在スコアを算出する。例えば、滞在スコア算出部132は、要求元により指定された指定情報に含まれる位置情報を有する所有ユーザ(要求元により指定された所定の位置に一瞬でも居たことのあるユーザ)毎に、当該所有ユーザが所定の位置に滞在していた滞在時間に応じた強度(確度)に基づいて、当該所有ユーザの滞在スコアを算出する。例えば、情報処理装置100は、位置履歴記憶部121において所有ユーザに対応付けられる「時刻情報」に基づいて、所定の位置での滞在時間を算出する。
【0095】
例えば、滞在スコア算出部132は、要求元に指定された期間内での所定時刻毎(例えば、30分間隔の時刻範囲毎)に、当該時刻範囲での総滞在時間に基づき、所有ユーザがその時刻範囲が示す時刻において所定の位置に滞在していた強度を算出することにより、算出した強度に応じた滞在スコアを算出する。すなわち、滞在スコア算出部132は、滞在時間と滞在パターンとに基づいて、滞在時間に応じた強度を算出するとともに、算出した強度に基づいて、滞在スコアを算出する。
【0096】
また、このようなことから、滞在スコア算出部132は、例えば、
図1のステップS12で説明した算出処理を行う。また、滞在スコア算出部132は、算出した滞在スコアを滞在スコア記憶部123に格納する。
【0097】
(取得部133について)
取得部133は、ユーザ(所有ユーザ)が所定の位置に滞在していた強度を示す滞在スコアを取得する。例えば、取得部133は、ユーザが所定の位置に滞在していた滞在時間に応じた強度に基づき算出された滞在スコアを取得する。例えば、取得部133は、推測部134によって推測処理が行われる際に、滞在スコア記憶部123から滞在スコアを取得する。そして、取得部133は、取得した滞在スコアを推測部134に出力する。
【0098】
(推測部134について)
推測部134は、取得部133により取得された滞在スコアに基づいて、ユーザ(所有ユーザ)のうち、所定の位置(例えば、要求元により指定された位置)に滞在していたユーザである対象ユーザを推測する。例えば、推測部134は、滞在スコアに基づいて、要求元により指定された期間に含まれる所定の時間間隔毎の時刻範囲毎に、この時刻範囲が示す時刻において所定の位置に滞在していた対象ユーザを推測する。例えば、推測部134は、ユーザのうち、所定値(例えば、5.0)より高い滞在スコアが算出されたユーザに対して、実際に、所定の位置に滞在していたと推測するとともに、このような所有ユーザを対象ユーザと推測する。
【0099】
また、推測部134は、例えば、要求元により指定された期間内での時刻範囲毎の対象ユーザの人数を推定(カウント)することにより、この期間での時間経過に応じた人数変動であって、対象ユーザの人数変動を推定する処理も行ってよい。なお、このような処理は、推定部136によって行われてもよい。また、このようなことから、推測部134は、例えば、
図1のステップS14で説明した処理を行う。
【0100】
(興味スコア算出部135について)
興味スコア算出部135は、対象ユーザの行動履歴に基づいて、行動履歴が示す情報に対する対象ユーザの興味の度合いを示す第1興味スコアを算出する。例えば、興味スコア算出部135は、行動履歴に基づいて、対象ユーザの行動傾向の度合いに応じた値を示す第1興味スコアを算出する。例えば、興味スコア算出部135は、対象ユーザの検索履歴に基づいて、対象ユーザの検索行動の傾向傾向の強さに応じた値であって、検索クエリが示す対象に対する対象ユーザの興味を示す第1興味スコアを算出する。
【0101】
例えば、興味スコア算出部135は、検索履歴記憶部122から対象ユーザの検索履歴であって、対象ユーザが所定の位置に滞在していた時点よりも過去の検索履歴を取得し、取得した検索履歴に含まれる検索行動毎に当該検索行動が示す情報(検索クエリ)に対する、対象ユーザの興味の度合いを示す第1興味スコアを算出する。例えば、興味スコア算出部135は、検索履歴に含まれる検索クエリ毎に当該検索クエリでの検索回数を算出する。そして、興味スコア算出部135は、算出した検索回数が多い検索クエリ程、その検索クエリで検索される傾向にあるとの判断から、検索回数がより多い検索行動程、高い値を示すような第1興味スコアを算出する。例えば、興味スコア算出部135は、検索回数がより多い検索行動程、その検索行動での検索傾向の強度を高く算出する。そして、興味スコア算出部135は、算出した強度に基づいて、第1興味スコアを算出する。このようなことから、興味スコア算出部135は、例えば、
図1のステップS15で説明した処理を行う。
【0102】
また、興味スコア算出部135は、対象ユーザ以外の他ユーザの検索行動のうち、対象ユーザが行った検索行動以外の検索行動に対する、他ユーザ興味の度合いを示す一般興味スコアも算出する。例えば、興味スコア算出部135は、検索履歴記憶部122から他ユーザの検索履歴を取得し、取得した検索履歴に含まれる検索行動の中から、対象ユーザに対応する検索クエリ以外の検索クエリを抽出する。そして、興味スコア算出部135は、抽出した検索クエリでの検索行動毎に当該検索行動が示す情報(検索クエリ)に対する、他ユーザの興味の度合いを示す一般興味スコアを算出する。このようなことから、興味スコア算出部135は、例えば、
図1のステップS16で説明した処理を行う。
【0103】
また、興味スコア算出部135は、第1興味スコア、および、一般興味スコアを興味スコア記憶部124に格納する。
【0104】
(推定部136について)
推定部136は、推測部134により推測された対象ユーザの行動履歴に基づいて、対象ユーザに関連する情報を推定する。例えば、推定部136は、行動履歴として、対象ユーザの検索履歴であって、対象ユーザが所定の位置に滞在していた時点よりも過去の検索履歴に基づいて、対象ユーザに関連する情報を推定する。例えば、推定部136は、ユーザのうち滞在スコアが所定値より高いユーザである対象ユーザの行動履歴に基づいて、対象ユーザに関連する情報を推定する。
【0105】
また、上記の通り、興味スコア算出部135は、対象ユーザの行動履歴(検索履歴)に基づいて、行動履歴が示す情報に対する対象ユーザの興味の度合いを示す第1興味スコアを算出する。したがって、詳細には、推定部136は、興味スコア算出部135により算出された第1興味スコアに基づいて、対象ユーザに関連する情報を推定する。
【0106】
また、推定部136は、対象ユーザ以外の他ユーザに関連する情報をさらに推定する。例えば、推定部136は、他ユーザの行動傾向を示す行動情報のうち、対象ユーザに関連する情報以外の情報に対応する行動情報を、他ユーザに関連する情報として推定する。このようなことから、推定部136は、例えば、
図1のステップS17で説明した処理を行う。
【0107】
また、推定部136は、滞在スコアが取得された取得元ユーザの滞在スコアと、所定の対象に対するユーザの興味を予測する予測モデルとに基づいて、予測モデルのうち対象ユーザに関連する予測モデルを推定する。例えば、推定部136は、取得元ユーザの滞在スコアと、予測モデルを用いて算出された第2興味スコアであって、所定の対象に対する取得元ユーザの興味の度合いを示す第2興味スコアとに基づいて、対象ユーザに関連する予測モデルを推定する。
【0108】
より詳細には、推定部136は、取得元ユーザ毎の滞在スコアと第2興味スコアとの組合せに基づき生成された散布図を用いて算出された相関係数に基づいて、対象ユーザに関連する予測モデルを推定する。具体的には、推定部136は、第2興味スコアをX軸とし、滞在スコアをY軸とした場合に、取得元ユーザ毎の滞在スコアと前記第2興味スコアとが交わるプロットを示す散布図から生成された回帰直線に対応する相関係数に基づいて、対象ユーザに関連する予測モデルを推定する。例えば、推定部136は、相関係数が所定値より高い予測モデルを対象ユーザに関連する予測モデルとして推定する。
【0109】
また、推定部136は、対象ユーザに関連する予測モデルの予測対象を対象ユーザに関連する情報として推定する。このようなことから、推定部136は、例えば、
図4のステップS25で説明した処理を行う。
【0110】
(モデル分析部137について)
モデル分析部137は、滞在スコアが取得された取得元ユーザの滞在スコアと、所定の対象に対するユーザの興味を予測する予測モデルを用いて算出された第2興味スコアであって、所定の対象に対する取得元ユーザの興味の度合いを示す第2興味スコアとに基づいて、散布図を生成する。例えば、モデル分析部137は、第2興味スコアをX軸とし、滞在スコアをY軸とした場合に、取得元ユーザ毎の滞在スコアと第2興味スコアとが交わるプロットを示す散布図を生成する。また、モデル分析部は、散布図に基づいて、回帰直線を生成し、生成した回帰直線の相関係数を算出する。そして、モデル分析部137は、算出した相関係数を推定部136に出力する。このようなことから、推定部136は、例えば、
図4のステップS21〜S24で説明した処理を行う。
【0111】
(提供部138について)
提供部138は、推定部136により推定された情報に基づく情報提供を行う。例えば、提供部138は、情報提供の要求元に対して、所定期間における対象ユーザの人数変動を示す数値情報を提供する。また、提供部138は、要求元に対して、対象ユーザの行動履歴に含まれる対象ユーザの行動を示す行動情報と、行動履歴に基づき算出された対象ユーザの興味の度合いを示す第1興味スコアとを提供する。このようなことから、提供部138は、例えば、
図1〜
図3を用いて説明したステップS18の処理を行う。また、提供部138は、第1提供部に対応する処理部である。
【0112】
また、提供部138は、対象ユーザに関連する予測モデルと、当該対象ユーザについて推定部136により推定された情報とを提供する。このようなことから、提供部138は、例えば、
図4で説明したステップS26の処理を行う。また、提供部138は、第2提供部に対応する処理部である。
【0113】
〔5.処理手順〕
次に、
図9を用いて、実施形態にかかる情報処理の手順について説明する。
図9は、実施形態にかかる情報処理手順を示すフローチャートである。なお、
図9の例では、情報処理装置100は、
図1に示すような位置履歴記憶部121および検索履歴記憶部122を既に有しているものとする。
【0114】
まず、受付部131は、どの期間においてどの位置での一般ユーザを処理対象とするかが指定された指定情報を要求元から受け付けたか否かを判定する(ステップS101)。受付部131は、指定情報を受け付けていない場合には(ステップS101;No)、受け付けるまで待機する。一方、滞在スコア算出部132は、指定情報を受け付けられた場合には(ステップS101;Yes)、指定情報に対応する所有ユーザが要求元により指定された所定の位置に滞在していた強度を示す滞在スコアを算出する(ステップS102)。例えば、滞在スコア算出部132は、所定の場所での所有ユーザの滞在時間と滞在パターンとに基づいて、滞在時間に応じた強度を算出するとともに、算出した強度に基づいて、滞在スコアを算出する。
【0115】
次に、取得部133は、滞在スコア算出部132により算出された滞在スコアを取得し、推測部134は、対象ユーザを推測する(ステップS103)。例えば、推測部134は、所有ユーザのうち、所定値(例えば、5.0)より高い滞在スコアが算出されたユーザに対して、実際に、所定の位置に滞在していたと推測するとともに、このような所有ユーザを対象ユーザと推測する。
【0116】
興味スコア算出部135は、推測部134により初手の位置に滞在していたと推測されたユーザである対象ユーザの行動履歴に基づいて、行動履歴が示す情報に対する対象ユーザの興味の度合いを示す第1興味スコアを算出する(ステップS104)。例えば、興味スコア算出部135は、行動履歴に基づいて、対象ユーザの行動傾向の度合いに応じた値を示す第1興味スコアを算出する。また、興味スコア算出部135は、対象ユーザ以外の他ユーザの行動(例えば、検索行動)のうち、対象ユーザが行った行動以外の行動に対する、他ユーザ興味の度合いを示す一般興味スコアを算出する(ステップS105)。
【0117】
次に、推定部136は、第1興味スコアに基づいて、対象ユーザに関連する情報を推定する(ステップS106)。例えば、推定部136は、対象ユーザの行動履歴に基づいて、対象ユーザに関連する情報を推定する。例えば、推定部136は、検索クエリのうち、所定値より高い第1興味スコアが算出された検索クエリについて、当該検索クエリが示す対象に対して対象ユーザが興味を有すると推定する。また、不図示であるが、推定部136は、対象ユーザ以外の他ユーザに関連する情報も推定する。
【0118】
次に、モデル分析部137は、所有ユーザの属性情報と滞在スコアとを取得する(ステップS107)。そして、モデル分析部137は、処理対象の予測モデルに対して、所有ユーザの属性情報を入力することにより、処理対象の予測モデルに対応する予測対象に対する所有ユーザ毎の第2興味スコアを算出する(ステップS108)。次に、モデル分析部137は、第2興味スコア(X軸)と、滞在スコア(Y軸)とする散布図を生成する(ステップS109)。次に、モデル分析部137は、散布図に基づいて、回帰直線を生成し、生成した回帰直線の相関係数を算出する(ステップS110)。
【0119】
次に、推定部136は、相関係数に基づいて、対象ユーザに関連する予測モデルを推定する(ステップS111)。例えば、推定部136は、相関係数が所定値より高い予測モデルを対象ユーザに関連する予測モデルとして推定する。また、推定部136は、対象ユーザに関連する予測モデルの予測対象を対象ユーザに関連する情報として推定する。
【0120】
次に、提供部138は、推定部136による推定結果に基づく情報(例えば、グラフG、対応表TB、対象ユーザに関連する予測モデル、対象ユーザに関連する予測モデルの予測対象)を要求元に提供する。例えば、提供部138は、推定部136による推定結果に基づく情報(例えば、グラフG、対応表TB、対象ユーザに関連する予測モデル、対象ユーザに関連する予測モデルの予測対象)が表示されるコンテンツC2を生成し、生成したコンテンツC2を要求元装置10に送信する。
【0121】
〔6.ハードウェア構成〕
また、上記実施形態にかかる情報処理装置100は、例えば
図10に示すような構成のコンピュータ1000によって実現される。
図10は、情報処理装置100の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
【0122】
CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0123】
HDD1400は、CPU1100によって実行されるプログラム、および、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、通信網50を介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを、通信網50を介して他の機器へ送信する。
【0124】
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを、入出力インターフェイス1600を介して出力装置へ出力する。
【0125】
メディアインターフェイス1700は、記録媒体1800に格納されたプログラム又はデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0126】
例えば、コンピュータ1000が実施形態にかかる情報処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130の機能を実現する。また、HDD1400には、記憶部120内のデータが格納される。コンピュータ1000のCPU1100は、これらのプログラムを、記録媒体1800から読み取って実行するが、他の例として、他の装置から、通信網50を介してこれらのプログラムを取得してもよい。
【0127】
〔7.その他〕
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【0128】
以上、本願の実施形態をいくつかの図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【0129】
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、受付部は、受付手段や受付回路に読み替えることができる。