(57)【要約】【課題】差分ベクトルでクリック予測モデルを学習する場合において、クリック毎に共通であるデモグラフィック情報等を、クリック予測モデルの作成に活用できるように特徴ベクトルを生成するようにした情報処理装置を提供する。【解決手段】情報処理装置は、複数の広告が表示されているウェブページ内の広告のクリック毎に発生するログデータであって、クリックされた広告とクリックされなかった広告の組み合わせに関するログデータに基づいて、表示する広告を選択するための特徴ベクトルを生成し、ログデータを用いて、広告に対してクリックを行った者に関する属性毎に、広告の特徴ベクトルを構成する要素との組み合わせにおけるクリック率を算出し、特徴ベクトルが対象としている広告に対するクリック率であって、特徴ベクトルを構成する所定の要素に対応するクリック率を抽出し、クリック率を特徴ベクトルの要素として付加する。【選択図】図１
2014174753.tif 000002
【特許請求の範囲】
【請求項１】
複数の広告が表示されているウェブページ内の広告のクリック毎に発生するログデータであって、クリックされた広告とクリックされなかった広告の組み合わせに関するログデータに基づいて、表示する広告を選択するための特徴ベクトルを生成する特徴ベクトル生成手段と、
ログデータを用いて、広告に対してクリックを行った者に関する属性毎に、該広告の特徴ベクトルを構成する要素との組み合わせにおけるクリック率を算出する算出手段と、
前記特徴ベクトルが対象としている広告に対するクリック率であって、該特徴ベクトルを構成する所定の要素に対応するクリック率を抽出する抽出手段と、
前記抽出手段によって抽出されたクリック率を前記特徴ベクトル生成手段によって生成された特徴ベクトルの要素として付加する付加手段
を具備することを特徴とする情報処理装置。
【請求項２】
前記ログデータを用いて、広告と属性に関するモデルを学習によって生成する第１の学習手段
をさらに具備し、
前記算出手段は、前記第１の学習手段によって学習されたモデルを用いて、クリック率を算出する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
広告のクリックに関するログデータを収集する収集手段と、
前記収集手段によってログデータが収集された場合は、クリックされた広告とクリックされなかった広告の特徴ベクトルの差分ベクトルを生成する差分ベクトル生成手段と、
前記差分ベクトル生成手段によって生成された差分ベクトルを用いて、表示する広告を選択するための基準を学習する第２の学習手段と、
前記第２の学習手段によって学習された基準にしたがって、表示する広告を選択する選択手段
をさらに具備することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
特徴ベクトル生成手段と算出手段と抽出手段と付加手段を具備する情報処理装置が行う情報処理方法であって、
前記特徴ベクトル生成手段は、複数の広告が表示されているウェブページ内の広告のクリック毎に発生するログデータであって、クリックされた広告とクリックされなかった広告の組み合わせに関するログデータに基づいて、表示する広告を選択するための特徴ベクトルを生成し、
前記算出手段は、ログデータを用いて、広告に対してクリックを行った者に関する属性毎に、該広告の特徴ベクトルを構成する要素との組み合わせにおけるクリック率を算出し、
前記抽出手段は、前記特徴ベクトルが対象としている広告に対するクリック率であって、該特徴ベクトルを構成する所定の要素に対応する属性を抽出し、
前記付加手段は、前記抽出手段によって抽出されたクリック率を前記特徴ベクトル生成手段によって生成された特徴ベクトルの要素として付加する
ことを特徴とする情報処理方法。
【請求項５】
コンピュータを、
複数の広告が表示されているウェブページ内の広告のクリック毎に発生するログデータであって、クリックされた広告とクリックされなかった広告の組み合わせに関するログデータに基づいて、表示する広告を選択するための特徴ベクトルを生成する特徴ベクトル生成手段と、
ログデータを用いて、広告に対してクリックを行った者に関する属性毎に、該広告の特徴ベクトルを構成する要素との組み合わせにおけるクリック率を算出する算出手段と、
前記特徴ベクトルが対象としている広告に対するクリック率であって、該特徴ベクトルを構成する所定の要素に対応する属性を抽出する抽出手段と、
前記抽出手段によって抽出されたクリック率を前記特徴ベクトル生成手段によって生成された特徴ベクトルの要素として付加する付加手段
として機能させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、広告のクリックに関するログデータに基づいて、表示する広告を選択するための特徴ベクトルを生成する情報処理装置に関する。
【背景技術】
【０００２】
ウェブページにおける広告において、ユーザに対応して広告を選択して表示することが行われている。例えば、閲覧されたウェブページやユーザの興味に応じて、ある広告がどの程度クリックされやすいかを計るために、広告のクリックログを学習データとして、クリック率を予測するモデルが機械学習を用いて構築されている。このクリック予測モデルでは、１つのリクエスト内で、クリックされた広告とクリックされなかった広告の特徴ベクトルの差分を取って、その差分ベクトルを学習データとして予測モデルを構築している。このようにすることで、複数の広告の中からその広告が選ばれたという情報を学習することができ、精度の高い予測モデルを作成することができている。
【０００３】
これに関連する技術として、例えば、特許文献１には、全体の負荷を著しく増大させることなく、必要な広告に対する数値更新頻度を従来よりも改善することを課題とし、ＣＴＲ計算対象のログデータのうち、全広告のＣＴＲを計算する時間間隔（例えば半日）とは別に、より短い第二の時間間隔（例えば３０分）毎に、表示回数が所定の条件を満たす広告についてのみＣＴＲの計算を行うことにより、全体の負荷を著しく増大させることなく、必要な広告に対するＣＴＲ更新頻度を従来よりも改善することが可能となることが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−１９２２２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、１つのリクエスト内の広告同士の差分を取るため、性別・年令などのデモグラフィック（ｄｅｍｏｇｒａｐｈｉｃｓ）情報や曜日・時間帯・場所などのコンテキスト情報が打ち消され、クリック予測の情報として活かせないという問題がある。つまり、クリックされた広告とクリックされなかった広告とでは、デモグラフィック情報又はコンテキスト情報は同じになるので、特徴ベクトルの要素として採用したとしても、相殺していまい、その要素の情報は無いに等しくなってしまう。このため、例えば「男性ならクリックしやすい広告」といった情報を利用してクリック予測モデルを作成していないことになる。
本発明は、このような背景技術の状況の中でなされたもので、差分ベクトルでクリック予測モデルを学習する場合において、クリック毎に共通であるデモグラフィック情報又はコンテキスト情報を反映しているクリック率を用いて、クリック予測モデルの作成に活用できるように特徴ベクトルを生成するようにした情報処理装置、情報処理方法及び情報処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
（１）複数の広告が表示されているウェブページ内の広告のクリック毎に発生するログデータであって、クリックされた広告とクリックされなかった広告の組み合わせに関するログデータに基づいて、表示する広告を選択するための特徴ベクトルを生成する特徴ベクトル生成手段と、ログデータを用いて、広告に対してクリックを行った者に関する属性毎に、該広告の特徴ベクトルを構成する要素との組み合わせにおけるクリック率を算出する算出手段と、前記特徴ベクトルが対象としている広告に対するクリック率であって、該特徴ベクトルを構成する所定の要素に対応するクリック率を抽出する抽出手段と、前記抽出手段によって抽出されたクリック率を前記特徴ベクトル生成手段によって生成された特徴ベクトルの要素として付加する付加手段を具備することを特徴とする情報処理装置である。
【０００７】
（２）前記ログデータを用いて、広告と属性に関するモデルを学習によって生成する第１の学習手段をさらに具備し、前記算出手段は、前記第１の学習手段によって学習されたモデルを用いて、クリック率を算出することを特徴とする（１）に記載の情報処理装置である。
【０００８】
（３）広告のクリックに関するログデータを収集する収集手段と、前記収集手段によってログデータが収集された場合は、クリックされた広告とクリックされなかった広告の特徴ベクトルの差分ベクトルを生成する差分ベクトル生成手段と、前記差分ベクトル生成手段によって生成された差分ベクトルを用いて、表示する広告を選択するための基準を学習する第２の学習手段と、前記第２の学習手段によって学習された基準にしたがって、表示する広告を選択する選択手段をさらに具備することを特徴とする（１）又は（２）に記載の情報処理装置である。
【０００９】
（４）特徴ベクトル生成手段と算出手段と抽出手段と付加手段を具備する情報処理装置が行う情報処理方法であって、前記特徴ベクトル生成手段は、複数の広告が表示されているウェブページ内の広告のクリック毎に発生するログデータであって、クリックされた広告とクリックされなかった広告の組み合わせに関するログデータに基づいて、表示する広告を選択するための特徴ベクトルを生成し、前記算出手段は、ログデータを用いて、広告に対してクリックを行った者に関する属性毎に、該広告の特徴ベクトルを構成する要素との組み合わせにおけるクリック率を算出し、前記抽出手段は、前記特徴ベクトルが対象としている広告に対するクリック率であって、該特徴ベクトルを構成する所定の要素に対応する属性を抽出し、前記付加手段は、前記抽出手段によって抽出されたクリック率を前記特徴ベクトル生成手段によって生成された特徴ベクトルの要素として付加することを特徴とする情報処理方法である。
【００１０】
（５）コンピュータを、複数の広告が表示されているウェブページ内の広告のクリック毎に発生するログデータであって、クリックされた広告とクリックされなかった広告の組み合わせに関するログデータに基づいて、表示する広告を選択するための特徴ベクトルを生成する特徴ベクトル生成手段と、ログデータを用いて、広告に対してクリックを行った者に関する属性毎に、該広告の特徴ベクトルを構成する要素との組み合わせにおけるクリック率を算出する算出手段と、前記特徴ベクトルが対象としている広告に対するクリック率であって、該特徴ベクトルを構成する所定の要素に対応する属性を抽出する抽出手段と、前記抽出手段によって抽出されたクリック率を前記特徴ベクトル生成手段によって生成された特徴ベクトルの要素として付加する付加手段として機能させるための情報処理プログラムである。
【発明の効果】
【００１１】
本発明にかかる情報処理装置、情報処理方法及び情報処理プログラムによれば、差分ベクトルでクリック予測モデルを学習する場合において、クリック毎に共通であるデモグラフィック情報又はコンテキスト情報を反映しているクリック率を用いて、クリック予測モデルの作成に活用できるように特徴ベクトルを生成することができる。
【図面の簡単な説明】
【００１２】
【図１】本実施の形態の構成例についての概念的なモジュール構成図である。
【図２】本実施の形態による処理例を示すフローチャートである。
【図３】クリックログテーブルのデータ構造例を示す説明図である。
【図４】特徴ベクトルテーブルのデータ構造例を示す説明図である。
【図５】ユーザ属性テーブルのデータ構造例を示す説明図である。
【図６】広告属性テーブルのデータ構造例を示す説明図である。
【図７】属性・単語間クリック率テーブルのデータ構造例を示す説明図である。
【図８】特徴ベクトルのデータ構造例を示す説明図である。
【図９】本実施の形態による処理例を示すフローチャートである。
【図１０】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００１３】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図１は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム（コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム）、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、２以上の値（もちろんのことながら、全ての値も含む）が同じであってもよい。また、「Ａである場合、Ｂをする」という意味を有する記載は、「Ａであるか否かを判断し、Ａであると判断した場合はＢをする」の意味で用いる。ただし、Ａであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」（社会システム）にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、外部記憶媒体、通信回線を介した記憶装置、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内のレジスタ等を含んでいてもよい。
【００１４】
本実施の形態である情報処理装置は、複数の広告が表示されているウェブページ内の広告のクリック毎に発生するログデータであって、クリックされた広告とクリックされなかった広告の組み合わせに関するログデータに基づいて、表示する広告を選択するための特徴ベクトルを生成するものであって、図１の例に示すように、ログ記憶モジュール１１０、特徴ベクトル生成モジュール１２０、クリック予測モデル生成モジュール１５０を有している。特徴ベクトル生成モジュール１２０又はクリック予測モデル生成モジュール１５０は、クリックが発生する（ログデータが発生する）毎に処理を行ってもよいし、予め定められた期間毎に処理を行ってもよい。
ここで、本実施の形態である情報処理装置が行う処理の概要について例を用いて説明する。
（１）  広告Ａ、Ｂ、Ｃの３本が掲載されたウェブページがあり、そのウェブページのリクエストで発生したユーザＡ（属性：男性）のクリックログを取得する。例えば、広告Ａについては「クリックしなかった」、広告Ｂについては「クリックした」、広告Ｃについては「クリックしなかった」というログデータが発生することになる。
（２）  そして、広告Ａ、Ｂ、Ｃの特徴ベクトルの要素として、属性：男性のクリック率を付加する。つまり、男性だけのクリックログから生成したモデルから、広告Ａ、Ｂ、Ｃのクリック率を抽出して、それぞれの特徴ベクトルの要素として付加する。そのために、例えば、広告Ａ、Ｂ、Ｃに含まれている単語を含めた情報をモデルに掛けるとクリック率が算出される。
（３）  次に、教師データとして、例えば、広告Ｂ−広告Ａ（ポジティブデータ）、広告Ｂ−広告Ｃ（ポジティブデータ）、広告Ａ−広告Ｂ（ネガティブデータ）、広告Ｃ−広告Ｂ（ネガティブデータ）という差分ベクトル生成する。つまり、差分ベクトルを生成しても、デモグラフィック情報又はコンテキスト情報を反映させた要素は相殺されないこととなる。
（４）  （３）での差分ベクトルからランキング学習を行う。
【００１５】
ログ記憶モジュール１１０は、特徴ベクトル生成モジュール１２０、クリック予測モデル生成モジュール１５０と接続されている。ログ記憶モジュール１１０は、インターネットにおいて、ユーザが有しているＰＣ、携帯端末（例えば、携帯電話、スマートフォン等）を操作して、ウェブページ内にある広告が表示、クリック等されたことを示すログデータを記憶している。例えば、クリックログテーブル３００を記憶している。図３は、クリックログテーブル３００のデータ構造例を示す説明図である。クリックログテーブル３００は、クリック日時欄３１０、広告ＩＤ欄３２０、ユーザＩＤ欄３３０、ＵＲＬ欄３４０、場所欄３５０を有しており、ウェブページに表示された広告がクリックされたことを示す情報（以下、クリックログともいう。）を記憶する。クリック日時欄３１０は、広告がクリックされた日時（クリック日時）を記憶する。広告ＩＤ欄３２０は、クリックされた広告を本実施の形態において一意に識別する広告ＩＤ（ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）を記憶する。ユーザＩＤ欄３３０は、広告をクリックしたユーザを本実施の形態において一意に識別するユーザＩＤを記憶する。ＵＲＬ欄３４０は、広告が表示されたウェブページを示すＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を記憶する。場所欄３５０は、そのクリックがされた場所（例えば、緯度、経度）を記憶する。この場所データは、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ（汎地球測位システム））によって測定されたもの、又は携帯電話網における基地局の位置である。
また、クリックログだけでなく、ウェブページに広告が表示されたこと（インプレッションと呼ばれる。）を示す情報（以下、インプレッションログともいう。）を記憶するようにしてもよい。例えば、インプレッションログには、Ｗｅｂページに広告が表示された日時（すなわち、ＷｅｂページがＷｅｂサーバから送信された日時である。以下、配信日時ともいう。）、Ｗｅｂページを示すＵＲＬ、表示された広告を示す広告ＩＤ、Ｗｅｂページを閲覧したユーザを示すユーザＩＤが含まれる。インプレッションログは１つの広告が表示されるにつき１つ登録されるようにしてもよい。すなわち、例えば１つのＷｅｂページに３つの広告が表示された場合には、３つのインプレッションログが登録されることになる。
特に、ログ記憶モジュール１１０は、１回のリクエストでクリックが発生する毎に生成されたログデータを記憶する。つまり、表示している広告（インプレッションログ）、その中でクリックされた広告、クリックされなかった広告をログデータとして記憶する。つまり、クリックされた広告とクリックされなかった広告の組み合わせをログデータとして記憶している。これによって、差分ベクトル生成モジュール１５４は、差分ベクトルを生成する。
なお、クリック予測モデル生成モジュール１５０が用いるログデータには、クリックされた広告とクリックされなかった広告の組み合わせのログデータが含まれている。また、特徴ベクトル生成モジュール１２０が用いるログデータは、クリックされた広告とクリックされなかった広告の組み合わせのログデータは、必ずしも含まれている必要はない。ただし、クリックされた広告とクリックされなかった広告の組み合わせのログデータを排除するものではない。つまり、クリック予測モデル生成モジュール１５０が用いるログデータと特徴ベクトル生成モジュール１２０が用いるログデータは、異なるログデータであってもよいし、同じものであってもよいし、一方が他方を含むようなログデータであってもよい。
【００１６】
特徴ベクトル生成モジュール１２０は、特徴ベクトル生成処理モジュール１２２、クリック率算出モジュール１２４、クリック率抽出モジュール１２６、特徴ベクトル要素付加モジュール１２８を有している。特徴ベクトル生成モジュール１２０は、ログ記憶モジュール１１０と接続されている。
特徴ベクトル生成処理モジュール１２２は、ログ記憶モジュール１１０に記憶されている広告のクリックに関するログデータに基づいて、表示する広告を選択するための特徴ベクトルを生成する。ここで生成する特徴ベクトルは、例えば、特徴ベクトルテーブル４００である。図４は、特徴ベクトルテーブル４００のデータ構造例を示す説明図である。特徴ベクトルテーブル４００は、列方向に広告欄４１０、クリック率欄４２０、単語欄４３０、カテゴリ欄４４０、ページ類似度欄４５０、行動類似度欄４６０等を有しており、行方向に広告Ａ欄４８２、広告Ｂ欄４８４、広告Ｃ欄４８６、広告Ｄ欄４８８等を有している。つまり、広告毎にクリック率、単語、カテゴリ、ページ類似度、行動類似度等を要素として有しているベクトルを表している。広告欄４１０は、広告名（広告ＩＤであってもよい）を記憶している。クリック率欄４２０は、その広告に対するＣＴＲ（Ｃｌｉｃｋ  Ｔｈｒｏｕｇｈ  Ｒａｔｅ）を記憶している。ＣＴＲは、広告がクリックされた割合であり、クリック数／インプレッション（広告が表示／配信された数）である。単語欄４３０は、その広告に用いられている言葉、又はその広告に付与されているキーワードを記憶している。その広告に用いられている言葉としては、例えば、タイトル、詳細説明に含まれる単語列がある。カテゴリ欄４４０は、その広告が属している分類名を記憶している。ページ類似度欄４５０は、その広告と該広告が含まれているウェブページとの類似度を記憶している。行動類似度欄４６０は、その広告とユーザのウェブ閲覧行動との類似度を記憶している。例えば、行動類似度は、ユーザのウェブ閲覧行動として自動車関連のウェブページが多い場合に、その広告も自動車関連であるならば類似していることを示す指標であり、その広告が旅行関連ならば自動車関連の広告よりも類似していないことを示すこととなる。
【００１７】
クリック率算出モジュール１２４は、ログ記憶モジュール１１０に記憶されているログデータを用いて、広告に対してクリックを行ったユーザに関する属性毎に、その広告の特徴ベクトルを構成する要素との組み合わせにおけるクリック率を算出する。ここでのユーザに関する属性としては、例えば、デモグラフィック情報としての性別、年令（年代等であってもよい）、国籍、住所等、又はコンテキスト情報としてのクリックしたときの曜日、時間帯、場所等がある。ユーザに関するデモグラフィック情報としての属性として、例えば、ユーザ属性テーブル５００を用いて管理している。図５は、ユーザ属性テーブル５００のデータ構造例を示す説明図である。ユーザ属性テーブル５００は、ユーザＩＤ欄５１０、性別欄５２０、年令欄５３０、国籍欄５４０、住所欄５５０、興味カテゴリ欄５６０を有している。ユーザＩＤ欄５１０は、ユーザＩＤを記憶している。性別欄５２０は、そのユーザＩＤで示されるユーザの性別を記憶している。年令欄５３０は、そのユーザＩＤで示されるユーザの年令を記憶している。国籍欄５４０は、そのユーザＩＤで示されるユーザの国籍を記憶している。住所欄５５０は、そのユーザＩＤで示されるユーザの住所を記憶している。興味カテゴリ欄５６０は、そのユーザＩＤで示されるユーザが興味を示しているカテゴリ（趣味としている映画、スポーツ等があり、さらにスポーツとして野球、サッカー等としてもよい）を記憶している。また、コンテキスト情報としての属性は、クリックしたときの日時、場所等を含むログデータから抽出すればよい。
【００１８】
広告に用いられている言葉又はその広告に付与されているキーワードとして、例えば、広告属性テーブル６００を用いて管理している。図６は、広告属性テーブル６００のデータ構造例を示す説明図である。広告属性テーブル６００は、広告ＩＤ欄６１０、カテゴリ欄６２０、単語欄６３０を有している。広告ＩＤ欄６１０は、広告ＩＤを記憶している。カテゴリ欄６２０は、その広告ＩＤで示される広告が含まれているカテゴリ（映画、スポーツ等があり、さらにスポーツとして野球、サッカー等）を記憶している。これをその広告に付与されているキーワードとしてもよい。単語欄６３０は、その広告に用いられている単語を記憶している。この単語は、対象としている広告に対して形態素解析を行い、抽出するようにしてもよい。
【００１９】
クリック率算出モジュール１２４は、処理結果として属性・単語間クリック率テーブル７００を作成する。図７は、属性・単語間クリック率テーブル７００のデータ構造例を示す説明図である。属性・単語間クリック率テーブル７００は、列方向に単語１欄７１０、単語２欄７２０、単語３欄７３０等を有しており、行方向に属性１欄７８２、属性２欄７８４、属性３欄７８６等を有している。交差しているセルは、クリック率を記憶している。つまり、属性・単語間クリック率テーブル７００は、単語（前記広告に用いられている言葉又は該広告に付与されているキーワード）と属性（ユーザ属性としての性別、年令等）の組み合わせにおけるクリック率を記憶している。これによって、ユーザの属性と広告に含まれる単語との組み合わせに対応したクリック率を抽出することができるようになる。例えば、クリックしたユーザが男性、３０歳代である場合に、自動車という単語を含む広告に反応する確率（クリック率）、化粧品という単語を含む広告に反応する確率（クリック率）等を抽出することができるようになる。
なお、クリック率算出モジュール１２４は、広告の特徴ベクトルから、属性ごとのクリック率を算出する。
【００２０】
また、クリック率算出モジュール１２４が用いる要素として、特徴ベクトルを構成する要素であれば、特に限定する必要はない。例えば、広告に用いられている言葉又はその広告に付与されているキーワード（特徴ベクトルテーブル４００の単語欄４３０）を用いるようにしてもよい。また、ログデータを用いて、広告と属性に関するモデルを学習によって生成するようにしてもよい。例えば、広告に用いられている言葉又はその広告に付与されているキーワードを用いてログデータによって学習されたモデルを用いて、その広告がどれだけクリックされやすいかを示す値であるクリック率を算出してもよい。例えば、男性のログデータだけに絞って学習させることで、男性がその広告を見たときのクリック率を算出する。学習方法として、例えば、ニューラルネットワーク等を用いてもよい。
【００２１】
クリック率抽出モジュール１２６は、特徴ベクトルが対象としている広告に対するクリック率であって、その特徴ベクトルを構成する所定の要素に対応するクリック率を抽出する。「特徴ベクトルが対象としている広告に対するクリック率」とは、学習モジュール１５６による学習の対象となる広告のクリック率である。また、クリック率は、クリック率算出モジュール１２４によって算出されたものを用いる。所定の要素として、例えば、前述の単語等を用いてもよい。クリックをしたユーザの属性とクリック対象の広告に含まれている単語を用いて、属性・単語間クリック率テーブル７００からクリック率を抽出する。例えば、ユーザが男性、３０歳代であって、自動車の広告（「自動車」という単語が含まれている）をクリックした場合、属性・単語間クリック率テーブル７００から属性が男性で単語が「自動車」の組み合わせにおけるクリック率を抽出し、属性が３０歳代で単語が「自動車」の組み合わせにおけるクリック率を抽出することになる。
【００２２】
特徴ベクトル要素付加モジュール１２８は、クリック率抽出モジュール１２６によって抽出されたクリック率を特徴ベクトル生成処理モジュール１２２によって生成された特徴ベクトルの要素として付加する。例えば、特徴ベクトル８００を生成する。図８は、特徴ベクトル８００のデータ構造例を示す説明図である。特徴ベクトル８００は、列方向に広告欄８１０、クリック率欄８２０、単語欄８３０、カテゴリ欄８４０、クリック率Ａ欄８５０、クリック率Ｂ欄８６０等を有しており、行方向に広告Ａ欄８８２、広告Ｂ欄８８４、広告Ｃ欄８８６、広告Ｄ欄８８８等を有している。つまり、図４に例示した前述の特徴ベクトルテーブル４００にクリック率Ａ欄８５０、クリック率Ｂ欄８６０を付加したものである。クリック率抽出モジュール１２６によって抽出されたクリック率として、２つ以上のクリック率を付加したものである。これによって、特徴ベクトル内にデモグラフィック情報又はコンテキスト情報を反映したクリック率が含まれることになる。
前述の例では、男性、３０歳代のユーザが自動車の広告をクリックした場合の特徴ベクトルの要素として、広告Ａが自動車関連であれば、クリック率Ａ欄８５０には、ユーザが男性であって、自動車の広告をクリックした場合のクリック率、クリック率Ｂ欄８６０には、ユーザが３０歳代であって、自動車の広告をクリックした場合のクリック率が付加されることになる。また、女性、５０歳代のユーザが保険の広告をクリックした場合の特徴ベクトルの要素として、広告Ｂが保険関連であれば、クリック率Ａ欄８５０には、ユーザが女性であって、保険の広告をクリックした場合のクリック率、クリック率Ｂ欄８６０には、ユーザが５０歳代であって、保険の広告をクリックした場合のクリック率が付加されることになる。
これによって、ユーザの属性が反映されたクリック率を要素として含む特徴ベクトルを生成することになる。また、差分ベクトルを生成する際の他方の特徴ベクトルにおいて、クリックされなかった広告におけるクリック率Ａ欄８５０、クリック率Ｂ欄８６０は、クリックされなかった広告に含まれている単語における男性のユーザのクリック率、３０歳代のユーザのクリック率がそれぞれ付加されることになり、差分ベクトルにおけるその要素は常に０であるという事態を回避している。
【００２３】
クリック予測モデル生成モジュール１５０は、ログ収集モジュール１５２、差分ベクトル生成モジュール１５４、学習モジュール１５６、出力モジュール１５８を有している。クリック予測モデル生成モジュール１５０は、ログ記憶モジュール１１０と接続されている。
ログ収集モジュール１５２は、広告のクリックに関するログデータをログ記憶モジュール１１０から収集する。なお、ログ収集モジュール１５２が収集するログデータは、特徴ベクトル生成モジュール１２０が用いたログデータと同じものであってもよいし、異なるログデータを収集するようにしてもよい。ここで収集するログデータには、差分ベクトルを生成するために、少なくとも、１回のクリックによる発生するログデータであって、クリックされた広告とクリックされなかった広告の組み合わせが含まれている。
差分ベクトル生成モジュール１５４は、ログ収集モジュール１５２によってログデータが収集された場合は、クリックされた広告とクリックされなかった広告の特徴ベクトルの差分ベクトルを生成する。具体的には、２つの特徴ベクトルの各要素の差分からなる差分ベクトルを生成する。なお、ここでクリックされた広告とクリックされなかった広告は、同じウェブページにある広告であり、１回のクリックによるログデータでは、クリックされた広告が１つであり、そのウェブページにあるが、その他の広告は、クリックされなかった広告となる。そして、差分ベクトルは、例えば、正解データ（ポジティブデータ）として、クリックされた広告の特徴ベクトルの各要素（例えば、行動類似度等）からクリックされなかった広告の特徴ベクトルの対応する各要素を減算した値を用い、ネガティブデータとして、クリックされなかった広告の特徴ベクトルの各要素からクリックされた広告の特徴ベクトルの各要素を減算した値を用いてもよい。この正解データとネガティブデータを用いて、学習される。
学習モジュール１５６は、差分ベクトル生成モジュール１５４によって生成された差分ベクトルを用いて、表示する広告を選択するための基準を学習（ランキング学習）する。ここでの学習は、いわゆる機械学習であり、表示する広告を選択するための基準のモデルを生成するものであり、教師あり学習であるが、前述した差分ベクトルを利用するものであればよい。具体的には、正解データとネガティブデータを教師データとした学習であり、例えば、ニューラルネットワーク等で学習してもよい。
出力モジュール１５８は、学習モジュール１５６によって学習された基準にしたがって、表示する広告を選択する。ここでの選択には、ランキング付け（順位付け）を含む。
【００２４】
図２は、本実施の形態（特徴ベクトル生成モジュール１２０）による処理例を示すフローチャートである。
ステップＳ２０２では、特徴ベクトル生成処理モジュール１２２が、ログ記憶モジュール１１０内のログデータを用いて、特徴ベクトルを生成する。
ステップＳ２０４では、クリック率算出モジュール１２４が、ログ記憶モジュール１１０内のログデータを用いて、属性毎に単語との組み合わせにおけるクリック率を算出する。
ステップＳ２０６では、クリック率抽出モジュール１２６が、特徴ベクトル内の要素（単語）とクリックしたユーザの属性に対応するクリック率を抽出する。
ステップＳ２０８では、特徴ベクトル要素付加モジュール１２８が、クリック率を要素に含めた特徴ベクトルを生成する。
【００２５】
図９は、本実施の形態（クリック予測モデル生成モジュール１５０）による処理例を示すフローチャートである。
ステップＳ９０２では、ログ収集モジュール１５２が、ログ記憶モジュール１１０からログデータを収集する。
ステップＳ９０４では、差分ベクトル生成モジュール１５４が、クリック毎に特徴ベクトルの差分ベクトルを生成する。
ステップＳ９０６では、学習モジュール１５６が、ランキング学習処理を行う。
ステップＳ９０８では、出力モジュール１５８が、クリック率の予測モデルを出力する。その後、その予測モデルを用いて、ウェブページに表示する広告を選択する。
【００２６】
なお、本実施の形態としてのプログラムが実行されるコンピュータのハードウェア構成は、図１０に例示するように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバとなり得るコンピュータ等である。つまり、具体例として、処理部（演算部）としてＣＰＵ１００１を用い、記憶装置としてＲＡＭ１００２、ＲＯＭ１００３、ＨＤ１００４を用いている。ＨＤ１００４として、例えばハードディスクを用いてもよい。特徴ベクトル生成処理モジュール１２２、クリック率算出モジュール１２４、クリック率抽出モジュール１２６、特徴ベクトル要素付加モジュール１２８、ログ収集モジュール１５２、差分ベクトル生成モジュール１５４、学習モジュール１５６、出力モジュール１５８等のプログラムを実行するＣＰＵ１００１と、そのプログラムやデータを記憶するＲＡＭ１００２と、本コンピュータを起動するためのプログラム等が格納されているＲＯＭ１００３と、補助記憶装置であるＨＤ１００４と、キーボード、マウス、タッチパネル等に対する利用者の操作に基づいてデータを受け付ける受付装置１００６と、ＣＲＴ、液晶ディスプレイ等の出力装置１００５と、ネットワークインタフェースカード等の通信ネットワークと接続するための通信回線インタフェース１００７、そして、それらをつないでデータのやりとりをするためのバス１００８により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【００２７】
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図１０に示すハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図１０に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えばＡＳＩＣ等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１０に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。
【００２８】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ（登録商標））、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【００２９】
１１０…ログ記憶モジュール
１２０…特徴ベクトル生成モジュール
１２２…特徴ベクトル生成処理モジュール
１２４…クリック率算出モジュール
１２６…クリック率抽出モジュール
１２８…特徴ベクトル要素付加モジュール
１５０…クリック予測モデル生成モジュール
１５２…ログ収集モジュール
１５４…差分ベクトル生成モジュール
１５６…学習モジュール
１５８…出力モジュール
【図１】
2014174753.tif 000003
【図２】
2014174753.tif 000004
【図３】
2014174753.tif 000005
【図４】
2014174753.tif 000006
【図５】
2014174753.tif 000007
【図６】
2014174753.tif 000008
【図７】
2014174753.tif 000009
【図８】
2014174753.tif 000010
【図９】
2014174753.tif 000011
【図１０】
2014174753.tif 000012