(57)【要約】【課題】ユーザにとって情報が必要となる適切なタイミングで、効果的な情報を配信できる情報処理装置、情報処理方法及びプログラムを提供する。【解決手段】ネット上におけるユーザの行動に関する行動時系列情報を取得し、行動時系列情報が時間を変数とする混合分布となるとした場合の混合分布の分布数及びパラメータを推定するパラメータ推定手段（制御部３１）と、推定された混合分布の分布数及びパラメータと、特定のユーザの行動時系列情報と、に基づいて、特定のユーザが所定のイベントを実行する確率を計算するイベント実行確率計算手段（制御部３１）と、イベント実行確率に基づいて、特定のユーザの行動を予測するイベント予測手段（制御部３１）と、特定のユーザの行動に関連する情報を配信する情報配信手段（制御部３１）と、を備える。【選択図】図１
2016045543.tif 000002
【特許請求の範囲】
【請求項１】
ネット上におけるユーザの行動に関する行動時系列情報を取得し、行動時系列情報が時間を変数とする混合分布となるとした場合の混合分布の分布数及びパラメータを推定するパラメータ推定手段と、
前記パラメータ推定手段により推定された前記混合分布の分布数及びパラメータと、特定のユーザの行動時系列情報と、に基づいて、前記特定のユーザが所定のイベントを実行する確率を計算するイベント実行確率計算手段と、
前記イベント実行確率計算手段により計算されたイベント実行確率に基づいて、前記特定のユーザの行動を予測するイベント予測手段と、
前記予測手段により予測された前記特定のユーザの行動に関連する情報を配信する情報配信手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記情報配信手段は、
前記特定のユーザによる広告枠付きのＷｅｂページの閲覧要求に基づいて、前記広告枠に前記情報としての広告を配信することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記イベント予測手段は、
前記イベント実行確率計算手段により計算されたイベント実行確率の最も高いイベントをユーザの行動として予測することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記混合分布の分布数及びパラメータと、ユーザの行動時系列情報と、に基づいて、行動に相関のある人同士をグループ化して分類する分類手段を備え、
前記情報配信手段は、前記特定のユーザが前記分類手段により分類されたグループに含まれる場合、当該グループに属する他の人に前記情報を配信することを特徴とする請求項１〜３の何れか一項に記載の情報処理装置。
【請求項５】
前記混合分布の分布数及びパラメータは、変分ベイズ法を用いた統計処理によって推定されることを特徴とする請求項１〜４の何れか一項に記載の情報処理装置。
【請求項６】
前記混合分布は連続分布であることを特徴とする請求項１〜５の何れか一項に記載の情報処理装置。
【請求項７】
前記混合分布は混合正規分布であることを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記混合分布は離散分布であることを特徴とする請求項１〜５の何れか一項に記載の情報処理装置。
【請求項９】
前記ユーザの行動は、キーワード検索であることを特徴とする請求項１〜８の何れか一項に記載の情報処理装置。
【請求項１０】
情報処理装置の情報処理方法であって、
ネット上におけるユーザの行動に関する行動時系列情報を取得し、行動時系列情報が時間を変数とする混合分布となるとした場合の混合分布の分布数及びパラメータを推定するパラメータ推定ステップと、
推定された前記混合分布の分布数及びパラメータと、特定のユーザの行動時系列情報と、に基づいて、前記特定のユーザが所定のイベントを実行する確率を計算するイベント実行確率計算ステップと、
計算されたイベント実行確率に基づいて、前記特定のユーザの行動を予測するイベント予測ステップと、
予測された前記特定のユーザの行動に関連する情報を配信する情報配信ステップと、
を有することを特徴とする情報処理方法。
【請求項１１】
コンピュータを、
ネット上におけるユーザの行動に関する行動時系列情報を取得し、行動時系列情報が時間を変数とする混合分布となるとした場合の混合分布の分布数及びパラメータを推定するパラメータ推定手段、
前記パラメータ推定手段により推定された前記混合分布の分布数及びパラメータと、特定のユーザの行動時系列情報と、に基づいて、前記特定のユーザが所定のイベントを実行する確率を計算するイベント実行確率計算手段、
前記イベント実行確率計算手段により計算されたイベント実行確率に基づいて、前記特定のユーザの行動を予測するイベント予測手段、
前記予測手段により予測された前記特定のユーザの行動に関連する情報を配信する情報配信手段、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、キーワード検索やウェブページ閲覧等のネット上でのユーザの行動に基づいて、ユーザに適した広告などの情報を配信する情報配信方法が知られている。
【０００３】
具体的には、例えば、検索サイトでユーザが指定した検索キーワードに応じて広告を配信する検索連動型広告と呼ばれる広告配信方法が知られている（特許文献１）。
また、例えば、ユーザが閲覧しているウェブページのコンテンツ情報に基づいて広告が配信されるコンテンツ連動型広告と呼ばれる広告配信方法が知られている（特許文献２）。
【０００４】
すなわち、検索連動型広告では、ユーザが検索した時点で検索キーワードにマッチングする広告が配信され、また、コンテンツ連動型広告では、ユーザが実際にウェブページを閲覧している最中にウェブページにマッチングする広告が配信される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−２１１７７７号公報
【特許文献２】特開２０１０−２１８２０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、これら従来の広告配信方法は、ユーザのその場の行動に基づいた広告配信方法であり、その場の行動に関連しない広告については、例えユーザにとってニーズの高い広告であっても表示されることはない。
【０００７】
また、従来の広告配信方法では、長期的なユーザの行動を考慮していないため、ユーザに適切なタイミングで広告を配信できないことがある。
具体的には、仮に「結婚式」と検索をしたユーザがその３ヶ月後に住宅を探し始める傾向があるとする場合、従来の検索連動型広告においては、「結婚式」と検索した時点から３ヶ月後に不動産情報の広告を配信することは難しいという課題がある。
【０００８】
本発明は、このような課題に鑑みてなされたものであり、本発明の目的は、ユーザにとって情報が必要となる適切なタイミングで、効果的な情報を配信することができる情報処理装置、情報処理方法及びプログラムを提供することである。
【課題を解決するための手段】
【０００９】
請求項１に記載の発明は、上記目的を達成するためになされたものであり、
情報処理装置において、
ネット上におけるユーザの行動に関する行動時系列情報を取得し、行動時系列情報が時間を変数とする混合分布となるとした場合の混合分布の分布数及びパラメータを推定するパラメータ推定手段と、
前記パラメータ推定手段により推定された前記混合分布の分布数及びパラメータと、特定のユーザの行動時系列情報と、に基づいて、前記特定のユーザが所定のイベントを実行する確率を計算するイベント実行確率計算手段と、
前記イベント実行確率計算手段により計算されたイベント実行確率に基づいて、前記特定のユーザの行動を予測するイベント予測手段と、
前記予測手段により予測された前記特定のユーザの行動に関連する情報を配信する情報配信手段と、
を備えることを特徴とする。
【００１０】
請求項２に記載の発明は、請求項１に記載の情報処理装置において、
前記情報配信手段は、
前記特定のユーザによる広告枠付きのＷｅｂページの閲覧要求に基づいて、前記広告枠に前記情報としての広告を配信することを特徴とする。
【００１１】
請求項３に記載の発明は、請求項１又は２に記載の情報処理装置において、
前記イベント予測手段は、
前記イベント実行確率計算手段により計算されたイベント実行確率の最も高いイベントをユーザの行動として予測することを特徴とする。
【００１２】
請求項４に記載の発明は、請求項１〜３の何れか一項に記載の情報処理装置において、
前記混合分布の分布数及びパラメータと、ユーザの行動時系列情報と、に基づいて、行動に相関のある人同士をグループ化して分類する分類手段を備え、
前記情報配信手段は、前記特定のユーザが前記分類手段により分類されたグループに含まれる場合、当該グループに属する他の人に前記情報を配信することを特徴とする。
【００１３】
請求項５に記載の発明は、請求項１〜４の何れか一項に記載の情報処理装置において、
前記混合分布の分布数及びパラメータは、変分ベイズ法を用いた統計処理によって推定されることを特徴とする。
【００１４】
請求項６に記載の発明は、請求項１〜５の何れか一項に記載の情報処理装置において、
前記混合分布は連続分布であることを特徴とする。
【００１５】
請求項７に記載の発明は、請求項６に記載の情報処理装置において、
前記混合分布は混合正規分布であることを特徴とする。
【００１６】
請求項８に記載の発明は、請求項１〜５の何れか一項に記載の情報処理装置において、
前記混合分布は離散分布であることを特徴とする。
【００１７】
請求項９に記載の発明は、請求項１〜８の何れか一項に記載の情報処理装置において、
前記ユーザの行動は、キーワード検索であることを特徴とする。
【００１８】
請求項１０に記載の発明は、
情報処理装置の情報処理方法であって、
ネット上におけるユーザの行動に関する行動時系列情報を取得し、行動時系列情報が時間を変数とする混合分布となるとした場合の混合分布の分布数及びパラメータを推定するパラメータ推定ステップと、
推定された前記混合分布の分布数及びパラメータと、特定のユーザの行動時系列情報と、に基づいて、前記特定のユーザが所定のイベントを実行する確率を計算するイベント実行確率計算ステップと、
計算されたイベント実行確率に基づいて、前記特定のユーザの行動を予測するイベント予測ステップと、
予測された前記特定のユーザの行動に関連する情報を配信する情報配信ステップと、
を有することを特徴とする。
【００１９】
請求項１１に記載の発明は、
ネット上におけるユーザの行動に関する行動時系列情報を取得し、行動時系列情報が時間を変数とする混合分布となるとした場合の混合分布の分布数及びパラメータを推定するパラメータ推定手段、
前記パラメータ推定手段により推定された前記混合分布の分布数及びパラメータと、特定のユーザの行動時系列情報と、に基づいて、前記特定のユーザが所定のイベントを実行する確率を計算するイベント実行確率計算手段、
前記イベント実行確率計算手段により計算されたイベント実行確率に基づいて、前記特定のユーザの行動を予測するイベント予測手段、
前記予測手段により予測された前記特定のユーザの行動に関連する情報を配信する情報配信手段、
として機能させるプログラムである。
【発明の効果】
【００２０】
本発明によれば、ユーザにとって情報が必要となる適切なタイミングで、効果的な情報を配信することができる。
【図面の簡単な説明】
【００２１】
【図１】本実施形態に係る情報処理システムの概略構成を示すブロック図である。
【図２】混合正規分布の分布数及び各種パラメータの推定処理を示すフローチャートである。
【図３】本実施形態により推定された混合正規分布の分布図である。
【図４】本実施形態により推定された混合正規分布の分布を縦に複数並べたヒートマップである。
【図５】広告配信処理を示すフローチャートである。
【発明を実施するための形態】
【００２２】
以下に、本発明の実施の形態について図面を参照して説明する。ただし、以下は本発明の実施形態の一例であって本発明を限定するものではない。
【００２３】
［１．情報処理システムの概要］
本実施形態に係る情報処理システム１は、ユーザのキーワード検索、ウェブページ閲覧、広告クリック、サービスの利用又は商品購入等といったユーザの行動情報と、ユーザがそれらの行動を実行した時刻情報と、当該ユーザ以外のあらゆるユーザのこれまでの行動情報や時刻情報が蓄積されたデータベースに基づいて、ユーザにとって効果の高い広告を選択し、適切なタイミングで配信するものである。
【００２４】
以下の説明では、本実施形態の具体例の一つとして、上述したユーザの行動はユーザがキーワード検索を行うことであると定義し、ユーザの閲覧しているウェブページの広告欄に広告が配信される場合を例として説明する。
【００２５】
［２．情報処理システムの構成］
情報処理システム１は、図１に示すように、端末装置１０、Ｗｅｂサーバ２０、及び広告配信サーバ３０を備えて構成されている。端末装置１０は、通信ネットワークＮを介して、Ｗｅｂサーバ２０及び広告配信サーバ３０に接続されており、Ｗｅｂサーバ２０及び広告配信サーバ３０からそれぞれＷｅｂページと広告を受信し、広告を含むＷｅｂページを画面表示することができる。
【００２６】
［２−１．端末装置］
端末装置１０は、広告を含むＷｅｂページを閲覧するためのユーザ端末であり、図１に示すように、制御部１１、操作部１２、表示部１３、記憶部１４及び通信部１５等を備えて構成されている。
具体的には、端末装置１０は、例えば、携帯電話端末やスマートフォン、タブレットコンピュータ、ノートコンピュータ、パーソナルコンピュータなどの情報処理機器から構成され、ウェブブラウザ（ウェブコンテンツ閲覧ソフトウェア）を備えている。
【００２７】
制御部１１は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）及びＲＡＭ（Random Access Memory）等を備えて構成され、ＲＡＭの作業領域に展開されたＲＯＭや記憶部１４に記憶されたプログラムデータとＣＰＵとの協働により、端末装置１０の各部を統括制御する。
また、制御部１１は、Ｗｅｂサーバ２０から広告枠が含まれるＷｅｂページを受信した場合に、Ｗｅｂページの広告枠に表示させる広告の取得要求を、広告配信サーバ３０に送信する。
【００２８】
操作部１２は、例えば、ホームボタンからなるキー入力部と、表示部１３と一体的に形成されたタッチパネルとを備えており、ユーザからの操作入力を受け付けて、操作入力に応じた操作信号を制御部１１へと出力する。
【００２９】
表示部１３は、例えば、ＬＣＤ（Liquid Crystal Display）、有機ＥＬ（Electro Luminescence）素子を用いたＦＰＤ（Flat Panel Display）などのディスプレイを備え、制御部１１から出力された表示制御信号に基づいた画像を表示画面に表示する。
【００３０】
記憶部１４は、例えば、ＨＤＤ（Hard Disk Drive）、半導体メモリなどにより構成され、プログラムデータや各種データを制御部１１から読み書き可能に記憶している
【００３１】
通信部１５は、アンテナや通信回路を備え、制御部１１による制御の下で外部機器との間の無線通信を行う。具体的には、通信部１５は、通信ネットワークＮを介してデータ通信を行っている。
【００３２】
［２−２．Ｗｅｂサーバ］
Ｗｅｂサーバ２０は、図１に示すように、例えば、制御部２１、操作部２２、表示部２３、記憶部２４及び通信部２５等を備えて構成されている。
【００３３】
制御部２１は、ＣＰＵ、ＲＯＭ及びＲＡＭ等を備えて構成され、ＲＡＭの作業領域に展開されたＲＯＭや記憶部２４に記憶されたプログラムデータとＣＰＵとの協働により、Ｗｅｂサーバ２０の各部を統括制御する。
また、制御部２１は、端末装置１０からＷｅｂページ取得要求を受信し、記憶部２４からＷｅｂページを作成するために必要な情報を読み出してＷｅｂページ取得要求に応じたＷｅｂページを作成し、端末装置１０に送信している。
なお、Ｗｅｂサーバ２０によって配信されるＷｅｂページには、広告が表示される広告枠が含まれるものとする。
【００３４】
操作部２２は、例えば、文字入力キー、数字入力キー、その他各種機能に対応付けられたキーなどを有するキーボード、マウス等のポインティングデバイスなどを備え、ユーザからの操作入力を受け付けて、操作入力に応じた操作信号を制御部２１へと出力する。
【００３５】
表示部２３は、例えば、ＣＲＴ（Cathode Ray Tube）やＬＣＤなどのディスプレイを備え、制御部２１から出力された表示制御信号に基づいた画像を表示画面に表示する。
【００３６】
記憶部２４は、例えば、ＨＤＤ、半導体メモリなどにより構成されており、Ｗｅｂページの本文情報等のＷｅｂページを表示させるためのプログラムデータや各種設定データ等のデータを制御部２１から読み書き可能に記憶している。
【００３７】
通信部２５は、通信用ＩＣ（Integrated Circuit）及び通信コネクタなどを有する通信インターフェイスであり、制御部２１の制御の下、所定の通信プロトコルを用いて通信ネットワークＮを介したデータ通信を行う。
【００３８】
［２−３．広告配信サーバ］
広告配信サーバ３０は、図１に示すように、例えば、制御部３１、操作部３２、表示部３３、記憶部３４及び通信部３５等を備えて構成される情報処理装置である。
【００３９】
制御部３１は、ＣＰＵ、ＲＯＭ及びＲＡＭ等を備えて構成され、ＲＡＭの作業領域に展開されたＲＯＭや記憶部３４に記憶されたプログラムデータとＣＰＵとの協働により、広告配信サーバ３０の各部を統括制御する。
また、制御部３１は、パラメータ推定手段、イベント実行確率計算手段、イベント予測手段、情報配信手段としての機能を有しており、端末装置１０からの広告の取得要求を受信すると、後述する各種パラメータの推定処理（図２参照）が実行され、学習ＤＢ３４３に基づいてユーザがどのようなキーワードを検索する確率が高いか（イベント実行確率）を計算し、イベント実行確率の最も高いものをユーザの行動として予測し、イベント実行確率が高い検索キーワードに関連する広告を広告ＤＢ３４１より選択し、端末装置１０に配信する（図５参照）。
さらに、制御部３１は、ユーザを似た趣向を持つ人同士で分類する分類手段としての機能を有しており、後述するクラスタリング手法により、グループ内の特定のユーザに対して配信する予定の広告を、同じグループに属する他の人に配信することが可能である。
【００４０】
操作部３２は、例えば、文字入力キー、数字入力キー、その他各種機能に対応付けられたキーなどを有するキーボード、マウス等のポインティングデバイスなどを備え、ユーザからの操作入力を受け付けて、操作入力に応じた操作信号を制御部３１へと出力する。
【００４１】
表示部３３は、例えば、ＣＲＴやＬＣＤなどのディスプレイを備え、制御部３１から出力された表示制御信号に基づいた画像を表示画面に表示する。
【００４２】
記憶部３４は、例えば、ＨＤＤと半導体メモリなどにより構成され、プログラムデータや各種設定データ等のデータを制御部３１から読み書き可能に記憶する。
【００４３】
また、記憶部３４は、広告ＤＢ３４１、検索履歴ＤＢ３４２及び学習ＤＢ３４３を備えている。
広告ＤＢ３４１は、広告配信処理に際して必要な各種情報が予め記憶されたデータベースであり、例えば、転送先のＵＲＬ情報や広告のコンテンツ情報等が記憶されている。また、広告は検索キーワードと対応付けされて記憶されており、対応付けされたキーワードから広告を選択することができる。
検索履歴ＤＢ３４２は、あらゆるユーザの検索履歴情報が予め記憶されたデータベースであり、例えば、端末装置１０を利用したユーザを識別するユーザＩＤ情報、検索したキーワードの検索キーワード情報及び検索した日時である検索日時情報等が記憶されている。
学習ＤＢ３４３は、ユーザが所定のキーワードを検索したというイベントを実行するイベント実行確率を計算するための各種パラメータが記憶されている。なお、各種パラメータは、後述するパラメータ推定処理（図２参照）によって算出される。
【００４４】
通信部３５は、通信用ＩＣ及び通信コネクタなどを有する通信インターフェイスであり、制御部２１の制御の下、所定の通信プロトコルを用いて通信ネットワークＮを介したデータ通信を行う。
【００４５】
［３．イベント実行確率計算のための各種パラメータの推定］
本実施形態では、キーワードを検索するというユーザの行動がいつ実行されたかという時系列情報（以下行動時系列情報とする）が、時間を変数とする混合連続分布に従うとして、行動時系列情報から混合連続分布の分布数及びパラメータを推定している。
具体的には、キーワードを検索するという行動を実行した場合を「１」実行しなかった場合を「０」として、その行動がいつ実行されたかという行動時系列情報が、時間を変数とする連続的な混合連続分布に従うとしている。
【００４６】
そして、混合連続分布の分布数及びパラメータを用いて、特定のユーザにおけるあるキーワードを検索する確率（イベント実行確率）を計算し、検索する確率が高いとされたキーワードに関連する広告が広告ＤＢ３４１から選択されて、端末装置１０に配信される。
【００４７】
また、本実施形態において、混合連続分布としては混合正規分布用いており、変分ベイズ法を用いたパラメータ推定を用いて、混合正規分布関数の分布数及び各種パラメータを計算している。
【００４８】
混合正規分布は、時刻情報をｘ、平均ベクトルをμ＝（μ１，… ，μＫ）、共分散行列をΣ＝（Σ１，…，ΣＫ）、各分布の混合重みをπ＝（π１，… ，πＫ）とした場合に、Ｋ個の正規分布を持つとして、次式（１）により表すことができる。
【数１】
2016045543.tif 000003
【００４９】
なお、時刻情報ｘは、ネット上におけるユーザの行動（本実施形態では検索）を検索カテゴリ毎に時系列で並べたものであり、時刻情報は所定の単位（例えば１秒）毎に連続になるように変換されたものである。
ここで、検索カテゴリとは、例えば、不動産関係のキーワード（新築、転居、賃貸等）をカテゴリＡ、結婚関係のキーワード（結婚式場、披露宴、新婚旅行等）をカテゴリＢとする等、適宜のキーワード毎に分類したものである。
また、時刻情報ｘは、例えば、１９７０年１月１日午前０時０分０秒からの経過秒数（ｕｎｉｘ時間）によって表すことができる。具体的には、仮にカテゴリＡの検索キーワードが入力された時刻を「２０１３年５月３日１０時５分１秒、２０１３年５月１０日１２時１０分０秒、２０１３年５月１１日９時０分２０秒」とすれば、それぞれ「１３６７５４３１０１，１３６８１５５４００，１３６８２３０４２０」と変換したものが時刻情報ｘとなる。
【００５０】
次に、混合正規分布の分布数及び各種パラメータの推定方法について、図２を用いて、計算式を示して詳細に説明する。
【００５１】
まず、分布関数である式（１）の初期値と、後述のステップで使用するハイパーパラメータの値と、を設定する（ステップＳ１０１）。
具体的には、例えば、式（１）の混合分布関数の初期値は、混合重み係数πは一様として、分布関数がＫの場合、１／Ｋになるとし、平均値は０を中心とした±１を範囲とした乱数、共分散行列は全成分１の対角共分散行列とする。
また、ハイパーパラメータの値は、例えば、「α０＝１．０，ν０＝１０，β０＝１．０，ｍ０＝０，Ｗｋ＝全成分１の対角共分散行列」のように設定する。ここで示したハイパーパラメータの値はサンプル値であり、ハイパーパラメータの値によって粒度の調整をすることができる。
【００５２】
次に、式（１）の分布数Ｋを設定する（ステップＳ１０２）。最初に設定される分布数Ｋは１であり、処理が繰り返される毎に分布数Ｋを２，３，４，・・・と１ずつ増加させて設定する。
【００５３】
次に、変分ベイズ法におけるＶＢＥ−Ｓｔｅｐが行われる（ステップＳ１０３）。なお、変分ベイズ法におけるパラメータ推定は、ＶＢＥ−Ｓｔｅｐ（推定）と次のＶＥＭ−Ｓｔｅｐ（最大化）を交互に繰り返すことによって行われる。
ＶＢＥ−Ｓｔｅｐでは、検索履歴ＤＢ３４２において入力される全てのデータｘ＝（ｘ１，…，ｘＮ）に対し、ｎ番目のデータがｋ番目の分布を占有する確率を表すγｋ（ｎ）を、次式を用いて計算する。
【数２】
2016045543.tif 000004
【００５４】
次に、変分ベイズ法におけるＶＢＭ−Ｓｔｅｐが行われる（ステップＳ１０４）。ＶＢＭ−Ｓｔｅｐでは、ＶＢＥ−Ｓｔｅｐで計算されたγｋ（ｎ）を用いて、各正規分布の占有度数の総和を次式（２）、及び、各正規分布の期待値を次式（３）として計算する。
【数３】
2016045543.tif 000005
【００５５】
そして、式（２）及び式（３）で算出した値を用いて、次式の通りハイパーパラメータαｋ，νｋ，βｋ，ｍｋ，Ｗｋを更新する。
【数４】
2016045543.tif 000006
【００５６】
次に、所定の収束条件の式を満たすか否かを判定する（ステップＳ１０５）。所定の収束条件の式を満たした場合（ステップＳ１０５；ＹＥＳ）には、次の処理（ステップＳ１０６）に進み、満たさなかった場合（ステップＳ１０５；ＮＯ）には、ステップＳ１０３まで戻る。つまり、収束条件を満たすまで、ＶＢＥ−ＳｔｅｐとＶＢＭ−Ｓｔｅｐを繰り返し実行する。
収束条件の式は、収束パラメータをε（例えば、１．０−４）、i 回繰り返した時の下限値をＦｉとして次式（４）で表される。
【数５】
2016045543.tif 000007
【００５７】
ここで、式（４）におけるＦは＜Ｌ＞ｑ（Ｌは下記に示す対数）が期待値を表すとして以下のように表される。
【数６】
2016045543.tif 000008
また、それぞれの期待値＜Ｌ＞ｑ（Ｌは下記に示す対数）は、以下のように表される。
【数７】
2016045543.tif 000009
ここで、Ｚ（Ｗ，ｖ）は、ウィシャート分布の正規化定数であり、次式のように表される。
【数８】
2016045543.tif 000010
【００５８】
次に、下限値Ｆが最大となっているか否かを判定する（ステップＳ１０６）。判定方法としては、仮に分布数Ｋ＝ｍ（ｍは自然数）とした場合、分布数Ｋ＝ｍの下限値Ｆｍと、分布数Ｋ＝ｍ−１の下限値Ｆｍ−１を比較し、Ｆｍ＜Ｆｍ−１となっている場合（ステップＳ１０６；ＹＥＳ）には、分布関数の分布数Ｋをｍ−１として各種パラメータの推定値を決定し、次の処理（ステップＳ１０７）に進む。また、Ｆｍ＞Ｆｍ−１となっている場合（ステップＳ１０６；ＮＯ）には、ステップＳ１０２まで戻る。
なお、Ｆ１の判定処理を実行するために、例えば、Ｆ０にはＦ０＝０等の所定値を設定しておき、Ｋ＝１の場合には必ずＦ１＞Ｆ０となって、ステップＳ１０２に戻ることとする。
【００５９】
上述のパラメータ推定処理によって推定される分布は、未知のデータに対して、次式のように表すことができる。
【数９】
2016045543.tif 000011
この式は、ｔ−ｓｔｕｄｅｎｔ分布と呼ばれるものであり、データ量が十分に大きい場合、式（１）で表される混合正規分布として近似することができる。
【００６０】
次に、推定した分布関数の分布数及び各種パラメータの値を学習ＤＢ３４３に記憶し（ステップＳ１０７）、処理を終了する。
【００６１】
なお、これらの処理は、適宜のタイミングで実行され、例えば、週一回や一日一回等の所定のタイミングで開始されることとしても良く、また、広告要求がされたタイミングで実行されることとしても良い。
【００６２】
［４．混合正規分布の推定］
上述した分布関数の分布数及び各種パラメータを推定することにより、具体的にどのような分布が推定されるかについて図３を用いて説明する。
【００６３】
具体例としては、例えば、不動産関係のキーワード（新築、転居、賃貸等）をカテゴリＡとし、カテゴリＡの検索キーワードが検索された日時（一部抜粋）が「２０１３年６月２８日１０時５分１秒，２０１３年７月１日１２時１０分０秒，２０１３年７月１１日９時０分２０秒，…，２０１３年１０月４日１２時１０分１０秒，２０１３年１０月６日１２時２５分０秒，…，２０１３年１２月２０日１２時１０分５０秒，２０１４年１月２０日１６時１０分２秒」のようになっており、これらのデータが検索履歴ＤＢ３４２に記憶されており、これらの混合正規分布を推定するものとする。
【００６４】
なお、これらの時刻情報は、例えば、１９７０年１月１日午前０時０分０秒からの経過秒数（ｕｎｉｘ時間）によって表し、カテゴリＡを検索した時刻を「１３７２３８１５０１，１３７２６４８２００，１３７３５００８２０，…，１３８０８５６２１０，１３８１０２９９００，…，１３８７５０９０５０，１３９０２０１８０２」のようにして、連続的な時間情報に加工して使用している。
【００６５】
そして、これらのデータによって推定された分布は、図３に示す通り、横軸に時間（ｔ）、縦軸を検索実行確率Ｐ（ｎ）とした場合に、カテゴリＡを検索したと考えられる確率についての連続分布として得ることができる。
【００６６】
図３に示す具体例では、分布関数の分布数は３であり、過去の日付からそれぞれの分布を（ａ）、（ｂ）、（ｃ）とすると、それぞれのピークトップのおおよその年月日は、（ａ）２０１３年７月１日、（ｂ）２０１３年１０月４日、（ｃ）２０１４年１月３日である。また、それぞれの分布のおおよその広がりの期間は、（ａ）３ヶ月、（ｂ）２ヶ月、（ｃ）３．５ヶ月である。また、ピークトップのおおよその位置の高さは、（ａ）０．００６５、（ｂ）０．００９５、（ｃ）０．００３３である。
【００６７】
ここで、本実施形態では混合正規分布として連続分布を仮定しているため、それぞれのピークトップの年月日からキーワードを検索した中心日時、分布の広がりの期間（分布関数の分散値の標準偏差）から検索期間、ピークトップの高さから検索したと考えられる確率を求めることができる。
【００６８】
また、上述の例では一つのカテゴリについての混合正規分布関数を求めた例を示したが、実際には様々なカテゴリに分類し、それぞれカテゴリ毎に混合正規分布関数を計算することができる。
また、複数のカテゴリの混合正規分布関数を求めた場合、例えば、図４に示すように、カテゴリを（１）自動車関連、（２）航空関連、（３）結婚関連、（４）旅行関連及び（５）飲食店関連等の５つに分けてそれぞれの混合正規分布関数を求めた場合に、横軸に時間（ｔ）、濃淡を検索実行確率Ｐ（ｎ）として、（１）〜（５）のそれぞれの結果について縦に並べてヒートマップを作成することができる。
【００６９】
［５．広告配信処理］
広告配信処理は、図５に示す通り、広告配信サーバ３０の制御部３１によってステップ毎に制御されて実行される。これらの処理は、例えば、端末装置１０において、ユーザがＷｅｂページを閲覧するために広告枠を有するＷｅｂページをＷｅｂサーバ２０から受信した際に、広告要求を広告配信サーバ３０に送信することによって開始される。
【００７０】
まず、広告配信サーバ３０の制御部３１は、端末装置１０からの広告要求を受信し、端末装置１０を利用しているユーザを識別するユーザＩＤとユーザの検索履歴情報を取得する（ステップＳ２０１）。なお、ユーザの検索履歴情報は、例えば、取得したユーザＩＤを基にして検索履歴ＤＢ３４２から取得する。
【００７１】
次に、ステップＳ２０１で取得したユーザの情報と、前述した分布関数の分布数及び各種パラメータが記憶された学習ＤＢ３４３とによって、あらゆる検索カテゴリに対して、広告要求を受信した時点で検索したと考えられるイベント実行確率を計算する（ステップＳ２０２）。
【００７２】
ここで、イベント実行確率の計算は、広告を要求した特定のユーザが過去にどのようなキーワードを検索したかという行動時系列情報と学習ＤＢ３４３とに基づいて、特定のユーザが広告を要求したタイミングで、ある検索カテゴリを検索したと考えられるイベント実行確率を計算している。
【００７３】
具体例としては、仮に結婚関係のキーワード（結婚式場、披露宴、新婚旅行等）を検索した人が、３ヶ月後に不動産関係のキーワード（新築、転居、賃貸等）を検索する傾向があるという関係がある場合、広告を要求した特定のユーザが、広告を要求したタイミングの３ヶ月前に結婚関係のキーワードを検索していれば、不動産関係のキーワードを検索した確率が高いと計算される。また、同様にして、様々な検索カテゴリに対して、ユーザのイベント実行確率が計算される。
【００７４】
なお、上記では仮に結婚関係のキーワードを検索した人が３ヶ月後に不動産関係のキーワードを検索するという単純な例を具体例として説明したが、例えば、結婚関係のキーワード及び不動産関係のキーワードを同時期に検索した人が、その半年後に自動車関係のキーワードを検索する傾向がある等、３つ以上の検索カテゴリ間の相関関係に基づいてイベント実行確率を計算することも可能である。
【００７５】
また、イベント実行確率の具体的な計算方法について説明する。ユーザ情報を、例えば、Ｍ次元のデータΦ＝（Φ１，Φ２，…，ΦＭ）を特徴とし、ｗ＝（ｗ１，ｗ２，・・・，ｗＭ）を回帰係数であるとして、イベントを実行した場合をｐ（ｃ＝１）、実行しなかった場合をｐ（ｃ＝０）として次式（５）によりイベント実行確率を求めている。
【数１０】
2016045543.tif 000012
【００７６】
ここで、式（５）における回帰係数ｗは、ロジスティック回帰の回帰係数の推定方法によって求めたものであり、回帰係数の推定には、学習ＤＢ３４３に基づいて、次式の回帰係数の算出式によって計算している。具体的には、次式（６）によって、ｔ回目に更新された回帰係数をｗｔ、学習定数をεとした場合、データセット{Φｎ，ｃｎ}、ｃｎ∈{０，１}、ｎ＝１，…，Ｎに対し、次式を計算して更新前後の全学習データにおける対数確率値の和の差分が十分に小さくなるまで繰り返すことによって算出している。
【数１１】
2016045543.tif 000013
【００７７】
また、イベント実行確率の計算において用いられるＭ次元のデータΦとは、具体的には、「あるキーワードを検索した（１）／検索しない（０）」のような「教師」と、平均ベクトル、分散及び重み係数のような「特徴量」と、を並べたものであり、（ユーザ１：「１」，「０．０，１００，０．５，１．０，１２０，０．３」）、（ユーザ２：「０」，「０．１，５０，０．３，０．４，２００．０，０．２」）、…のような「教師」と「特徴量」の組を用いて計算している。この場合であれば、特徴量は６つのデータがあるので、各ユーザが６次元の点で構成されるものとする。
【００７８】
なお、ここで入力する上述のようなデータでは、ユーザ毎に分布数が変わることも想定されるが、その場合は、重み係数の大きい順に上位Ｋ’個（所定数）の分布を並べるものとする。
【００７９】
次に、前ステップで計算した結果から、ユーザが検索したと考えられる確率の最も高いキーワードを選択する（ステップＳ２０３）。なお、ここで選択するキーワードは最も高い１つであっても良く、確率の高いものから複数で選んでも良い。
【００８０】
次に、選択したキーワードと、広告要求をした広告枠の形式と、に基づいて、広告ＤＢ３４１から広告を選択する（ステップＳ２０４）。
【００８１】
次に、選択された広告を、端末装置１０に配信する（ステップＳ２０５）。
【００８２】
なお、上述の広告配信処理方法では、広告要求を受けた後、広告要求を受けた時点において、ユーザがどのような検索カテゴリを検索する確率が高いのかを計算することとしたが（ステップＳ２０２）、例えば、予め所定のタイミングで確率の計算を実行しておき、その結果を利用することとしても良い。
【００８３】
具体的には、例えば、毎日所定の時刻に、前日までの検索履歴ＤＢ３４２に記憶されている全てのユーザに対して、所定の時刻に任意の検索カテゴリを検索したと考えられる確率（イベント実行確率）を計算しておくこととしても良い。そして、検索確率の高い上位Ｎ人（所定人数）には所定のキーワードに関連した所定の広告を配信すると予め定めておき、仮にそのＮ人の中から広告要求を受信した際には、その広告を配信することも可能である。
【００８４】
［６．クラスタリング］
本実施形態の応用例として、ターゲット学習に前述の混合関数の分布数及びパラメータ値を用いることによって、クラスタリング手法により、ユーザを似た趣向を持つ人同士で分類し、例えば、グループ内の平均値を代表点として抽出し、代表点から近いＮ人（所定人数）に効果の高いと推定した広告を配信することとしても良い。
【００８５】
具体的には、前述した混合連続分布の分布数及びパラメータと、ユーザの行動時系列情報と、に基づいて、行動に相関のある人同士をグループ化し、グループ内の特定のユーザに対して配信する予定の広告を、同じグループに属する他の人に配信することが可能である。この手法によれば、ユーザに対する潜在的なニーズの発掘が可能となる。
【００８６】
クラスタリング手法としては、種々の方法を用いることができるが、以下の説明では変分ベイズ法を用いた方法について、具体例を用いて説明する。
【００８７】
入力値としては、例えば、「平均ベクトル」、「分散」及び「重み係数」を並べたものを使用することができ、「ユーザ１：０．０，１００，０．５，１．０，１２０，０．３」、「ユーザ２：０．１，５０，０．３，０．４，２００．０，０．２」、…のような６次元の点で構成されるベクトルデータを使用する。
【００８８】
このようなデータを用いて、本実施形態と同様の変分ベイズ法によって推定することにより、分布数は分類される数、平均ベクトルは代表点、分散は確からしさ、重み係数はその分布の頻度を表すパラメータ値としてそれぞれの値を得ることができる。
【００８９】
ここで、対象ユーザのデータｙに対してクラスタリングを応用する方法について説明する。上述した本実施形態の変分ベイズ法によって得られたＫ個の分布関数に対して、データｙをそれぞれ代入し、最大となる分布の番号Ｋ’を求めることにより、対象ユーザの属する分布を決定する。そして、番号Ｋ’に属する他のユーザにおけるキーワード検索の傾向に基づいて、データｙの対象ユーザに対して、配信する広告のレコメンドを実施する。
【００９０】
即ち、対象のユーザと同様の傾向を有するユーザの傾向に基づいて、対象ユーザの過去の検索履歴からだけでは得られなかった検索カテゴリであっても、対象ユーザが検索した確率が高い検索カテゴリを取得することができる。
【００９１】
［７．まとめ］
以上のように、本発明では、キーワード検索等のネット上でのユーザの行動がいつ実行されたかという行動時系列情報を取得し、行動時系列情報が時間を変数とした混合連続分布に従うとすることで、統計処理によって、対象のユーザが所定のタイミングでどのような検索カテゴリを検索する確率が高いかをイベント実行確率として計算することができる。そして、イベント実行確率の結果から、所定時点においてユーザにとって効果的と思われる広告を選択して配信することができる。
【００９２】
また、本実施形態では、行動時系列情報が混合正規分布に従うと仮定しているため、（１）分布関数のピークトップの年月日からキーワードを検索した中心日時、（２）分布の広がりの期間（分布関数の分散値の標準偏差）から検索期間、（３）ピークトップの高さから検索したと考えられる確率とした三種類の特徴を得ることができる。
【００９３】
ここで、上記の検索期間を得ることができれば、例えば、海外旅行関係のキーワードを検索した際の分散値の標準偏差を求めることで、旅行関係のキーワードを検索していた期間を推定することができる。これにより、例えば、海外旅行初心者だと長期間にわたって様々なことを検索するため分散が大きくなり、ビジネスユーザだと必要な情報のみを短期間で探すため分散が小さくなる等といった傾向に基づいて、対象のユーザの属性を得ることも可能である。
【００９４】
さらに、本発明をクラスタリング手法にも応用することができ、似た趣向を持つユーザのグループに分類し、グループ内の特定のユーザに対して配信する予定の広告を、同じグループに属する他の人に配信することが可能である。この手法によれば、対象ユーザの過去の検索履歴からでは得られなかった対象ユーザの潜在的なニーズの発掘が可能となる。
【００９５】
［８．その他］
なお、本実施形態では、説明の簡略化のためにユーザの実行するイベントとしてキーワード検索を例にして説明したが、例えば、所定のＷｅｂページを訪問や、所定の商品を購入等ユーザの実行するイベントを適宜設定可能である。また、当然、様々な種類のユーザの行動を組み合わせることも可能である。
【００９６】
また、本実施形態のイベント実行確率計算のための各種パラメータを算出するために、過去の検索履歴データを使用することとしたが、過去のどの時点からのデータを使用するかは適宜変更可能であり、例えば、過去３年以内であっても良いし、過去３日以内であっても良いし、過去３時間以内であっても良い。また、ここで、過去３時間以内等といった期間を短く設定すれば、数時間以内のユーザの行動に基づいてイベント実行確率計算することになるため、従来の短期間の検索頻度に基づいて広告を配信する検索連動型広告等と同じような用途として使用することができる。
【００９７】
また、本実施形態では、端末装置１０がＷｅｂサーバ２０からＷｅｂページを受信し、広告配信サーバ３０から広告をそれぞれ受信することとしたが、本発明の趣旨を逸脱しない範囲において情報処理システムの構成は適宜変更可能である。例えば、本実施形態のＷｅｂサーバ２０と広告配信サーバ３０を同じサーバ内に設け、広告が既に組み込まれた状態でＷｅｂページ２０を受信することとしても良い。
【００９８】
また、本実施形態では、ユーザの行動が時間を変数とした混合正規分布に従うと仮定したが、本実施例に限らず適宜選択可能であり、例えば、混合正規分布以外の連続分布として混合ガンマ分布関数に従うとしても良く、また、離散分布に従うとしても良い。
なお、混合ガンマ分布関数に従う場合には、ガンマ分布のパラメータを用いれば良く、離散分布に従う場合には、ピークの高さや位置(時刻)等をパラメータとして用いれば良い。
【００９９】
また、上述のように連続分布に従うとした場合には、分布の形態を密度関数で表すことができるため、データの分解能を上げたとしても、出現確率を計算することが可能である。例えば、推定に用いるデータが日毎に集計されたものを用いた場合でも、一旦関数を求めることでその間の時刻等の密度を容易に補完することが可能である。
なお、分布の形態を密度関数で表す場合、分布間の距離(間隔,時間差)等をカルバック・ライブラー（ＫＬ）距離等に代表される定義により容易に計算することができるというメリットがある。ここで、ＫＬ距離は２つの分布ｐ（ｘ）、ｑ（ｘ）の分布間の距離であるとする場合、ＫＬ距離は（Ｐ｜Ｑ）＝∫ｐ（ｘ）［ｌｏｇｐ（ｘ）−ｌｏｇｑ（ｘ）］ と定義され、容易に算出することができる。
【０１００】
また、一方で、上述のように離散分布に従うとした場合には、離散分布は分布の形状を関数の形態に捉われずに自由に設計することができる。また、離散分布では、分布関数推定するのではなく、区間毎の集計をするだけで分布を推定できるため、実装が容易であるというメリットがある。
なお、離散分布に従う場合もＫＬ距離を算出することができ、ＫＬ距離を２つの分布ｐ（ｘ）、ｑ（ｘ）の分布間の距離であるとする場合、（Ｐ｜Ｑ）＝Σｐ（ｘ）［ｌｏｇｐ（ｘ）−ｌｏｇｑ（ｘ）］と定義することで、ＫＬ距離を算出することができる。ただし、ｑ（ｘ）が０になる場合があるため、０になった場合、小さな定数で代用する等の工夫が必要である。
【０１０１】
また、分布パラメータを推定する手法として、変分ベイズ法を用いているが、分布パラメータを推定する手法であれば本実施例に限ることはなく、例えば、ディレクレプロセスを用いたパラメータ推定方法を用いることとしても良い。
【０１０２】
また、イベント実行確率計算方法の回帰係数の計算において、ロジスティック回帰を用いたが、特に本実施例に限ることはなく、例えば、ブースティング、木構造の判別モデル等を用いた方法を用いることとしても良い。
【０１０３】
また、本実施形態ではＷｅｂページの広告枠に広告を配信する方法として説明したが、本実施例に限ることはなく、ユーザの興味のある可能性が高い情報をメールで配信する等、様々なサービスに応用可能である。
【０１０４】
さらに、本発明の範囲は上記に限られることなく、本発明の趣旨を逸脱しない範囲において種々の改良並びに設計の変更を行っても良い。
【符号の説明】
【０１０５】
３０  広告配信サーバ（情報処理装置）
３１  制御部（パラメータ推定手段、イベント実行確率計算手段、イベント予測手段、情報配信手段、分類手段）
【図１】
2016045543.tif 000014
【図２】
2016045543.tif 000015
【図３】
2016045543.tif 000016
【図５】
2016045543.tif 000017
【図４】
2016045543.tif 000018