(58)【調査した分野】(Int.Cl.,DB名)
ユーザがユーザ端末を操作して行うインターネット上の行動の実行確率に関する予測値を算出する予測モデルを、ユーザをユーザ情報に基づいてグループ分けしたグループ毎に生成するモデル生成手段と、
前記グループ毎の予測モデルに対して、ユーザがユーザ端末を操作して行うインターネット上の行動履歴から取得される素性情報の値を入力して前記予測値を算出し、算出した前記予測値と、前記行動履歴から得られる実績値とを比較してテストすることで、ユーザに適合する予測モデルを割り当てるモデル割当手段と、
前記予測モデルから、前記モデル割当手段がユーザに割り当てた予測モデルを選択するモデル選択手段と、
前記モデル選択手段で選択された予測モデルを用いて、前記予測値を算出する予測値算出手段と、を備える
ことを特徴とする情報処理装置。
【発明を実施するための形態】
【0009】
[第1実施形態]
以下、本発明の第1実施形態を図面に基づいて説明する。
[情報処理装置]
図1は、第1実施形態に係る情報処理装置の構成を示す図である。
第1実施形態の情報処理装置1は、コンピュータにより構成され、記憶装置10、および、制御装置20を備えている。情報処理装置1は、複数のユーザ端末2が通信接続可能なネットワーク3に接続されている。
【0010】
[記憶装置]
記憶装置10は、HDD(Hard Disk Drive)やフラッシュメモリー等により構成され、制御装置20の動作に必要な各種プログラムおよび情報を記憶する。
記憶装置10は、モデル記憶部11、クリック履歴蓄積部12、モデル割当情報記憶部13、関係情報蓄積部14を備える。
【0011】
モデル記憶部11は、ウェブページ上で特定のユーザが特定の広告をクリックする確率(CTR:Click-Through rate)の予測値である予測CTRを算出する予測モデルを記憶する。
予測モデルは、例えば、次式(1)で示される。式(1)において、A,Bは定数を示す。yは、次式(2)で示される。nは変数を示し、Xnは素性情報の数値を示し、Wnは、Xnが予測CTRに貢献する貢献度を決める重み係数を示す。
【0014】
素性情報は、ユーザや広告に関する様々な情報であり、例えば、ユーザ属性や、配信対象のページと広告の類似度や、ユーザ属性と広告の関連性や、広告そのものの情報や、過去の配信実績等を示す情報である。
なお、予測モデルは、クリック確率に関する予測値を求めるものであれば、クリック確率そのものを求めるものでなくてもよい。例えば、式(2)で示されるyを求めるものであってもよい。
【0015】
ここで、モデル記憶部11には、ユーザをユーザ属性に基づいてグループ分けしたグループ毎に生成された予測モデル(局所モデルとも称す)と、すべてのグループに共通する共通の予測モデル(共通モデルとも称す)とが記憶される。
例えば、局所モデルとしては、主婦のグループを対象として生成される主婦モデルや、富裕層のグループを対象として生成されるリッチモデル等が例示できる。
【0016】
クリック履歴蓄積部12(本発明の行動履歴蓄積部を構成)は、過去にユーザが所定のウェブページにアクセスした際の、配信広告のクリック結果を示すクリック履歴(本発明の行動履歴を構成)を蓄積する。クリック履歴には、ユーザID(IDentifiers:識別情報)、ウェブページID、広告ID、クリックの有無、クリック日時等の情報が含まれる。
ここで、クリック履歴蓄積部12には、クリック履歴が、局所モデルおよび共通モデルのいずれかの予測モデルが対応付けられて蓄積される。
【0017】
モデル割当情報記憶部13は、ユーザIDと、後述するモデル割当処理によってユーザに対して割り当てられた予測モデルとが関係付けられたモデル割当情報を記憶する。
【0018】
関係情報蓄積部14は、後述するモデル割当処理によって取得される素性情報の値と、当該モデル割当処理によって割り当てられた予測モデルとが関係付けられた関係情報を蓄積する。
【0019】
[制御装置]
制御装置20は、情報処理装置1の動作を制御するものであり、CPU(Central Processing Unit)等の演算装置により構成されている。
制御装置20は、演算装置が記憶装置10に記憶された情報処理プログラムを実行することにより、モデル割当手段21、クリック履歴蓄積制御手段22、モデル生成手段23、モデル選択手段24、予測値算出手段25、配信手段26として機能する。
【0020】
モデル割当手段21は、ユーザ毎に、共通モデルおよびグループ毎に生成された局所モデルから、ユーザに適合する予測モデルを割り当てる。また、ユーザと割り当てた予測モデルとを関係付けたモデル割当情報をモデル割当情報記憶部13に格納する。
また、モデル割当手段21は、ユーザ毎に、クリック履歴蓄積部12から、蓄積されたクリック履歴を読み出し、読み出したクリック履歴に基づいて素性情報の値を取得する。そして、取得した素性情報の値と、割り当てた予測モデルとを関係付けた関係情報を、関係情報蓄積部14に蓄積する。
【0021】
クリック履歴蓄積制御手段22(本発明の行動履歴蓄積制御手段を構成)は、ユーザが所定のウェブページにアクセスした際に得られる配信広告のクリック履歴を取得すると、取得したクリック履歴を、後述するモデル選択手段24で選択された予測モデルに対応付けてクリック履歴蓄積部12に蓄積する。
【0022】
モデル生成手段23は、各予測モデルを、クリック履歴蓄積部12に蓄積されている対応するクリック履歴に基づいて生成し、モデル記憶部11に格納する。
具体的には、モデル生成手段23は、蓄積されたクリック履歴に基づいて、素性情報の値とクリック実績との組を多数取得して、予測CTRに対する素性情報の貢献度(Wn)を学習し、予測モデルを生成する。
ここで、モデル生成手段23は、定期的に予測モデルを生成し、新たに生成した予測モデルをモデル記憶部11に上書きして格納する。
【0023】
モデル選択手段24は、モデル割当情報記憶部13に記憶されたモデル割当情報、または、関係情報蓄積部14に蓄積された関係情報に基づいて、ユーザに適合する予測モデルを選択する。
【0024】
予測値算出手段25は、ユーザが所定のウェブページにアクセスしたことを示すページアクセス情報を取得すると、モデル選択手段24で選択された予測モデルを用いて、配信候補の広告毎に予測CTRを算出する。
【0025】
配信手段26は、予測値算出手段25で算出された予測CTRに基づいて、ユーザに配信する広告を決定して配信する。
例えば、配信候補の広告のうち、予測CTRが最も高い広告をユーザに配信する。
【0026】
[モデル割当処理]
次に、モデル割当処理について説明する。
図2は、モデル割当処理を示すフローチャートである。モデル割当処理は、例えば1週間等の所定期間間隔で実行される。
図2に示すように、モデル割当処理が実行されると、モデル割当手段21は、クリック履歴蓄積部12にクリック履歴が蓄積されているユーザの中から、一人のユーザを選択する(ステップS11)。
【0027】
次に、モデル割当手段21は、クリック履歴蓄積部12から、選択したユーザの蓄積されたクリック履歴を読み出して取得し(ステップS12)、さらに、取得したクリック履歴に基づいて、素性情報の値を取得する(ステップS13)。
【0028】
次に、モデル割当手段21は、モデル記憶部11に記憶されている複数の予測モデルを、取得した素性情報の値を用いてテストし、ユーザに適合する予測モデルを割り当てる(ステップS14)。
具体的には、モデル割当手段21は、各予測モデルに対して、取得した素性情報の値を入力し、予測CTRを算出する。そして、算出した予測CTRと取得したクリック履歴から得られる実績値とを比較することで、複数の予測モデルからユーザに適合する予測モデルを割り当てる。
例えば、モデル割当手段21は、算出した予測CTRが実績値と最も近くなる予測モデルをユーザに割り当てる。
すなわち、モデル割当手段21は、ユーザに対して、局所モデルのいずれかが適合すれば、適合した局所モデルを割り当て、局所モデルがいずれも適合せずに共通モデルが適合すれば、共通モデルを割り当てる。
【0029】
次に、モデル割当手段21は、ユーザと、割り当てた予測モデルとを関係付けたモデル割当情報を、モデル割当情報記憶部13に格納する(ステップS15)。なお、ユーザに対応するモデル割当情報が既にモデル割当情報記憶部13に記憶されている場合には、新しいモデル割当情報で古いモデル割当情報を上書きする。
さらに、モデル割当手段21は、取得した素性情報の値と、割り当てた予測モデルとを関係付けた関係情報を、関係情報蓄積部14に蓄積する(ステップS16)。
【0030】
次に、モデル割当手段21は、クリック履歴蓄積部12にクリック履歴が蓄積されているユーザをすべて選択したか否かを判定する(ステップS17)。
モデル割当手段21は、ステップS17でNOと判定された場合は、処理をステップS11に戻し、ステップS11〜S17の処理を再度実行する。そして、すべてのユーザが選択され、ステップS17でYESと判定されると、モデル割当処理を終了する。
【0031】
[予測処理]
次に、予測処理について説明する。
図3は、予測処理を示すフローチャートである。予測処理は、例えば、ユーザが所定のウェブページにアクセスした際に実行される。
図3に示すように、予測処理が実行されると、予測値算出手段25は、ユーザが所定のウェブページにアクセスしたことを示すページアクセス情報を取得し、取得したページアクセス情報に基づいて、配信候補の広告毎に、素性情報の値を取得する(ステップS21)。
【0032】
次に、予測値算出手段25は、モデル割当情報記憶部13に、対象のユーザのモデル割当情報が記憶されているか否かを判定する(ステップS22)。
ステップS22でYESと判定された場合、予測値算出手段25は、当該モデル割当情報で関係付けられている予測モデル(局所モデルおよび共通モデルのいずれかの予測モデル)を選択する(ステップS23)。
一方、ステップS22でNOと判定された場合、予測値算出手段25は、関係情報蓄積部14が蓄積している関係情報に基づいて、取得した素性情報の値との相関性が高い予測モデルを選択する。
すなわち、予測値算出手段25は、取得した素性情報の値との相関性が高い局所モデルがあれば、その局所モデルを選択し、なければ、共通モデルを選択する。
【0033】
ステップS23、または、ステップS24の処理の後、予測値算出手段25は、配信候補の広告毎に、ステップS23、または、ステップS24で選択された予測モデルを用いて、取得した素性情報の値に基づいて予測CTRを算出する(ステップS25)。
【0034】
次に、配信手段26は、配信候補の広告毎に算出された予測CTRに基づいて、ユーザに配信する広告を決定する。例えば、配信手段26は、予測CTRが最も高い広告を、配信広告に決定する。そして、配信手段26は、当該広告をユーザに配信する(ステップS26)。なお、配信される広告は、複数選択されてもよい。
【0035】
次に、クリック履歴蓄積制御手段22は、配信された広告に対するクリック履歴を取得し、取得したクリック履歴を、クリック履歴蓄積部12に蓄積する(ステップS27)。
ここで、クリック履歴蓄積制御手段22は、ステップS23、または、ステップS24で選択された予測モデルが、局所モデルである場合は、取得したクリック履歴を、共通モデル、および、選択された局所モデルに対応付けてクリック履歴蓄積部12に蓄積する。
また、選択された予測モデルが、共通モデルである場合は、取得したクリック履歴を、共通モデルに対応付けてクリック履歴蓄積部12に蓄積する。
そして、制御装置20は、予測処理を終了する。
【0036】
[第1実施形態の作用効果]
グループ毎に生成された予測モデル(局所モデル)に基づいて予測CTRが算出されるため、共通モデルを用いて予測CTRを算出する場合と比べて、算出に用いる素性情報の数を少なくでき、予測CTRの計算時間を短縮できる。
また、ユーザに適合する局所モデルを用いて予測CTRが算出されるため、様々な属性を持ったユーザを対象とする共通モデルを用いて予測CTRを算出する場合と比べて予測CTRの精度を向上できる。
【0037】
モデル生成手段23は、予測モデルとして、グループ間で共通する共通モデルを生成する。これによれば、どのグループにも属さないユーザに対しても、共通モデルによって予測CTRを算出できる。
【0038】
モデル割当手段21は、グループ毎に生成された予測モデルを、ユーザのクリック履歴を用いてテストすることで、ユーザに適合する予測モデルを割り当てる。そして、モデル選択手段24は、モデル割当手段21がユーザに割り当てた予測モデルを選択する。
これによれば、ユーザのクリック実績に基づいて予測モデルを選択できるため、ユーザに適合する予測モデルを精度よく選択できる。
【0039】
モデル選択手段24は、モデル割当情報記憶部13にユーザのモデル割当情報がない場合、素性情報の値と予測モデルとが関係付けられた関係情報に基づいて、ユーザに適合する予測モデルを選択する。
これによれば、クリック履歴が蓄積されておらず、モデル割当情報がないユーザに対しても、適合する予測モデルを選択できる。
また、予測モデルをテストする必要がないため、ユーザに適合する予測モデルを直ちに選択でき、かつ、テストにかかる制御装置20の処理負荷を低減できる。
【0040】
クリック履歴蓄積制御手段22は、ユーザのクリック履歴を、モデル選択手段24で選択された予測モデルに対応付けてクリック履歴蓄積部12に蓄積し、モデル生成手段23は、各予測モデルを、クリック履歴蓄積部12に蓄積された対応するクリック履歴に基づいて生成する。
これによれば、クリック履歴が蓄積されていくに従って、各予測モデルを生成するための学習情報が増加するため、各予測モデルの予測精度を向上できる。
【0041】
各グループは、ユーザ属性に基づいてグループ分けされている。これによれば、例えば、情報処理装置1の管理者が、ユーザ属性とクリック確率との関係を経験から把握していれば、経験に応じて効果的なグループ分けを行うことができる。
【0042】
[第2実施形態]
次に、本発明の第2実施形態を図面に基づいて説明する。
第1実施形態では、ユーザのグループは、例えば情報処理装置1の管理者によって予め決定されるが、第2実施形態では、ユーザを、ユーザ情報に基づいて統計的手法であるディリクレ過程を用いて自動的にグループ分けしている。その他の構成は、第1実施形態と同様である。
【0043】
図4は、第2実施形態の情報処理装置の構成を示す図である。
図4に示すように、第2実施形態の情報処理装置1Aの制御装置20Aは、第1実施形態と同じモデル割当手段21、クリック履歴蓄積制御手段22、モデル生成手段23、モデル選択手段24、予測値算出手段25、配信手段26に加えて、グループ分け手段27を備える。
【0044】
グループ分け手段27は、ユーザを、ユーザに関する情報であるユーザ情報(ユーザ属性や、クリック履歴蓄積部12に蓄積されたクリック履歴の数(ログ数)等)に基づいて、ディリクレ過程を用いてグループ分けする。
ここで、グループ分け手段27は、ディリクレ過程における集まり度を決めるパラメータ(ハイパーパラメータとも称す)の値を複数段階に設定した複数通りのグループ分けを行う。
例えば、ハイパーパラメータの値を、「0.01」、「1」、「100」に設定した3通りのグループ分けを行う。
【0045】
そして、本実施形態では、モデル生成手段23は、グループ分け手段27による複数通りのグループ分けのそれぞれに対して、グループ毎に予測モデルを生成し、生成した予測モデルをモデル記憶部11に格納する。
【0046】
[第2実施形態の作用効果]
グループ分け手段27は、ユーザを、ユーザ情報に基づいて、統計的手法であるディリクレ過程を用いてグループ分けするため、ユーザ情報に応じて自動的に適切なグループ分けを行うことができる。これにより、情報処理装置1の管理者の経験に依らずに、予測モデルの予測精度を向上できる。
【0047】
[第3実施形態]
次に本発明の第3実施形態について説明する。
第1実施形態では、モデル割当手段21は、複数の予測モデルを、ユーザのクリック履歴から取得した素性情報の値を用いてテストして、ユーザに適合する予測モデルを割り当てているが、第3実施形態では、モデル割当手段21は、モデル割当処理が最初に実行されてから所定期間は、第1実施形態と同様の方法で予測モデルの割り当てを行い、当該所定期間経過後は、当該所定期間に蓄積された関係情報に基づいて予測モデルの割り当てを行う。その他の構成は、第1実施形態と同様である。
【0048】
すなわち、本実施形態では、モデル割当処理が最初に実行されてから所定期間(例えば、2週間)までは、ステップS14において、モデル割当手段21は、第1実施形態と同様に、モデル記憶部11に記憶されている複数の予測モデルを、ユーザのクリック履歴から取得した素性情報の値を用いてテストすることで、ユーザに適合する予測モデルを割り当てる。
これにより、ステップS16において、ステップS13で取得された素性情報の値と、ステップS14で割り当てられた予測モデルとが関係付けられた関係情報が、前記所定期間分、関係情報蓄積部14に蓄積される。
【0049】
そして、モデル割当処理が最初に実行されてから前記所定期間経過した後は、ステップS14において、モデル割当手段21は、関係情報蓄積部14に蓄積された前記所定期間分の関係情報における素性情報と予測モデルとの関係の規則性に基づいて、取得した素性情報との相関性が高い予測モデルを抽出してユーザに割り当てる。
【0050】
[第3実施形態の作用効果]
モデル割当手段21は、モデル割当処理が最初に実行されてから所定期間経過した後は、関係情報に基づいてユーザに適合する予測モデルを割り当てるため、予測モデルをテストする必要がなく、予測モデルの割り当てに要する計算時間を短縮できる。
【0051】
なお、本発明は、上述した実施形態に限定されるものではなく、本発明の目的を達成できる範囲で、以下に示される変形をも含むものである。
【0052】
[変形例1]
前記各実施形態では、予測モデルは、ユーザが広告をクリックする確率に関する予測値を算出するものであったが、本発明はこれに限定されない。すなわち、ユーザがユーザ端末2を操作して行うインターネット上の行動の実行確率に関する予測値を算出するものであればよい。このような行動としては、商品の購入等が例示できる。
そして、情報処理装置1は、算出した予測値に基づいて、例えば、ユーザに各種レコメンドやサジェスチョンを行ってもよい。
【0053】
[変形例2]
前記各実施形態では、モデル割当処理は、クリック履歴蓄積部12にクリック履歴が蓄積されているすべてのユーザに対して行われているが、本発明はこれに限定されない。すなわち、一部のユーザに対してのみ行われてもよい。
【0054】
[変形例3]
前記第2実施形態では、グループ分け手段27は、ディリクレ過程を用いてグループ分けを行っていたが、本発明はこれに限定されない。例えば、他の統計的手法を用いてグループ分けを行ってもよい。
【0055】
[変形例4]
前記第3実施形態では、モデル割当手段21は、モデル割当処理が最初に実行されてから所定期間までは、複数の予測モデルをユーザのクリック履歴から取得した素性情報の値を用いてテストすることで、ユーザに適合する予測モデルを割り当てているが、本発明はこれに限定されない。例えば、情報処理装置1の管理者の経験等から、予め素性情報と予測モデルとが関係付けられた関係情報を作成しておけば、モデル割当処理が最初に実行されたときから、当該関係情報に基づいて予測モデルを抽出してユーザに割り当ててもよい。