differen al privacy
play

Differen'al Privacy: Algorithmic Building Blocks CompSci - PowerPoint PPT Presentation

Differen'al Privacy: Algorithmic Building Blocks CompSci 590.03 Instructor: Ashwin Machanavajjhala Lecture 6: 590.03 Fall 16 1 Announcement Choose project


  1. Differen'al ¡Privacy: ¡ ¡ Algorithmic ¡Building ¡Blocks ¡ CompSci ¡590.03 ¡ Instructor: ¡Ashwin ¡Machanavajjhala ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 1 ¡

  2. Announcement ¡ • Choose ¡project ¡ideas ¡by ¡next ¡Thursday. ¡ ¡ • Please ¡meet ¡with ¡me ¡at ¡least ¡once ¡before ¡then ¡to ¡discuss ¡your ¡ project ¡idea. ¡ ¡ • Sample ¡project ¡ideas ¡posted ¡online. ¡ ¡ • You ¡can ¡choose ¡your ¡own ¡project ¡(that ¡is ¡not ¡listed ¡on ¡the ¡ webpage). ¡ ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 2 ¡

  3. Differen'al ¡Privacy ¡ [Dwork ¡ICALP ¡2006] ¡ For ¡every ¡pair ¡of ¡inputs ¡ For ¡every ¡output ¡… ¡ that ¡differ ¡in ¡one ¡row ¡ D 1 ¡ D 2 ¡ O ¡ Adversary ¡should ¡not ¡be ¡able ¡to ¡dis'nguish ¡ between ¡any ¡D 1 ¡and ¡D 2 ¡based ¡on ¡any ¡O ¡ ¡ ¡ ¡Pr[A(D 1 ) ¡= ¡O] ¡ ¡ ¡ ¡ log ¡ ¡ ¡< ¡ ¡ ε ¡ ¡ ¡(ε>0) ¡ ¡ ¡Pr[A(D 2 ) ¡= ¡O] ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡. ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 3 ¡

  4. Algorithms ¡ • Non-­‑trivial ¡determinis'c ¡algorithms ¡do ¡not ¡sa'sfy ¡differen'al ¡ privacy ¡ – Necessary ¡condi'on: ¡for ¡every ¡input ¡database ¡D ¡and ¡every ¡output ¡O, ¡ ¡ we ¡need ¡Pr[A(D) ¡= ¡O] ¡> ¡0 ¡for ¡any ¡differen'ally ¡private ¡algorithm ¡A. ¡ • Random ¡sampling ¡does ¡not ¡sa'sfy ¡differen'al ¡privacy ¡ – Violates ¡the ¡above ¡necessary ¡condi'on ¡ ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 4 ¡

  5. Laplace ¡Mechanism ¡ • Suppose ¡ q ¡is ¡a ¡query ¡on ¡the ¡database ¡that ¡returns ¡a ¡vector ¡of ¡ reals ¡in ¡R d . ¡ • S(q) ¡= ¡max ¡ neighbors ¡D, ¡D’ ¡ ¡ ¡ ||q(D) ¡– ¡q(D’)|| 1 ¡ ¡ ¡ ¡ • Let ¡ n ¡= ¡[n 1 , ¡n 2 , ¡…, ¡n d ] ¡be ¡a ¡vector ¡of ¡noise ¡values, ¡each ¡drawn ¡from ¡ independently ¡and ¡iden'cally ¡from ¡Lap(S(q)/ε) ¡ • Returning ¡q(D) ¡+ ¡ n ¡results ¡in ¡ε-­‑differen'al ¡privacy. ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 5 ¡

  6. Laplace ¡Mechanism ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 6 ¡

  7. Error ¡Analysis ¡ • If ¡true ¡count ¡is ¡c. ¡ ¡ • Noisy ¡count ¡is ¡c’. ¡ ¡ • |c ¡– ¡c’| ¡< ¡S(q)/ε ¡log(1/δ) ¡ ¡ ¡ ¡with ¡probability ¡1-­‑δ ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 7 ¡

  8. This ¡means ¡… ¡ • Sum ¡of ¡all ¡cells ¡may ¡not ¡add ¡up ¡to ¡the ¡true ¡total ¡count. ¡ • Some ¡cells ¡can ¡have ¡nega've ¡counts ¡ ¡ • Cells ¡can ¡have ¡frac'onal ¡counts. ¡ ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 8 ¡

  9. Limita'ons ¡of ¡output ¡perturba'on ¡ • What ¡if ¡the ¡answer ¡is ¡non-­‑numeric? ¡ – “what ¡is ¡the ¡most ¡common ¡na'onality ¡in ¡this ¡room”: ¡ ¡ Chinese/Indian/American… ¡ – Other ¡examples? ¡ • What ¡if ¡the ¡perturbed ¡answer ¡is ¡not ¡as ¡good ¡as ¡the ¡real ¡answer? ¡ ¡ – “Which ¡price ¡would ¡bring ¡the ¡most ¡money ¡from ¡a ¡set ¡of ¡buyers?” ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 9 ¡

  10. Example: ¡Items ¡for ¡sale ¡ $100 ¡ $100 ¡ • If ¡price ¡is ¡set ¡at ¡$100, ¡make ¡a ¡revenue ¡of ¡$400 ¡ • If ¡price ¡is ¡set ¡at ¡$401, ¡make ¡a ¡revenue ¡of ¡$401 ¡ $100 ¡ • Best ¡price: ¡$401, ¡Next ¡best: ¡$100 ¡ $401 ¡ • Revenue ¡at ¡$402 ¡= ¡$0 ¡ • Revenue ¡at ¡$101 ¡= ¡$101 ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 10 ¡

  11. Exponen'al ¡Mechanism ¡ • Consider ¡some ¡algorithm ¡A ¡(can ¡be ¡determinis'c ¡or ¡probabilis'c): ¡ Inputs ¡ Outputs ¡ • How ¡to ¡construct ¡a ¡differenEally ¡private ¡version ¡of ¡A? ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 11 ¡

  12. Exponen'al ¡Mechanism ¡ • Construct ¡a ¡scoring ¡func'on ¡ w: ¡Inputs ¡x ¡Outputs ¡ à ¡R ¡ ¡ ¡ • For ¡good ¡u'lity ¡w(D,O) ¡should ¡mirror ¡the ¡true ¡algorithm ¡as ¡well ¡ as ¡possible. ¡ ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 12 ¡

  13. Exponen'al ¡Mechanism ¡ • Construct ¡a ¡scoring ¡func'on ¡ w: ¡Inputs ¡x ¡Outputs ¡ à ¡R ¡ • Sensi'vity ¡of ¡w ¡ ! , ! ! ! ! , ! − ! ( ! ! , ! ) ! ! ! max max ! ¡ ¡ ¡ ¡ ¡where ¡D, ¡D’ ¡differ ¡in ¡one ¡tuple ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 13 ¡

  14. Exponen'al ¡Mechanism ¡ ¡ ¡ • Given ¡an ¡input ¡D, ¡and ¡a ¡scoring ¡func'on ¡w, ¡ ¡ Randomly ¡sample ¡an ¡output ¡O ¡from ¡ Outputs ¡with ¡probability ¡ • Note ¡that ¡for ¡every ¡output ¡O, ¡probability ¡O ¡is ¡output ¡> ¡0. ¡ ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 14 ¡

  15. Theorem ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 15 ¡

  16. U'lity ¡of ¡the ¡Exponen'al ¡Mechanism ¡ • Depends ¡on ¡the ¡choice ¡of ¡scoring ¡func'on ¡– ¡weight ¡given ¡to ¡the ¡ best ¡output. ¡ ¡ • E.g., ¡ ¡ “What ¡is ¡the ¡most ¡common ¡na'onality?” ¡ ¡w(D,na'onality) ¡= ¡# ¡people ¡in ¡D ¡having ¡that ¡na'onality ¡ ¡Sensi'vity ¡of ¡w ¡is ¡1. ¡ • Q: ¡What ¡will ¡the ¡output ¡look ¡like? ¡ ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 16 ¡

  17. U'lity ¡of ¡Exponen'al ¡Mechanism ¡ • Let ¡OPT(D) ¡= ¡na'onality ¡with ¡the ¡max ¡score ¡ ¡ • Let ¡ O OPT ¡= ¡{O ¡ε ¡Outputs ¡: ¡w(D,O) ¡= ¡OPT(D)} ¡ • Let ¡the ¡exponen'al ¡mechanism ¡return ¡an ¡output ¡O* ¡ Theorem: ¡ ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 17 ¡

  18. U'lity ¡of ¡Exponen'al ¡Mechanism ¡ Theorem: ¡ ¡ ¡ ¡ ¡ Suppose ¡there ¡are ¡4 ¡na'onali'es ¡ Outputs ¡= ¡{Chinese, ¡Indian, ¡American, ¡Greek} ¡ ¡ Exponen'al ¡mechanism ¡will ¡output ¡some ¡na'onality ¡that ¡is ¡shared ¡ by ¡at ¡least ¡K ¡people ¡with ¡probability ¡1-­‑e -­‑3 (=0.95), ¡where ¡ ¡ ¡ K ¡≥ ¡OPT ¡– ¡2(log(4) ¡+ ¡3)/ε ¡= ¡OPT ¡– ¡6.8/ε ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 18 ¡

  19. Laplace ¡versus ¡Exponen'al ¡Mechanism ¡ • Let ¡f ¡be ¡a ¡func'on ¡on ¡tables ¡that ¡returns ¡a ¡real ¡number. ¡ • Define: ¡score ¡func'on ¡w(D,O) ¡= ¡|f(D) ¡-­‑ ¡O| ¡ • Sensi'vity ¡of ¡w ¡= ¡max D,D’ ¡ (|f(D) ¡– ¡O| ¡-­‑ ¡|f(D’) ¡– ¡O|) ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡≤ ¡max D,D’ ¡ |f(D) ¡– ¡f(D’)| ¡ ¡= ¡sensi'vity ¡of ¡f ¡ • Exponen'al ¡mechanisms ¡returns ¡an ¡output ¡f(D) ¡+ ¡η ¡with ¡ probability ¡propor'onal ¡to ¡ ¡ Laplace ¡noise ¡with ¡ parameter ¡2Δ/ε ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 19 ¡

  20. Summary ¡of ¡Exponen'al ¡Mechanism ¡ • Differen'al ¡privacy ¡for ¡cases ¡when ¡output ¡perturba'on ¡does ¡not ¡ make ¡sense. ¡ ¡ • Idea: ¡Make ¡be|er ¡outputs ¡exponen'ally ¡more ¡likely; ¡Sample ¡from ¡ the ¡resul'ng ¡distribu'on. ¡ ¡ • Every ¡differen'ally ¡private ¡algorithm ¡is ¡captured ¡by ¡exponen'al ¡ mechanism. ¡ ¡ – By ¡choosing ¡the ¡appropriate ¡score ¡func'on. ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 20 ¡

  21. Summary ¡of ¡Exponen'al ¡Mechanism ¡ • U'lity ¡of ¡the ¡mechanism ¡only ¡depends ¡on ¡log(|Outputs|) ¡ – Can ¡work ¡well ¡even ¡if ¡output ¡space ¡is ¡exponen'al ¡in ¡the ¡input ¡ • However, ¡sampling ¡an ¡output ¡may ¡not ¡be ¡computa'onally ¡ efficient ¡if ¡output ¡space ¡is ¡large. ¡ ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 21 ¡

  22. Sta's'cal ¡Database ¡Privacy ¡ ¡ (untrusted ¡collector) ¡ Perturb ¡records ¡to ¡ Server ¡ ensure ¡privacy ¡for ¡ ¡ f ¡ ( ¡ ¡ ¡ ¡ ¡ ¡) ¡ individuals ¡and ¡ U'lity ¡for ¡server ¡ DB* ¡ Person ¡1 ¡ Person ¡2 ¡ Person ¡3 ¡ Person ¡ N ¡ r 1 ¡ r 2 ¡ r 3 ¡ r N ¡ Lecture ¡6: ¡590.03 ¡Fall ¡16 ¡ 22 ¡

Recommend


More recommend