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

差分プライバシーによるクエリ処理の基本・実践・最前線

 差分プライバシーによるクエリ処理の基本・実践・最前線

高橋 翼 (LINE株式会社) 長谷川 聡 (LINE株式会社)

2023年3月8日 DEIM2023(第15回データ工学と情報マネジメントに関するフォーラム・第21回日本データベース学会年次大会)でのチュートリアル資料です
https://event.dbsj.org/deim2023/post/tutorial.html

<内容>
差分プライバシーは、データベースから統計的な出力を開示する際のプライバシー基準であり、米国国政調査やビッグテックを中心に実用化が進められている。本チュートリアルでは、データベースへのクエリ処理を、差分プライバシーによって保護しながら実現する方法について紹介する。まず、差分プライバシーの基本事項を平易に導入することから始め、基本的な差分プライバシーのメカニズムであるラプラスメカニズムの概念と実装方法について紹介する。続いて、複数回のクエリ応答を実現するためのプライバシー合成定理について述べる。さらに、論文等では語られることが少ない、クエリ応答システムを実現する上で考慮すべき観点についても紹介する。最後に、差分プライバシー下でのクエリ応答に関連する最新の研究の動向について紹介する。

LINE Developers

March 08, 2023
Tweet

More Decks by LINE Developers

Other Decks in Technology

Transcript

  1. チュートリアルT6︓ 差分プライバシーによるクエリ処理の基本・実践・最前線 1. 基本編︓差分プライバシー(DP)の基礎(25min.) 2. 実践編︓DPクエリ応答の実⽤化に向けて(40min.) 3. 最前線︓DPクエリ応答の課題と研究事例(15min.) Takahashi Hasegawa

    Takahashi Keyword︓データ結合 統計値公開 仮説検定 ラプラスノイズ Personal Data is the new oil / 差分プライバシーとは︖ Keyword︓プライバシー合成 索引 最⼤クリーク User Contribution プライバシー予算管理 / 複雑なテーブルへの対応 無制限のクエリ応答 / JOINの実現 / 秘密計算+DP Keyword︓データ合成 ビュー クエリ近似 TEE 準同型暗号
  2. LINE’s R&D on Privacy Techs 3 Publications on Three Major

    Data Base Conferences https://linecorp.com/ja/pr/news/ja/2022/4269
  3. Federated Learning w/ Differential Privacy • Released on late September

    2022 • Learning sticker recommendation feature is now on your app 4 https://www.youtube.com/watch?v=kTBshg1O7b0 https://tech-verse.me/ja/sessions/124
  4. Personal Data is the new oil “Personal data is the

    new oil of the Internet and the new currency of the digital world”, 8 Meglena Kuneva, European Consumer Commissioner, March 2009 https://jp.weforum.org/reports/personal-data-emergence- new-asset-class
  5. Personal Data is the new oil • オイルを使うと、排気ガスが漏れる 9 •

    排気ガス規制 • 排気ガスの少ない ⾃動⾞の推進
  6. Combination of stats may leak our privacy 11 #Ad view

    #Purchase 80 40 #Ad view #Purchase 42 22 #Ad view #Purchase 41 21 Subscribed Service Purchase or not #Purchase Sum A or B (A∪B) yes 40 80 no 40 A yes 22 42 no 20 B yes 21 41 no 20 A and B (A∩B) yes 3 3 no 0 All service subscribers Service A’s subscribers Service B’s subscribers Very small number. High risk to be identified. Sensitive Data 𝑫 Green: inferred value 統計化されておりプライバシーは 保護されているように⾒える
  7. A Solution︓Differential Privacy [1] 12 #Ad view #Purchase 80 à

    82 40 à 39 #Ad view #Purchase 42 à 45 22 à 24 #Ad view #Purchase 41 à 43 21 à 21 Subscribed Service Purchase or not #Purchase Sum A or B (A∪B) yes 39 82 no 43 A yes 24 45 no 21 B yes 21 43 no 22 A and B (A∩B) yes 6 6 no 0 All service subscribers Service A’s subscribers Service B’s subscribers Sensitive Data 𝑫 Green: inferred value Differential Privacy を保証するノイズ [1] C. Dwork. Differential privacy. ICALP, 2006.
  8. Differential Privacyとは︖(詳細は後述) • データ活⽤に伴う累積的なプライバシー消費の定量的な管理の枠組み 𝜖! 𝜖! 𝜖" 𝜖! 𝜖" 𝜖#

    … #Queries 𝜖! 𝜖" 𝜖# … 𝜖#$! … Total Privacy Budget Sensitive Database 𝑫 satisfying 𝝐𝟏 -DP satisfying 𝝐𝒌 -DP … Query 𝒒𝟏 Privacy Parameter 𝝐𝟏 Query 𝒒𝒌 Privacy Parameter 𝝐𝒌 15
  9. Differential Privacy is a Privacy Meter 16 𝑞 𝑞(𝐷) 𝐷

    あるデータに対するプライバシーの消費 (漏洩)を 定量的に測定する尺度 / 制限するフレームワーク 𝜖
  10. Differential Privacy ~匿名化との対⽐~ 17 匿名化 (k-匿名化[2]等) Differential Privacy プライバシーパラメータ の決定⽅法

    根拠なし 統計的根拠から決定 プライバシー消費の管理 不可 可能 外部知識との突合 匿名化が破綻 頑健 (破綻しない) 複数回のリリース 匿名化が破綻 プライバシー消費を積算 [2] L. Sweeney. k-anonymity: A model for protecting privacy. International Journal of Uncertainty, Fuzziness and Knowledge-Based Systems, 10(05):557–570, 2002. GAFAMやトップ⼤学を中⼼に 研究開発が⾮常に活発
  11. ユースケース • クエリ応答 ß このチュートリアルのフォーカス • 統計値の公開 • 複数データを突合したクロス集計の公開 •

    機械学習モデルのリリース / MLaaS • 合成データの⽣成 • 統計値の収集 / 分散学習・連合学習 18
  12. Disclosure Avoidance in US Census 2020 ⽶国の国政調査 (2020年) の結果は 差分プライバシーで保護

    https://www.census.gov/about/policies/privacy/statistical_safeguards/disclosure-avoidance-2020-census.html
  13. 𝝐-差分プライバシー [1] メカニズム ℳ: 𝒟 → 𝒮 が 𝝐-差分プライバシー を満たすとは

    任意の隣接データベースの組 𝐷, 𝐷" ∈ 𝒟 および 任意の出⼒の集合 𝑆 ⊆ 𝒮 に対して以下が成り⽴つときである 23 Pr ℳ 𝐷 ∈ 𝑆 ≤ exp 𝜖 Pr ℳ 𝐷! ∈ 𝑆 exp 𝜖 ≃ 1 + 𝜖 𝜖が⼩さいときには概ね ⼊⼒が変化しても出⼒の傾向はほとんど変わらない(最⼤でも 𝐞𝐱𝐩(𝝐)) 𝝐︓プライバシー強度 0 ∞ 0.5 1 2 強 弱 実⽤的な範囲 4 8 … 関数や アルゴ リズム等 【重要】 後ほど 解説︕ [1] C. Dwork. Differential privacy. ICALP, 2006.
  14. 隣接データベース 25 セントラルモデルにおける隣接性 NAME Cancer Alice Yes Bob No Cynthia

    No David Yes … 𝑫の隣接データベース(の⼀部) NAME Cancer Alice Yes Bob No Cynthia No David Yes Eve Yes NAME Cancer Alice Yes Cynthia No David Yes NAME Cancer Alice Yes Bob No David Yes NAME Cancer Alice Yes Bob No Cynthia No David Yes Franc No 𝑫 隣接データベース︓任意の1要素だけが異なるデータベースの組 1要素の追加と削除のみを考える 𝑑# 𝐷, 𝐷" = 1 𝑑# ⋅,⋅ ︓ハミング距離
  15. 隣接データベース間で識別不能性を保証 26 メカニズム ℳ: 𝒟 → 𝒮 が 𝝐-差分プライバシー を満たすとは

    任意の隣接データベースの組 𝐷, 𝐷" ∈ 𝒟 および 任意の出⼒の集合 𝑆 ⊆ 𝒮 に対して以下が成り⽴つときである Pr ℳ 𝐷 ∈ 𝑆 ≤ exp 𝜖 Pr ℳ 𝐷! ∈ 𝑆 NAME Cancer Alice Yes Bob No Cynthia No David Yes NAME Cancer Alice Yes Bob No Cynthia No David Yes Eve Yes NAME Cancer Alice Yes Cynthia No David Yes ℳ ℳ ℳ 𝐞𝐱𝐩(𝝐)程度しか 区別ができない è ⼊⼒の差異も区別が難しい
  16. (参考)DPのバリエーション 27 𝝐, 𝜹 -差分プライバシー Pr ℳ 𝐷 ∈ 𝑆

    ≤ exp 𝜖 Pr ℳ 𝐷! ∈ 𝑆 + 𝛿 Bounded 差分プライバシー [4] NAME Cancer Alice Yes Bob No Cynthia No David Yes 𝑫の隣接データベース 𝑫 NAME Cancer Alice Yes Bob Yes Cynthia No David Yes NAME Cancer Alice No Bob No Cynthia No David Yes NAME Cancer Alice Yes Bob No Cynthia Yes David Yes NAME Cancer Alice Yes Bob No Cynthia No David No 1タプルの値の変更だけ考える [4] D. Kifer and A. Machanavajjhala. No free lunch in data privacy. SIGMOD2011
  17. (参考)隣接データベースいろいろ 28 セントラルモデル (⼊⼒の要素数が1以上) ローカルモデル (⼊⼒の要素数が1) ⼊⼒の隣接性︓追加 / 削除 (編集距離1)

    Central DP (Unbounded DP) Removal Local DP ⼊⼒の隣接性︓付け替え (編集距離2) Bounded DP Local DP Central DPとLocal DPは想定するモデルに違いがある
  18. ノイズの設計とセンシティビティ センシティビティΔ! • 関数 𝑓 の出⼒の最⼤の変化量(想定する隣接性における) 29 Δ! = sup

    𝑓 𝐷 − 𝑓 𝐷" # Examples Δ$%&'()*+, = 1 Δ-(./' = 1 Δ,0+/ = 1 𝑛 ※ CDPの場合 乱暴なノイズの加算は差分プライバシーを保証しません ノイズで 覆い隠す 度合い ※ 隣接データベースの想定によって センシティビティは変わる
  19. ラプラスメカニズムが𝝐-DPであることの証明 31 Pr[𝑀 𝐷 = 𝑦] Pr[𝑀 𝐷" = 𝑦]

    = Π#𝑃$%& 𝑦# − 𝑓 𝐷 # Π#𝑃$%& 𝑦# − 𝑓 𝐷" # = Π# exp 𝑏'( 𝑦# − 𝑓 𝐷 # − 𝑦# − 𝑓 𝐷" # ≤ Π# exp 𝑏'( 𝑓 𝐷 # − 𝑓 𝐷" # = exp 𝑏'( E # 𝑓 𝐷 # − 𝑓 𝐷" # = exp 𝑏'( 𝑓 𝐷 − 𝑓 𝐷" ( = exp 𝜖 Δ! 𝑓 𝐷 − 𝑓 𝐷" ( ≤ exp 𝜖 𝑃$%& 𝑥 = 1 2𝑏 exp(−𝑏'(|𝑥|) 𝑏 = Δ! 𝜖 Δ! ≥ 𝑓 𝐷 − 𝑓 𝐷" ( 𝑥( − 𝑥) ≤ |𝑥( − 𝑥) |
  20. プライバシー強度 ε の解釈 仮説検定による経験的プライバシーの測定 [5] 32 ℳ 𝑦 以下のような仮説検定を考える 𝐻1

    :出⼒𝑦は⼊⼒𝐷から作られた 𝐻2 :出⼒𝑦は⼊⼒𝐷3から作られた 棄却領域を𝑠 ∈ 𝑆, ̅ 𝑠 ∈ ̅ 𝑆とする Pr ℳ 𝐷 ∈ 𝑠 Pr ℳ 𝐷3 ∈ ̅ 𝑠 真の⼊⼒は𝐷, 予想は𝐷′ (False Positive Rate) 真の⼊⼒は𝐷3, 予想は𝐷 (False Negative Rate) 𝐷 or 𝐷" ? 𝐷 or 𝐷" 𝐷 𝐷′ [5] Peter Kairouz, et al. The composition theorem for differential privacy. ICML2015
  21. プライバシー強度 ε の解釈 仮説検定による経験的プライバシーの測定 [5] 33 ℳ 𝑦 𝐷 or

    𝐷" ? 𝐷 or 𝐷" 𝐷 𝐷′ Pr ℳ 𝐷 ∈ 𝑠 + exp 𝜖 Pr ℳ 𝐷3 ∈ ̅ 𝑠 ≥ 1 exp 𝜖 Pr ℳ 𝐷 ∈ 𝑠 + Pr ℳ 𝐷3 ∈ ̅ 𝑠 ≥ 1 𝜖*+, = max log 1 − FP FN , log 1 − FN FP メカニズムℳが𝜖-DPを満たすとき左の関係が成⽴ à 右の計算式が導出 経験的差分プライバシー
  22. プライバシー強度 ε の解釈 仮説検定による経験的プライバシーの測定 [5] • 注意 • 経験的プライバシーの計測値は ある前提における識別不能性に

    過ぎない • DPの理論保証 (upper bound) と 乖離がある可能性を理解してお く必要あり 34 𝜖*+, = max log 1 − FP FN , log 1 − FN FP Benign à à à Worst case 経験的差分プライバシー
  23. プライバシー強度 ε の解釈 • 証拠能⼒ (Evidence) としての強さに関する考察 (via Bayes Factor)

    [6] 35 [6] N. Hoshino. A firm foundation for statistical disclosure control. Japanese Journal of Statistics and Data Science, 3(2):721–746, 2020. (出典) [4]のTable 3 (出典) [4]のTable 4
  24. パート1のまとめ • Personal data is the new oil • 差分プライバシー︓プライバシーの⽔準を統計的に表現した尺度

    • 所定のノイズの加算によってDPを保証できる • データ活⽤に伴う累積的なプライバシー消費の定量的な管理の枠組み • 適正利⽤のために考えるべき4つのポイント • 隣接データベースの定義 • 関数のセンシティビティ • プライバシーパラメータ𝝐の解釈・設定 • プライバシー消費の管理 (予算管理) 36
  25. チュートリアルT6︓ 差分プライバシーによるクエリ処理の基本・実践・最前線 1. 基本編︓差分プライバシー(DP)の基礎(25min.) 2. 実践編︓DPクエリ応答の実⽤化に向けて(40min.) 3. 最前線︓DPクエリ応答の課題と研究事例(15min.) Takahashi Hasegawa

    Takahashi Keyword︓データ結合 統計値公開 仮説検定 ラプラスノイズ Personal Data is the new oil / 差分プライバシーとは︖ Keyword︓プライバシー合成 索引 最⼤クリーク User Contribution プライバシー予算管理 / 複雑なテーブルへの対応 無制限のクエリ応答 / JOINの実現 / 秘密計算+DP Keyword︓データ合成 ビュー クエリ近似 TEE 準同型暗号
  26. (再掲)ノイズの設計とセンシティビティ センシティビティΔ! • 関数 𝑓 の出⼒の最⼤の変化量(想定する隣接性における) 40 Δ! = sup

    𝑓 𝐷 − 𝑓 𝐷" # Examples Δ$%&'()*+, = 1 Δ-(./' = 1 Δ,0+/ = 1 𝑛 ラプラスメカニズム • 平均0、パラメータb = Δ! /𝜖 のラプラス分布からノイズをサンプリング ℳ 𝐷 = 𝑓 𝐷 + Lap 0, Δ! 𝜖 乱暴なノイズの加算は差分プライバシーを保証しません ノイズで 覆い隠す 度合い
  27. ラプラスメカニズムの挙動 42 𝜖 = 1, Δ4 = 1 𝜖 =

    1, Δ4 = 1 𝜖 = 1, Δ4 = 1 Due to generating random noise, the outputs are probabilistic. 全く同じ条件でも確率的な挙動をする
  28. ラプラスメカニズムの挙動 43 𝜖 = 0.1 𝜖 = 0.5 𝜖 =

    2 𝜖 = 0.05 𝜖 = 10 Δ4 = 1 プライバシー強度 𝜖 を変動させた場合
  29. 44 ラプラスメカニズムの挙動 𝜖 = 1, Δ4 = 1 𝜖 =

    1, Δ4 = 4 𝜖 = 1, Δ4 = 0.1 Δ$ を変動させた場合 ※ 本来、ヒストグラムのセンシティビティは1。この⽐較はシミュレーション センシティビティが⼩さいアルゴリズムを考えることが有⽤性の観点で重要
  30. 直列合成定理 50 ℳ ℳ ℳ 𝜖$ 𝜖% 𝜖& メカニズムℳを左記のように3回実施。 直列合成定理によるプライバシー消費の合計は

    𝜖'(')* = 𝜖$ + 𝜖% + 𝜖& メカニズムでデータを評価するたびに 「プライバシーを消費する」と考える • 直列合成定理は最もナイーブでルーズな プライバシー消費の合算⽅法である • Renyi-DPやAdvanced Compositionなど のタイトな合成⼿法が提案されている 差分プライバシーを適正に利⽤するためのキーポイント 合計のプライバシー消費 𝝐𝐭𝐨𝐭𝐚𝐥 が事前に設定した プライバシー予算 𝝐 を超えないように管理が必要
  31. 並列合成定理 メカニズムℳが適⽤される レコードの集合がそれぞれ 互いに素である場合 51 ℳ ℳ ℳ 𝜖$ 𝜖%

    𝜖& メカニズムℳが適⽤されるレコードの集合が 互いに素であるとき, 𝐦𝐚𝐱𝒊 𝝐𝒊 -DPを満たす 𝜖'(')* = max( 𝜖$ , 𝜖% , 𝜖& ) プライバシー消費を抑えるためのキーポイント
  32. 直列合成定理と並列合成定理の組み合わせ • Q2とQ3はレコード集合に重複あり è 直列合成定理 • Q1と{Q2,Q3}は互いに素 è 並列合成定理 52

    ℳ ℳ ℳ 𝜖$ 𝜖% 𝜖& 𝜖'(')* = max( 𝜖$ , 𝜖% + 𝜖& ) Q3 Q2 Q1 • 直列合成定理と並列合成定理は組み合わせて利⽤可能
  33. クエリ応答における合成定理の使⽤例 • 例1) 次のクエリは各々𝜖 -DPを満たすとする. TotalのPrivacy消費は? • Q1:SELECT COUNT(age) FROM

    T WHERE 10 <= age <= 20 AND 100 <= height <= 120 • Q2:SELECT COUNT(age) FROM T WHERE 5 <= age <= 25 AND 80 <= height <= 105 • Q3:SELECT COUNT(age) FROM T WHERE 30 <= age <= 40 AND 150 <= height <= 180 54
  34. クエリ応答における合成定理の使⽤例 • 例1) 次のクエリは各々𝜖 -DPを満たすとする. TotalのPrivacy消費は? • Q1:SELECT COUNT(age) FROM

    T WHERE 10 <= age <= 20 AND 100 <= height <= 120 • Q2:SELECT COUNT(age) FROM T WHERE 5 <= age <= 25 AND 80 <= height <= 105 • Q3:SELECT COUNT(age) FROM T WHERE 30 <= age <= 40 AND 150 <= height <= 180 55 age height Q3 Q1 Q2 Q1とQ2は重複, Q3はいずれも重なりなし
  35. クエリ応答における合成定理の使⽤例 • 例1) 次のクエリは各々𝜖 -DPを満たすとする. TotalのPrivacy消費は? • Q1:SELECT COUNT(age) FROM

    T WHERE 10 <= age <= 20 AND 100 <= height <= 120 • Q2:SELECT COUNT(age) FROM T WHERE 5 <= age <= 25 AND 80 <= height <= 105 • Q3:SELECT COUNT(age) FROM T WHERE 30 <= age <= 40 AND 150 <= height <= 180 56 age height Q3 Q1 Q2 𝜖'(')* = max ε + ε, ε = 2ε Q1とQ2は重複, Q3はいずれも重なりなし
  36. クエリ応答における合成定理の使⽤例 • 例2) 次のクエリは各々𝜖 -DPを満たすとする. TotalのPrivacy消費は? • Q1:SELECT COUNT(age) FROM

    T WHERE 10 <= age <= 20 AND 100 <= height <= 120 • Q2:SELECT COUNT(age) FROM T WHERE 5 <= age <= 25 AND 80 <= height <= 105 • Q3:SELECT COUNT(age) FROM T WHERE 30 <= age <= 40 AND 150 <= height <= 180 • Q4:SELECT COUNT(age) FROM T WHERE 17 <= age <= 32 AND 90 <= height <= 160 57 age height Q3 Q1 Q2 Q4 Q1とQ2とQ4は重複, Q3とQ4は重複
  37. クエリ応答における合成定理の使⽤例 • 例2) 次のクエリは各々𝜖 -DPを満たすとする. TotalのPrivacy消費は? • Q1:SELECT COUNT(age) FROM

    T WHERE 10 <= age <= 20 AND 100 <= height <= 120 • Q2:SELECT COUNT(age) FROM T WHERE 5 <= age <= 25 AND 80 <= height <= 105 • Q3:SELECT COUNT(age) FROM T WHERE 30 <= age <= 40 AND 150 <= height <= 180 • Q4:SELECT COUNT(age) FROM T WHERE 17 <= age <= 32 AND 90 <= height <= 160 58 age height Q3 Q1 Q2 Q4 Q1とQ2とQ4は重複, Q3とQ4は重複 𝜖'(')* = max ε + ε + ε, ε + ε = 3ε
  38. クエリ応答におけるプライバシー消費の 体系的な計算⽅法 • 最⼤のプライバシー消費は, クエリの最⼤重複数で計算可能 • ※ 各クエリで消費する𝜖が同⼀の場合 • クエリの最⼤重複数

    ≦ クエリグラフの最⼤クリークサイズ [7] 59 Q3 Q1 Q2 Q4 Q2 Q1 Q3 Q4 クエリグラフ[8] [7] J.Smith et. al., Making the Most of Parallel Composition in Differential Privacy., PETS2022 [8] A.Inan et. al., Sensitivity analysis for non-interactive differential privacy: bounds and efficient algorithms., IEEE TDSC2017 ノード : クエリ エッジ : クエリ間で重複あり / なし
  39. 最⼤クリークサイズの計算問題はNP-Hard • クリークとは? • あらゆる2つの頂点をつなぐ辺が存在する頂点集合 • 最⼤クリークとは? • クリークの中で最も頂点数が多いもの •

    最⼤クリークサイズ計算問題を解くメリット • NP-Hardだが既存の⾼速なソルバを利⽤できる 60 Q2 Q1 Q3 Q4 : 最⼤クリーク
  40. 関連する話題 • 近似計算による⾼速化 • 最⼤クリークサイズ ≦ グラフの彩⾊数 の関係を利⽤し, グラフの彩⾊数の近 似計算を⽤いるもの[7]

    • 各クエリで消費する𝜖が任意の場合 • 最⼤重みクリーク列挙問題として定式化[7] 61 Q2 𝜖" Q1 𝜖! Q3 𝜖% Q4 𝜖& [7] J.Smith et. al., Making the Most of Parallel Composition in Differential Privacy., PETS2022
  41. DPは1レコード単位の保護の提供が基本 • 隣接DBの定義より, DPは1レコード単位の保護を提供 • 隣接DB : 任意の1レコードが追加/削除されたDB • 1⼈あたり複数レコードを持つ場合,

    通常のDPは不⼗分な可能性あり • 1ユーザ単位での保護を提供したい 67 NAME Item Rating Alice apple 5 Alice banana 4 Alice cherry 5 Bob apple 3 Cynthia banana 5 Cynthia cherry 4 D (1⼈あたり複数レコードを持つDB) NAME Item Rating Alice apple 5 Alice banana 4 Alice cherry 5 Bob apple 3 Cynthia banana 5 Cynthia cherry 4 NAME Item Rating Alice apple 5 Alice banana 4 Alice cherry 5 Bob apple 3 Cynthia banana 5 Cynthia cherry 4 Dの隣接データベース(の⼀部) …
  42. 1⼈あたり複数レコードを持つDBへの対応 Naïve approach : Group Privacyの適⽤ • Group Privacy [1]

    • cレコード単位での保護を提供する. exp 𝜖 à exp(𝜖𝑐)でDPを再定義 • 𝝐, 𝒄-Group Privacy ó 𝝐/𝒄-Differential Privacy • ≒ cレコード単位の保護のために, c倍強いDPによる保護. 68 Pr ℳ 𝑋 ∈ 𝑆 ≤ exp 𝜖𝑐 Pr ℳ 𝑋" ∈ 𝑆 NAME Item Rating Alice apple 5 Alice banana 4 Alice cherry 5 Bob apple 3 Cynthia banana 5 Cynthia cherry 4 NAME Item Rating Alice apple 5 Alice banana 4 Alice cherry 5 Bob apple 3 Cynthia banana 5 Cynthia cherry 4 NAME Item Rating Alice apple 5 Alice banana 4 Alice cherry 5 Bob apple 3 Cynthia banana 5 Cynthia cherry 4 … D (1⼈あたり複数レコードを持つDB) Dの隣接データベース(の⼀部), c = 3 [1] Cynthia Dwork., Differential Privacy., ICALP2006
  43. (別視点) 1ユーザ単位の隣接性における カウントのセンシティビティを考えてみる • [仮定] 1ユーザの持つレコード数を最⼤cとする è カウントクエリのセンシティビティΔHIJKL = 𝑐

    • ラプラスメカニズムの場合 69 𝑐 𝑐 Count(D) Count(D’) Count(D’’) ℳ 𝐷 = 𝑓 𝐷 + Lap 0, 𝑐 𝜖 𝝐/𝒄-Differential Privacy (User-Level DP)
  44. 1⼈あたり複数レコードを持つDBへの対応 Bounding user contribution approach[9] • User contributionを閾値tでboundし, User-Level DP※を適⽤

    • User contribution ≒ クエリ結果に対する1ユーザあたりの寄与度 ※ ≒ ユーザ単位の隣接性で, センシティビティを考えるDP • User contributionはクエリ結果の寄与の仕⽅により2種類 • パーティション = クエリ結果の⼀部 71 Alice Alice Alice Alice Bob Bob Alice Alice David Bob Bob David David Per-partition contribution cross-partition contribution あるパーティションに複数寄与 複数のパーティションにわたって寄与 [9] R.Wilson et. al., Differentially Private SQL with Bounded User Contribution., PETS2020
  45. Bounding per-partition contributionの例 • Rating=5と答えたレビューの総数を知りたい • SELECT COUNT(*) FROM tbl

    WHERE Rating = 5 72 NAME Item Rating Alice apple 5 Alice banana 4 Alice cherry 5 Alice orange 5 Bob apple 5 Bob banana 5 Cynthia banana 5 Cynthia cherry 5 David apple 5 David orange 4 Table: tbl 3 2 2 2 2 2 1 1 0 2 4 6 8 10 raw bounding per-partion cont. (t=2) クエリ結果(各ユーザの貢献度の可視化) Alice Bob Cynthia David ※ Aliceは閾値t=2により, 貢献度 3 à 2 となっている.
  46. Bounding user contribution approach vs Naïve approach • DP満たした形で, Rating=5と答えたレビューの総数を知る

    • SELECT COUNT(*) FROM tbl WHERE Rating = 5 73 ※ cやtは, 公開情報以外を使った(データ依存での)設定は, ⼀般的にNG 8 7.47 9.22 0 2 4 6 8 10 non-private ε-DP with bounding user cont. (t=2, ε=2.0) ε-DP with naïve approach(c=4,ε=2.0)
  47. Bounding cross-partition contributionの例 • Itemごとのレビューの数を知りたい • SELECT Item, COUNT(*) FROM

    tbl GROUP BY Item 74 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 2 3 raw bound. cont. (t=2) raw bound. cont. (t=2) raw bound. cont. (t=2) raw bound. cont. (t=2) apple banana cherry orange クエリ結果(各ユーザごとの貢献度の可視化) Alice Bob Cynthia David ※ Aliceは閾値t=2により, 貢献度 4 à 2 となっている.
  48. Bounding user contribution approach vs Naïve approach • DPを満たした形で, Itemごとのレビューの数を知る

    • SELECT Item, COUNT(*) FROM tbl GROUP BY Item 75 3 3 2 2 2.39 2.62 1.83 2.31 3.83 4.74 3.74 1.03 0 1 2 3 4 5 apple banana cherry orange non-private ε-DP with bounding user cont. (t=2, ε=2.0) ε-DP with naïve approach (c=4, ε=2.0)
  49. それぞれの⼿法の利点/⽋点のまとめ 76 利点 ⽋点 Naïve approach 情報を保持したまま ノイズ付与を実施 外れ値(ユーザの持つレコー ドの数に偏り)に対して脆弱

    Bounding user contribution approach [9] 外れ値に対して頑健 情報を削ってから ノイズ付与を実施 [9] R.Wilson et. al., Differentially Private SQL with Bounded User Contribution., PETS2020
  50. Bounding user contribution approachの実装 • ZetaSQL DP extension • [9]を実装したもの.

    詳しくは[10]を参照 • ANONYMIZATION句 • プライバシーパラメータepsilonに加え, contributionの閾値kappaなどを指定. • ANON_COUNT • ANONYMIZATION句で指定したプライバシー基準を満たすカウント関数 77 [9] R.Wilson et. al., Differentially Private SQL with Bounded User Contribution., PETS2020 [10] https://github.com/google/differential-privacy/tree/main/examples/zetasql
  51. 本パートのまとめ • 1⼈あたり複数レコードを持つDBの場合, 通常のDPではユーザ単位の プライバシー保護が難しい • Bounding user contribution approachを紹介

    • User contributionをbound, ユーザ単位の隣接性でセンシティビティを定義 し, そのセンシティビティに基づいたDPを適⽤. 78
  52. チュートリアルT6︓ 差分プライバシーによるクエリ処理の基本・実践・最前線 1. 基本編︓差分プライバシー(DP)の基礎(25min.) 2. 実践編︓DPクエリ応答の実⽤化に向けて(40min.) 3. 最前線︓DPクエリ応答の課題と研究事例(15min.) Takahashi Hasegawa

    Takahashi Keyword︓データ結合 統計値公開 仮説検定 ラプラスノイズ Personal Data is the new oil / 差分プライバシーとは︖ Keyword︓プライバシー合成 索引 最⼤クリーク User Contribution プライバシー予算管理 / 複雑なテーブルへの対応 無制限のクエリ応答 / JOINの実現 / 秘密計算+DP Keyword︓データ合成 ビュー クエリ近似 TEE 準同型暗号
  53. 無制限のクエリ応答を実現するには︖ Question • How can we explore (unforeknown) data to

    design data analytics while preserving privacy without the query limitation? 82 𝜖! 𝜖! 𝜖" 𝜖! 𝜖" 𝜖# … #Queries 𝜖! 𝜖" 𝜖# … 𝜖#$! … Total Privacy Budget Sensitive Database 𝑫 satisfying 𝝐𝟏 -DP satisfying 𝝐𝒌%𝟏 -DP … Query 𝒒𝟏 Privacy Parameter 𝝐𝟏 Query 𝒒𝒌5𝟏 Privacy Parameter 𝝐𝒌5𝟏
  54. 無制限のクエリ応答を実現するには︖ Question • How can we explore (unforeknown) data to

    design data analytics while preserving privacy without the query limitation? Possible Solutions • Building “intermediates” satisfying differential privacy 83 Sensitive Data 𝑫 satisfying 𝝐-DP Data Scientist Query 𝒒𝟏 Query 𝒒𝒌 Differentially Private “Intermediates” … (unlimited) …
  55. 無制限のクエリ応答を実現するには︖ Question • How can we explore (unforeknown) data to

    design data analytics while preserving privacy without the query limitation? Possible Solutions • Building “intermediates” satisfying differential privacy 84 Online Sanitization Data-aware Partitioning Workload- aware Optimization Data Synthesis P3GM [ICDE21] PEARL [ICLR22] HDPView [VLDB22] Query Agnostic ✔ ✔ ✔ ✔ ✔ Analytical Reliability ✔ ✔ ✔ ✔ Noise Resistance ✔ ✔ ✔ Space Efficient ✔ ✔ ✔ ✔
  56. Privacy Preserving Data Synthesis • 機微データを模倣するデータ合成をプライバシー保護した形で学習したモデル • 【課題】⽣成モデルの学習は複雑なためノイズの影響を受けやすい • 【提案】ノイズに頑健なエンべディングをDP制約下で獲得

    85 Train with Generative Model Synthesize ナイーブ法 P3GM (ours) ε=1.0 ε=0.2 PEARL (ours) ε=1.0 ε=1.0 ナイーブ法 P3GM PERAL Embedding End-to-end w/ DP-SGD DP-PCA Characteristic Function under DP Reconstruction DP-SGD Non-private (adversarial) 実⽤的なプライバシ基準(ε≦1)下で ⽐較的⾼い近似性能を達成 ICDE2021採択 / ICLR2022採択
  57. Partitioning Strategy 87 1+ 0+ 5+ 4+ 2+ 1+ 8+

    7+ 13+ 62+ 64+ 0+ 0+ 0+ 1+ 1+ Age ~20 20~30 30~40 40~50 ~10M 20M 30M 40M 4+ 24+ 13+ 126+ 0+ 2+ Salary 1+ 0+ 5+ 4+ 2+ 1+ 8+ 7+ 13+ 62+ 64+ 0+ 0+ 0+ 1+ 1+ 4+ 24+ 13+ 126+ 0+ 2+ 79 + 6x (4 + ) + (13 + ) + (126 + ) /2 = 80 + 2.5x PE àAE=0 PE àAE=1 AE︓Aggregation Error PE︓Perturbation Error Q. How can we find a partitioning minimizing AE + PE? Range Counting Query Data-aware Partitioning
  58. Brief Algorithm of HDPView • Recursive bisection–based algorithm 88 1

    0 6 0 2 2 2 32 8 4 3 4 0 1 64 0 16 0 0 0 0 0 12 1 9 8 24 2 3 4 6 6 0 6 3 4 1 0 6 2 32 8 0 1 64 0 2 2 4 3 4 0 16 0 0 0 0 0 12 1 9 8 24 2 3 4 6 6 0 6 3 4 Each block runs 2 mechanisms 1. Random converge distinguish stop or not 2. Random cut carefully choose a cutting point Pros︓Simple & Effective • Data-distribution-aware • Parallel privacy composition over different blocks • Scalable 1 0 6 0 2 2 2 32 8 4 3 4 0 1 64 0 16 0 0 0 0 0 12 1 9 8 24 2 3 4 6 6 0 6 3 4
  59. Performance of HDPView 89 Identity Privtree HDMM Privbayes HDPView (ours)

    ARR 1.94×10! 7.05 35.34 3.79 𝟏. 𝟎𝟎 Size of view Error (relative) Average relative RMSE (ARR) over 8 workloads and 8 datasets
  60. JOINの実現に⽴ちはだかる課題 • 課題 • Self-joinを⽤いる際にSensitivityをどう扱えばよいか︖ • よく⽤いられる⽅策︓Truncation Mechanism • クエリへの貢献

    (値の⼤きさ等) が 𝜏 より⼤きい個⼈をテーブルから削除 • ある個⼈に変更があっても、⾼々𝜏の変化 à sensitivity = 𝜏 • à クエリの結果にバイアスが⼊る à バイアスの⼩さい 𝝉 はどう選ぶ︖ 91
  61. Self-joinがなぜ問題か︖ • ナイーブなTruncationがうまく機能しない • あるユーザの追加/削除が他のユーザにも影響してしまうため • Self-joinなしの従来の想定よりも閾値𝝉の値に⼤きく依存してしまう à 𝜏 をどう設定するか︖

    92 SELCT SUM(Amount) FROM Transaction, People P1, People P2 WHERE P1.ID = From AND P2.ID = To; ID Location p1 Tokyo p2 Kyoto p3 Hokkaido p4 Okinawa … From To Amount p1 p2 1,000 p3 p4 1,000 p5 p6 1,000 p7 p8 1,000 p9 p10 1,000 … … p1 p3 p5 p7 p9 p2 p4 p6 p8 p10 𝜏 = 1,000 𝐼 𝐼3 … p1 p3 p5 p7 p9 p2 p4 p6 p8 p10 pz α 𝑄 𝐼, 𝜏 = 1,000× 1 2 𝑁 𝑄 𝐼3, 𝜏 = 0 N 追加 People(ID, Location) Transaction(From, To, Amount)
  62. Race-to-the-Top (R2T) メカニズム [SIGMOD22] • 基本戦略︓様々な𝝉を競わせ、最も誤差の⼩さい値を出⼒ • 𝜏の候補は2のn乗の値に限る • DPを保証しながら

    \ 𝑄(𝐼, 𝜏)を 93 真の出⼒ Truncation by 𝜏 Truncation by 𝜏 + DP Truncation による誤差 DPのノイズ による誤差 DPに必要なノイズ ノイズの加算を 前提とした補正項 𝝉を競わせて最⼤値をR2Tメカニズムの出⼒とする (引⽤) https://dl.acm.org/doi/pdf/10.1145/3514221.3517844 真の出⼒ R2Tの出⼒
  63. プライバシー合成 • Strong Composition • Advanced Composition • Renyi Differential

    Privacy • などなど年々新しい合成法が提案されている (DPの沼) 96
  64. Crypto ε [SIGMOD2020] 99 Encrypted Database DP Index Partitioning with

    equi-width Key Generation Decryption Cryptographic Service Provider (CSP) Analytics Server (AS) Data Analyst Query Encryption Data Owners ... data movement ... key distribution Adopt DP via Garbled Circuit ... secret key ... public key 1. Large errors of DP by partitioning with equi-width 2. Reveal the order of sorting by sorting via Garbled Circuit
  65. DP-Summary [DEXA2021] 100 Encrypted Database DP Summary Data-aware Partitioning Key

    Generation Decryption Decryption Server Computation Server Data Analyst Query Encryption Data Owners ... data movement ... key distribution Adopt DP ... evaluation key ... secret key Problem: Long execution time of data-aware partitioning over ciphertexts
  66. HE-friendly Partitioning [BigData2022] 101 ⇒ 𝑩 = {{1,2}, {3,4,5}, {6,7}}

    𝜺 = 𝟎. 𝟓 𝜺𝟏 = 𝟎. 𝟏𝟐𝟓, 𝜺𝟐 = 𝟎. 𝟑𝟕𝟓 → 𝒕 = 𝟏/𝜺𝟐 = 𝟐. 𝟔𝟕 Check only the difference between adjacent data Ø O(n) computational complexity Main idea Ø Simplify partitioning by focusing only on large gaps between consecutive values Procedure 1. Calculate difference between adjacent data 2. Compare difference and threshold 3. Perform “merge” or “divide”
  67. • TEEによる完全性の担保によりソルト付 きハッシュの「ソルト破棄処理」を保証 • ソルト破棄処理+k-匿名化 5&& • 秘密計算によって安全にデータ突合と集 計ができ、さらにTEEによりその処理の 完全性も担保

    • DPによって2組織 (のいずれか) に adversaryがいたとしてもノイズ加算さ れた集計表に対する推定能⼒を制限 • 上記2つの処理より、処理中・処理後の データも⾮個⼈情報とみなされる NTTドコモとJALによる個⼈データ結合の実証実験
  68. 本チュートリアルでご紹介した内容 106 1. 基本編︓差分プライバシー(DP)の基礎(25min.) 2. 実践編︓DPクエリ応答の実⽤化に向けて(40min.) 3. 最前線︓DPクエリ応答の課題と研究事例(15min.) Takahashi Hasegawa

    Takahashi Keyword︓データ結合 統計値公開 仮説検定 ラプラスノイズ Personal Data is the new oil / 差分プライバシーとは︖ Keyword︓プライバシー合成 索引 最⼤クリーク User Contribution プライバシー予算管理 / 複雑なテーブルへの対応 無制限のクエリ応答 / JOINの実現 / 秘密計算+DP Keyword︓データ合成 ビュー クエリ近似 TEE 準同型暗号