LoslegenKostenlos loslegen

Daten erkunden mit einem Privacy-Budget-Accountant

Systeme zur Datenexploration, die Differential Privacy bereitstellen, müssen ein Privacy-Budget verwalten, das den Verlust an Privatsphäre über mehrere Abfragen hinweg misst.

In dieser Übung erkundest du den Datensatz IBM HR Analytics Employee Attrition & Performance und behältst dabei unser Privacy-Budget im Blick. Denk daran: Wenn eine Abfrage das im Accountant festgelegte Privacy-Budget überschreitet, tritt ein Fehler auf.

Das Histogramm ist ein wertvolles Werkzeug, um Daten differenziell privat zu visualisieren. Die Syntax entspricht der entsprechenden Funktion in numpy, mit einem zusätzlichen Epsilon-Parameter.

Der vollständige Datensatz ist als hr verfügbar und das Altersattribut der Mitarbeitenden als ages. Eine benutzerdefinierte Funktion wurde als show_histogram() erstellt und geladen, um das Histogramm so zu plotten, wie du es zuvor im Kurs gemacht hast.

Diese Übung ist Teil des Kurses

Datenschutz und Anonymisierung mit Python

Kurs anzeigen

Anleitung zur Übung

  • Erstelle einen Privacy-BudgetAccountant mit einem epsilon von 1.5, indem du den Konstruktor verwendest.
  • Erzeuge ein privates Histogramm aus der Spalte ages mit einem epsilon-Wert von 0.1.
  • Ermittle und zeige den privaten Durchschnitt von ages unter Verwendung eines epsilon von 0.9 und Grenzen von 10 bis 100 als Tupel.
  • Gib das verbleibende Privacy-Budget für die zwei folgenden neuen Abfragen aus.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Create the privacy Budget Accountant with epsilon of 1.5
acc = ____

# Use the Budget Accountant acc to draw a private histogram of ages with epsilon 0.1
dp_hist, dp_bins = tools.___(____, epsilon=____, range=[10,100], accountant=____)
show_histogram(dp_hist, dp_bins)

# Get and show the private average of the age variable
print("Mean: ", tools.mean(____))

# Show privacy budget remaining for 2 queries
print("Remaining budget for 2 queries: ", ____)
print("Number of queries recorded: ", len(acc))
Code bearbeiten und ausführen