コホートのフェデレーション ラーニング(FLoC)は、インタレスト ベース広告選択のプライバシー保護メカニズムを提供します。ユーザーがウェブ上を移動すると、ブラウザは FLoC アルゴリズムを使用して「インタレスト コホート」を算出します。インタレスト コホートは、最近の閲覧履歴が類似する何千ものブラウザで同じになります。ユーザーのブラウザは、一度に 1 つのインタレスト コホートに関連付けられ、ユーザーのデバイスで定期的に(現時点では、この初回オリジン トライアルでは 7 日に 1 回)コホートが再計算されます。その際、個々の閲覧データはブラウザ ベンダーや第三者と共有されることはありません。
FLoC について詳しくは、コホートのフェデレーション ラーニングとはをご覧ください。
FLoC オリジン トライアルに参加する
FLoC のオリジン トライアルは Chrome 89 で開始され、サードパーティのオリジン トライアルとして利用できるようになりました。
ご参加いただくには、FLoC オリジン トライアル トークンにregisterしていただく必要があります。
ファーストパーティ コンテキスト
ご自身のサイトのインタレスト コホート データにアクセスするには、次のいずれかの方法でウェブページにオリジン トライアル トークンを追加します。
配信される各ページの <head> 内のメタタグ:
<meta http-equiv="origin-trial" content="TOKEN_GOES_HERE">
HTTP ヘッダーの場合:
Origin-Trial: TOKEN_GOES_HERE
これにより、自社サイト訪問者のコホートを観察するなど、FLoC をファーストパーティ環境で試すことができます。
サードパーティのコンテキスト
サードパーティのサイトのコードで FLoC API をテストするには、オリジン トライアル トークンをメタタグに挿入する必要があります。方法については、ウェブ デベロッパー向けオリジン トライアル ガイドをご覧ください。
フィードバックの送信
これを行うには、Chrome のオリジン トライアル サイトを使用します。このフィードバックは公開されず、Chrome チームの一部のユーザーのみご利用いただけます。トークンの有効期限が切れると、更新リンクが記載されたメールが届きます。トークンを更新する前に、フィードバックの送信を再度求められます。
ウェブ デベロッパーとして FLoC を試す
FLoC を試すには、次の 2 つの方法があります。
- ブラウザフラグを設定して、ブラウザで FLoC を有効にします。
- オリジン トライアルに含まれているブラウザを使用します。
ブラウザフラグを使用して FLoC を有効にする
FLoC API はとてもシンプルです。わずか 1 つのメソッドで、コホート id
と version
を提供するオブジェクトに解決される Promise を返します。
document.interestCohort()
表示されるコホートデータは次のようになります。
{
"id": "14159",
"version": "chrome.2.1"
}
FLoC API は Chrome 89 以降で利用できますが、ご利用のブラウザがオリジン トライアルに含まれていない場合、API を試すにはフラグを指定して Chrome を実行する必要があります。フラグを指定して Chromium を実行するでは、さまざまなオペレーティング システムに対してこれを行う方法について説明します。
次のフラグを使用して Chrome を起動します。テキストはすべてコピーしてください。
--enable-blink-features=InterestCohortAPI --enable-features="FederatedLearningOfCohorts:update_interval/10s/minimum_history_domain_size_required/1,FlocIdSortingLshBasedComputation,InterestCohortFeaturePolicy"
FlocPagesWithAdResourcesDefaultIncludedInFlocComputation
フラグを含めると、最初のオリジン トライアルから FLoC アルゴリズムを再作成できます(それ以外の場合のデフォルト値はfalse
です)。サードパーティ Cookie がブロックされていないことと、広告ブロッカーが実行されていないことを確認してください。
floc.glitch.me でデモを表示するか、DevTools コンソールから次のコードを実行します。
await document.interestCohort()
試験運用版フラグは何を意味していますか?
InterestCohortAPI
は FLoC を有効にします。update_interval/10s
は、10 秒ごとに再計算されるコホートを設定します。これはテストを有効にするためだけのものです。現時点では、コホートの再計算間隔はデフォルトで 7 日ごとに設定されています。minimum_history_domain_size_required/1
には、コホートを計算するために使用する必要があるドメインの最小数を指定します。この値はテスト専用で、通常は高くなります。FlocIdSortingLshBasedComputation
は、FLoC で使用されるクラスタリング アルゴリズムを設定します。InterestCohortFeaturePolicy
は、FLoC の Permissions-Policy ヘッダーの使用を有効にします。"FederatedLearningOfCohorts:finch_config_version/2"
などの値を使用して FLoC バージョンを設定することもできます。
FLoC フラグのコードは Chromium ソースコード検索で確認できます。
ブラウザがオリジン トライアルに含まれているかどうかを確認する
オリジン トライアル中、ごく一部のブラウザでは FLoC がデフォルトで有効になります。これらのブラウザでは、フラグを設定せずに FLoC API を利用できます。お使いのブラウザが試用版に含まれているかどうかを確認するには、以下の 2 つのデモのいずれかをお試しください。これらは、オリジン トライアル トークンを提供する方法が異なります。
- メタタグ: floc-ot-meta.glitch.me
- HTTP ヘッダー: floc-ot-header.glitch.me
パブリッシャー、広告主、アドテック プラットフォームとして FLoC を試す
FLoC API の説明は、ユースケースを提案するものであって、API の使用方法を定義するものではありません。FLoC を使用して関連性の高いコンテンツと広告を提供するための制約や要件は、サイトやサービスによって異なります。
コンテンツ レコメンデーション、広告、マーケティング サービスのテクノロジーを自社で管理している場合は、FLoC の分析情報を適用して、特定のコホート向けにコンテンツやマーケティング メッセージをカスタマイズできます。こうしたサービスの提供をサードパーティ企業に委託している場合は、そのサードパーティ企業がオリジン トライアルに参加して、自社のサイトや他のサイトを含むテストを実施したほうがよい場合があります。
たとえば、パブリッシャーが関連性の高いコンテンツを選択する方法を見つける場合、オリジン トライアル中に FLoC を試すプロセスは次のようになります。
- サイトの利用状況とコホート ID に関するデータを収集します。
- データの相関分析を行う。データを使用して関連するコンテンツを選択する。
- FLoC のアプローチを他のメカニズムと比較する。期待どおりに機能しましたか?
- FLoC の使用を調整して、コンテンツを選択します。
- オリジン トライアルのフィードバックを送信します。
- その繰り返し。
ウェブサイトで FLoC の計算をオプトアウトするにはどうすればよいですか?
サイトは、コホート計算のためにユーザーのサイトリストに含めたくないことを宣言できます。これは、新しい interest-cohort
権限ポリシーで可能になっています。このポリシーのデフォルトは allow
です。
interest-cohort
権限が許可されていないフレームの場合、document.interestCohort()
を呼び出したときに返される Promise は拒否されます。メインフレームに interest-cohort
権限がない場合、ページアクセスはインタレスト コホートの計算に含まれません。
たとえば、HTTP レスポンス ヘッダーを送信することで、すべての FLoC コホート計算をオプトアウトできます。
Permissions-Policy: interest-cohort=()
FLoC のオリジン トライアル中、Chrome で広告関連のリソースの読み込みが検出されるか、document.interestCohort()
が使用されていると、オプトアウトしていないウェブサイトのページが FLoC の計算に含められます。イントラネット ページなど、プライベート IP アドレスから提供されるページは FLoC の計算には含まれません。
広告または広告関連のリソースがあるページが、最初のオリジン トライアルで FLoC のコホート計算に含まれるのはなぜですか?
オリジン トライアルにより、デベロッパーは新しい API プロポーザルがリリースされた場合ifどうなるかを確認できます。FLoC の場合、広く導入される前に API を現実的に評価できるようにするにはどうすればよいでしょうか。小規模なオリジン トライアル テストでは、広告を使用するすべてのページで FLoC が使用されることを前提としています。これは完全に現実的である可能性は低いですが、最も現実味のあるヒューリスティックです。
補足説明
- コホートのフェデレーション ラーニング(FLoC)とは何ですか?
- Chrome のオリジン トライアル スタートガイド: 基本的な概要。
- ウェブ デベロッパー向けオリジン トライアル ガイド: 技術的な詳細とよくある質問など。
- オリジン トライアルの説明: オリジン トライアルを提供する理由と設計(幅広いよくある質問を含む)。
- オリジン トライアルの実施: Chrome と Chromium の観点から見た技術的な詳細。
- Chromium の新機能をリリースするプロセス: 新機能がブラウザの実装にどのように反映されるか。
写真撮影: Rhys Kentish(出典: Unsplash)