(57)【特許請求の範囲】
【請求項１】
データ処理装置によって、発行者サイトのページビューについて提供された過去のインプレッションを記述するデータを含む発行者ログにアクセスするステップと、
前記データ処理装置によって、前記発行者ログからそれぞれの発行者サイトの発行者ページビューデータを生成するステップであって、それぞれの発行者サイトの前記発行者ページビューデータが、第1の期間中に生じたページビューを指定しかつページビューレコードを含み、それぞれのページビューレコードが、前記第1の期間中に生じた第2の期間中にユーザ識別子に関連付けられた1つまたは複数のページビューを表す、ステップと、
前記データ処理装置で発行者サイトのセグメント定義を受け取るステップであって、前記セグメント定義が、前記発行者の1つまたは複数の発行者キー値によってセグメントを定義する、ステップと、
前記データ処理装置によって、前記セグメント定義によって定義された前記セグメントを満足させるユーザ識別子を前記セグメントに割り当てるステップと、
前記セグメントに割り当てられた前記ユーザ識別子のページビューレコードから第１の数のページビューを決定するステップであって、前記第1の数のページビューは、前記セグメント定義を満足させるインプレッションに関して提供された発行者キー値に基づき決定される、ステップと、
前記セグメントに割り当てられた前記ユーザ識別子の前記ページビューレコードから第2の数のページビューを決定するステップであって、前記第2の数のページビューは、前記セグメントに割り当てられた前記ユーザ識別子のページビューレコードによって表わされるページビューの合計数に等しい、ステップと、
前記第1の数のページビューに対する第2の数のページビューの比に比例するセグメント品質測定値を決定するステップと、
前記セグメント定義に応答して、前記セグメントの前記1つまたは複数のセグメント特性を記述する応答データを提供するステップと
を備え、
それぞれのページビューレコードが、
前記ユーザ識別子、
発行者を識別する発行者識別子、および
前記ページビューレコードによって表される前記1つまたは複数のページビューについて生じた前記インプレッションに関して提供された前記発行者キー値を含むコンピュータ実施方法。
【請求項２】
それぞれのページビューレコードが、それぞれのページビューについて、前記発行者キー値のうちのどれが前記ページビューのインプレッションに関して提供されたかを示すページビュー/キー値マップを含む、請求項1に記載のコンピュータ実施方法。
【請求項３】
前記セグメントに割り当てられた前記ユーザ識別子の前記ページビューレコードから前記第1の数のページビューを決定するステップが、前記セグメント定義を満足させる発行者キー値を示すページビュー/キー値マップの数を決定するステップを備える、請求項１に記載のコンピュータ実施方法。
【請求項４】
セグメント母集団データを生成するステップであって、前記セグメント母集団データが、前記セグメント定義データによって定義された前記セグメントに割り当てられたユーザ識別子と前記セグメントを定義するデータとの関連付けである、ステップと、
前記セグメント定義に応答して、前記セグメント母集団データを発行者に提供して、前記セグメントに割り当てられた前記ユーザ識別子に関連付けられた将来のページビューに対する広告ターゲティングを容易にするステップと
をさらに備える、請求項３に記載のコンピュータ実施方法。
【請求項５】
それぞれのページビューレコードについて、前記発行者キー値が前記ページビューレコード内のそれぞれのフィールドに格納され、それぞれのフィールドがそれぞれのインデックス値に関連付けられ、
前記ページビューレコードによって表される前記1つまたは複数のページビューのそれぞれに対する前記ページビュー/キー値マップが、前記ページビューのインプレッションに関して提供された発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において対応する第1の値を有し、前記ページビューの前記インプレッションに関して提供されなかった発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において対応する第2の値を有するページビュー/キー値ビットマップである、
請求項2に記載のコンピュータ実施方法。
【請求項６】
前記セグメント定義によって定義された前記セグメントを満足させる発行者キー値を含むレコードからのユーザ識別子を前記セグメントに割り当てるステップが、
前記セグメント定義からそれぞれのページビューレコードに対するビットマスクを生成するステップであって、前記ビットマスクが、前記ページビューレコードにある発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において前記対応する第1の値を有し、前記ページビューレコードにない発行者キー値の前記それぞれのインデックス値に対応するインデックス付けされた位置において前記対応する第2の値を有する、ステップと、
前記発行者のそれぞれのページビューレコードについて、前記ページビューレコードの前記セグメント定義ビットマスクを前記ページビューレコードの前記ページビュー/キー値ビットマップのそれぞれと比較するステップと
を備える、請求項５に記載のコンピュータ実施方法。
【請求項７】
セグメント母集団データを生成するステップであって、前記セグメント母集団データが、前記セグメント定義データによって定義された前記セグメントに割り当てられたユーザ識別子と前記セグメントを定義するデータとの関連付けである、ステップと、
前記セグメント定義に応答して、前記セグメント母集団データを発行者に提供して、前記セグメントに割り当てられた前記ユーザ識別子に関連付けられた将来のページビューに対する広告ターゲティングを容易にするステップと
を備える、請求項1に記載のコンピュータ実施方法。
【請求項８】
発行者サイトのページビューについて提供された過去のインプレッションを記述するデータを含む発行者ログを格納するデータ記憶装置であって、前記データが、それぞれのインプレッションについて、
ユーザ識別子、
発行者を識別する発行者識別子、
ページビューを識別するページビュー値、および
前記インプレッションに関して提供された前記発行者の複数の発行者キー値を含む、データ記憶装置と、
コンピュータメモリデバイスに格納される命令を実行するデータ処理装置であって、命令の実行時に
前記発行者ログからそれぞれの発行者の発行者ページビューデータを生成し、前記ページビューデータを前記データ記憶装置に格納するステップであって、それぞれの発行者の前記発行者ページビューデータが、第1の期間中に生じたページビューを表すページビューレコードを備え、それぞれのページビューレコードが、前記第1の期間中に生じた第2の期間中にユーザ識別子と発行者識別子の組に関連付けられた1つまたは複数のページビューを表し、それぞれのページビューレコードが、
ユーザ識別子、
発行者識別子、および
前記ページビューレコードによって表される前記1つまたは複数のページビューについて生じた前記インプレッションに関して提供された発行者キー値を含む、ステップと、
発行者のセグメント定義を受け取るステップであって、前記セグメント定義が、前記発行者の1つまたは複数の発行者キー値によってセグメントを定義する、ステップと、
前記セグメント定義によって定義された前記セグメントを満足させる発行者キー値を含むレコードからのユーザ識別子を前記セグメントに割り当てるステップと、
前記セグメントに割り当てられた前記ユーザ識別子および前記セグメントに割り当てられた前記ユーザ識別子の前記ページビューレコードに基づいて、1つまたは複数のセグメント特性を決定するステップと、
前記セグメント定義に応答して、前記セグメントの前記1つまたは複数の特性を記述する応答データを提供するステップと
を備える動作命令を実行するデータ処理装置と
を備えるシステム。
【請求項９】
それぞれのページビューレコードが、前記ページビューレコードが表すそれぞれのページビューについて、前記発行者キー値のうちのどれが前記ページビューのインプレッションに関して提供されたかを示すページビュー/キー値マップを含む、請求項８に記載のシステム。
【請求項１０】
1つまたは複数のセグメント特性を決定するステップが、前記セグメントに割り当てられた前記ユーザ識別子の前記ページビューレコードから第1の数のページビューを決定するステップを備える命令を前記データ処理装置によって実行する請求項９に記載のシステム。
【請求項１１】
前記セグメントに割り当てられた前記ユーザ識別子の前記ページビューレコードから前記第1の数のページビューを決定するステップが、前記セグメント定義を満足させる発行者キー値を示すページビュー/キー値マップの数を決定するステップを備え、
前記データ処理装置が、
前記セグメントに割り当てられた前記ユーザ識別子の前記ページビューレコードから第2の数のページビューを決定するステップであって、前記第2の数のページビューが、前記セグメントに割り当てられた前記ユーザ識別子の前記ページビューレコードによって表されるページビューの合計数に等しい、ステップと、
前記第1の数のページビューに対する前記第2の数のページビューの比に比例するセグメント品質測定値を決定するステップと
を備えるさらなる操作命令を実行する、請求項１０に記載のシステム。
【請求項１２】
セグメント母集団データを生成するステップであって、前記セグメント母集団データが、前記セグメント定義データによって定義された前記セグメントに割り当てられたユーザ識別子と前記セグメントを定義するデータとの関連付けである、ステップと、
前記セグメント定義に応答して、前記セグメント母集団データを発行者に提供して、前記セグメントに割り当てられた前記ユーザ識別子に関連付けられた将来のページビューに対する広告ターゲティングを容易にするステップと
を備える命令を前記データ処理装置によって実行する請求項１１に記載のシステム。
【請求項１３】
それぞれのページビューレコードについて、前記発行者キー値が前記ページビューレコード内のそれぞれのフィールドに格納され、それぞれのフィールドがそれぞれのインデックス値に関連付けられ、
前記ページビューレコードによって表される前記1つまたは複数のページビューのそれぞれに対する前記ページビュー/キー値マップが、前記ページビューのインプレッションに関して提供された発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において対応する第1の値を有し、前記ページビューの前記インプレッションに関して提供されなかった発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において対応する第2の値を有するページビュー/キー値ビットマップである、
請求項９に記載のシステム。
【請求項１４】
前記セグメント定義によって定義された前記セグメントを満足させる発行者キー値を含むレコードからのユーザ識別子を前記セグメントに割り当てるステップが、
前記セグメント定義からそれぞれのページビューレコードに対するビットマスクを生成するステップであって、前記ビットマスクが、前記ページビューレコードにある発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において前記対応する第1の値を有し、前記ページビューレコードにない発行者キー値の前記それぞれのインデックス値に対応するインデックス付けされた位置において前記対応する第2の値を有する、ステップと、
前記発行者のそれぞれのページビューレコードについて、前記ページビューレコードの前記セグメント定義ビットマスクを前記ページビューレコードの前記ページビュー/キー値ビットマップのそれぞれと比較するステップと
を備える命令を前記データ処理装置によって実行する請求項１３に記載のシステム。
【請求項１５】
複数の発行者の発行者ページビューデータを格納するデータ記憶装置であって、それぞれの発行者の前記発行者ページビューデータが、第1の期間中に生じたページビューを表すページビューレコードを備え、それぞれのページビューレコードが、ユーザ識別子と発行者識別子の組に関連付けられた1つまたは複数のページビューを表し、それぞれのページビューレコードが、
ユーザ識別子、
発行者を識別する発行者識別子、および
前記ページビューレコードによって表される前記1つまたは複数のページビューについて生じた前記インプレッションに関して提供された発行者キー値を含む、データ記憶装置を備え、
それぞれのページビューレコードについて、前記発行者キー値が前記ページビューレコード内のそれぞれのフィールドに格納され、それぞれのフィールドがそれぞれのインデックス値に関連付けられ、それぞれのページビューレコードが、前記ページビューレコードが表すそれぞれのページビューについて、前記発行者キー値のうちのどれが前記ページビューのインプレッションに関して提供されたかを示すページビュー/キー値マップを含み、前記ページビューレコードによって表される前記1つまたは複数のページビューのそれぞれに対する前記ページビュー/キー値マップが、前記ページビューのインプレッションに関して提供された発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において対応する第1の値を有し、前記ページビューの前記インプレッションに関して提供されなかった発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において対応する第2の値を有するページビュー/キー値ビットマップである、システムにおいて、
コンピュータメモリデバイスに格納される命令を実行するデータ処理装置であって、命令の実行時に
発行者のセグメント定義を受け取るステップであって、前記セグメント定義が、前記発行者の1つまたは複数の発行者キー値によってセグメントを定義する、ステップと、
前記セグメント定義からそれぞれのページビューレコードに対するビットマスクを生成するステップであって、前記ビットマスクが、前記ページビューレコードにある発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において前記対応する第1の値を有し、前記ページビューレコードにない発行者キー値の前記それぞれのインデックス値に対応するインデックス付けされた位置において前記対応する第2の値を有する、ステップと、
前記発行者のそれぞれのページビューレコードについて、前記ページビューレコードの前記セグメント定義ビットマスクを前記ページビューレコードの前記ページビュー/キー値ビットマップのそれぞれと比較して、どのページビューが前記セグメント定義を満足させるかを決定するステップと、
前記セグメント定義を満足させるように決定された前記ページビューに基づいて、1つまたは複数のセグメント特性を決定するステップと、
前記セグメント定義に応答して、前記セグメントの前記1つまたは複数の特性を記述する応答データを提供するステップと
を備える動作命令を実行するデータ処理装置
を備えるシステム。
【請求項１６】
データ処理装置によって、複数の発行者の発行者ページビューデータを生成するステップであって、それぞれの発行者の前記発行者ページビューデータが、第1の期間中に生じたページビューを表すページビューレコードを備え、それぞれのページビューレコードが、ユーザ識別子と発行者識別子の組に関連付けられた1つまたは複数のページビューを表し、それぞれのページビューレコードが、
ユーザ識別子、
発行者を識別する発行者識別子、および
前記ページビューレコードによって表される前記1つまたは複数のページビューについて生じた前記インプレッションに関して提供された発行者キー値を含む、ステップと、
前記データ処理装置で発行者のセグメント定義を受け取るステップであって、前記セグメント定義が前記発行者の1つまたは複数の発行者キー値によってセグメントを定義するステップと、
前記データ処理装置によって、前記セグメント定義によって定義された前記セグメントを満足させる発行者キー値がインプレッションに関して提供されたページビューを決定するステップと、
前記データ処理装置によって、前記セグメント定義を満足させるように決定された前記ページビューに基づいて、1つまたは複数のセグメント特性を決定するステップと、
前記セグメント定義に応答して、前記セグメントの前記1つまたは複数の特性を記述する応答データを提供するステップと
を備える方法。
【請求項１７】
複数の発行者の発行者ページビューデータのためのページビューデータストアであって、それぞれの発行者の前記発行者ページビューデータが、第1の期間中に生じたページビューを表すページビューレコードを備え、それぞれのページビューレコードが、ユーザ識別子と発行者識別子の組に関連付けられた1つまたは複数のページビューを表す、ページビューデータストアと、
セグメント定義によって定義されたセグメントを満足させる発行者キー値がインプレッションに関して提供されたページビューを決定し、前記セグメント定義を満足させるように決定された前記ページビューに基づいて、1つまたは複数のセグメント特性を決定するセグメント推定装置と
を備え、
それぞれのページビューレコードが、
前記ユーザ識別子、
発行者を識別する前記発行者識別子、および
前記ページビューレコードによって表される前記１つまたは複数のページビューについて生じた前記インプレッションに関して提供された前記発行者キー値を含む、システム。
【請求項１８】
複数の発行者の発行者ページビューデータのためのページビューデータストアであって、それぞれの発行者の前記発行者ページビューデータが、第1の期間中に生じたページビューを表すページビューレコードを備え、それぞれのページビューレコードが、ユーザ識別子と発行者識別子の組に関連付けられた1つまたは複数のページビューを表す、ページビューデータストアと、
セグメント定義によって定義されたセグメントを満足させる発行者キー値を含むレコードからのユーザ識別子を前記セグメントに割り当て、前記セグメントに割り当てられた前記ユーザ識別子および前記セグメントに割り当てられた前記ユーザ識別子の前記ページビューレコードに基づいて、1つまたは複数のセグメント特性を決定するセグメント推定装置と
を備え、
それぞれのページビューレコードが、
前記ユーザ識別子、
発行者を識別する前記発行者識別子、および
前記ページビューレコードによって表される前記１つまたは複数のページビューについて生じた前記インプレッションに関して提供された前記発行者キー値を含む、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、オンライン広告に関する。
【背景技術】
【０００２】
インターネットは、映像ファイルおよび/または音声ファイル、ならびに特定の話題または特定のニュース記事のウェブページなどの様々なリソースへのアクセスを提供する。これらのリソースへのアクセスは、広告がリソースとともに提供される機会を提供している。例えば、ウェブページは、広告を表示することができる広告スロットを含むことができる。広告スロットをウェブページ内で定義するか、ウェブページとともに表示するために定義することができる。
【０００３】
発行者および/または広告主は、広告または広告キャンペーンに関する視聴者セグメントを記述する情報を望むことが多い。この情報を取得することは、セグメントターゲティングおよび/または行動ターゲティングを容易にするのに役立ちうる。例えば、発行者サイトを訪問するユーザのセグメントが、i) cooking(料理)とii) knitting(編み物)の両方に興味があるユーザによって定義されると仮定する。セグメントを記述する正確な情報を取得することができる場合、発行者および/または広告主は、広告の対象をセグメントと一致するページビューのみにするか、広告の対象をセグメントに属する全てのユーザにするか、セグメントを全く対象としないかを決定することができる。
【０００４】
しかし、処理を必要とする数百万のログレコードがあることが多いので、正確なセグメント情報を取得することは時間がかかる場合がある。
【発明の概要】
【課題を解決するための手段】
【０００５】
一般に、本明細書に記載される主題の一態様は、データ処理装置によって、発行者サイトのページビューについて提供された過去のインプレッションを記述するデータを含む発行者ログにアクセスするアクションであって、データが、それぞれのインプレッションについて、ユーザ識別子、発行者を識別する発行者識別子、ページビューを識別するページビュー値、およびインプレッションに関して提供された発行者の複数の発行者キー値を含む、アクションと、データ処理装置によって、発行者ログからそれぞれの発行者の発行者ページビューデータを生成するアクションであって、それぞれの発行者の発行者ページビューデータが、第1の期間中に生じたページビューを表すページビューレコードを備え、それぞれのページビューレコードが、第1の期間中に生じた第2の期間中にユーザ識別子と発行者識別子の組に関連付けられた1つまたは複数のページビューを表し、それぞれのページビューレコードが、ユーザ識別子、発行者識別子、およびページビューレコードによって表される1つまたは複数のページビューについて生じたインプレッションに関して提供された発行者キー値を含む、アクションと、データ処理装置で発行者のセグメント定義を受け取るアクションであって、セグメント定義が、発行者の1つまたは複数の発行者キー値によってセグメントを定義する、アクションと、データ処理装置によって、セグメント定義によって定義されたセグメントを満足させる発行者キー値を含むレコードからのユーザ識別子をセグメントに割り当てるアクションと、データ処理装置によって、セグメントに割り当てられたユーザ識別子およびセグメントに割り当てられたユーザ識別子のページビューレコードに基づいて、1つまたは複数のセグメント特性を決定するアクションと、セグメント定義に応答して、セグメントの1つまたは複数の特性を記述する応答データを提供するアクションとを含む方法において具体化されうる。この態様の他の実施形態は、対応するシステム、装置、および本方法のアクションを実行するように構成され、コンピュータ記憶デバイス上で符号化されたコンピュータプログラムを含む。
【０００６】
本明細書に記載される主題の別の革新的な態様は、データ処理装置によって、複数の発行者の発行者ページビューデータを生成するアクションであって、それぞれの発行者の発行者ページビューデータが、第1の期間中に生じたページビューを表すページビューレコードを備え、それぞれのページビューレコードが、ユーザ識別子と発行者識別子の組に関連付けられた1つまたは複数のページビューを表し、それぞれのページビューレコードが、ユーザ識別子、発行者を識別する発行者識別子、およびページビューレコードによって表される1つまたは複数のページビューについて生じたインプレッションに関して提供された発行者キー値を含む、アクションと、データ処理装置で発行者のセグメント定義を受け取るアクションであって、セグメント定義が、発行者の1つまたは複数の発行者キー値によってセグメントを定義する、アクションと、データ処理装置によって、セグメント定義によって定義されたセグメントを満足させる発行者キー値がインプレッションに関して提供されたページビューを決定するアクションと、データ処理装置によって、セグメント定義を満足させるように決定されたページビューに基づいて、1つまたは複数のセグメント特性を決定するアクションと、セグメント定義に応答して、セグメントの1つまたは複数の特性を記述する応答データを提供するアクションとを含む方法で具体化されうる。この態様の他の実施形態は、対応するシステム、装置、および本方法のアクションを実行するように構成され、コンピュータ記憶デバイス上で符号化されたコンピュータプログラムを含む。
【０００７】
本明細書に記載される主題の1つまたは複数の実施形態の詳細は、添付の図面および以下の説明において記載される。主題の他の特徴、態様、および利点は、明細書、図面、および特許請求の範囲から明らかとなろう。
【図面の簡単な説明】
【０００８】
【図１】セグメント推定システムを利用することができる環境のブロック図である。
【図２】例示的なページビューレコードのブロック図である。
【図３】セグメントの1つまたは複数の特性を決定する例示的なプロセスの流れ図である。
【図４】セグメント品質測定値を決定する例示的なプロセスの流れ図である。
【図５】セグメント定義を満足させるページビューを決定する例示的なプロセスの流れ図である。
【図６】セグメントの1つまたは複数の特性を決定する別の例示的なプロセスの流れ図である。
【発明を実施するための形態】
【０００９】
様々な図面における同様の参照番号および呼称は、同様の要素を示す。
【００１０】
一般に、本明細書の主題は、視聴者セグメントサイズを推定することおよび視聴者セグメントをポピュレートすることに関する。視聴者セグメントは、人口統計学的特性、例えば、特性または行動パターンを有する見込みユーザの集約されたグループを表す。本明細書に記載されるのは、ウェブサイトの視聴者セグメントのサイズおよび視聴者セグメントの品質を推定するセグメント推定システムである。セグメント推定システムは、ウェブサイトのセグメントを定義し、ページビューおよびインプレッションデータからセグメントに属するユーザの数を決定する、セグメント定義データを使用する。セグメント内ページビューの数は、セグメント内ページビューおよびセグメント外ページビューの数と比較されて、セグメントの品質を決定する。セグメントのサイズおよび品質に応じて、発行者は異なるターゲティング決定を行うことができる。例えば、セグメントサイズは大きいが品質は高くない場合、発行者はセグメント内のみを対象とする、すなわち、ユーザがセグメントにも属するページを閲覧しているときのみ、そのセグメントに属するユーザを対象とすることを選ぶことができる。セグメントサイズが大きく品質が高い場合、発行者はセグメント内およびセグメント外を対象とする、すなわち、ユーザがセグメントにも属するページを閲覧しているかどうかに関わらず、そのセグメントに属するユーザを対象とすることを選ぶことができる。最後に、セグメントサイズが小さい場合、発行者はそのセグメントを対象としないことを選ぶことができる。
【００１１】
§  1.0  例示的な動作環境
図1は、セグメント推定システム100を利用することができる環境50のブロック図である。環境50は、発行者ウェブサイト60、発行者クライアントデバイス62、広告主ウェブサイト70、広告主クライアントデバイス72、広告主管理システム74、ユーザデバイス76、およびセグメント推定システム100に接続する、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネット、またはこれらの組合せなどのコンピュータネットワーク52を含む。
【００１２】
それぞれのウェブサイト60はドメイン名に関連付けられた1つまたは複数のウェブページリソースであり、それぞれのウェブサイトは1つまたは複数のサーバによってホスティングされている。例示的なウェブサイトは、テキスト、グラフィック画像、マルチメディアコンテンツ、およびスクリプトなどのプログラミング要素を含むことができるハイパーテキストマークアップ言語(HTML)でフォーマットされたウェブページの集合体である。それぞれのウェブサイト60は、発行者、例えば、ウェブサイトを管理および/または所有する事業体によって維持される。簡潔にするために、「発行者」という用語は、発行者によって管理および/または所有されるウェブサイト60を指すためにも使用される。同様のウェブサイト70は対応する広告主によって維持され、「広告主」という用語は広告主によって管理および/または所有されるウェブサイト70を指すためにも使用される。
【００１３】
発行者クライアントデバイス62、広告主クライアントデバイス72、およびユーザクライアントデバイス76は、ユーザの制御下にあり、ネットワーク52を介してデータの要求および受信を行うことができる電子デバイスである。クライアントデバイスは通常、発行者60または広告主70からのリソース(例えば、ページコンテンツ)を要求するといった、ネットワーク52を介したデータの送受信を容易にするための、ウェブブラウザなどのユーザアプリケーションを含む。例示的なクライアントデバイスは、パーソナルコンピュータ、モバイル通信デバイス、およびネットワーク52を介してデータを送受信することができる他のデバイスを含む。
【００１４】
広告管理システム74は、発行者60のウェブページに広告主70の広告を提供することができる。例えば、発行者60は、1つまたは複数の広告に対する広告要求を広告管理システム74に提出することができる。広告管理システム74は、発行者のウェブページに配置するために広告を要求元の発行者60に送信することによって応答し、ウェブページがユーザクライアントデバイス76上で広告とともにレンダリングされたときに広告のインプレッションが生じる。広告は、ランディングページ、例えば、ユーザが発行者ウェブページ上に表示された広告をクリックしたときに誘導される、広告主70のウェブサイト上のページへの埋込みリンクを含むことができる。
【００１５】
発行者ログ80は、特定の発行者サイトのページビューについて提供された過去のインプレッションを記述するデータレコードを格納する。ページビューは、インターネットサイトの単一のページを読み込む要求を表す。それぞれの過去のインプレッションについて、データは、ユーザ識別子、発行者識別子、ページビュー値、および特定のインプレッションに関して提供された発行者の発行者キー値を含む。ユーザ識別子および発行者識別子はそれぞれ、ユーザおよび発行者を識別する。ページビュー値は、特定の発行者サイトの、インプレッションが生じたウェブページの特定のページビューインスタンスを識別する。キー値は通常、発行者識別子、キー、および特定のインプレッションに関する値を含むタプルである。キー値を発行者によって作成または指定することができ、キー値はキーワード、数、語、または句、ならびに広告管理システム74によっておよび/またはそれぞれの対応する発行者60によって追跡することができる人口統計学的データおよびターゲティングデータなどの記述された属性を含みうる。そのような属性データの例として、コンテキストデータ、すなわち、興味、キーワードおよび趣味などの、発行者のインプレッションタグによって定義されたデータ;ユーザの性別、年齢、収入レベル、および教育レベル;ウェブページを要求したユーザまたはクライアントデバイスの場所(例えば、郵便番号、都市、および/または国);ならびに広告管理システム74によっておよび/または発行者60によって追跡することができる他の情報が挙げられる。インプレッションの日時などの追加の情報も発行者ログ80に格納することができる。
【００１６】
いくつかの実装形態では、ユーザのプライバシーを保護するために、広告管理システムはユーザのインプレッションデータを匿名化し、その結果、ログ80に格納されたデータをユーザに関連付けることができなくなる。例えば、ユーザの識別情報を隠すか、そうでなければ、ユーザの識別情報をユーザに関連付けられていない一意の数に設定することができ、ユーザの住所(知られている場合)をせいぜい、郵便番号などの郵便サービス区域に曖昧化することができる。ログ80を暗号化して、不正なシステムアクセスの際にユーザ情報をさらに保護することもできる。ユーザのプライバシーを保護するための追加の技術を実施することもできる。
【００１７】
§  2.0  セグメント推定システム
セグメント推定システム100は、ログ80に収集されたデータを使用して、サイト60の視聴者セグメントサイズを推定することができる。例えば、システム100によって生成された推定は、実際に視聴者セグメントを作成する前に発行者がセグメントサイズおよび品質への影響を見ることを可能にすることによって、十分な情報を得た上で決定を下すための知識をサイト60の発行者に提供することができる。
【００１８】
動作の際、セグメント推定システム100は、消費者への広告のターゲティングを容易にする。例えば、システム100は、選択された視聴者セグメントの1つまたは複数の特性を記述するデータを広告管理システム74に提供することができる。このデータを使用して、発行者ウェブサイト60の選択された視聴者セグメント内でユーザ識別子に関連付けられた将来のページビューの広告を対象とすることができる。
【００１９】
セグメント推定システム100は、スキャナ104を用いて発行者ログ80にアクセスし、発行者ログ80をスキャンする。具体的には、スキャナ104は、ユーザ識別子、発行者識別子、ページビュー値、およびそれぞれの広告インプレッションのキー値を含むレコードを取り出し、ユーザ識別子および発行者識別子ごとに発行者レコード80を整理する。これらの分類されたレコードは、発行者レコードデータストア116に格納される。いくつかの実装形態では、スキャナは、特定の日の全ての発行者ログが収集された後に、発行者ログ80を毎日スキャンする。
【００２０】
アグリゲータ106は、発行者レコード116にアクセスし、ユーザ識別子/発行者識別子の組ごとにレコードを集約する。これらの集約されたレコードは、発行者ページビューデータとして発行者ページビューデータストア114に格納される。いくつかの実装形態では、それぞれの発行者の発行者ページビューデータは、第1の期間、例えば、1ヶ月の間に生じたページビューを表すページビューレコードを含む。それぞれのページビューレコードは、第1の期間中に生じた第2の期間、例えば、1ヶ月のうちの1日の間にユーザ識別子と発行者識別子の組に関連付けられた1つまたは複数のページビューを表す。したがって、特定のユーザが1ヶ月の期間のうちの異なる20日の間、発行者を訪問した場合、ページビューデータストア114には、対応するユーザ識別子および発行者識別子の組を有する20のレコードがあることになる。さらに、それぞれのレコードは、ページビューレコードによって表されるページビューについて生じたインプレッションに関して提供された発行者キー値を含む。ページビューレコードについては、図2でより詳細に説明する。
【００２１】
セグメント管理エンジン102は、発行者のセグメント定義情報を受け取る。セグメント定義は、発行者の1つまたは複数の発行者キー値によってセグメントを定義する。セグメント定義はセグメント推定装置108に提供され、セグメント推定装置108はページビューデータ114およびセグメント定義情報を使用して、セグメントのサイズ、セグメントのページビューの数、および/またはセグメント品質などの1つまたは複数のセグメント特性を決定する。
【００２２】
いくつかの実装形態では、セグメント推定装置108は、セグメント定義によって定義されたセグメントを満足させる発行者キー値を含むページビューデータ114レコードからのユーザ識別子をセグメントに割り当てる。これらの割り当てられたユーザ識別子から、1つまたは複数のセグメント特性が決定される。これらの特性の決定については、図2でより詳細に説明する。
【００２３】
いくつかの実装形態では、セグメント推定装置108はセグメント品質測定値も決定する。いくつかの実装形態では、品質測定値は以下の式によって与えられる。
【００２４】
【数１】
0005587414.tif 000002
【００２５】
ここで、
Qsは品質測定値であり、
Nsはセグメント内ページビューの数であり、
Ns+s'はセグメント内ページビューおよびセグメント外ページビューの合計数である。
【００２６】
品質測定値により、発行者は特定の視聴者セグメントの品質を判断することができる。一般に、品質測定値が高くなるほど、セグメント外ページビューを対象とすることによって生成することができるインプレッションの数が多くなる。例えば、100人のユーザが発行者ウェブサイトの第1のセグメントに属すると仮定する。第1のセグメントは、スポーツのカテゴリに興味があるユーザとして定義される。これらのユーザは、1000のセグメント内ページビューを提供する、すなわち、スポーツのカテゴリの発行者キー値を含む合計1,000のページビューがある。これらの同じ100人のユーザについて、発行者ウェブサイトでは合計5,000のページビューがある、すなわち、スポーツのカテゴリの発行者キー値を含む合計1,000のページビューに加えて、発行者ウェブサイト上には、スポーツのカテゴリの発行者キー値を含まない、これらのユーザについての追加の4,000のページビューがある。また、別の100人のユーザが発行者ウェブサイトの第2のセグメントに属すると仮定する。第2のセグメントは、かぎ針編みのカテゴリに興味があるユーザとして定義され、ユーザは1,000のセグメント内ページビューを提供する。しかし、これらの100人のユーザについては、発行者ウェブサイトでは合計1,100のページビューしかない。したがって、第1のセグメントの品質は、第2のセグメントの品質よりも高い。
【００２７】
セグメントのサイズ、セグメントのページビューの数、セグメントに属するユーザ、および/またはセグメント品質などの決定された1つまたは複数のセグメント特性を、セグメント応答データ112の形で発行者に提供することができる。発行者は、ユーザインターフェースを使用することでセグメント応答データ112を精査して、セグメントをさらに解析するおよび/または対象とするべきかどうかを決定することができる。いくつかの実装形態では、発行者がセグメントを対象とすることを決定した場合、セグメント管理エンジン102は、セグメント母集団データ113を生成し、ターゲティングのためにセグメント母集団データを広告管理システム74に提供することができる。いくつかの実装形態では、セグメント母集団データ113は、ユーザ識別子とセグメントを定義するデータとの関連付けである。この関連付けはターゲティング基準として使用される。広告管理システム74または要求元の発行者60はセグメント母集団データ113を使用して、セグメントに割り当てられたユーザ識別子に関連付けられた将来のページビューの広告を対象とすることができ、または、いくつかの実装形態では、ユーザが特定の発行者のサイトを訪問するときにそのセグメントに属するように決定された任意の他のユーザに関連付けられた将来のページビューの広告を対象とすることができる。
【００２８】
いくつかの実装形態では、システム100は非コンテキスト値を搬送するデータを受け取るか、取り出す。このデータは、格納スペースを取り、システム100における処理時間を増加させる場合がある。したがって、いくつかの実装形態では、セグメント管理エンジン102は、無駄なデータを識別し、ラベルを付け、破棄するための機構を提供する。例えば、セグメント管理エンジン102は、1回限りの一意の識別子、広告記述子、顧客エラーなどを削除することができる。1回限りの一意の識別子は、一意の発生、例えば、1ヶ月の期間の間の特定のユーザ識別子に関するたった1回のページビューを識別する任意の識別子である。広告記述子は、広告のサイズ、スタイルおよび/または位置を記述する記述子である。このデータは、ユーザのグループの行動プロファイルを構築するためにクライアントによって使用される可能性が低い。顧客エラーは、間違って構築された広告ユニフォームリソースロケータに当てはまる場合がある。
【００２９】
セグメント管理エンジン102は、特定のキー値を管理し、破棄する戦略を実施することができる。例えば、セグメント管理エンジン102は、除外されるキー値のタイプ、例えば、特定の広告記述子のリストに従って、特定のキー値を事前に破棄することができる。いくつかの実装形態では、エンジン102は、低い値のキー値を識別し、これらのキー値を排除することができる。例えば、任意の30日の期間にごく少数のユーザに提供されたページビューのキー値、例えば3未満をアグリゲータ106によって識別し、排除することができる。
【００３０】
§  3.0  例示的なページビューレコード
図2は、例示的なページビューレコード200のブロック図である。ページビューレコード200は、どの発行者キー値が対応するページビューのインプレッションに関して提供されたかを示すページビュー/キー値マップを表す。図示の例におけるページビューレコード200は、それぞれの列に対するセルを含むレコードの形式である。セルは、1日の1人のユーザの集約された発行者ログデータを表す。以下のレコード200は一例として提供され、ページビューをキー値または他の発行者によって追跡される属性に関連付ける他のデータ構造を使用することもできる。
【００３１】
例示的なページビューレコード200は、格納スペース割当ておよび処理効率を最適化するように構成される。以下に説明する例示的な実装形態では、ページビューレコード200は1日のユーザ識別子/発行者識別子の組のインプレッションデータを格納するコンパクトなレコードである。さらに、その日にそのユーザ識別子のインプレッションに関して提供されたキー値のみがレコード200に格納される。これらのキー値は、レコードに格納されたビットマップによってインデックス付けされる。インプレッションに関して提供されなかった他のキー値の列は、レコードに含まれない。
【００３２】
ページビューレコード200はアグリゲータ106によって生成され、その結果として生じる集約されたレコードはページビューデータストア114に格納される。いくつかの実装形態では、1つのレコードがユーザごとに、最大30日間にわたって特定のウェブページについて日ごとに生成される。例えば、発行者サイトの任意の所与のウェブページについての30日間のページビューデータ114において、それぞれのユーザ識別子/発行者識別子の組について最大30のレコードが存在しうる。さらに、他の期間を使用することもできる。
【００３３】
しかし、他の実装形態では、特定のウェブページが追跡されず、発行者キー値のみが追跡される。これらの実装形態では、1つのレコードがユーザごとに、最大30日間にわたって日ごとに生成される。例えば、30日間のページビューデータ114において、それぞれのユーザ識別子/発行者識別子の組について最大30のレコードが存在しうる。
【００３４】
図示のページビューレコード200は、ユーザ識別子/発行者識別子の組のキーを表す列202を含む。いくつかの実装形態では、このキーは、ユーザ識別子および発行者識別子のタプル、例えば、ユーザ識別子またはユーザ識別子から得られた、ユーザ識別子に一意に関連付けられたデータのいずれか、および発行者識別子である。列204、206、208、210、212、214、216および218は、発行者が追跡し、特定の日(または他のなんらかの最小期間)にそのユーザのインプレッションに関して提供されたキー値に対応する。この例では、1つの列はそれぞれのキー値に対して存在し、その日のインプレッションに関して提供されたキー値に対応する。
【００３５】
例えば、「1000」の発行者識別子を有する発行者が、列202に示されるユーザ識別子に関連付けられたユーザセッションに対して3つのページビューをサーブしたと仮定する。また、それぞれのページビューは1つまたは複数の広告をサーブし、それぞれの広告インプレッションに対してキー値が提供された。全てのページビューが特定の発行者サイト、例えば、値「S10」によって識別されたサイト上にあり、特定のゾーン、例えば、識別子「Z11」によって識別されたウェブページ上にあったと仮定する。1日の特定の発行者および特定のユーザに対する発行者レコードにおける例示的なキー値は、以下の通りである。
hobby=knitting; page=cooking; pageview=1
int=cooking; pageview=1
context=finance; kw=refinance; c=n; pageview=4
context=finance; pageview=4
context=finance; q=wsj_prime; pageview=4
int=movies; hobby=knitting; pageview=16
【００３６】
上記の例では、「pageview=<x>」キー値がこの例で使用されて、インプレッションをページビューに集約する。例えば、発行者「1000」について、(例えば、1、4、および16の番号が付いた)3つのページビューに集約された6つのインプレッションがある。ページビューレコード200は、ページビュー1、4、および16ならびに6つのインプレッションについての上記のデータを使用して書き込まれたデータを表す。
【００３７】
列204は、キータイプ「hobby」に対するキー値「knitting」を含む。インデックス値は、以下に説明されるビットマップへのインデックス付けを示す。同様に、列206、208、210、212および214は、発行者に対する異なるキー値を含む、すなわち、列206はキータイプ「int」(interest)に対して「movies」のキー値を含み、列208はキータイプ「int」に対して「cooking」のキー値を含み、列210はキータイプ「keyword」に対して「refinance」のキー値を含み、列212はキータイプ「context」に対して「finance」のキー値を含み、列214はキータイプ「q」(クエリパラメータ)に対して「wsj_prime」のキー値を含む。列216はサイトS10を示す「S10」のキー値を含む。サイト識別子は、発行者の特定のウェブサイトを識別する。列218は広告ゾーン、例えば、特定のウェブページを示す「Z11」のキー値を含む。
【００３８】
キー値が提供されたページビューの数は、それぞれのキー値で異なる。例えば、「knitting」のキー値は2つのページビュー(すなわち、ページビュー合計2の場合、ページビュー1および16)で生じたが、「movies」のキー値は1つのページビュー(すなわち、ページビュー合計1の場合、ページビュー16)で生じた、などである。いくつかの実装形態では、ページビューの数をタプル値の一部としてセルに格納することもできる。しかし、以下に説明するビットマップの利用を用いて、ページビューカウントを決定することもできる。
【００３９】
ページビューレコード200のそれぞれのフィールドは、それぞれのインデックス値を含む。これらのインデックス値を使用して、列220に格納されたビットマップにインデックス付けする。これらのインデックス値を使用して、ページビューレコードによって表される1つまたは複数のページビューのそれぞれに対するページビュー/キー値マップを生成する。いくつかの実装形態では、ページビュー/キー値マップは、ページビューのインプレッションに関して提供された発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において対応する第1の値(例えば、「1」)を有し、ページビューのインプレッションに関して提供されなかった発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において対応する第2の値(例えば、「0」)を有するページビュー/キー値ビットマップである。
【００４０】
図2に示すように、ページビュー/キー値ビットマップは左から右にインデックス付けされ、左端のインデックス位置は0であり、右端のインデックス位置は7である。例えば、第1のビットマップ242はページビュー(1)に対応し、第2のビットマップ244はページビュー(4)に対応し、第3のビットマップ246はページビュー(16)に対応する。それぞれのビットマップについて、列204はインデックス0に対応し、列206はインデックス1に対応し、列216はインデックス2に対応し、列208はインデックス3に対応し、列214はインデックス4に対応し、列210はインデックス5に対応し、列212はインデックス6に対応し、列218はインデックス7に対応する。ビットが小さい(すなわち、0)場合、ページビューはそのビットによってインデックス付けされたキー値を有するインプレッションを含まなかった。逆に、ビットが大きい(すなわち、1)場合、ページビューはそのビットによってインデックス付けされたキー値を有するインプレッションを含んだ。図2の列はインデックス付けされた値の順になっていないが、いくつかの実装形態では、列をビットマップインデックスに関して増分順に、すなわち、KV0、KV1、KV2....KV7の順に配置することができる。
【００４１】
全ての3つのインプレッションはサイト識別子S10およびゾーン識別子Z11に対するものであり、サイト識別子S10およびゾーン識別子Z11はそれぞれ、インデックス2およびインデックス7によってインデックス付けされていることに留意されたい。したがって、それぞれのビットマップにおけるインデックス2およびインデックス7でのビットは1に等しい。
【００４２】
インデックス0でのビットマップ位置の場合、列204に格納され、インデックス0に関連付けられた「knitting」のキー値が第1のページビュー(ページビュー1)を有するインプレッションに関して提供されたとき、第1のビットマップ242は1の値を含む。同様に、「knitting」のキー値が第3のページビュー(ページビュー16)を有するインプレッションにも提供されたとき、第3のビットマップ246はインデックス位置0で1の値を含む。逆に、「knitting」のキー値が第2のページビュー(ページビュー4)を有するインプレッションに関して提供されなかったとき、第2のビットマップ244はインデックス位置0で0の値を含む。
【００４３】
ビットマップ242、244および246における残りのビットは、同様の方法で決定される。ビットマップが生成されると、全てのビットマップについて特定のインデックス位置でのそれぞれのビットの全てを合計して、キー値が提供されたページビューの数に等しい数を生成する。
【００４４】
ページビュー/キー値ビットマップは、ユーザ識別子を効率的に探索してセグメントへ割り当てることを容易にする。いくつかの実装形態では、セグメント推定装置108はセグメント定義からそれぞれのページビューレコードに対するセグメントビットマスクを生成する。セグメントビットマスクは、セグメント定義にある発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において対応する第1の値(例えば、「1」)を有し、セグメント定義にない発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において対応する第2の値(例えば、「0」)を有する。セグメント推定装置108は、ページビューレコードのセグメント定義ビットマスクをページビューレコードのページビュー/キー値ビットマップのそれぞれと比較して、どのユーザ識別子がセグメントに属するかを決定する。
【００４５】
例えば、セグメントが、発行者1000から以下のキー値のうちの1つまたは複数を有するインプレッションを受け取ったユーザとして定義されていると仮定する。
ingredients=garbanzo_beans
int=movies
int=travel
kw=refinance
したがって、セグメント定義は以下のブール方程式によって表される。
ingredients=garbanzo_beans OR int=movies OR int=travel OR kw=refinance
【００４６】
いくつかの実装形態では、セグメント定義はある期間中のページビューの最小数を指定することもできる。デフォルトの定義は任意の所与の日あたり1ページビューであるが、セグメント定義は他のページビュー要件、例えば、任意の1週間で100ページビュー、または任意の所与の日で10ページビューなどを指定することもできる。
【００４７】
レコード200の場合、セグメント推定装置108は、01000100のセグメント定義ビットマスクを生成する。このビットマスクは、キー値をレコード200と比較することによって構築される。キー値「int=movies」および「kw=refinance」はいずれも存在するセグメント定義であるので、インデックス位置1および5には値1が割り当てられる。
【００４８】
セグメント推定装置108は、ビット単位の操作を実行して、特定のページビューがセグメント定義を満たすかどうかを決定する。例えば、セグメント定義ビットマスクがページビュービットマップ242、244および246と突き合わされ、2つのページビューがセグメント定義を満足させるように決定される。したがって、ユーザ識別子がセグメントに割り当てられる。さらに、その日の2つのページビューがカウントされる(すなわち、「refinance」が存在するので、ビットマップ244に対する第2のページビュー、および「movies」が存在するので、ビットマップ246に対する第3のページビュー)。
【００４９】
セグメント推定装置108は、セグメント定義によって要求される必要なブール代数を実施する。例えば、セグメント定義が全てのキー値の存在(例えば、ingredients=garbanzo_beans AND int=movies AND int=travel AND kw=refinance)を要求した場合、いずれのページビューもカウントされない。
【００５０】
セグメント定義ビットマスクは、レコードごとにセグメント定義において使用されたビットをインデックス付けする。ユーザ識別子/発行者識別子の組についてのそれぞれのレコードは、特定の発行者ページでの1日(または他のなんらかの最小処理期間)のユーザアクティビティのみに対応するので、それぞれのユーザ識別子/発行者識別子の組のレコードについての対応するページビュー/キー値ビットマップは異なっていてもよい。したがって、セグメント推定装置108は、それぞれのレコードについてのセグメント定義ビットマスクを生成する。例えば、レコード200の同じユーザが翌日、発行者のサイトに戻り、それによって20のページビューが生成された仮定する。追加のキー値または異なるキー値が提供されたことになるので、翌日のページビューレコードはページビュー/キー値ビットマップにおいて7を超えるビットを有する可能性が高い。
【００５１】
例えば、翌日に全てのページビューに対して15のキー値が提供され、これらのキー値が「garbanzo_beans」、「movies」、「travel」および「refinance」を含んでいたと仮定する。したがって、翌日のページビュー/キー値ビットマップは15ビットを有することになる。また、ここで、それぞれのキー値が位置1、3、14および15でインデックス付けされていると仮定する。このインデックスを考慮すると、同じセグメント定義のセグメント定義ビットマスクも15ビットを有し、値「010100000000011」で構成されることになる。
【００５２】
上記のセグメント定義は比較的単純なセグメント定義(「OR」演算)であり、1つのビットマスクしか必要としない。ただし、より複雑なセグメント定義を使用することもできる。これらのより複雑な定義(例えば、AND演算子、NAND演算子、NOR演算子などの使用)の場合、それぞれのレコードに対して2つ以上のビットマスクを必要とする場合がある。
【００５３】
さらに、ある期間の特定のページビューカウントが必要な場合、セグメント推定装置108は、ビットマスクとビットマップとの比較に応答して、追加の決定操作(すなわち、ある期間のページビューカウントチェック)を実行して、ユーザが定義されたセグメントに属するかどうかを決定することができる。
【００５４】
§  4.0  例示的なプロセス
図3は、セグメントの1つまたは複数の特性を決定する例示的なプロセス300の流れ図である。プロセス300を図1のセグメント推定システム100において実施することができる。
【００５５】
プロセス300は発行者ログにアクセスする(302)。例えば、スキャナ104は発行者ログ80にアクセスする。発行者ログ80は、特定の発行者サイトのページビューについて提供された過去のインプレッションを記述するデータを格納する。特に、発行者ログ80はインプレッションデータおよびページビューデータを格納することができる。ログ80におけるそれぞれのインプレッションについて、データはユーザ識別子、発行者識別子、ページビュー値、およびインプレッションに関して提供された、発行者の任意の数の発行者キー値を含むことができる。
【００５６】
プロセス300は、発行者ログからそれぞれの発行者の発行者ページビューデータを生成する(304)。例えば、スキャナは発行者ログから発行者レコード116を生成し、アグリゲータ106は発行者レコード116からそれぞれの発行者のページビューデータを生成する。例えば、発行者ページビューデータは、1ヶ月の期間などの第1の期間中に生じたページビューを表すページビューレコード含むことができる。1ヶ月の期間におけるそれぞれのページビューレコードは、その1ヶ月の間に生じた第2の期間(例えば、1日)中にユーザ識別子と発行者識別子の組に関連付けられた1つまたは複数のページビューを表しうる。この1日の期間内で表されたそれぞれのページビューレコードは、特定のユーザ識別子、発行者識別子、および1つまたは複数のページビューについて生じたインプレッションに関して提供された発行者キー値を含む。1ヶ月および1日という例示的な期間が使用されているが、プロセス300は異なる期間でページビューレコードを生成することができる。
【００５７】
プロセス300は、発行者のセグメント定義を受け取る(306)。例えば、セグメント管理エンジン102は、発行者のセグメント定義を受け取る。セグメント定義は、発行者の1つまたは複数の発行者キー値によってセグメントを定義する。セグメント定義は、ページビューの数を定義する最小(または最大)ページビュー定義およびページビューが生じた最小(または最大)期間を含むこともできる。セグメント推定装置は、セグメント定義によって定義されたセグメントを満足させる発行者キー値を含むレコードからのユーザ識別子をセグメントに割り当てる。
【００５８】
プロセス300は、セグメントに割り当てられたユーザ識別子およびセグメントに割り当てられたユーザ識別子のページビューレコードに基づいて、1つまたは複数のセグメント特性を決定する(308)。例えば、セグメント推定装置108は、セグメントに割り当てられた現在のユーザに基づいて、セグメント特性を決定する。セグメント特性を決定することは、利用可能なページビューレコードから第1の数のページビューを決定することを含みうる。利用可能なページビューレコードは、特定のセグメントに割り当てられたユーザ識別子のレコードを含みうる。いくつかの実装形態では、セグメント特性を決定することは、セグメントに割り当てられた特定のユーザ識別子のページビューレコードに基づいて、ターゲティング基準を決定することを含む。
【００５９】
プロセス300は、セグメント定義に応答して、セグメントの1つまたは複数の特性を記述する応答データを提供する(310)。例えば、セグメント管理エンジン102はセグメント定義を使用して、セグメント特性に関する応答データを決定し、提供する。一例では、応答データを広告管理システムに提供して、セグメントに割り当てられた特定のユーザ識別子に関連付けられた将来のページビューに対する広告ターゲティングを容易にすることができる。
【００６０】
図4は、セグメント品質測定値を決定する例示的なプロセス400の流れ図である。例えば、プロセス400をセグメント推定装置108において実施することができる。
【００６１】
プロセス400は、セグメントに割り当てられたユーザ識別子のページビューレコードから第1の数のページビューを決定する(402)。例えば、セグメント推定装置108は、ページビューデータ114におけるどのページビュー/キー値マップがセグメント定義を満足させる発行者キー値を示すかを決定する。この情報から、セグメント内ページビュー、すなわち、セグメント定義を満足させるキー値を含むページビューの合計数が生成される。
【００６２】
プロセス400は、セグメントに割り当てられたユーザ識別子のページビューレコードから第2の数のページビューを決定する(404)。例えば、セグメント推定装置108は、セグメントに割り当てられたユーザ識別子のページビューレコードによって表されるページビュー、すなわち、ユーザのセグメント内ページビューおよびセグメント外ページビュー双方の合計数を決定し、いくつかの実装形態では、これらのページビューは、セグメントに属するユーザ識別子に関連付けられた全てのページビューである。
【００６３】
プロセス400は、第1の数のページビューに対する第2の数のページビューの比に比例するセグメント品質測定値を決定する(406)。例えば、セグメント推定装置108は第1の数のページビューおよび第2の数のページビューを使用して、セグメント品質測定値を計算する。いくつかの実装形態では、品質測定値は、セグメント内ページビューの数に対する、セグメント内ページビューおよびセグメント外ページビューの合計の測定値でありうる。
【００６４】
図5は、セグメント定義を満足させるページビューを決定する例示的なプロセス500の流れ図である。例えば、プロセス500をアグリゲータ106またはセグメント推定装置108において実施することができる。
【００６５】
プロセス500は、ページビューレコードによって表される1つまたは複数のページビューのそれぞれを表すページビュー/キー値ビットマップを生成する(502)。例えば、アグリゲータ106は、ページビューレコードにおいてページビューを表すためのビットマップを生成する。動作の際、それぞれのページビューレコードについて、発行者キー値がページビューレコード内のそれぞれのフィールドに格納される。それぞれのフィールドは、それぞれのインデックス値に関連付けられる。
【００６６】
図2に詳述されているように、ページビュー/キー値ビットマップは、ページビューのインプレッションに関して提供された発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において第1の値を含む。さらに、ビットマップは、ページビューのインプレッションに関して提供されなかった発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において第2の値を含む。
【００６７】
プロセス500は、セグメント定義からそれぞれのページビューレコードに対するビットマスクを生成する(504)。例えば、セグメント推定装置108は、セグメント定義を使用して、それぞれのページビューレコードに対する1つまたは複数のビットマスクを生成する。セグメント定義の複雑性によっては、1つのページビューレコードに対してビットマスクを1つだけ生成すればよい場合があり、または、複雑な定義の場合には、それぞれのページビューレコードに対して複数のビットマスクを生成する必要がある場合がある。一例では、それぞれのビットマスクは、セグメント定義にある発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において第1の値を含む。さらに、ビットマスクは、セグメント定義にない発行者キー値のそれぞれのインデックス値に対応するインデックス付けされた位置において第2のキー値を含みうる。
【００６８】
プロセス500は、発行者のそれぞれのページビューレコードについて、ページビューレコードのセグメント定義ビットマスクをページビューレコードのページビュー/キー値ビットマップのそれぞれと比較する(506)。例えば、セグメント推定装置108は、セグメント定義ビットマスクとページビュー/キー値ビットマップとの比較を実行する。ページビューレコードのセグメント定義ビットマスクがそのレコードのページビュー/キー値ビットマップのうちの1つに一致し、これに対応するビットマップとビットマスクとの比較が真のブール値を生成する場合、レコード内で識別されたユーザはセグメントメンバとしてカウントされうる。
【００６９】
図6は、セグメントの1つまたは複数の特性を決定する別の例示的なプロセス600の流れ図である。例えば、プロセス600をセグメント管理エンジン102もしくはセグメント推定装置108において、またはその組合せもしくは両方において実施することができる。
【００７０】
プロセス600は、発行者のセグメント定義を受け取る(602)。例えば、セグメント管理エンジン102は、1つまたは複数のキー値によってセグメントを定義する、特定の発行者のセグメント定義を受け取る。キー値は個々の発行者それぞれに属し、したがって、それぞれの発行者によってキー値を定義することができる。
【００７１】
プロセス600は、セグメント定義によって定義されたセグメントを満足させる発行者キー値を有するページビューを決定する(604)。例えば、セグメント推定装置108は、セグメント定義によって定義されたセグメントに含めるために必要となるキー値に一致するキー値を有するページビューを決定する。
【００７２】
プロセス600は、セグメント定義を満足させるように決定されたページビューに基づいて、1つまたは複数のセグメント特性を決定する(606)。例えば、セグメント推定装置108は、セグメント定義を満足させるように事前に決定されているページビューに基づいて、ページビューデータ114のセグメント特性を決定する。
【００７３】
プロセス600は、セグメント定義に応答して、セグメントの1つまたは複数の特性を記述する応答データを提供する(608)。例えば、セグメント管理エンジン102は応答データ112を提供する。応答データ112はそれぞれのセグメントの特性を記述する。
【００７４】
プロセス600は、発行者入力に応答して、セグメント定義によって定義されたセグメントを対象とするためのセグメント母集団データを作成する(610)。例えば、セグメント管理エンジン102は、ユーザ識別子とセグメントを定義するデータとの関連付けを作成することができる。広告管理システム74または要求元の発行者60はセグメント母集団データ113を使用して、セグメントに割り当てられたユーザ識別子に関連付けられた将来のページビューの広告を対象とすることができ、または、いくつかの実装形態では、ユーザが特定の発行者のサイトを訪問するときにそのセグメントに属するように決定された任意の他のユーザに関連付けられた将来のページビューの広告を対象とすることができる。
【００７５】
本明細書に記載される主題および操作の実施形態は、デジタル電子回路において、または本明細書に開示された構造およびその構造的等価物を含むコンピュータソフトウェア、ファームウェア、もしくはハードウェアにおいて、またはこれらのうちの1つまたは複数の組合せにおいて実施されうる。本明細書に記載される主題の実施形態は、1つまたは複数のコンピュータプログラム、すなわち、データ処理装置によって実施するために、またはデータ処理装置の動作を制御するためにコンピュータ記憶媒体上で符号化された、コンピュータプログラム命令の1つまたは複数のモジュールとして実施されうる。あるいはまたはこれに加えて、人工的に生成された伝搬信号、例えば、機械によって生成された電気信号、光信号、または電磁信号上でプログラム命令を符号化することができ、この信号は、データ処理装置によって実行するために適切な受信機装置に伝送される情報を符号化するために生成される。コンピュータ記憶媒体は、コンピュータ可読記憶デバイス、コンピュータ可読記憶基板、ランダムもしくはシリアルアクセスメモリアレイもしくはデバイス、またはこれらのうちの1つまたは複数の組合せとすることができ、またはこれらに含めることができる。さらに、コンピュータ記憶媒体は伝搬信号ではないが、コンピュータ記憶媒体は、人工的に生成された伝搬信号内で符号化されたコンピュータプログラム命令の送信元または宛先とすることができる。また、コンピュータ記憶媒体は、1つまたは複数の別個の物理構成要素または媒体(例えば、複数のCD、ディスク、または他の記憶デバイス)とすることができ、またはこれらに含めることができる。
【００７６】
本明細書に記載される操作は、1つまたは複数のコンピュータ可読記憶デバイス上に格納された、または他のソースから受け取られたデータ上でデータ処理装置によって実行される操作として、実施されうる。
【００７７】
「データ処理装置」という用語は、例としてプログラム可能なプロセッサ、コンピュータ、チップ上のシステム、または上記の複数、または上記の組合せを含む、データを処理するための全ての種類の装置、デバイス、および機械を包含する。この装置は、特殊用途の論理回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)を含むことができる。また、この装置は、ハードウェアに加えて、当該のコンピュータプログラム用の実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォームランタイム環境、仮想マシン、またはこれらのうちの1つまたは複数の組合せを構成するコードを含むことができる。この装置および実行環境は、ウェブサービス、分散コンピューティングインフラおよびグリッドコンピューティングインフラなどの様々な異なるコンピューティングモデルインフラを実現することができる。
【００７８】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られている)は、コンパイル言語またはインタプリタ言語、宣言型言語または手続き型言語を含む、任意の形式のプログラミング言語で記述することができ、スタンドアロンプログラムとして、またはモジュール、コンポーネント、サブルーチン、オブジェクト、もしくはコンピューティング環境において使用するのに適した他の単位を含む、任意の形式で導入することができる。コンピュータプログラムはファイルシステム内のファイルに対応しうるが、そうである必要はない。プログラムは、他のプログラムまたはデータ(例えば、マークアップ言語ドキュメントに格納された1つまたは複数のスクリプト)を保持するファイルの一部、当該のプログラム専用の単一のファイル、または複数の連携ファイル(例えば、1つまたは複数のモジュール、サブプログラム、またはコードの一部を格納するファイル)に格納されうる。1つのコンピュータ上で、または1つのサイトに配置された、もしくは複数のサイトにわたって分散され通信ネットワークによって相互接続された複数のコンピュータ上で実行されるように、コンピュータプログラムを導入することができる。
【００７９】
本明細書に記載されるプロセスおよび論理流れ図を1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラム可能なプロセッサによって実行して、入力データ上で演算して出力を生成することによってアクションを実行することができる。また、プロセスおよび論理流れ図を特殊用途の論理回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実行することができ、装置を特殊用途の論理回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)として実装することもできる。
【００８０】
コンピュータプログラムの実行に適したプロセッサは、例として、汎用マイクロプロセッサおよび専用マイクロプロセッサの両方、ならびに任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。一般に、プロセッサは、読取り専用メモリまたはランダムアクセスメモリまたはその両方から命令およびデータを受け取る。コンピュータの必須要素は、命令に従ってアクションを実行するためのプロセッサならびに命令およびデータを格納するための1つまたは複数のメモリデバイスである。一般に、コンピュータはまた、データを格納するための1つまたは複数の大容量記憶デバイス、例えば、磁気ディスク、光磁気ディスク、または光ディスクを含むか、この大容量記憶デバイスからデータを受け取るため、またはこの大容量記憶デバイスにデータを伝送するため、またはその両方のために動作可能に結合される。しかし、コンピュータはそのようなデバイスを有する必要はない。
【００８１】
コンピュータプログラム命令およびデータを格納するのに適したデバイスは、例として、半導体メモリデバイス、例えば、EPROM、EEPROM、およびフラッシュメモリデバイス;磁気ディスク、例えば、内部ハードディスクまたはリムーバブルディスク;光磁気ディスク;ならびにCD-ROMディスクおよびDVD-ROMディスクを含む、全ての形式の不揮発性メモリ、媒体およびメモリデバイスを含む。プロセッサおよびメモリを特殊用途の論理回路によって補完するか、特殊用途の論理回路に組み込むことができる。
【００８２】
ユーザとの対話を提供するために、本明細書に記載される主題の実施形態を、情報をユーザに表示するためのディスプレイデバイス、例えば、CRT(cathode ray tube:ブラウン管)モニタまたはLCD(liquid crystal display:液晶ディスプレイ)モニタ、ユーザがコンピュータへの入力を行うことができるキーボードおよびポインティングデバイス、例えば、マウスまたはトラックボールを有するコンピュータ上で実施することができる。他の種類のデバイスを使用して、ユーザとの対話を提供することもでき、例えば、ユーザに提供されるフィードバックは、任意の形式の感覚フィードバック、例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックであってもよく、ユーザからの入力を、音響入力、音声入力、または触覚入力を含む任意の形式で受け取ることができる。さらに、コンピュータは、ユーザによって使用されるデバイスと文書を送受信することによって、例えば、ウェブブラウザから受け取られた要求に応答して、ウェブページをユーザのクライアントデバイス上のウェブブラウザに送信することによって、ユーザと対話することができる。
【００８３】
本明細書に記載される主題の実施形態は、バックエンドコンポーネントを例えばデータサーバとして含む、またはミドルウェアコンポーネント、例えばアプリケーションサーバを含む、またはフロントエンドコンポーネント、例えば、グラフィカルユーザインターフェースもしくはウェブブラウザ（それらを通じてユーザは、本明細書に記載される主題の実施と対話することができる）を有するクライアントコンピュータを含む、または1つもしくは複数のそのようなバックエンドコンポーネント、ミドルウェアコンポーネント、もしくはフロントエンドコンポーネントの任意の組合せを含むコンピューティングシステムにおいて実施することができる。システムの各コンポーネントを、任意の形式または媒体のデジタルデータ通信、例えば、通信ネットワークによって相互接続することができる。通信ネットワークの例としては、ローカルネットワーク(「LAN」)およびワイドエリアネットワーク(「WAN」)、インターネットワーク(例えば、インターネット)、ならびにピアツーピアネットワーク(例えば、アドホックピアツーピアネットワーク)が挙げられる。
【００８４】
コンピューティングシステムは、クライアントおよびサーバを含むことができる。一般的には、クライアントおよびサーバは互いに離れており、通常、通信ネットワークを介して対話する。クライアントとサーバの関係は、それぞれのコンピュータ上で動作し、互いにクライアント-サーバ関係を有するコンピュータプログラムによって生じる。いくつかの実施形態では、サーバは、データ(例えば、HTMLページ)をクライアントデバイスに(例えば、データを表示し、クライアントデバイスと対話しているユーザからのユーザ入力を受け取る目的で)送信する。クライアントデバイスで生成されたデータ(例えば、ユーザ対話の結果)をサーバでクライアントデバイスから受け取ることができる。
【００８５】
本明細書は多くの特定の実装形態の詳細を含むが、これらは全ての発明または特許請求することができるものの範囲を限定するものとして解釈されるべきではなく、むしろ、特定の発明の特定の実施形態に特有の特徴の説明として解釈されるべきである。個別の実施形態の文脈において本明細書に記載される一定の特徴を、単一の実施形態において組み合わせて実施することもできる。逆に、単一の実施形態の文脈において記載される様々な特徴を、複数の実施形態において別々にまたは任意の適切な副組合せで実施することもできる。さらに、特徴は一定の組合せで作用するものとして上記に記載され、最初にそのようなものとして特許請求されてさえいる場合があるが、場合によっては、特許請求された組合せからの1つまたは複数の特徴をその組合せから削除することができ、特許請求された組合せは、副組合せまたは副組合せの変形を対象とすることができる。
【００８６】
同様に、動作は特定の順序で図面に示されているが、これは、そのような動作を示されている特定の順序でまたは順次に実行すること、または、所望の結果を達成するために全ての例示された動作を実行することを要求するものとして理解されるべきではない。一定の状況では、マルチタスキングおよび並列処理が有利でありうる。さらに、上記の実施形態における様々なシステム構成要素の分離は、全ての実施形態においてそのような分離を要求するものとして理解されるべきではなく、一般的に、記載されたプログラム構成要素およびシステムを単一のソフトウェア製品に一緒に組み込むか、複数のソフトウェア製品にパッケージすることができることを理解されたい。
【００８７】
このように、主題の特定の実施形態について説明してきた。他の実施形態は、添付の特許請求の範囲内である。場合によっては、特許請求の範囲に記載されるアクションを異なる順序で実行し、それでもなお所望の結果を達成することができる。さらに、添付の図に示されるプロセスは、所望の結果を達成するために、示されている特定の順序または順次を必ずしも必要としない。一定の実装形態では、マルチタスキングおよび並列処理が有利でありうる。
【符号の説明】
【００８８】
50  環境
52  コンピュータネットワーク、ネットワーク
60  発行者ウェブサイト、ウェブサイト、発行者、サイト
62  発行者クライアントデバイス
70  広告主ウェブサイト、ウェブサイト、広告主
72  広告主クライアントデバイス
74  広告主管理システム、広告管理システム
76  ユーザデバイス、ユーザクライアントデバイス
80  発行者ログ、ログ、発行者レコード
100  セグメント推定システム、システム
102  セグメント管理エンジン、エンジン
104  スキャナ
106  アグリゲータ
108  セグメント推定装置
112  セグメント応答データ、応答データ
113  セグメント母集団データ
114  発行者ページビューデータストア、ページビューデータストア、ページビューデータ
116  発行者レコードデータストア、発行者レコード
200  ページビューレコード、レコード
202  列
204  列
206  列
208  列
210  列
212  列
214  列
216  列
218  列
242  第1のビットマップ
244  第2のビットマップ
246  第3のビットマップ
300  プロセス
400  プロセス
500  プロセス
600  プロセス
S10  サイト識別子
Z11  ゾーン識別子
【図１】
0005587414.tif 000003
【図２】
0005587414.tif 000004
【図３】
0005587414.tif 000005
【図４】
0005587414.tif 000006
【図５】
0005587414.tif 000007
【図６】
0005587414.tif 000008