以下に、本願に係る学習装置、学習方法及び学習プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る学習装置、学習方法及び学習プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
(第1の実施形態)
〔1.予測処理〕
まず、図1を用いて、第1の実施形態に係る予測処理の一例について説明する。図1は、第1の実施形態に係るに係る予測処理の一例を示す図である。図1の例では、予測装置100によってユーザが所定のコンバージョンに至るか否かを予測する予測処理が行われる例を示す。所定のコンバージョンとは、例えば、コンテンツ提供者(例えば、広告主)の利益につながる行動である。
図1には、第1の実施形態に係る予測装置100が有するログ情報記憶部121の一例を示している。図1に示す例において、ログ情報記憶部121は、ログ情報として複数のユーザが過去に行った行動の履歴を記憶する。予測装置100は、ログ情報記憶部121に記憶されたログ情報を基に学習した結果を用いて予測対象のユーザがコンバージョンに至るかを予測する。なお、図1では、ユーザに関するユーザ情報がユーザの行動履歴である例を説明する。
ログ情報記憶部121には、「ユーザID」、「コンバージョン」、「期間」、「分割情報ID」、「行動履歴」といった情報が記憶される。
「ユーザID」は、ユーザを識別するための識別情報を示す。なお、ログ情報記憶部121は、同一のユーザが複数台のユーザ端末を使用する場合であっても、同一のユーザと識別可能であれば同じユーザIDとして記憶してもよい。
「コンバージョン」は、事象を識別するための識別情報である「事象ID」と、そのコンバージョンの発生の有無を示す「発生情報」とからなる。ここで、事象IDが同じである発生情報は、同じ事象に関する発生有無を示すものとして識別できる。例えば、図1に示す例において、事象ID「E11」により識別される3つの発生情報は、同一のコンバージョンに関する発生有無を示す情報であると識別できる。また、コンバージョンとは、例えば、ユーザによる広告主の利益につながる行動であり、オンラインショッピングでの商品購入、SNS(Social Networking Service)サイトでの会員登録など種々のユーザの行動が挙げられる。また、コンバージョンには、コンバージョンに至ったかに関する情報が取得可能であれば、例えば、実店舗での商品購入を含んでもよい。なお、ログ情報記憶部121は、図1に示す例において、コンバージョンに至ったユーザに対しては発生情報として「1」を記憶し、コンバージョンに至らなかったユーザに対しては発生情報として「−1」を記憶する。
「期間」は、そのユーザIDにより識別されるユーザの行動を対象とする期間を示す。図1に示す例において、ログ情報記憶部121は、「2014/7/26 0:00:00〜23:59:59」、「2014/7/27 0:00:00〜23:59:59」、「2014/7/28 0:00:00〜23:59:59」・・・と所定の間隔で分割された期間ごとにユーザの行動履歴を格納する。なお、期間は、例えば、1時間や1週間など、取得する行動履歴の種類に応じて設定可能であってもよい。
「分割情報ID」は、各期間の情報を識別するための識別情報を示す。例えば、図1に示す例において、ユーザID「U11」により識別されるユーザに関する2014年7月26日0時0分0秒から23時59分59秒までの期間の情報は、分割情報ID「D111」により識別される。同様に、ユーザID「U12」により識別されるユーザに関する2014年7月27日0時0分0秒から23時59分59秒までの期間の情報は、分割情報ID「D122」により識別される。なお、ログ情報記憶部121は、「分割情報ID」を記憶しなくてもよい。
「行動履歴」は、分割された期間ごとに集計されたユーザの行動を示す。図1に示す例において、各ユーザの「行動履歴」として、「商品Aの広告」、「商品Bの広告」、「商品Cの広告」、「商品Dの広告」・・・がユーザに配信された配信回数を格納する。このように、ログ情報記憶部121は、所定の期間(図1に示す例においては1日)ごとに行動履歴を記憶する。このように、同一の要素である「商品Aの広告」、「商品Bの広告」、「商品Cの広告」、「商品Dの広告」・・・が所定の期間ごとに分割された複数の分割情報となる。具体的には、図1に示す例において、同一の要素である「商品Aの広告」、「商品Bの広告」、「商品Cの広告」、「商品Dの広告」・・・は、1日ごとに分割されている。
ここで、図1に示すように、1つの事象IDにより識別される発生情報にそれぞれ異なる分割情報IDにより識別される複数の行動履歴が対応付けられている。つまり、ログ情報記憶部121は、所定の期間ごとに分割された複数の行動履歴と、ユーザに関する所定の事象の発生の有無を示す情報である発生情報とが対応付けられた対応情報を記憶する。具体的には、予測装置100は、分割情報ID「D111」、「D112」、「D113」・・・により識別される複数の分割情報に対して、ユーザID「U11」に対応する事象ID「E11」により識別される1つの事象に関する発生情報とが対応付けられた対応情報を記憶する。
そして、予測装置100は、対応情報を用いて学習処理を行い、学習の結果として学習情報を生成する(ステップS1)。具体的には、予測装置100は、各要素がコンバージョンに与える影響度を示す重み係数を学習情報として導出する。言い換えると、予測装置100は、各要素がコンバージョンに至るか否かに与える影響の度合いを数値として算出する。なお、予測装置100が行う学習処理については後述する。
その後、予測装置100は、予測対象のユーザの行動履歴(例えば、1日分の行動履歴)を対象ログ情報として取得した場合(ステップS2)、学習情報と対象ログ情報とに基づいて予測対象のユーザがコンバージョンを行うか否かを予測する予測処理を行う(ステップS3)。なお、予測処理についての詳細は後述する。
このように、第1の実施形態に係る予測装置100は、コンピュータネットワーク上から取得した情報に基づいて、ユーザが所定の行動を行うか否かの予測を行うことができる。例えば、図1に示す例のように、所定の期間(図1に示す例においては1日)ごとにログ情報が蓄積されることがある。この場合、複数の分割情報の1つ1つに対して事象の発生有無を対応付けて学習処理を行うことも考えられるが、コンバージョンのタイミングとユーザがコンバージョンに至ることの意思決定を行ったタイミングとが異なっていた場合、ユーザの行動を予測するための学習情報を適切に導出できない。具体的には、ユーザID「U11」により識別されるユーザが、2014年7月26日の時点で、次に化粧品の広告を見たら購入しようと決めていた場合に、2014年7月28日に化粧品の広告を見て購入した場合であっても、ユーザが意思決定した2014年7月26日ではなくコンバージョンが行われた2014年7月28日のログ情報が事象の発生に関係する情報だと判断してしまう場合がある。言い換えると、ユーザが意思決定を行った2014年7月26日ではなくコンバージョンに至った2014年7月28日を正解として学習を行うことになる。つまり、学習をするのに必要な正解ラベルを正しく付与することができない。このような不適切な情報に基づいて生成された学習情報を用いて予測を行った場合、ユーザの行動を予測するための学習情報を適切に導出することは難しい。しかし、予測装置100は、ユーザが行動をする意思決定をいつの時点で行ったかをユーザ自身が意識していない場合であっても、1つの事象発生に対して複数の分割情報を対応付けて学習処理を行うため、1つの事象発生に対して複数の分割情報を全体の傾向として学習処理を行うことができる。つまり、予測装置100は、ユーザが行動をする意思決定をいつの時点で行ったかをユーザ自身が意識していない場合であっても、複数の分割情報全体を1つの事象の発生に対応付けるため、ユーザの行動を予測するための学習情報を適切に導出できる。これにより、予測装置100は、本来の意思決定のタイミングにおける行動が事象発生に与える影響を反映した学習情報を導出できる。
また、予測装置100は、複数の分割情報に1つの事象の発生有無を対応付けるので、1つ1つの分割情報に事象の発生有無を対応付けて学習を行う場合に比べて計算量を抑制することができるため、より短い時間で事象の発生を適切に予測するための学習情報を導出することができる。
〔2.予測システム〕
次に、図1に説明した予測装置100を有する予測システム1について図2を用いて説明する。図2は、第1の実施形態に係る予測システムの構成例を示す図である。図2に示す予測システム1は、コンピュータネットワーク上でのユーザの行動履歴に基づいてユーザが所定の行動が行うかを予測する予測サービスを提供する。また、図2では、予測装置100を予測対象のユーザへの広告配信に用いる例を示す。
図2に示すように、予測システム1には、ユーザ端末10と、ウェブサーバ20と、広告装置30と、予測装置100とが含まれる。予測装置100は、ネットワーク40(図20参照)を介して、ウェブサーバ20や広告装置30と通信可能に接続される。なお、図2に示す予測システム1には、複数台のユーザ端末10や、複数台のウェブサーバ20や、複数台の広告装置30や、複数台の予測装置100が含まれてもよい。
ユーザ端末10は、ユーザによって利用される情報処理装置である。ユーザ端末10は、例えば、スマートフォンやタブレット端末やPDA(Personal Digital Assistant)等の移動端末や、デスクトップ型PC(Personal Computer)や、ノート型PC等である。また、図1の例の場合、1人のユーザが利用するユーザ端末10は1台であるが、同一のユーザと識別可能であれば1人のユーザに対してユーザ端末10は複数台あってもよい。
ウェブサーバ20は、ユーザからの要求に応じてウェブページ等のウェブ情報を配信する情報処理装置である。ウェブサーバ20によって配信されるウェブページは、例えば、HTML(HyperText Markup Language)により記述されたHTMLファイルや、XML(Extensible Markup Language)により記述されたXMLファイル等により形成される。また、ウェブサーバ20によって配信されるウェブページには、広告取得命令が含まれる。例えば、ウェブページを形成するHTMLファイル等には、広告装置30のURL等が広告取得命令として記述される。この場合、ユーザ端末10は、HTMLファイル等に記述されているURLにアクセスすることで、広告装置30から広告コンテンツを取得する。なお、ウェブサーバ20からユーザ端末10に配信される各種データは、実際にはウェブページを形成するHTMLファイルや画像等であるが、以下では、ウェブサーバ20からユーザ端末10に配信される各種データを「ウェブページ」と表記する場合がある。
広告装置30は、ユーザ端末10から広告コンテンツの取得要求を受け付け、広告コンテンツの取得要求を送信したユーザ端末10に対して、広告コンテンツを配信する。また、広告装置30は、ログ情報を記憶する。具体的には、広告装置30は、ユーザ端末10からの要求に応じて広告コンテンツを送信した場合、広告コンテンツを要求したユーザを識別する情報と、そのユーザに送信した広告コンテンツを識別する情報とを関連付けてログ情報として記憶する。例えば、広告装置30は、ユーザ端末10から広告コンテンツの取得要求を受け付けた際にユーザ端末10から取得した情報、例えばクッキーなどに基づいてユーザを特定し、そのユーザを識別するIDに、そのユーザに送信した広告コンテンツを識別するIDを関連付けてログ情報として記憶してもよい。また、広告装置30は、そのユーザがコンバージョンに至ったかを示す情報もログ情報として記憶する。例えば、広告装置30は、広告主のサーバからユーザがコンバージョンに至ったかを示す情報を取得する。また、広告装置30は、所定の期間(例えば1日)ごとにログ情報を蓄積する。
予測装置100は、コンピュータネットワークであるウェブ上から取得した情報に基づいてユーザが所定の行動を行うかを予測する予測サービスを提供する学習装置である。以下では、予測装置100により、ユーザがコンバージョンとして化粧品の購入を行うか否かを予測する例を示す。
図2に示すように、予測装置100は、広告装置30からログ情報を取得する(ステップS11)。例えば、予測装置100は、広告装置30へログ情報の送信を要求するログ要求情報を送信し、ログ要求情報を受信した広告装置30からログ情報を取得してもよい。また、予測装置100は、広告装置30からログ情報を所定の間隔、例えば1日おきに取得してもよい。そして、予測装置100は、取得したログ情報に基づいて、図1で説明した学習処理を行う(ステップS12)。なお、予測装置100は、ログ情報を取得する度に学習処理を行ってもよいし、所定の間隔、例えば1日おきに学習処理を行ってもよい。
続いて、予測装置100は、広告装置30から予測対象のユーザの行動履歴を対象ログ情報として取得する(ステップS13)。そして、予測装置100は、ステップS12の学習処理により生成した学習情報と、対象ログ情報とに基づいて図1で説明した予測処理を行い、予測対象のユーザに関する予測情報を生成する(ステップS14)。すなわち、予測装置100は、予測対象のユーザが化粧品の購入を行うか否かを予測した結果である予測情報を生成する。例えば、予測装置100は、化粧品の購入を行う可能性が高いことを「1」、化粧品の購入に至る可能性が低いことを「0」で示す予測情報を生成する。その後、予測装置100は、予測情報を広告装置30へ送信する(ステップS15)。
ここで、図2に示すように、ユーザはユーザ端末10を用いてウェブページの閲覧等の行動を行う。そして、ウェブサーバ20は、ユーザ端末10からウェブページの取得要求を受信した場合(ステップS16)、ユーザ端末10から取得要求に対応したウェブページをユーザ端末10へ送信する(ステップS17)。ウェブページを受信したユーザ端末10は、ウェブページに広告取得命令が含まれる場合には、広告コンテンツの取得を要求する広告要求を広告装置30へ送信する(ステップS18)。
広告装置30は、ユーザ端末10から広告要求を受け付けた場合、広告要求を送信したユーザ端末10に対応するユーザに関して予測情報を予測装置100から取得しているか否かを確認する。そして、広告装置30は、広告を要求するユーザが化粧品の購入に至る可能性が高いことを示す予測情報を取得している場合、化粧品に関する広告コンテンツをユーザ端末10へ送信する(ステップS19)。
これにより、第1の実施形態に係る予測システム1において、広告装置30は、コンバージョンに至る可能性の高いユーザに対して適切な広告コンテンツを提供することができる。また、予測装置100は、コンバージョンに関する影響度を示す重み係数を広告装置30へ送信してもよい。これにより、広告装置30は、事象の発生に与える各要素の影響度を把握できる。なお、予測装置100は、ウェブサーバ20からログ情報を収集するログサーバからログ情報を取得してもよい。なお、予測装置100と広告装置30とは、一体であってもよい。
なお、上記例では、化粧品を一例として説明したが、予測装置100は、化粧品に限らず、被服やお酒など他の商品に関しても同様に予測処理を行ってもよい。例えば、予測装置100は、複数の商品に関して学習情報を生成してもよい。この場合、予測装置100は、一人のユーザに対して学習情報を生成した各商品についてコンバージョンに至るかの予測を行ってもよい。また、予測装置100は、広告装置30へ複数の予測情報を送信してもよい。この場合、広告装置30は、取得した複数の予測情報に基づいて、どの商品に関する広告を配信するかを決定してもよい。なお、予測装置100は、複数の商品に関する学習情報を広告装置30へ送信してもよい。
〔3.予測装置の構成〕
次に、図3を用いて、第1の実施形態に係る予測装置100の構成について説明する。図3は、第1の実施形態に係る予測装置100の構成例を示す図である。図3に示すように、予測装置100は、通信部110と、記憶部120と、制御部130とを有する。
通信部110は、例えば、NIC等によって実現される。そして、通信部110は、ネットワーク40と有線又は無線で接続され、ウェブサーバ20との間で情報の送受信を行う。
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。第1の実施形態に係る記憶部120は、図3に示すように、ログ情報記憶部121と、学習情報記憶部122とを有する。
(ログ情報記憶部121)
上述したように第1の実施形態に係るログ情報記憶部121は、ログ情報として複数のユーザの行動履歴を記憶する。
具体的には、図1に示す例において、ユーザID「U11」により識別されるユーザは、事象ID「E11」により識別される発生情報に「1」が格納されているため、化粧品の購入に至ったユーザとして記憶される。そして、「U11」のユーザについては、期間「2014/7/26 0:00:00〜23:59:59」の間に、商品Aの広告を「8回」、商品Bの広告を「0回」、商品Cの広告を「4回」、商品Dの広告を「9回」・・・それぞれ配信を受けたという行動履歴が格納されている。また、「U11」のユーザについては、期間「2014/7/27 0:00:00〜23:59:59」の間に、商品Aの広告を「3回」、商品Bの広告を「2回」、商品Cの広告を「5回」、商品Dの広告を「2回」・・・それぞれ配信を受けたという行動履歴が格納されている。一方、ユーザID「U12」により識別されるユーザは、事象ID「E11」により識別される発生情報に「−1」が格納されているため、化粧品の購入に至らなかったユーザとして記憶される。そして、「U12」のユーザについては、期間「2014/7/26 0:00:00〜23:59:59」の間に、商品Aの広告を「3回」、商品Bの広告を「5回」、商品Cの広告を「2回」、商品Dの広告を「6回」、・・・それぞれ配信を受けたという行動履歴が格納されている。また、「U12」のユーザについては、期間「2014/7/27 0:00:00〜23:59:59」の間に、商品Aの広告を「0回」、商品Bの広告を「2回」、商品Cの広告を「3回」、商品Dの広告を「5回」、・・・それぞれ配信を受けたという行動履歴が格納されている。
(学習情報記憶部122)
学習情報記憶部122は、学習処理により生成される学習情報である各要素(素性)の重み係数を記憶する。図4には、第1の実施形態に係る学習情報記憶部122の一例を示す。図4に示すように、学習情報記憶部122は、「商品Aの広告(x1)」、「商品Bの広告(x2)」、「商品Cの広告(x3)」、「商品Dの広告(x4)」・・・の各要素(素性)に対応する重み係数(w)を記憶する。図4に示す例においては、学習情報記憶部122は、「商品Aの広告」の重み係数(w1)として「6」を、「商品Bの広告」の重み係数(w2)として「−2」を、「商品Cの広告」の重み係数(w3)として「3」を、「商品Dの広告」の重み係数(w4)として「4」をそれぞれ記憶する。
(制御部130)
図3の説明に戻って、制御部130は、例えば、CPUやMPU等によって、予測装置100内部の記憶装置に記憶されている各種プログラム(配信プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、例えば、ASICやFPGA等の集積回路により実現される。
図3に示すように、制御部130は、取得部131と、学習部132と、予測部133と、送信部134とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図3に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部130が有する各処理部の接続関係は、図3に示した接続関係に限られず、他の接続関係であってもよい。
(取得部131)
取得部131は、コンピュータネットワーク上における所定の対象に関する同一の要素が分割された複数の分割情報と、対象において所定の事象が発生するか否かを示す発生有無とが対応付けられた対応情報を取得する。例えば、取得部131は、図1に示すように、分割情報ID「D111」、「D112」、「D113」・・・でそれぞれ識別される複数の分割情報と、ユーザID「U11」により識別される対象であるユーザにおいて事象ID「E11」により識別される事象が発生か否かを示す発生有無に関する情報である発生情報とが対応付けられた対応情報を取得する。取得部131は、例えば、広告装置30から対応情報を取得した場合、取得した対応情報をログ情報記憶部121に格納する。なお、予測装置100と広告装置30とが一体である場合、予測装置100は対応情報を記憶したデータベースから取得してもよい。
また、取得部131は、広告装置30から予測対象のユーザの対象ログ情報を取得する。取得部131は、対象ログ情報を取得した場合、取得した対象ログ情報を予測部133へ送信する。なお、取得部131は、取得した対象ログ情報をログ情報記憶部121に格納してもよい。
(学習部132)
学習部132は、取得部131によって取得された対応情報に基づいて、所定の事象の発生に対する各要素の影響度を学習する。例えば、学習部132は、取得部131によって取得した対応情報に基づいて以下の学習処理を行う。
ここから、図5を用いて、学習処理の手順について説明する。図5は、第1の実施形態に係る学習処理手順を示すフローチャートである。学習部132には、図1に示すようなログ情報記憶部121に記憶された分割情報である分割情報IDにより識別される複数の行動履歴と、コンバージョンに至ったか否かを示す情報である発生情報とが対応付けられた対応情報を用いる。
図6は、図1に示す対応情報を別の形式で表現した図である。まず、図6と図1との対応関係について説明する。図6(a)に示す「Bag1」は、図1中のユーザID「U11」の対応情報に対応する。そして、「+1」は、図1中のユーザID「U11」に関する発生情報「1」に対応する。また、図6(a)に示す「x1」は図1中の「商品Aの広告」に、「x2」は図1中の「商品Bの広告」に、「x3」は図1中の「商品Cの広告」に、「x4」は図1中の「商品Dの広告」にそれぞれ対応する。また、図6(a)に示す「instance1−1」は図1中の分割情報ID「D111」により識別される分割情報に、「instance1−2」は図1中の分割情報ID「D112」により識別される分割情報に、「instance1−3」は図1中の分割情報ID「D113」により識別される分割情報にそれぞれ対応する。図6(a)中の「instance1−1」の右側に示す数値「8」、「0」、「4」、「9」・・・は、それぞれ、図1中の「D111」により識別される分割情報における「商品Aの広告」、「商品Bの広告」、「商品Cの広告」、「商品Dの広告」・・・それぞれの配信回数に対応する。また、図6(b)に示す「Bag2」は、図1中のユーザID「U12」の対応情報に対応する。同様に、図6(c)に示す「Bag3」は、図1中のユーザID「U13」の対応情報に対応する。したがって、図6(a)〜(c)に示すように、化粧品の購入に至った対応情報に対応する「Bag1」と「Bag3」とには「+1」が割り当てられ、化粧品の購入に至らなかった対応情報に対応する「Bag2」には「−1」が割り当てられる。
以下では、「Bag1」〜「Bag3」を単にバッグと称する場合があり、「+1」が割り当てられたバッグをポジティブバッグと称し、「−1」が割り当てられたバッグをネガティブバッグと称する場合がある。また、「instance1−1」〜「instance3−3」を単にインスタンスと称する場合があり、「+1」が割り当てられたインスタンスをポジティブインスタンスと称し、「−1」が割り当てられたインスタンスをネガティブインスタンスと称する場合がある。なお、インスタンスへの「+1」又は「−1」の割り当てについては後述する。
まず、学習部132は、全てのポジティブバッグ内のインスタンスを全てポジティブに設定する(ステップS101)。具体的には、学習部132は、図7(a)及び(c)に示すように、ポジティブバッグである「Bag1」と「Bag3」とに含まれる「instance1−1」〜「instance1−3」、「instance3−1」〜「instance3−3」にはそれぞれ「+1」を割り当てる。また、学習部132は、全てのネガティブバッグ内のインスタンスを全てネガティブに設定する(ステップS102)。具体的には、図7(b)に示すように、ネガティブバッグである「Bag2」に含まれる「instance2−1」〜「instance2−3」にはそれぞれ「−1」を割り当てる。
ここで、各インスタンスに割り当てた値は、以下のような数式(1)及び(2)により導出される。
y = w1・x1 + w2・x2 +・・・+wn・xn ・・・(1)
z = sgn(y) ・・・(2)
まず、上記式(1)について説明する。上記式(1)中の「x1」〜「xn」は、各分割情報を構成する要素(素性)に関する数値を示す。具体的には、「x1」は「商品Aの広告」の配信回数、「x2」は「商品Bの広告」の配信回数、「x3」は「商品Cの広告」の配信回数、「x4」は「商品Dの広告」・・・の配信回数をそれぞれ示す。例えば、図7(a)に示す例において、「instance1−1」については、「商品Aの広告」の配信回数は「8」回であり、「商品Bの広告」の配信回数は「0」回であり、「商品Cの広告」の配信回数は「4」回であり、「商品Dの広告」の配信回数は「9」回であることを示す。また、上記式(1)中の「w1」〜「wn」は、「x1」〜「xn」のそれぞれの重み係数を示す。つまり、「w1」は「商品Aの広告」の重み係数を、「w2」は「商品Bの広告」の重み係数、「w3」は「商品Cの広告」の重み係数、「w4」は「商品Dの広告」の重み係数・・・をそれぞれ示す。
次に、上記式(2)について説明する。上記式(2)中の「sgn」は、符号関数であり実数に対しその符号に応じて「+1」、「−1」のいずれかを返す関数である。例えば、「b = sgn(a)」において、「a≧0」の場合「b=1」、「a<0」の場合「b=−1」となる。つまり、上記式(2)中の「z」は上記式(1)で算出される「y」の値が「0」以上ならば「+1」、「0」未満ならば「−1」となる。このような上記式(2)中の「z」が、インスタンスに割り当てられる値となる。以下では、「y」をインスタンスの「計算値」、「z」をインスタンスの「符号値」と称して説明する。なお、符号関数「sgn」が、「a=0」に対して「b=0」を返す場合、「b=0」を「b=1」又は「b=−1」に置き換えて処理を行ってもよい。
次に、学習部132は、学習処理によりモデル、すなわち学習情報を生成する(ステップS103)。具体的には、学習部132は、ステップS101、S102で各インスタンスに割り当てた符号値を満たすような「w1」〜「wn」の重み係数の組合せを求める。学習部132は、学習処理で用いるアルゴリズムとして、機械学習で用いられるアルゴリズムを用いる。例えば、学習部132は、アルゴリズムとしては、分類木、回帰木、判別分析、k最近傍、単純ベイズ、サポートベクターマシンなどを用いる。
そして、学習部132は、生成したモデルを適用して全インスタンスの計算値と符号値を算出する(ステップS104)。具体的には、学習部132は、学習処理により導出された「w1」〜「wn」の重み係数を用いて、各インスタンスに対応する上記式(1)中の「y」と上記式(2)中の「z」を算出する。
図8(a)〜(c)は、ステップS104による各インスタンスの符号値の算出結果を示す。各インスタンスと「=」で結ばれた「+1」又は「−1」がインスタンスの符号値を示す。例えば、図8(b)中の「instance2−1」の符号値は「+1」であり、「instance2−2」の符号値は「+1」であり、「instance2−3」の符号値は「−1」であることを示す。また、図8(a)〜(c)中の各インスタンスの符号値の右側の括弧内の数値は、インスタンスの計算値を示す。例えば、図8(c)中の「instance3−1」の計算値は「−8.2」であり、「instance3−2」の計算値は「+4.3」であり、「instance3−3」の計算値は「+2.5」であることを示す。
そして、学習部132は、各ポジティブバッグ内に少なくとも1つのポジティブなインスタンスが存在し(ステップS105:Yes)、各ネガティブバッグ内のインスタンスが全てネガティブの場合(ステップS106:Yes)、条件を満たす学習情報の生成が完了したとして、学習処理を終了する。なお、学習部132は、ステップS105の判定条件として、ポジティブバッグ内に1つのポジティブなインスタンスが存在することに限らず、所定数(例えば2つや3つ等)以上のポジティブなインスタンスが存在することを判定条件としてもよい。
また、学習部132は、1つもポジティブなインスタンスが存在しないポジティブバッグが存在する場合(ステップS105:No)や、インスタンスが全てネガティブでないネガティブバッグが存在する場合(ステップS106:No)であっても、モデルの生成を所定の回数行った場合(ステップS107:No)、学習処理を終了する。
ここで、図8(a)〜(c)に示す例において、ポジティブバッグである「Bag1」には、1つもポジティブなインスタンスが存在しないため(ステップS105:No)、モデルの生成回数が所定の回数未満(ステップS107:Yes)であれば、学習部132は、再度条件の設定(ステップS108、S109、S102)を行い、ステップS103〜S107の処理を繰り返す。例えば、モデルの生成回数が所定の回数未満の場合(ステップS107:Yes)、全てのポジティブバッグの中にインスタンスが全てネガティブなバッグが存在するか否か判定する(ステップS108)。図8(a)〜(c)に示す例において、ポジティブバッグである「Bag1」は、インスタンスが全てネガティブであるため(ステップS108:Yes)、学習部132は、最も計算値の大きいインスタンスをポジティブに設定し、残りのインスタンスをネガティブに設定する(ステップS109)。具体的には、学習部132は、図8(a)の「Bag1」中の最も計算値の大きい「−0.8」である「instance1−1」をポジティブ、つまり符号値を「+1」に設定する(図8(d)参照)。そして、学習部132は、残りのインスタンス「instance1−2」と「instance1−3」とをネガティブ、つまり符号値を「−1」に設定する(図8(d)参照)。
また、少なくとも1つのポジティブなインスタンスが存在するポジティブバッグである「Bag3」中のインスタンスについては、学習部132は、計算値に基づいてポジティブ又はネガティブのインスタンスに設定する。具体的には、学習部132は、図8(c)の「Bag3」中の計算値が正であるインスタンス、すなわち、計算値が「+4.3」である「instance3−2」と計算値が「+2.5」である「instance3−3」の2つのインスタンスをポジティブ、つまり符号値を「+1」に設定する(図8(f)参照)。そして、学習部132は、計算値が負であるインスタンス、すなわち、計算値が「−8.2」である「instance3−1」をネガティブ、つまり符号値を「−1」に設定する(図8(f)参照)。なお、学習部132は、少なくとも1つのポジティブなインスタンスが存在するポジティブバッグ(例えば、図8(c)の「Bag3」)についても、最も計算値の大きいインスタンスをポジティブに設定し、残りのインスタンスをネガティブに設定してもよい。
また、学習部132は、全てのネガティブバッグ内のインスタンスを全てネガティブに設定する(ステップS102)。具体的には、学習部132は、図8(b)の「Bag2」中の全てのインスタンス「instance2−1」〜「instance2−3」・・・をネガティブに設定する(図8(e)参照)。
その後、学習部132は、上記の設定によって得られた、図8(d)〜(f)に示す「Bag1」〜「Bag3」を用いて再び学習処理を行う(ステップS103〜S107)。このように、学習部132は、モデルの生成回数が所定の回数未満の間、条件を満たす学習情報の生成が完了するまで、学習処理を繰り返す。そして、学習部132は、条件を満たした場合、又は所定の回数まで学習処理を行った場合に生成された学習情報を学習情報記憶部122に格納する。言い換えると、学習部132は、重み係数として各要素が所定の事象の発生に対する影響度を導出する。なお、各要素は、重み係数の値が大きい程、所定の事象の発生に対する影響度が大きい要素であるといえる。例えば、図4に示す例においては、学習情報記憶部122には学習情報として、「商品Aの広告」の重み係数として「6」を、「商品Bの広告」の重み係数として「−2」を、「商品Cの広告」の重み係数として「3」を、「商品Dの広告」の重み係数として「4」が記憶されている。この場合、最も重み係数の値が大きい「商品Aの広告」が、化粧品の購入に与える影響が最も大きい要素であることを示す。一方、重み係数の負の値である「商品Bの広告」は、化粧品の購入にマイナスの影響を与える要素であることを示す。具体的に例を示すと、「商品Aの広告」の商品Aがカメラである場合、上記の学習情報は、化粧品の購入に対してカメラの広告の影響度が大きいことを示す。また、「商品Bの広告」の商品Bが寝具である場合、上記の学習情報は、化粧品の購入に対して寝具の広告はマイナスの影響を与えることを示す。
(予測部133)
予測部133は、取得部131から対象ログ情報を受信した場合、学習情報記憶部122により記憶された学習情報を用いて、新たな分割情報に対応する対象において所定の事象が発生するか否かを予測する。具体的には、予測部133は、学習情報と対象ログ情報とを用いて、予測対象のユーザに関する予測情報を生成する予測処理を行う。
ここで、予測部133が、「商品Aの広告」の配信回数が「3」、「商品Bの広告」の配信回数が「5」、「商品Cの広告」の配信回数が「0」、「商品Dの広告」の配信回数が「3」・・・である対象ログ情報を取得した場合を例として説明する。この場合、取得した対象ログ情報と、図4に示す学習情報とを用いて予測情報を生成する。
まず、予測部133は、上記式(1)に用いて、計算値「y」を算出する。具体的には、「w1」には「商品Aの広告」の重み係数「6」を、「w2」には「商品Bの広告」の重み係数「−2」を、「w3」には「商品Cの広告」の重み係数「3」を、「w4」には「商品Dの広告」の重み係数「4」・・・をそれぞれ代入する。また、「x1」には「商品Aの広告」の配信回数「3」を、「x2」には「商品Bの広告」の配信回数「5」を、「x3」には「商品Cの広告」の配信回数「0」を、「x4」は「商品Dの広告」の配信回数「3」・・・をそれぞれ代入する。これにより、以下のような式(3)を得る。
y = 6・3+(−2)・5+3・0+4・3・・・ ・・・(3)
上記式(3)について計算すると、例えば、以下のような式(4)を得る。
y = 32 ・・・(4)
次に、予測部133は、上記式(4)により導出された計算値「y」を用いて予測情報を生成する。例えば、予測部133は、上記式(4)により導出された計算値「y」を上記式(2)に代入して、符号値「z」を予測情報として生成する。具体的には、予測部133は、計算値「y」=「32」を上記式(2)に代入して、以下のような式(5)を得る。
z = sgn(32) ・・・(5)
上記式(5)について計算すると、以下のような式(6)を得る。
z = +1 ・・・(6)
すなわち、上記式(6)によれば、符号値「z」の値は「+1」となり、予測対象のユーザは化粧品の購入に至りそうなユーザであることを示す予測情報が生成される。
また、例えば、予測部133が、「商品Aの広告」の配信回数が「0」、「商品Bの広告」の配信回数が「7」、「商品Cの広告」の配信回数が「2」、「商品Dの広告」の配信回数が「1」・・・である対象ログ情報を取得した場合を説明する。この場合、取得した対象ログ情報と、図4に示す学習情報とを用いて予測情報を生成する。
まず、予測部133は、上記式(1)に用いて、計算値「y」を算出する。具体的には、「w1」には「商品Aの広告」の重み係数「6」を、「w2」には「商品Bの広告」の重み係数「−2」を、「w3」には「商品Cの広告」の重み係数「3」を、「w4」には「商品Dの広告」の重み係数「4」・・・をそれぞれ代入する。また、「x1」には「商品Aの広告」の配信回数「0」を、「x2」には「商品Bの広告」の配信回数「7」を、「x3」には「商品Cの広告」の配信回数「2」を、「x4」は「商品Dの広告」の配信回数「1」・・・をそれぞれ代入する。これにより、以下のような式(7)を得る。
y = 6・0+(−2)・7+3・2+4・1・・・ ・・・(7)
上記式(7)について計算すると、例えば、以下のような式(8)を得る。
y = −18 ・・・(8)
次に、予測部133は、上記式(8)により導出された計算値「y」を用いて予測情報を生成する。例えば、予測部133は、上記式(4)により導出された計算値「y」を上記式(2)に代入して、符号値「z」を予測情報として生成する。具体的には、予測部133は、計算値「y」=「−18」を上記式(2)に代入して、以下のような式(9)を得る。
z = sgn(−18) ・・・(9)
上記式(9)について計算すると、以下のような式(10)を得る。
z = −1 ・・・(10)
すなわち、上記式(10)によれば、符号値「z」の値は「−1」となり、予測対象のユーザは化粧品の購入に至らなそうなユーザであることを示す予測情報が生成される。
なお、予測部133は、計算値「y」を予測情報としてもよい。この場合、予測情報の数値が大きい程、予測対象のユーザが、化粧品の購入に至りそうなユーザであることがわかる。
(送信部134)
送信部134は、予測部133により生成された予測情報を広告装置30へ送信する。具体的には、送信部134は、予測部133により生成された符号値「z」を広告装置30へ送信する。また、送信部134は、予測部133により生成された計算値「y」を広告装置30へ送信する。また、送信部134は、学習情報を広告装置30へ送信してもよい。具体的には、送信部134は、各要素の重み係数を広告装置30へ送信してもよい。
〔4.予測処理のフロー〕
次に、図9を用いて、第1の実施形態に係る予測システム1による予測処理の手順について説明する。図9は、第1の実施形態に係る予測システム1による予測処理手順を示すシーケンス図である。
図9に示すように、予測装置100は、ログ情報の取得要求を広告装置30に送信する(ステップS201)。そして、広告装置30は、予測装置100からの取得要求に応じて、ログ情報を予測装置100に送信する(ステップS202)。そして、ログ情報を取得した予測装置100は、取得したログ情報に基づいて上述した学習処理を行い、学習情報を生成する(ステップS203)。
続いて、広告装置30は、予測対象のユーザの対象ログ情報を予測装置100へ送信する(ステップS204)。そして、予測装置100は、学習情報と対象ログ情報とに基づいて予測対象のユーザに関する予測情報を生成する予測処理を行う(ステップS205)。その後、予測装置100は、予測対象のユーザに関する予測情報を広告装置30へ送信する(ステップS206)。
そして、ウェブサーバ20は、ユーザ端末10からウェブページの取得要求を受信した場合(ステップS207)、ユーザ端末10から取得要求に対応したウェブページをユーザ端末10へ送信する(ステップS208)。ウェブページを受信したユーザ端末10は、ウェブページに広告取得命令が含まれる場合には、広告コンテンツの取得を要求する広告要求を広告装置30へ送信する(ステップS209)。
ユーザ端末10から広告要求を受け付けた場合、広告装置30は、広告要求を送信したユーザ端末10に対応するユーザに関して予測情報を予測装置100から取得しているか否かを確認する。そして、広告装置30は、広告要求を送信したユーザ端末10に対応するユーザに関して予測情報を取得している場合、予測情報を基に広告コンテンツを選択する(ステップS210)。そして、広告装置30は、選択した広告コンテンツをユーザ端末10へ送信する(ステップS211)。
〔5.変形例〕
上述した第1の実施形態に係る予測システム1は、上記第1の実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、予測システム1の他の実施形態について説明する。
〔5−1.複数の事象との対応付け〕
上記第1の実施形態において、予測装置100は、コンピュータネットワーク上における所定の対象に関する同一の要素が分割された複数の分割情報と、対象において所定の事象が発生するか否かを示す発生有無とが対応付けられた対応情報を用いて、予測処理を行う。しかしながら、予測装置100は、複数の分割情報と、複数の事象の発生有無とが対応付けられた対応情報を用いて予測処理を行ってもよい。この点について、図10〜11を用いて説明する。図10は、変形例に係るログ情報記憶部の一例を示す図である。なお、図10中に示す事象IDや分割情報IDは、例えば、「E11」や「D111」等は、図1における同一IDのものに対応する。
ここで、図10に示したログ情報記憶部123について説明する。図10に示すログ情報記憶部123では、ユーザID「U11」に関する分割情報ID「D111」、「D112」、「D113」・・・でそれぞれ識別される複数の分割情報と、ユーザID「U11」に関する事象ID「E11」、「E12」、「E13」・・・でそれぞれ識別される3つの発生情報とが対応付けられている。また、ユーザID「U12」に関する分割情報ID「D121」、「D122」、「D123」・・・でそれぞれ識別される複数の分割情報と、ユーザID「U12」に関する事象ID「E11」、「E12」、「E13」・・・でそれぞれ識別される3つの発生情報とが対応付けられている。同様に、ユーザID「U13」に関する分割情報ID「D131」、「D132」、「D133」・・・でそれぞれ識別される複数の分割情報と、ユーザID「U13」に関する事象ID「E11」、「E12」、「E13」・・・でそれぞれ識別される3つの発生情報とが対応付けられている。なお、事象ID「E11」により識別される所定の事象は化粧品の購入とし、事象ID「E12」により識別される所定の事象はスポーツ用品の購入とし、事象ID「E13」により識別される所定の事象はアクセサリの購入とする。
学習部132は、同じ事象IDごとに学習処理を行い、複数の事象それぞれについてモデル(重み係数の組合せ)である学習情報を生成する。具体的には、学習部132は、分割情報ID「D111」、「D112」、「D113」・・・により識別される複数の分割情報に対して、ユーザID「U11」に対応する事象ID「E11」により識別される1つの事象に関する発生情報とが対応付けられた対応情報と、分割情報ID「D121」、「D122」、「D123」・・・により識別される複数の分割情報に対して、ユーザID「U12」に対応する事象ID「E11」により識別される1つの事象に関する発生情報とが対応付けられた対応情報と、分割情報ID「D131」、「D132」、「D133」・・・により識別される複数の分割情報に対して、ユーザID「U13」に対応する事象ID「E11」により識別される1つの事象に関する発生情報とが対応付けられた対応情報とを用いて、事象ID「E11」により識別される化粧品の購入に関する学習情報を生成する。事象ID「E12」により識別されるスポーツ用品の購入や、事象ID「E13」により識別されるアクセサリの購入についても、同様に学習情報を生成する。
上述した学習処理により、学習部132は、事象ID「E11」により識別される化粧品の購入に関する学習情報、事象ID「E12」により識別されるスポーツ用品の購入に関する学習情報、事象ID「E13」により識別されるアクセサリの購入に関する学習情報を生成する。言い換えると、図10に示す例において、予測装置100は、3つの学習情報を生成する。
図11には、変形例に係る学習情報記憶部124の一例を示す。図11に示すように、学習部132は、上述した学習処理により生成した学習情報を学習情報記憶部124に格納する。学習情報記憶部124は、ログ情報記憶部123に記憶された「行動履歴」である「商品Aの広告」、「商品Bの広告」、「商品Cの広告」、「商品Dの広告」・・・の各素性に対応する重み係数が、3つの事象それぞれについて記憶される。図11に示す例において、学習情報記憶部124には、事象ID「E11」により識別される化粧品の購入に関して、「商品Aの広告」の重み係数が「6」、「商品Bの広告」の重み係数が「−2」、「商品Cの広告」の重み係数が「3」、「商品Dの広告」の重み係数が「4」である学習情報が記憶される。また、学習情報記憶部124には、事象ID「E12」により識別されるスポーツ用品の購入に関して、「商品Aの広告」の重み係数が「−3」、「商品Bの広告」の重み係数が「5」、「商品Cの広告」の重み係数が「1」、「商品Dの広告」の重み係数が「0」である学習情報が記憶される。また、学習情報記憶部124には、事象ID「E13」により識別されるアクセサリの購入に関して、「商品Aの広告」の重み係数が「5」、「商品Bの広告」の重み係数が「0」、「商品Cの広告」の重み係数が「−1」、「商品Dの広告」の重み係数が「5」である学習情報が記憶される。
そして、予測部133は、予測対象のユーザに関する対象ログ情報を受信した場合、予測対象のユーザに関する予測情報を生成する。
まず、予測部133は、上記式(1)を用いて対象ログ情報に関する事象ID「E11」〜「E13」により識別される3つの事象の計算値「y」を算出する。言い換えると、予測部133は、対象ログ情報に関して化粧品の購入、スポーツ用品の購入、アクセサリの購入のそれぞれについて計算値「y」を算出する。そして、予測部133は、例えば、予測対象のユーザについて、化粧品の購入に関する計算値「y」が「+2.6」であり、スポーツ用品の購入に関する計算値「y」が「−7.4」であり、アクセサリの購入に関する計算値「y」が「+5.4」である計算結果を得る。この場合、予測部133は、計算値が最も大きい事象であるアクセサリの購入に至りそうなユーザであることを示す予測情報を生成してもよい。または、符号値がともに「+1」となる化粧品の購入とアクセサリの購入と至りそうなユーザであることを示す予測情報を生成してもよい。これにより、予測情報を受信した広告装置30は、複数のコンバージョンのうちどのコンバージョンに至りそうなユーザであるかを判別することができる。そのため、広告装置30は、ユーザに対して適切な広告コンテンツを配信できる。また、予測部133は、事象ID「E11」〜「E13」と各計算値「y」とを対応付けた情報を予測情報としてもよい。この場合、予測情報を受信した広告装置30は、予測情報の数値が大きいコンバージョンの方が、予測対象のユーザがそのコンバージョンに至る可能性が高いことがわかる。そのため広告装置30は、ユーザに対してより適切な広告コンテンツを配信できる。
〔5−2.分割情報〕
上記第1の実施形態において、予測装置100は、ユーザの行動履歴を用いて予測処理を行う。しかしながら、予測装置100は、ユーザの行動履歴に限らず、ユーザのデモグラフィック属性やサイコグラフィック属性などを要素として含む分割情報を用いて予測処理を行ってもよい。この場合、予測装置100は、所定の事象の発生とユーザ属性との相関関係を導出することができる。例えば、予測装置100は、お酒の購入を所定の事象として学習処理を行い、分割情報の要素(素性)である女性の重み係数が大きいモデルが生成された場合、所定の事象であるお酒の購入とユーザ属性である女性との間に相関関係があると判定できる。また、予測装置100は、ユーザの行動履歴であっても、上記第1の実施形態に示すような広告の配信回数に限らず、例えば、ウェブページの配信回数、所定のサービスへのログイン回数や時間帯、オンラインショッピングで買い物カゴに商品を入れた回数などを要素としてもよい。
これにより、予測装置100は、分割情報から抽出される様々な要素に対して所定の事象に対する影響度を重み係数として導出できる。言い換えると、予測装置100は、取得可能な情報であれば、どのような要素に対しても所定の事象との相関関係を判定できる。
〔5−3.対象がコンテンツ〕
上記第1の実施形態において、予測装置100は、ユーザを対象として予測処理を行う。しかしながら、予測装置100は、ユーザに限らず、コンピュータネットワーク上のコンテンツを対象として予測処理を行ってもよい。言い換えると、予測装置100は、ユーザの行動履歴に限らず、コンテンツの情報を要素とする分割情報を対象に学習処理や予測処理を行ってもよい。例えば、予測装置100は、ログ情報記憶部125に記憶されたログ情報を基に学習した結果を用いて予測対象のコンテンツがクリックされやすいかを予測する。この点について、図12と図13とを用いて以下説明する。なお、以下の例では、コンテンツを図2に示す例においてS19でユーザへ送信される広告コンテンツである画像とし、クリックされやすいかの基準としては、その画像が所定の回数を超えてクリックされたか否かとする。
まず、図12に示す変形例に係るログ情報記憶部125には、「コンテンツID」、「クリック」、「領域」、「分割情報ID」、「コンテンツ情報」といった情報が記憶される。なお、第1の実施形態に係るログ情報記憶部121と同様の構成については説明を省略する。
「コンテンツID」は、コンテンツを識別するための識別情報を示す。「クリック」は、事象を識別するための識別情報である「事象ID」と、所定の回数を超えるクリックの発生の有無を示す「発生情報」とからなる。ここで、クリックの回数としては、例えば、画像に他のウェブページへのリンクが張られており、その画像がクリックされることによりリンクが張られたウェブページが表示された回数を用いる。なお、ログ情報記憶部125は、図12に示す例において、所定の回数を超えてクリックされた画像に対しては発生情報として「1」を割り当て、所定の回数を超えてクリックされなかった画像に対しては発生情報として「−1」を割り当てる。
「領域」は、そのコンテンツIDにより識別される画像を所定の面積ごとに分割した各領域を示す。図12に示す例において、ログ情報記憶部125は、コンテンツID「C11」により識別される画像が領域「A11」、「A12」、「A13」・・・と所定の面積で分割された領域ごとのコンテンツ情報を格納する。同様に、ログ情報記憶部125は、コンテンツID「C12」により識別される画像が領域「A21」、「A22」、「A23」・・・と所定の面積で分割された領域ごとのコンテンツ情報を格納する。また、例えば、「A11」〜「A33」・・・それぞれの面積は等しい。
「コンテンツ情報」は、分割された領域ごとのコンテンツ情報を示す。図12に示す例において、各画像の「コンテンツ情報」として、「色Aの画素数」、「色Bの画素数」、「色Cの画素数」、「色Dの画素数」・・・それぞれの色ごとの画素数を格納する。このように、ログ情報記憶部125は、所定の領域ごとにコンテンツ情報を記憶する。図12に示す例において、「色Aの画素数」、「色Bの画素数」、「色Cの画素数」、「色Dの画素数」・・・が分割情報の要素(素性)となる。例えば、1つの要素である「色Aの画素数」は、所定の領域ごとに分割されている。言い換えると、同一の要素が、所定の領域ごとに分割されている。つまり、ログ情報記憶部125は、所定の領域ごとに分割された複数のコンテンツ情報と、コンテンツに関する所定の事象の発生の有無を示す情報である発生情報とが対応付けられた対応情報を記憶する。なお、要素としては、各色の画素数だけに限られず、所定の領域内に含まれる色の数や、その領域の全体における位置など種々の情報を用いてもよい。
学習部132は、ログ情報記憶部125に記憶された対応情報を用いて学習処理を行い、モデル(重み係数の組合せ)である学習情報を生成する。具体的には、学習部132は、事象ID「E14」により識別される事象である画像がクリックされやすいかに関する学習情報を生成する。
図13には、変形例に係る学習情報記憶部126の一例を示す。図13に示すように、学習部132は、生成した学習情報を学習情報記憶部126に格納する。学習情報記憶部126は、ログ情報記憶部125に記憶された「コンテンツ情報」である「色Aの画素数」、「色Bの画素数」、「色Cの画素数」、「色Dの画素数」・・・の各素性に対応する重み係数が記憶される。図13に示す例において、学習情報記憶部126には、事象ID「E14」により識別される事象である画像がクリックされやすいかに関して、「色Aの画素数」の重み係数が「5」、「色Bの画素数」の重み係数が「−3」、「色Cの画素数」の重み係数が「3」、「色Dの画素数」の重み係数が「0」である学習情報が記憶される。つまり、図13に示す例において、最も重み係数の値が大きい「色Aの画素数」が、画像のクリックされやすさに与える影響が最も大きい要素であることを示す。一方、最も重み係数の負の値である「色Bの画素数」は、画像のクリックされやすさにマイナスの影響を与える要素であることを示す。
そして、予測部133は、予測対象の画像に関する対象ログ情報を受信した場合、予測対象の画像に関する予測情報を生成する。
まず、予測部133は、上記式(1)を用いて対象ログ情報に関するクリックされやすさを示す計算値「y」を算出する。そして、予測部133は、例えば、予測対象の画像について計算値「y」が「+4.3」である計算結果を得る。その後、予測部133は、上記式(2)に計算値「y」=「+4.3」を代入し、符号値「z」=「+1」を得る。この場合、予測部133は、予測対象の画像がクリックされやすい画像であることを示す予測情報を生成してもよい。または、予測部133は、計算値「y」を予測情報としてもよい。
〔6.効果〕
上述してきたように、第1の実施形態に係る予測装置100は、取得部131と、学習部132とを有する。取得部131は、コンピュータネットワーク上における所定の対象に関する同一の要素が分割された複数の分割情報と、対象において所定の事象が発生するか否かを示す発生有無とが対応付けられた対応情報を取得する。また、学習部132は、取得部131によって取得された対応情報に基づいて、所定の事象の発生に対する要素の影響度を学習する。
これにより、第1の実施形態に係る予測装置100は、事象の発生を適切に予測するための学習を行うことができる。
また、第1の実施形態に係る予測装置100は、予測部133を有する。予測部133は、学習部132による学習の結果に基づいて、新たな分割情報に対応する対象において所定の事象が発生するか否かを予測する。
これにより、第1の実施形態に係る予測装置100は、事象の発生を適切に予測することができる。
また、第1の実施形態に係る予測装置100において、取得部131は、複数の分割情報として対象であるユーザに関する同一のユーザ情報が分割された複数のユーザ情報と、ユーザが所定の行動を行うか否かを示す行動有無とが対応付けられた対応情報を取得する。また、学習部132は、取得部131によって取得された対応情報に基づいて、所定の行動に対する要素の影響度を学習する。
これにより、第1の実施形態に係る予測装置100は、ユーザが所定の行動を行うか否かを予測するための学習を行うことができる。
また、第1の実施形態に係る予測装置100において、取得部131は、ユーザに関する同一のユーザ情報が所定の期間ごとに分割された複数のユーザ情報を取得する。
これにより、第1の実施形態に係る予測装置100は、ユーザが所定の行動を行うか否かを予測するための学習を行うことができる。
また、第1の実施形態に係る予測装置100において、取得部131は、複数のユーザ情報と、行動有無としてユーザが所定のコンバージョンに至るか否かとが対応付けられた対応情報を取得する。また、学習部132は、取得部131によって取得された対応情報に基づいて、所定のコンバージョンに対する要素の影響度を学習する。
これにより、第1の実施形態に係る予測装置100は、ユーザが所定のコンバージョンに至るか否かを予測するための学習を行うことができる。
また、第1の実施形態に係る予測装置100において、取得部131は、対象であるコンテンツが分割された複数の分割情報と、コンテンツに関する情報が所定の閾値を超えるか否かを示す超過有無とが対応付けられた対応情報を取得する。また、学習部132は、取得部131によって取得された対応情報に基づいて、所定の閾値を超えることに対する要素の影響度を学習する。
これにより、第1の実施形態に係る予測装置100は、コンテンツに関する情報が所定の閾値を超えるか否かを予測するための学習を行うことができる。
また、第1の実施形態に係る予測装置100において、取得部131は、コンテンツである画像が分割された複数の分割情報と、超過有無として画像において所定のコンバージョンが所定の回数を超えるか否かとが対応付けられた対応情報を取得する。また、学習部132は、取得された対応情報に基づいて、所定のコンバージョンが所定の回数を超えることに対する要素の影響度を学習する。
これにより、第1の実施形態に係る予測装置100は、所定のコンバージョンが所定の回数を超えるか否かを予測するための学習を行うことができる。
(第2の実施形態)
上記第1の実施形態において説明したように、予測システム1では、予測装置100が生成した予測情報を広告装置30へ提供する。一方、第2の実施形態では、予測装置100が生成した予測情報をウェブサーバ21へ提供する予測システム2について説明する。なお、第2の実施形態に係る予測装置100の構成は、図3に示した構成と同様であるので、以下では説明を省略する。
〔1.予測システム〕
まず、予測装置100を有する予測システム2について図14を用いて説明する。図14は、第2の実施形態に係る予測システムの構成例を示す図である。なお、図14では、ユーザに関するユーザ情報がユーザの行動履歴である例を説明する。図14に示す予測システム2は、ユーザの行動履歴に基づいてユーザが所定の行動が行うかを予測する予測サービスを提供する。また、図14では、予測装置100を予測対象のユーザが所定のサービスから離脱するかの予測に用いる例を示す。
図14に示すように、予測システム2には、ユーザ端末10と、ウェブサーバ21と、予測装置100とが含まれる。予測装置100は、ネットワーク40(図20参照)を介して、ウェブサーバ21と通信可能に接続される。なお、図14に示す予測システム2には、複数台のユーザ端末10や、複数台のウェブサーバ21や、複数台の予測装置100が含まれてもよい。なお、以下では、第1の実施形態に係る予測システム1で説明した構成については説明を省略する。
ウェブサーバ21は、ユーザに対して所定のサービス、例えばSNSサービスを提供する情報処理装置である。また、ウェブサーバ21は、そのサービス内での各ユーザの行動履歴に関するログ情報を記憶する。具体的には、ウェブサーバ21は、ユーザ端末10からの要求に応じて所定の処理、例えばログインや書き込み等を行った場合、そのユーザを識別する情報と、所定の処理を識別する情報とを関連付けてログ情報として記憶する。例えば、ウェブサーバ21は、ログインの情報などに基づいてユーザを特定し、ユーザを識別するIDに、そのユーザが要求した処理を識別するIDを関連付けてログ情報として記憶してもよい。また、ウェブサーバ21は、そのユーザがサービスから離脱したかに関する情報もログ情報として記憶する。なお、ウェブサーバ21は、ユーザがサービスから離脱したか否かは、例えば、アカウントの削除や所定の期間ログインがないなどの所定の条件に基づいて判定する。
図14に示すように、予測装置100は、ウェブサーバ21からログ情報を取得する(ステップS21)。例えば、予測装置100は、ウェブサーバ21へログ情報の送信を要求するログ要求情報を送信し、ログ要求情報を受信したウェブサーバ21からログ情報を取得してもよい。なお、予測装置100は、ウェブサーバ21からログ情報を所定の間隔、例えば1日おきに取得してもよい。そして、予測装置100は、取得したログ情報に基づいて、図1で説明した学習処理を行う(ステップS22)。なお、予測装置100は、ログ情報を取得する度に学習処理を行ってもよいし、所定の間隔、例えば1日おきに学習処理を行ってもよい。
続いて、予測装置100は、ウェブサーバ21から予測対象のユーザの行動履歴を対象ログ情報として受信する(ステップS23)。そして、予測装置100は、ステップS22の学習処理により生成した学習情報と、対象ログ情報に基づいて第1の実施形態に係る図1で説明した予測処理を行い、予測対象のユーザに関する予測情報を生成する(ステップS24)。すなわち、予測装置100は、予測対象のユーザがそのサービスから離脱するか否かを予測した結果である予測情報を生成する。例えば、予測装置100は、予測情報として、そのサービスから離脱する可能性が高いことを「1」、そのサービスから離脱する可能性が低いことを「0」で示す予測情報を生成する。その後、予測装置100は、予測情報をウェブサーバ21へ送信する(ステップS25)。
そして、サービスから離脱する可能性が高いことを示す予測情報を受信したウェブサーバ21は、予測対象のユーザのユーザ端末10にサービスからの離脱を防ぐための誘因情報を送信する(ステップS26)。例えば、ウェブサーバ21は、誘因情報として、そのサービス内で使えるポイントや、そのサービスを利用している他ユーザの紹介などを予測対象のユーザのユーザ端末10へ送信する。
次に、第2の実施形態に係るログ情報記憶部221と学習情報記憶部222について説明する。まず、図15に示す第2の実施形態に係るログ情報記憶部221には、「ユーザID」、「離脱」、「期間」、「分割情報ID」、「行動履歴」といった情報が記憶される。なお、第1の実施形態に係るログ情報記憶部121と同様の構成については説明を省略する。
「離脱」は、事象を識別するための識別情報である「事象ID」と、そのユーザの離脱の有無を示す「発生情報」とからなる。また、ログ情報記憶部221は、図15に示す例において、離脱したユーザに対しては発生情報として「1」を割り当て、離脱しなかったユーザに対しては発生情報として「−1」を割り当てる。
「行動履歴」は、分割された期間ごとに集計されたユーザの行動を示す。図15に示す例において、各ユーザの「行動履歴」として、「ログイン回数」、「書き込み回数」、「他ユーザとのコミュニケーション回数」、「退会ページ閲覧数」・・・を格納する。このように、ログ情報記憶部121は、所定の期間、図15に示す例においては1日ごとに行動履歴を記憶する。図15に示す例において、「ログイン回数」、「書き込み回数」、「他ユーザとのコミュニケーション回数」、「退会ページ閲覧数」・・・が分割情報の要素(素性)となる。例えば、1つの要素である「ログイン回数」は、1日ごとに分割されている。言い換えると、同一の要素が、所定の期間ごとに分割されている。なお、他ユーザとのコミュニケーション回数として、他ユーザとのメッセージの送受信の回数などを用いてもよい。
ここで、図15に示すように、1つの事象IDにより識別される発生情報にそれぞれ異なる分割情報IDにより識別される複数の行動履歴が対応付けられている。つまり、ログ情報記憶部221は、所定の期間ごとに分割された複数の行動履歴と、ユーザに関する所定の事象の発生の有無を示す情報である発生情報とが対応付けられた対応情報を記憶する。なお、要素としては、ログイン時間など種々の情報を用いてもよい。
学習部132は、ログ情報記憶部221に記憶された対応情報を用いて学習処理を行い、モデル(重み係数の組合せ)である学習情報を生成する。具体的には、学習部132は、事象ID「E21」により識別される事象であるユーザが離脱するか否かに関する学習情報を生成する。
図16には、第2の実施形態に係る学習情報記憶部222の一例を示す。図16に示すように、学習部132は、生成した学習情報を学習情報記憶部222に格納する。学習情報記憶部222は、ログ情報記憶部221に記憶された「行動履歴」である、「ログイン回数」、「書き込み回数」、「他ユーザとのコミュニケーション回数」、「退会ページ閲覧数」・・・の各素性に対応する重み係数が記憶される。図16に示す例において、学習情報記憶部222には、事象ID「E21」により識別される事象であるユーザが離脱するか否かに関して、「ログイン回数」の重み係数が「−1」、「書き込み回数」の重み係数が「0」、「他ユーザとのコミュニケーション回数」の重み係数が「−8」、「退会ページ閲覧数」の重み係数が「4」である学習情報が記憶される。つまり、図16に示す例において、最も重み係数の値が大きい「退会ページ閲覧数」が、ユーザの離脱に与える影響が最も大きい要素であることを示す。一方、最も重み係数の負の値である「ログイン回数」と「他ユーザとのコミュニケーション回数」とは、ユーザの離脱にマイナスの影響、つまりユーザが離脱しにくくなる影響を与える要素であることを示す。
そして、予測部133は、予測対象のユーザに関する対象ログ情報を受信した場合、予測対象のユーザに関する予測情報を生成する。
まず、予測部133は、上記式(1)を用いて対象ログ情報に関するユーザの離脱しやすさを示す計算値「y」を算出する。そして、予測部133は、例えば、予測対象のユーザについて計算値「y」が「+10.8」である計算結果を得る。その後、予測部133は、上記式(2)に計算値「y」=「+10.8」を代入し、符号値「z」=「+1」を得る。この場合、予測部133は、予測対象のユーザが離脱する可能性が高いことを示す予測情報を生成してもよい。または、予測部133は、計算値「y」を予測情報としてもよい。
その後、送信部134は、予測部133により生成された予測情報をウェブサーバ21へ送信する。そして、サービスから離脱する可能性が高いことを示す予測情報を受信したウェブサーバ21は、予測対象のユーザのユーザ端末10にサービスからの離脱を防ぐための誘因情報等を送信する。
〔2.効果〕
上述してきたように、第2の実施形態に係る予測装置100において、取得部131は、複数のユーザ情報と、行動有無としてユーザが所定のサービスから離脱するか否かとが対応付けられた対応情報を取得する。また、学習部132は、取得部131によって取得された対応情報に基づいて、所定のサービスからの離脱に対する要素の影響度を学習する。
これにより、第2の実施形態に係る予測装置100は、ユーザが所定のサービスから離脱するか否かを予測するための学習を行うことができる。
(第3の実施形態)
上記第1の実施形態において説明したように、予測システム1では、予測装置100が生成した予測情報を広告装置30へ提供する。一方、第3の実施形態では、予測装置100が生成した予測情報をウェブサーバ22へ提供する予測システム3について説明する。なお、第3の実施形態に係る予測装置100の構成は、図3に示した構成と同様であるので、以下では説明を省略する。
〔1.予測システム〕
まず、予測装置100を有する予測システム3について図17を用いて説明する。図17は、第3の実施形態に係る予測システムの構成例を示す図である。なお、図17では、ユーザに関するユーザ情報がユーザの行動履歴である例を説明する。図17に示す予測システム3は、ユーザの行動履歴に基づいてユーザが所定の行動が行うかを予測する予測サービスを提供する。また、図17では、予測装置100を予測対象のユーザが所定のアプリケーションに対して所定値以上の評価を行うかの予測に用いる例を示す。
図17に示すように、予測システム3には、ウェブサーバ22と、予測装置100とが含まれる。予測装置100は、ネットワーク40(図20参照)を介して、ウェブサーバ22と通信可能に接続される。なお、図17に示す予測システム3には、複数台のウェブサーバ22や、複数台の予測装置100が含まれてもよい。なお、以下では、第1の実施形態に係る予測システム1で説明した構成については説明を省略する。
ウェブサーバ22は、ユーザに対して所定のアプリケーションを提供する情報処理装置である。以下では、ウェブサーバ22がアプリケーションとしてソーシャルゲームを提供する例を示す。ここで、ウェブサーバ22は、そのソーシャルゲーム内での各ユーザの行動履歴に関するログ情報を記憶する。具体的には、ウェブサーバ22は、ユーザからの要求に応じて所定の処理、例えば課金やコンテニュー等を行った場合、そのユーザを識別する情報と、所定の処理を識別する情報とを関連付けてログ情報として記憶する。例えば、ウェブサーバ22は、ユーザから課金の要求を受け付けた場合、ソーシャルゲームに登録されたユーザIDに、そのユーザが要求した処理を識別するIDを関連付けてログ情報として記憶してもよい。また、ウェブサーバ22は、そのユーザがソーシャルゲームに対する所定値以上の評価を行ったかに関する情報もログ情報として記憶する。
図17に示すように、予測装置100は、ウェブサーバ22からログ情報を取得する(ステップS31)。例えば、予測装置100は、ウェブサーバ22へログ情報の送信を要求するログ要求情報を送信し、ログ要求情報を受信したウェブサーバ22からログ情報を取得してもよい。なお、予測装置100は、ウェブサーバ22からログ情報を所定の間隔、例えば1日おきに取得してもよい。そして、予測装置100は、取得したログ情報に基づいて、図1で説明した学習処理を行う(ステップS32)。なお、予測装置100は、ログ情報を取得する度に学習処理を行ってもよいし、所定の間隔、例えば1日おきに学習処理を行ってもよい。
続いて、予測装置100は、ウェブサーバ22から予測対象のユーザの行動履歴を対象ログ情報として受信する(ステップS33)。そして、予測装置100は、ステップS32の学習処理により生成した学習情報と、対象ログ情報に基づいて第1の実施形態に係る図1で説明した予測処理を行い、予測対象のユーザに関する予測情報を生成する(ステップS34)。すなわち、予測装置100は、予測対象のユーザがそのソーシャルゲームに対する所定値以上の評価を行うか否かを予測した結果である予測情報を生成する。例えば、予測装置100は、予測情報として、そのソーシャルゲームに対する所定値以上の評価を行う可能性が高いことを「1」、そのソーシャルゲームに対する所定値以上の評価を行う可能性が低いことを「0」で示す予測情報を生成する。その後、予測装置100は、予測情報をウェブサーバ22へ送信する(ステップS35)。
次に、第3の実施形態に係るログ情報記憶部321と学習情報記憶部322について説明する。まず、図18に示す第2の実施形態に係るログ情報記憶部321には、「ユーザID」、「レビュー」、「ゲームステージ」、「分割情報ID」、「行動履歴」といった情報が記憶される。なお、第1の実施形態に係るログ情報記憶部121と同様の構成については説明を省略する。
「レビュー」は、事象を識別するための識別情報である「事象ID」と、所定値以上の評価の有無を示す「発生情報」とからなる。また、ログ情報記憶部321は、図18に示す例において、所定値以上の評価を行ったユーザに対しては発生情報として「1」を割り当て、所定値以上の評価を行わなかったユーザに対しては発生情報として「−1」を割り当てる。
「ゲームステージ」は、そのユーザIDにより識別されるユーザの行動を対象とするソーシャルゲームの所定の構成単位を示す。図18に示す例において、ログ情報記憶部321は、「GS11」、「GS12」、「GS13」・・・と所定の期間で分割されたユーザの行動履歴を格納する。
「行動履歴」は、所定の期間ごとに集計されたユーザの行動を示す。図18に示す例において、各ユーザの「行動履歴」として、「課金回数」、「コンテニュー数」、「獲得アイテム数」、「チャット回数」・・・を格納する。このように、ログ情報記憶部321は、所定の期間、図18に示す例においては1日ごとに行動履歴を記憶する。図18に示す例において、「課金回数」、「コンテニュー数」、「獲得アイテム数」、「チャット回数」・・・が分割情報の要素(素性)となる。例えば、1つの要素である「課金回数」は、ゲームステージごとに分割されている。言い換えると、同一の要素が、所定の期間ごとに分割されている。
ここで、図18に示すように、1つの事象IDにより識別される発生情報にそれぞれ異なる分割情報IDにより識別される複数の行動履歴が対応付けられている。つまり、ログ情報記憶部321は、所定の期間ごとに分割された複数の行動履歴と、ユーザに関する所定の事象の発生の有無を示す情報である発生情報とが対応付けられた対応情報を記憶する。なお、要素としては、アプリケーションの起動回数など種々の情報を用いてもよい。
学習部132は、ログ情報記憶部321に記憶された対応情報を用いて学習処理を行い、モデル(重み係数の組合せ)である学習情報を生成する。具体的には、学習部132は、事象ID「E31」により識別される事象である所定値以上の評価を行うか否かに関する学習情報を生成する。
図19には、第3の実施形態に係る学習情報記憶部322の一例を示す。図19に示すように、学習部132は、生成した学習情報を学習情報記憶部322に格納する。学習情報記憶部322は、ログ情報記憶部321に記憶された「行動履歴」である、「課金回数」、「コンテニュー数」、「獲得アイテム数」、「チャット回数」・・・の各素性に対応する重み係数が記憶される。図19に示す例において、学習情報記憶部322には、事象ID「E31」により識別される事象であるユーザが所定値以上の評価を行うか否かに関して、「課金回数」の重み係数が「−4」、「コンテニュー数」の重み係数が「0」、「獲得アイテム数」の重み係数が「1」、「チャット回数」の重み係数が「6」である学習情報が記憶される。つまり、図19に示す例において、最も重み係数の値が大きい「チャット回数」が、所定値以上の評価を行うかに与える影響が最も大きい要素であることを示す。一方、最も重み係数の負の値である「課金回数」は、所定値以上の評価を行うかにマイナスの影響、つまり所定値以上の評価を行わなくなる影響を与える要素であることを示す。
そして、予測部133は、予測対象のユーザに関する対象ログ情報を受信した場合、予測対象のユーザに関する予測情報を生成する。
まず、予測部133は、上記式(1)を用いて対象ログ情報に関するユーザが所定値以上の評価を行う可能性の高さを示す計算値「y」を算出する。そして、予測部133は、例えば、予測対象のユーザについて計算値「y」が「−3.5」である計算結果を得る。その後、予測部133は、上記式(2)に計算値「y」=「−3.5」を代入し、符号値「z」=「−1」を得る。この場合、予測部133は、予測対象のユーザが所定値以上の評価を行う可能性が低いことを示す予測情報を生成してもよい。または、予測部133は、計算値「y」を予測情報としてもよい。その後、送信部134は、予測部133により生成された予測情報をウェブサーバ22へ送信する。
なお、ウェブサーバ22が提供するアプリケーションは、ユーザ端末にダウンロードされるアプリケーション、いわゆるネイティブアプリケーションや、ウェブブラウザを利用するアプリケーション、いわゆるウェブアプリケーションなど、対応情報が取得可能であればどのような形態で提供されるアプリケーションであってもよい。また、ウェブサーバ22が提供するアプリケーションは、ゲーム限らず、ニュース配信や、天気予報や、乗換案内など、どのような種類のアプリケーションであってもよい。また、上記の例では、送信部134が予測情報をウェブサーバ22へ送信する例を示したが、送信部134は、学習情報をウェブサーバ22へ送信してもよい。この場合、学習情報を受信したウェブサーバ22は、どの要素がユーザの評価に与える影響が大きいかを把握できるため、ユーザの評価がより高くなるようなアプリケーションの開発を行うことが可能となる。
〔2.変形例〕
上述した第3の実施形態に係る予測システム3は、上記第3の実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、予測システム3の他の実施形態について説明する。
〔2−1.所定の事象はサイトの閲覧〕
上記第3の実施形態において、予測装置100は、ユーザが所定のアプリケーションに対して所定値以上の評価を行うかについて予測処理を行う。しかしながら、予測装置100は、コンピュータネットワーク上におけるユーザの行動履歴に基づいて、例えば、ユーザが所定のサイトを閲覧するかを予測してもよい。この場合、予測装置100は、コンピュータネットワーク上における所定のユーザに関するユーザ情報が分割された複数の分割情報と、そのユーザが所定のサイトを閲覧するか否かを示す発生有無とが対応付けられた対応情報を用いて、予測処理を行う。ここで、複数の分割情報は、例えば、所定の期間ごとに分割されたものとする。なお、予測装置100は、ユーザ情報としては、取得可能であれば様々な情報を用いてもよい。例えば、予測装置100は、ユーザ情報として、様々なサイトの閲覧数や、特定のサービスへのログイン回数、メールの受信数、送信数などを用いてもよい。
〔2−2.対象がコンテンツ〕
上記第3の実施形態において、予測装置100は、ユーザを対象として予測処理を行う。しかしながら、予測装置100は、ユーザに限らず、コンピュータネットワーク上のコンテンツを対象として予測処理を行ってもよい。例えば、予測装置100は、コンテンツをウェブページとし、そのウェブページのレイヤや素性に関する情報に基づいて予測する。この場合、予測装置100は、ウェブページのレイヤや素性に関する同一の要素が分割された複数の分割情報と、そのウェブページが所定の時間を超えて表示されるか否かを示す発生有無とが対応付けられた対応情報を用いて、予測処理を行う。ここで、複数の分割情報は、例えば、所定の面積ごとに分割されたものとする。なお、予測装置100は、要素として、レイヤ数や、各レイヤの画像数、文字数などを用いてもよい。また、予測装置100は、ウェブページのレイヤや素性に関する同一の要素が分割された複数の分割情報と、そのウェブページが所定の回数を超えて誤クリックされるか否かを示す発生有無とが対応付けられた対応情報を用いて、予測処理を行ってもよい。
また、予測装置100は、コンテンツを広告コンテンツとし、その広告コンテンツに含まれる単語に関する情報に基づいて予測してもよい。この場合、予測装置100は、広告コンテンツに含まれる単語に関する情報が分割された複数の分割情報と、その広告コンテンツにおいて所定のコンバージョンが所定の回数を超えて行われるか否かを示す発生有無とが対応付けられた対応情報を用いて、予測処理を行う。ここで、複数の分割情報は、例えば、所定の面積ごとに分割されたものとする。なお、予測装置100は、要素として、単語の出現頻度や、単語の文章全体での割合、単語の出現間隔などを用いてもよい。
また、予測装置100は、コンテンツを広告コンテンツとし、その広告コンテンツに関する情報に基づいて予測してもよい。この場合、予測装置100は、広告コンテンツが分割された複数の分割情報と、その広告コンテンツが所定の審査項目数を超えて該当するか否かを示す発生有無とが対応付けられた対応情報を用いて、予測処理を行う。ここで、複数の分割情報は、例えば、所定の面積ごとに分割されたものとする。なお、予測装置100は、要素として、特定の色画素数や、含まれる色の総数などを用いてもよい。
また、予測装置100は、コンテンツを広告コンテンツとし、その広告コンテンツに関する情報に基づいて予測してもよい。この場合、予測装置100は、広告コンテンツが分割された複数の分割情報と、その広告コンテンツにおいて広告収入が所定の金額を超えるか否かを示す発生有無とが対応付けられた対応情報を用いて、予測処理を行う。ここで、複数の分割情報は、例えば、所定の面積ごとに分割されたものとする。なお、予測装置100は、要素として、特定の色画素数や、含まれる色の総数などを用いてもよい。
〔3.効果〕
上述してきたように、第3の実施形態に係る予測装置100において、取得部131は、複数のユーザ情報と、行動有無としてユーザが所定のアプリに対して所定値以上の評価を行うか否かとが対応付けられた対応情報を取得する。学習部132は、取得部131によって取得された対応情報に基づいて、所定のアプリに対する所定値以上の評価に対する要素の影響度を学習する。
これにより、第3の実施形態に係る予測装置100は、ユーザが所定値以上の評価を行うか否かを予測するための学習を行うことができる。
また、第3の実施形態に係る予測装置100において、取得部131は、複数のユーザ情報と、行動有無としてユーザが所定のサイトを閲覧するか否かとが対応付けられた対応情報を取得する。学習部132は、取得部131によって取得された対応情報に基づいて、所定のサイトの閲覧に対する要素の影響度を学習する。
これにより、第3の実施形態に係る予測装置100は、ユーザが所定のサイトを閲覧するか否かを予測するための学習を行うことができる。
また、第3の実施形態に係る予測装置100において、取得部131は、複数の分割情報と、超過有無としてコンテンツが所定の時間を超えて表示されるか否かとが対応付けられた対応情報を取得する。学習部132は、取得部131によって取得された対応情報に基づいて、コンテンツが所定の時間を超えて表示されることに対する要素の影響度を学習する。
これにより、第3の実施形態に係る予測装置100は、コンテンツが所定の時間を超えて表示されるか否かを予測するための学習を行うことができる。
また、第3の実施形態に係る予測装置100において、取得部131は、複数の分割情報と、超過有無としてコンテンツが所定の回数を超えて誤クリックされるか否かとが対応付けられた対応情報を取得する。学習部132は、取得部131によって取得された対応情報に基づいて、コンテンツが所定の回数を超えて誤クリックされることに対する要素の影響度を学習する。
これにより、第3の実施形態に係る予測装置100は、コンテンツが所定の回数を超えて誤クリックされるか否かを予測するための学習を行うことができる。
また、第3の実施形態に係る予測装置100において、取得部131は、コンテンツに含まれる単語に関する情報が分割された複数の分割情報と、超過有無としてコンテンツにおいて所定のコンバージョンが所定の回数を超えて行われるか否かとが対応付けられた対応情報を取得する。学習部132は、取得部131によって取得された対応情報に基づいて、所定のコンバージョンが所定の回数を超えることに対する要素の影響度を学習する。
これにより、第3の実施形態に係る予測装置100は、コンテンツにおいて所定のコンバージョンが所定の回数を超えて行われるか否かを予測するための学習を行うことができる。
また、第3の実施形態に係る予測装置100において、取得部131は、広告コンテンツが分割された複数の分割情報と、超過有無として広告コンテンツが所定の審査項目数を超えて該当するか否かとが対応付けられた対応情報を取得する。学習部132は、取得部131によって取得された対応情報に基づいて、広告コンテンツが所定の審査項目数を超えて該当することに対する要素の影響度を学習する。
これにより、第3の実施形態に係る予測装置100は、広告コンテンツが所定の審査項目数を超えて該当するか否かを予測するための学習を行うことができる。
また、第3の実施形態に係る予測装置100において、取得部131は、広告コンテンツが分割された複数の分割情報と、超過有無として広告コンテンツによる広告収入が所定の金額を超えるか否かとが対応付けられた対応情報を取得する。学習部132は、取得部131によって取得された対応情報に基づいて、広告収入が所定の金額を超えることに対する要素の影響度を学習する。
これにより、第3の実施形態に係る予測装置100は、広告コンテンツにおいて広告収入が所定の金額を超えるか否かを予測するための学習を行うことができる。
(第1〜3の実施形態について)
〔1.ハードウェア構成〕
上述してきた第1〜3の実施形態に係る予測装置100は、例えば図20に示すような構成のコンピュータ1000によって実現される。図20は、予測装置100の機能を実現するコンピュータ1000の一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、ネットワーク40を介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータをネットワーク40を介して他の機器へ送信する。
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が第1〜3の実施形態に係る予測装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置からネットワーク40を介してこれらのプログラムを取得してもよい。
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の行に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
〔2.その他〕
また、上記各実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上述してきた各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。