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

LINEヤフーでのプライバシーを 保護した機械学習事例紹介

LINEヤフーでのプライバシーを 保護した機械学習事例紹介

Avatar for Takahiro Yoshinaga

Takahiro Yoshinaga

January 09, 2026
Tweet

More Decks by Takahiro Yoshinaga

Other Decks in Technology

Transcript

  1. © LY Corporation 2 自己紹介 • Takahiro Yoshinaga, Ph.D. •

    専門: 物理学, データサイエンスのビジネス応用 • 経歴 • 2015: 東京大学大学院理学系研究科物理学専攻博士課程修了 • 専門は素粒子論 • 2015-2018: データ分析コンサルティング会社 • Web系・製造業向けのデータサイエンス・機械学習, PM, 技術営業 • 2018-現在: LINEヤフー株式会社 (旧LINE株式会社) • 分析 → 機械学習プロダクト開発 → アナリティクスエンジニアリング → 分析 • 現在は横断分析組織のマネジメントに従事
  2. © LY Corporation 目次 6 • 「LINE」アプリのスタンプ推薦機能 • 連合学習とは •

    差分プライバシーとは • プライバシー保護した連合学習
  3. © LY Corporation 10 1st stageで候補を生成し, 2nd stageでよりPersonalizationを実現 スタンプ推薦は2段階の処理で実施 推薦候補の生成

    (1st stage) 推薦候補のランキング (2nd stage) スタンプの パッケージ数 15,000,000 → 100/タグ 100 学習データ スタンプの入手履歴 (購入や無料ダウンロード等) トークルーム等での スタンプ閲覧・送信履歴 推論処理 サーバ クライアント端末 学習処理 サーバ 主にクライアント端末
  4. © LY Corporation 11 トークルームのデータは取り扱い注意な機微データ スタンプ推薦は2段階の処理で実施 推薦候補の生成 (1st stage) 推薦候補のランキング

    (2nd stage) スタンプの パッケージ数 15,000,000 → 100/タグ 100 学習データ スタンプの入手履歴 (購入や無料ダウンロード等) トークルーム等での スタンプ閲覧・送信履歴 推論処理 サーバ クライアント端末 学習処理 サーバ 主にクライアント端末
  5. © LY Corporation 12 機微データをサーバーへ送信しない形で機械学習を行いたい スタンプ推薦は2段階の処理で実施 推薦候補の生成 (1st stage) 推薦候補のランキング

    (2nd stage) スタンプの パッケージ数 15,000,000 → 100/タグ 100 学習データ スタンプの入手履歴 (購入や無料ダウンロード等) トークルーム等での スタンプ閲覧・送信履歴 推論処理 サーバ クライアント端末 学習処理 サーバ 主にクライアント端末
  6. © LY Corporation 13 機微データをサーバーへ送信しない形で機械学習を行いたい スタンプ推薦は2段階の処理で実施 推薦候補の生成 (1st stage) 推薦候補のランキング

    (2nd stage) スタンプの パッケージ数 15,000,000 → 100/タグ 100 学習データ スタンプの入手履歴 (購入や無料ダウンロード等) トークルーム等での スタンプ閲覧・送信履歴 推論処理 サーバ クライアント端末 学習処理 サーバ 主にクライアント端末 連合学習
  7. © LY Corporation 15 Federated Learning (連合学習) • サーバーと多数のクライアントが協調する分散機械学習 •

    クライアントはローカルで実施した学習の更新情報(ex. 勾配)だけをサーバーと共有 → 生データはクライアントに留まる → プライバシーに配慮(アクセス制御) Non-participants of FL Global Model
  8. © LY Corporation 17 (Cross-device) Federated Learning 連合学習の手順 1. サーバーがグローバルモデルをクライアント群に配布

    2. クライアントがそれぞれ固有のローカルデータでモデル を評価、勾配などの更新情報を計算 3. 更新情報をサーバーに送付 4. 収集した更新情報を集約してグローバルモデルを更新 特徴 • ローカルデータがクライアントに留まる • サーバーがデータを管理しなくてよい • クライアント固有のローカルモデルにより ユーザーの嗜好等のローカルな特徴を反映 • クライアントの計算資源による制約 • クライアントのdropoutがある(電源off等) Non-participants of FL Global Model 1. 2. 3. 4.
  9. © LY Corporation 18 (Cross-device) Federated Learning 連合学習の手順 1. サーバーがグローバルモデルをクライアント群に配布

    2. クライアントがそれぞれ固有のローカルデータでモデル を評価、勾配などの更新情報を計算 3. 更新情報をサーバーに送付 4. 収集した更新情報を集約してグローバルモデルを更新 特徴 • ローカルデータがクライアントに留まる • サーバーがデータを管理しなくてよい • クライアント固有のローカルモデルにより ユーザーの嗜好等のローカルな特徴を反映 • クライアントの計算資源による制約 • クライアントのdropoutがある(電源off等) Non-participants of FL Global Model 1. 2. 3. 4. これでデータのプライバシー保護は十分? →No
  10. © LY Corporation 20 FL + Differential Privacy(差分プライバシー) • 差分プライバシー:統計的な出力の差異の推論を理論的に制限する技術

    • FLのクライアントはランダム化の導入によって自身のデータプライバシーを保護できる Differential Privacy + + Federated Learning data minimization without centralized data collection and privacy by default Differential Privacy data anonymization preventing inferences against the server and the other clients
  11. © LY Corporation 22 ノイズ( )が加算されているとプライバシー保護されているように感じませんか? 差分プライバシー(DP)とは 統計的 な出力 ノイズ

    を加算 𝜖 0 ∞ .5 1 2 strong weak 4 8 … 差分プライバシーが提供するもの • ノイズの加算に対する 理論的なプライバシー保護の尺度 • 所定のプライバシー強度 𝜖 の 達成に必要なノイズの導出
  12. © LY Corporation 25 𝝐, 𝜹 -Differential Privacy メカニズム ℳ:

    𝒟 → 𝒮 が 𝜖, 𝛿 -DP を満たすとは、隣接データベース 𝐷, 𝐷′ ∈ 𝒟 および任意の出力の集合 𝑆 ⊆ 𝒮 に対して以下が成り立つときである Database 𝑫 Output 𝜖 0 ∞ .5 1 2 strong weak 4 8 … Pr ℳ 𝐷 ∈ 𝑆 ≤ exp 𝜖 Pr ℳ 𝐷′ ∈ 𝑆 + 𝛿 ℳ 𝑫′: adjacent of 𝑫 ℳ (𝜖 ≥ 0, 𝛿 ∈ 0,1 ) 入力が変化しても出力にはほとんど(exp 𝜖 程度しか)影響がない Dwork. Differential privacy. ICALP, 2006.
  13. © LY Corporation 26 DP=統計処理とノイズ加算による出力の識別困難性 • 出力の識別困難性:入力のわずかな差異に依らず出力がほとんど変わらない • ※ 一般的な「匿名化」とは異なるプライバシーの考え方

    • 所定の識別困難性を達成するようにメカニズムℳ(統計処理とノイズ加算)を設計 + ℳ + ℳ 出力値 出 力 確 率 ノイズ加算例 - (出力が) 二値: バイナリメカニズム - 連続値; ラプラス/ガウシアンメカニズム - カテゴリ値: 指数メカニズム
  14. © LY Corporation 27 2つの主要なプライバシーモデル (Central) Differential Privacy Local Differential

    Privacy 第三者への 統計値の公開 機微な 統計の収集 サーバーを 信用しない サーバーを 信用する 導入事例 • Chromeブラウザでの統計収集 (Google) • iOSデバイスでの統計収集 (Apple) • スタンプ推薦の連合学習 (LINEヤフー) 導入事例 • 2020年度米国国勢調査 (US Census) • Full URLs data set (Meta) • Next word prediction in Gboard (Google) • Audience Engagement API (LinkedIn) (ご参考)A list of real-world use of differential privacy. https://desfontain.es/privacy/real-world-differential-privacy.html
  15. © LY Corporation 28 WWDC2016において, AppleのSenior Vice Presidentクレイグ・フェデリギ(Craig Federighi)氏が発言 (一部で)

    注目されたきっかけ Differential privacy is a research topic in the area of statistics and data analytics that uses hashing, sub-sampling and noise injection to enable this kind of crowdsourced learning while keeping the information of each individual user completely private
  16. © LY Corporation 30 (再掲) FL + Differential Privacy •

    差分プライバシー:統計的な出力の差異の推論を理論的に制限する技術 • FLのクライアントはランダム化の導入によって自身のデータプライバシーを保護できる Differential Privacy + + Federated Learning data minimization without centralized data collection and privacy by default Differential Privacy data anonymization preventing inferences against the server and the other clients
  17. © LY Corporation 31 Fed. SGD (Non-DP Ver.) Fed.SGD :

    勾配降下法(SGD)を分散協調型機械学習(FL)に拡張したもの • クライアントは各自のデータを用いて勾配を計算し、サーバに勾配を送信. • サーバーは勾配ベクトル群の平均を算出し、グローバルモデルを更新. 𝐚𝐯𝐠. 𝑔1 = ∇𝑓(𝑥1 ; 𝜃) 𝑔𝑏 = ∇𝑓(𝑥𝑏 ; 𝜃) Random Sampling Per-client Gradient Global Model Update 𝑥1 , … , 𝑥𝑏 ∈ 𝐷 𝑔𝑖 = ∇𝑓(𝑥𝑖 ; 𝜃) Global Model 𝜃 勾配の平均を算出し, Global Modelを更新. サーバー クライアント
  18. © LY Corporation 32 Local DP-Fed. SGD LDPなFL = Private

    vector mean estimation under LDP • クライアントは各自のデータを用いて勾配を計算・抑制し、自身でランダム化 • サーバーはランダム化された勾配ベクトル群の平均を算出し、グローバルモデルを更新 𝐚𝐯𝐠. Gradient Clipping 𝑔1 = ∇𝑓(𝑥1 ; 𝜃) 𝝅𝑪 𝒈𝟏 𝑔𝑏 = ∇𝑓(𝑥𝑏 ; 𝜃) Random Sampling C Per-client Gradient Global Model Update 𝑥1 , … , 𝑥𝑏 ∈ 𝐷 𝑔𝑖 = ∇𝑓(𝑥𝑖 ; 𝜃) Global Model 𝜃 + Perturbation + サーバー クライアント ガウスノイズ ガウスノイズ
  19. © LY Corporation プライバシーを保護しつつ精度向上させる工夫 • 素朴なDP + 連合学習だと、精度が低下してしまう • DPの達成のために、クライアントで加えるノイズが大きくなる

    • ノイズの大きさとMLの精度はトレードオフ • 工夫1: Shuffling • プライバシー増幅ができる操作 (匿名化) を入れる前提でノイズは減らす • 参加するクライアントの数が多いとプライバシー増幅効果が高い • 工夫2: Trusted Execution Environment (TEE) • 管理者ですら覗けないHW環境でShufflingを実施 • サーバーとShufflerが結託して匿名性を壊すのを防止 33
  20. © LY Corporation 39 インターネット広告とも深い関係 • Googleは, プライバシー配慮のため3rd party cookieの廃止を予告(現在は撤回).

    代替としてPrivacy Sandboxを提案. • コア技術として差分プライバシーを活用 差分プライバシ x 広告配信 で調べたら, 右のような書籍も販売されている. 第4章 : 広告配信とプライバシー https://www.e-hon.ne.jp/bec/SA/Detail?refShinCode=0100000000000034740864&Action_id=121&Sza_id=C0
  21. © LY Corporation 40 Data Clean Roomsなどの統計分析結果への適用 • Data Clean

    Rooms : 企業などが保有する個人情報を含む機密データを、プライバシー保護に 配慮しながら、他の企業や組織と安全に共有・分析するための環境 • 分析結果の出力時に, DPを満たすことで, プライバシーを保証. • 業界大手のAWS, Google, Snowflakeが採用. • (GoogleはClean Roomに限らず, BigQuery自体にもDPを保証する機能を有する)
  22. © LY Corporation 41 Local DP-Fed. SGD LDPなFL = Private

    vector mean estimation under LDP • クライアントは各自のデータを用いて勾配を計算・抑制し、自身でランダム化 • サーバーはランダム化された勾配ベクトル群の平均を算出し、グローバルモデルを更新 𝐚𝐯𝐠. Gradient Clipping 𝑔1 = ∇𝑓(𝑥1 ; 𝜃) 𝝅𝑪 𝒈𝟏 𝑔𝑏 = ∇𝑓(𝑥𝑏 ; 𝜃) Random Sampling C Per-client Gradient Global Model Update 𝑥1 , … , 𝑥𝑏 ∈ 𝐷 𝑔𝑖 = ∇𝑓(𝑥𝑖 ; 𝜃) Global Model 𝜃 + Perturbation + プライバシー予算を考慮する必要がある。 LDPではクライアント毎に予算を管理。 → 送信回数に制限を与える必要がある サーバー クライアント ガウスノイズ ガウスノイズ
  23. © LY Corporation 42 クライアントで加算するノイズが大きい • Local DPを達成する連合学習は, ノイズの影響により, 性能が低下しがちである.

    • 次頁に示す改善方法の活用により, ノイズの量を減らしつつも同等のプライバシー強度を達成する. (𝜖, 𝛿)=(8,10−7) (𝜖, 𝛿)=(8,10−7) [Maeda+, DBSJ Journal 2024] https://dbsj.org/journal/dbsj_journal_j/dbsj_journal_vol_23_02/ Non-privateとLDPとのAccuracy, Lossの比較
  24. © LY Corporation 44 Privacy amplification via Shuffling • Shuffling:クライアントからの出力群をバッファして混ぜることで匿名化

    • プライバシー増幅効果は、参加するクライアントの数に依存(多いほど大きい) Shuffler privacy amp. via anonymization anonymous logs Privacy Amplification 𝜖0 = 8 (LDP), 𝛿 = 10−6 Privacy amp. is calculated using [Feldman+, 2020] https://arxiv.org/abs/2012.12803
  25. © LY Corporation 45 Shufflingはどのように実現する? • サーバとShufflerが結託すると, クライアントの匿名性が担保できない. → Shufflingが実現不可

    ➔ Shufflerとして, 信頼できる第三者 / 技術的な解決方法 を用意する必要がある. Shuffler privacy amp. via anonymization anonymous logs サーバ クライアント
  26. © LY Corporation 46 TEEを用いたShufflingの実現 • Trusted Execution Environment(TEE) =

    信頼可能な実行環境を提供するHW技術 • 管理者でさえ覗き見れないセキュアな環境での処理が可能(≒処理中の機密性を保証) • ShufflerとしてIntel SGX(Intel製のTEE)を活用. • IPアドレス等をマスキング・レコードをシャッフルし匿名化. → Shufflingを実現. Intel SGX on Server SGX 管理者 Masking Shuffle records anonymous logs FLサーバ処理