Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Federated Learning of Cohorts (FLoC) に関する調査結果

8fa31051503b09846584c49cd53d2f80?s=47 Asei Sugiyama
February 04, 2021

Federated Learning of Cohorts (FLoC) に関する調査結果

Federated Learning of Cohorts (FLoC) について Repro 社内で調査を行った際の資料です。Reference は次の通り。

### Blog Posts

Building a privacy-first future for web advertising https://www.blog.google/products/ads-commerce/2021-01-privacy-sandbox/
Chromium Blog: Privacy Sandbox in 2021: Testing a more private web https://blog.chromium.org/2021/01/privacy-sandbox-in-2021.html
Progress update on the Privacy Sandbox initiative - Chrome Developers https://developer.chrome.com/blog/privacy-sandbox-update-2021-jan/

### The Privacy Sandbox

The Privacy Sandbox - The Chromium Projects https://www.chromium.org/Home/chromium-privacy/privacy-sandbox
牧歌的 Cookie の終焉 | blog.jxck.io https://blog.jxck.io/entries/2020-02-25/end-of-idyllic-cookie.html
Privacy Sandboxで一体何が起こる?ポストcookieアドテク考察 | 株式会社プリンシプル https://www.principle-c.com/column/marketing/privacy-sandbox-post-cookie/#__2073162343.1612180902

### FLoC

WICG/floc: FLoC https://github.com/WICG/floc
ads-privacy/FLOC-Whitepaper-Google.pdf at master · google/ads-privacy https://github.com/google/ads-privacy/blob/master/proposals/FLoC/FLOC-Whitepaper-Google.pdf

### TURTLEDOVE, Conversion Measurement API

turtledove/FLEDGE.md at master · WICG/turtledove https://github.com/WICG/turtledove/blob/master/FLEDGE.md
WICG/conversion-measurement-api: Conversion Measurement API https://github.com/WICG/conversion-measurement-api

### SimHash

SimHash - Wikipedia https://en.wikipedia.org/wiki/SimHash

### Federated Learning

[1902.01046] Towards Federated Learning at Scale: System Design https://arxiv.org/abs/1902.01046)

8fa31051503b09846584c49cd53d2f80?s=128

Asei Sugiyama

February 04, 2021
Tweet

Transcript

  1. Federated Learning of Cohorts (FLoC) に関する調査結果 Asei Sugiyama

  2. ⽬的 興味関⼼ターゲティングに関する新技術である Federated Learning of Cohorts について調査した結果を記します

  3. 要旨 3rd party cookie の撤廃の流れに伴い、広告に必要な API をブラウザに 実装する Privacy Sandbox

    という取り組みがある FLoC は Privacy Sandbox で検討されているブラウザ内でクラスタリン グを⾏うための技術 FLoC はまだ PoC が⾏われ、ある程度の有効性が⾒込まれた ブラウザへの標準的な実装に向けて、課題もまだまだ残っている
  4. TOC 調査の背景 <- The Privacy Sandbox Federated Learning of Cohort

    Discussion
  5. 調査の背景 Google が新しい広告の仕組み「FLoC」を提唱しているという報道がな された ⼀⽅、記事を読んでもそれが何なのかいまいちはっきりしない

  6. Google、脱「クッキー」加速 4⽉から広告主と 試験運⽤: ⽇本経済新聞 具体的には、ブラウザーに⼈⼯知能(AI)を活⽤したソフトを組み込 み、利⽤者の閲覧履歴を分析する。この分析に基づいて好みや関⼼が 似た数千⼈の利⽤者を「コホート(群)」としてくくり、広告主が配 信先を選ぶのに使えるようにする。閲覧履歴を外部に持ち出すことを 防ぎ、さらに数千⼈をくくって個⼈を特定できなくしてプライバシー に配慮するという。

    “ “ from Google、脱「クッキー」加速 4⽉から広告主と試験運⽤: ⽇本経済新聞
  7. Googleが提案するサードパーティーCookieなしの新しい 広告の仕組み「FLoC」とは? - GIGAZINE FloCはFederated Learning of Cohorts(連合学習のコホート)の略語で あり、機械学習アルゴリズムを使⽤してウェブサイトを訪れたユーザ ーのデータを分析し、何千⼈ものユーザーからなるコホートを作成す

    るというもの。APIはChromeの拡張機能として使⽤され、収集された 個⼈データについては共有されず、ターゲティングは分析データであ るコホートを元に⾏われます。Googleがテストを⾏ったところ、 FLoCを使ったターゲティングは、Cookieベースの広告の最低95%の パフォーマンスを達成することができたとのこと。 “ “ from Googleが提案するサードパーティーCookieなしの新しい広告の仕組み「FLoC」とは? - GIGAZINE
  8. Repro で似たことができる? Repro の SDK でもできる気がする Repro の CV 予測とやっていることは近い気がした

    (近くなかった) どのような仕組みで実現しているのか明らかにするため調査を開始した
  9. TOC 調査の背景 The Privacy Sandbox <- Federated Learning of Cohort

    Discussion
  10. 3rd party cookie の撤廃に向けた流れ Safari, Firefox ではデフォルトでオフ Chrome でも2020年1⽉から2カ年計画で廃⽌する計画を発表 経緯は

    牧歌的 Cookie の終焉 | blog.jxck.io が詳しい
  11. 3rd party cookie の撤廃が広告に与える影響 3rd party cookie に頼ったユーザーの追跡ができないため⾊々困難 CVの集計やユーザーの⾏動分析 remarketing

    (リターゲッティング) 興味関⼼ターゲティング
  12. The Privacy Sandbox それぞれのユースケースに適した API を ブラウザに実装する取り組み CV の集計: Conversion

    Management API remarketing: TURTLEDOVE 興味関⼼ターゲティング: Federated Learning of Cohort (FLoC) from The Privacy Sandbox - The Chromium Projects
  13. TOC 調査の背景 The Privacy Sandbox Federated Learning of Cohort <-

    Discussion
  14. FLoC の解説の前に SimHash というアルゴリズム がコア Machine Learning は忘れて 良い from

    SimHash - Wikipedia
  15. Federated Learning of Cohort ads-privacy/FLOC-Whitepaper-Google.pdf から抜粋して以下を解説 FLoC の⽬標 Federated Learning

    SimHash ユーザーベクトルの⽣成 k匿名性 実験
  16. FLoC の⽬標 (1/2) 同じような興味を持っている と思われるユーザーを、⾏動 履歴に基づき、同⼀のコホー ト (ユーザーセグメント) にク ラスタリングすること

    右の図ではAよりもBの⽅が望 ましい from ads-privacy/FLOC-Whitepaper-Google.pdf at
  17. FLoC の⽬標 (1/2) ユーザー単位の⾏動分析ではなく、コホート単位の⾏動分析をプライバ シーを保ったまま可能にすることを⽬指す どのコホートがどういう特性を持っているかは気にしない 24 番⽬のコホートがどんな特性を持っているかはわからない 同じような特性を持ったユーザーは同⼀のコホートに属すことを⽬指す 24

    番⽬のコホートに属するユーザーがオムツを買ったならばそのコホ ートのユーザーはオムツを買う傾向にあるユーザー
  18. Federated Learning (1/2) クライアントで ⾏う機械学習 サーバーにデー タを集約しない クライアント間 で直接データを 共有しない

    image by Jeromemetronome from
  19. Federated Learning (2/2) from 1902.01046 Towards Federated Learning at Scale:

    System Design
  20. SimHash ユーザーの⾏動履歴を表すベクトル (ベクトルの作り⽅は後述) に対し て、ハッシュ値を割り振るアルゴリズム ハッシュ値で利⽤したいビットの数だけベクトルを⼀様乱数から⽣成 i 番⽬のビットに割り当てたベクトルと、ユーザーの⾏動履歴を表すベク トルが同じ向きを向いている (内積の値が0以上)

    のときはそのビットは 1、それ以外は0 ⾏動履歴が似ているユーザーはベクトルが同じような⽅向を向くため、 内積の結果も似た結果になる
  21. from ads-privacy/FLOC-Whitepaper-Google.pdf at master google/ads-privacy

  22. ユーザーベクト ルの⽣成 (1/3) ユーザーの⾏動履歴 を表すベクトルの⽣ 成には過去にユーザ ーが訪れたサイトの 履歴を⽤いる ⾃然⾔語処理で⾏わ れている

    One hot encoding を⽤いる from ⾒て試してわかる機械学習アルゴリズ
  23. ユーザーベクトルの⽣成 (2/3) 表の数値は各ユーザーが各列のサイトを訪れた回数 user_a のユーザーベクトルは [0, 1, 0, 2, 0]

    User ID foo.com baa.com baz.com foo.org baa.org user_a 0 1 0 2 0 user_b 1 0 0 0 0 user_c 0 0 0 1 1
  24. ユーザーベクトルの⽣成 (3/3) ユーザーが訪れたサイトのドメインを1つの単語とみなし、One-hot- encoding して Bag of words を作り、ユーザーベクトルとする (前スラ

    イドの処理のこと) 実験では tf-idf の利⽤や、サイトの属性 (アート/パフォーマンス/劇場 の ような⼊れ⼦構造) を Google Cloud の API を⽤いて取得することも⾏ った
  25. k匿名性 (1/2) SimHash で作成したハッシュ値をコホートの ID とするのはNG 1つのハッシュ値に割り当てられたユーザーが1⼈しかいない場合、それ はユーザーIDとみなせてしまうため

  26. k匿名性 (2/2) ⽣成されたハッシュ 値をサーバーに集約 し、辞書順にソート してk個のハッシュ値 をまとめて1つのコホ ートとする 1つのハッシュ値にユ ーザーは少なくとも1

    ⼈存在するため、k匿 名性が確保できる from ads-privacy/FLOC-Whitepaper-
  27. 実験 (1/2) それぞれのコホートについて、ユーザーがウェブサイトを閲覧した回数 をカテゴリごとに集計 コホートごとに興味のあるカテゴリtop10を作成 翌7⽇間で、そのカテゴリのサイトを実際に訪れるかどうかを評価

  28. 実験 (2/2) ランダムに興味 のあるカテゴリ top10 を作成す るのと⽐較 3.5倍程度良い再 現率 (recall)

    を得 られた from ads-privacy/FLOC-
  29. TOC 調査の背景 The Privacy Sandbox Federated Learning of Cohort Discussion

    <-
  30. Discussion ホワイトペーパーを読んだ際に疑問に思った点について記します。 FLoC のパフォーマンスについて 前処理が困難 性能向上のための⼿法がプライバシーと反しかねない

  31. FLoC のパフォーマンスについて 出展はBuilding a privacy-first future for web advertisingなものの、 95%の根拠がはっきりしない

    Googleがテストを⾏ったところ、FLoCを使ったターゲティングは、 Cookieベースの広告の最低95%のパフォーマンスを達成することがで きたとのこと。 “ “ from Googleが提案するサードパーティーCookieなしの新しい広告の仕組み「FLoC」とは? - GIGAZINE
  32. 前処理が困難 One hot encoding では「全サイト」のリストをユーザーと共有し、ユ ーザーは⾃分の訪れたサイトがその中のどのサイトに相当するか照合す る必要がある SimHash アルゴリズムが正常に動作するためには、すべてのブラウザで 「全サイト」のリストが同⼀に保たれる必要がある

    広告の対象になる全ブラウザを考えると、すべての Android 端末にも 「全サイト」のリストの配布と更新が必要 データ量を絞るため「全サイト」を「今⽉アクティブなサイト」に変更 すると、ブラウザに「今⽉アクティブなサイト」のリストを配布し、更 新する仕組みが必要
  33. 性能向上のための⼿法がプライバシーと反しかねない 性能向上のために⾏った⼿法では、ユーザーが訪れたすべてのサイトに ついて、Google CLoud の API にユーザーが訪問したサイトをすべて送 信し、カテゴリを取得する必要がある この⼿法をブラウザに実装した場合、ユーザーが訪問したサイトはすべ て

    Google に送信される サイトが属するカテゴリの判定をクライアントサイドで⾏うことも考え られるが、「全サイトとそのカテゴリのデータベース」を更新し、配布 し続ける必要がある
  34. まとめ 3rd party cookie の撤廃の流れに伴い、広告に必要な API をブラウザに 実装する Privacy Sandbox

    という取り組みがある FLoC は Privacy Sandbox で検討されているブラウザ内でクラスタリン グを⾏うための技術 FLoC はまだ PoC が⾏われ、ある程度の有効性が⾒込まれた ブラウザへの標準的な実装に向けて、課題もまだまだ残っている
  35. Reference Blog Posts Building a privacy-first future for web advertising

    Chromium Blog: Privacy Sandbox in 2021: Testing a more private web Progress update on the Privacy Sandbox initiative - Chrome Developers
  36. The Privacy Sandbox The Privacy Sandbox - The Chromium Projects

    牧歌的 Cookie の終焉 | blog.jxck.io Privacy Sandboxで⼀体何が起こる?ポストcookieアドテク考察 | 株式 会社プリンシプル FLoC WICG/floc: FLoC ads-privacy/FLOC-Whitepaper-Google.pdf at master google/ads- privacy
  37. TURTLEDOVE, Conversion Measurement API turtledove/FLEDGE.md at master WICG/turtledove WICG/conversion-measurement-api: Conversion

    Measurement API SimHash SimHash - Wikipedia Federated Learning 1902.01046 Towards Federated Learning at Scale: System Design