Gizlilik bütçeleri

Python ile Veri Gizliliği ve Anonimleştirme

Rebeca Gonzalez

Instructor

Diferansiyel gizliliğin tanımı

  • Cynthia Dwork, diferansiyel gizliliği matematiksel bir tanımla sunar.

Diferansiyel gizli bir mekanizmanın çıktısının, birinin veri kümesinde olup olmamasından bağımsız olarak temelde aynı olduğunu gösteren diyagram

  • En önemli nicelikler epsilon ve isabettir.
Python ile Veri Gizliliği ve Anonimleştirme

Gizlilik parametresi $\epsilon$

  • Gizlilik kaybı ölçütü
  • Değer küçüldükçe gizlilik koruması artar
Python ile Veri Gizliliği ve Anonimleştirme

Gizlilik bütçesi

Solda bir veri küratörünün çizimi

Python ile Veri Gizliliği ve Anonimleştirme

Gizlilik bütçesi

Solda veri küratörü ve bir üçüncü kişi. Veritabanına yapılan bir sorguyu temsil eden, üstünde epsilon 1 yazan ok veri küratörünü gösteriyor

Python ile Veri Gizliliği ve Anonimleştirme

Gizlilik bütçesi

Solda veri küratörü ve bir üçüncü kişi. Veritabanına yapılan ikinci sorguyu temsil eden, üstünde epsilon 1 yazan bir başka ok veri küratörünü gösteriyor $\epsilon$ = 1 ile aynı özel sorguyu iki kez yapmak, gizliliği $\epsilon$ = 2 olan tek bir sorgu gibidir.

Python ile Veri Gizliliği ve Anonimleştirme

Gizlilik bütçesi

Önceden istenen veriler üzerinde hesaplama yapan üçüncü tarafın çizimi Üçüncü taraflar yanıtları ortalayıp gürültüyü azaltabilir.

Python ile Veri Gizliliği ve Anonimleştirme

Gizlilik bütçesi

  • Her birey/grup için izin verilen gizlilik kaybı sınırı
  • Veriye yapılan sorguları izleyin

Sorgulara yanıtlamadan önce gürültü ekleyen bir veritabanından veri çıkaran ekibin diyagramı

Python ile Veri Gizliliği ve Anonimleştirme

Yeterince gizli olan nedir?

  • Kalitesi hem sorguya hem veriye bağlıdır
  • Epsilon için geniş bir değer aralığı vardır
Python ile Veri Gizliliği ve Anonimleştirme

Yeterince gizli olan nedir?

Epsilon $\epsilon$

  • 0 ile 1 arası çok iyidir
  • 10'un üzeri iyi değildir
  • 1 ile 10 arası “hiç yoktan iyidir”

Epsilon üstel bir ölçektir.

  • $\epsilon$ = 1 olan bir sistem, $\epsilon$ = 10 olandan 8.000 kattan fazla gizlidir.
Python ile Veri Gizliliği ve Anonimleştirme

Yeterince gizli olan nedir?

Apple logosunun yanında emoji kullanımının çubuk grafiğini gösteren görsel

1 Apple tarafından toplanan verilere göre ABD İngilizcesi konuşanlar için en popüler emojilerin ekran görüntüsü.
Python ile Veri Gizliliği ve Anonimleştirme

Gizlilik bütçesi: nasıl izlenir

from diffprivlib import BudgetAccountant

acc = BudgetAccountant(epsilon=5) acc
BudgetAccountant(epsilon=5)
Python ile Veri Gizliliği ve Anonimleştirme

Gizlilik bütçesi: nasıl izlenir

# Maaşların özel ortalamasını epsilon 0.5 ile hesaplayın
# Budget Accountant acc'yi kullanın ve alt-üst sınırları 0 ile 230000 olarak ayarlayın
dp_mean = tools.mean(salaries, epsilon=0.5, accountant=acc, bounds=(0, 230000))

# Ortaya çıkan özel ortalamayı yazdırın print("Private mean: ", dp_mean)
Private mean: 82524.72611901595
Python ile Veri Gizliliği ve Anonimleştirme

Gizlilik bütçesi: nasıl izlenir

# Harcanan toplam gizlilik 
print("Total spent: ", acc.total())

# Kalan gizlilik bütçesi print("Remaining budget: ", acc.remaining())
# Şu ana kadar yapılan toplam sorgu sayısı print("Number of queries recorded: ", len(acc))
Total spent: (epsilon=0.5, delta=0.0)

Remaining budget: (epsilon=4.5, delta=1.0)
Number of queries recorded: 1
Python ile Veri Gizliliği ve Anonimleştirme

Gizlilik bütçesi: nasıl izlenir

# 2 sorgu için kalan gizlilik bütçesi
print("Remaining budget for 2 queries: ", acc.remaining(2))
Remaining budget for 2 queries: (epsilon=2.25, delta=1.0)
Python ile Veri Gizliliği ve Anonimleştirme

Hadi pratik yapalım!

Python ile Veri Gizliliği ve Anonimleştirme

Preparing Video For Download...