試験運用 #1: TURTLEDOVE シミュレーション
RTB のプロトコルとインフラストラクチャが更新され、Chrome の
TURTLEDOVE 提案をサーバー側でシミュレーションできるようになっています。詳しい説明は、
TURTLEDOVE シミュレーション提案をご覧ください。参加を希望する入札者は、
TURTLEDOVE RTB Simulation API ガイドを参照すると、この試験運用に関する固有の API やプロトコルの変更点の詳細を確認できます。これらの変更に加えて、Real-time Bidding API に新しい
biddingFunctions
リソースが追加されています。これは入札機能を管理する API で、サーバー側シミュレーションに利用します。
このシミュレーションの目的は、Chrome で実装される前に Chrome の提案を入札者が試せるようにし、参加する入札者が実現性や効果についてフィードバックを提供できるようにすることです。サーバー側のシミュレーションで使われる API と修正された RTB ワークフローは、のちに Chrome で TURTLEDOVE の実装になる可能性があるものと概念的に同じで、既存の提案と設計に関する公開の議論に基づいています。Google のシミュレーションに関するフィードバックは
ads-privacy Issue Tracker に、TURTLEDOVE 提案自体に関するフィードバックは
Chrome の TURTLEDOVE Issue Tracker に登録する必要があります。試験運用に関するバグの報告や技術的な質問は、
brse-eng-support@google.com サポート エイリアスにご連絡ください。
試験運用 #2: Federated Learning of Cohorts(FLoC)
Google は、入札者が
Chrome の FLoC 提案の試験運用に参加できるようにする予定です。それには、こちらの
Google Research & Ads ホワイトペーパーで説明しているアルゴリズムに基づいて、FLoC コホートをサーバーでシミュレーションする方法を用います。この試験運用を推進するため、Google RTB プロトコルの
BidRequest
に
Floc
メッセージが追加されています。これは、Google の OpenRTB 実装の
User
オブジェクトの拡張としても利用できます。メッセージの構造は次のようになっています。
message Floc {
// The value of a cohort ID – a string identifier that is common to a large
// cohort of users with similar browsing habits.
optional string id = 1;
// The type of the FLoC. See
// https://github.com/google/ads-privacy/blob/master/proposals/FLoC/FLOC-Whitepaper-Google.pdf.
enum FlocType {
// Default value that should not be used.
FLOC_TYPE_UNKNOWN = 0;
// FLoC simulated using affinity hierarchical clustering with centroids
// and feature extraction based on Topic categories as described in the
// whitepaper.
SIMULATED_AFFINITY_CLUSTERING_CENTROID_VERTICAL = 2;
// FLoC simulated using SortingLSH clustering algorithm and Domain One-hot
// encoding feature extraction as described in the whitepaper.
SIMULATED_SIMHASH_SORTING_LSH_DOMAIN_ONE_HOT = 3;
// FLoC simulated using a k Random Centers locality-sensitive hash
// function as described in
// https://github.com/google/ads-privacy/blob/master/proposals/FLoC/k-random-centers.md
// with Domain TF-IDF feature extraction as described in the whitepaper.
KCENTER_DOM_FILTERED_TFDIF = 4;
}
optional FlocType type = 2;
}
FLoC シミュレーション試験運用の対象となるのは、ウェブ リクエストのみです。実際には、このメッセージは、試験運用をオプトインした入札者のごく一部の入札リクエストのみに含まれ、それらの入札リクエストには
google_user_id
や
hosted_match_data
などの仮のユーザー識別子は含まれません。
パーソナライズされた広告をオプトアウトした場合など、プライバシー制御の結果として
Floc
が設定されることもありません。インプレッションを獲得した場合、入札者は通常どおりにクリエイティブを描画し、Cookie ベースの識別子を使ってコンバージョンの原因を確認できます。そのため、さまざまな FLoC とコンバージョンの相関関係の計測などを行えます。
参加する方には、
Issue Tracker を使ってシミュレーションでのコホート アルゴリズムに関するフィードバックを提供することをお勧めします。含めると役立つ指標の 1 つは、試験運用におけるそれぞれの
FlocType
ごとのコンバージョン率です。可能であれば、通常のトラフィックと比較できるとよいでしょう。通常のトラフィックでは、入札者が Cookie ベースの識別子を利用してターゲティングと最適化を行っている可能性があります。
試験運用 #3: Exchange-Enforced Frequency Capping
RTB プロトコルが更新され、
Exchange-Enforced Frequency Capping 提案の試験運用が可能になっています。この提案は、入札リクエストで提供されるユーザーの識別子によらずに、1 つの Exchange によって提供されるインベントリについて頻度の上限を設けるという重要なユースケースをサポートします。Google RTB プロトコルの
BidResponse
に
FrequencyCap
メッセージが追加されています。このメッセージは、Google の OpenRTB 実装の
Bid
オブジェクトの拡張としても利用できます。メッセージの構造は次のようになっています。
message FrequencyCap {
// An ID that can represent a bidder's use-case for frequency capping; for
// example, it could represent their campaign, ad, line item, etc. It should
// not contain any user-specific information or identifiers.
optional string fcap_id = 1;
// The time units for which frequency caps can be enforced.
enum TimeUnit {
UNKNOWN_TIME_UNIT = 0;
MINUTE = 1;
DAY = 2;
WEEK = 3;
MONTH = 4;
// When INDEFINITE is used, time_range will be ignored. INDEFINITE means
// the frequency cap will be applied for a long period of time, (longer
// than a month) but not necessarily forever.
INDEFINITE = 5;
}
// The unit of time used to specify the time window for which a frequency
// cap applies.
optional TimeUnit time_unit = 2;
// The length of the time window, in units specified by time_unit, for which
// the frequency cap applies. For instance, if time_unit=WEEK and
// time_range=3, then capping is applied for a three week period. If the
// time_unit=INDEFINITE, this will be ignored.
optional int32 time_range = 3 [default = 1];
// The maximum number of impressions allowed to be shown to a user for
// the provided frequency_cap_id within the time window described by
// time_unit and time_range.
optional int32 max_imp = 4;
}
この試験運用に関する追加情報は、提案の中に記載されています。参加する方には、
Issue Tracker を使ってフィードバックを提供することをお勧めします。