Kom igångKom igång gratis

Utforska data med en integritetsbudget

System för datautforskning med differentiell integritet måste hantera en integritetsbudget som mäter hur mycket integritet som förbrukas vid flera frågor.

I den här övningen utforskar du IBM HR Analytics Employee Attrition & Performance-datasetet och håller samtidigt koll på integritetsbudgeten. Kom ihåg att ett fel uppstår om en fråga överskrider den budget som angetts i kontot.

Histogrammet är ett användbart verktyg för att visualisera data på ett differentiellt privat sätt. Syntaxen är densamma som för motsvarande funktion i numpy, men med en epsilon-parameter.

Hela datasetet är tillgängligt som hr och de anställdas åldersattribut som ages. En anpassad funktion har skapats och laddats som show_histogram() för att rita histogrammet på samma sätt som du gjort tidigare i kursen.

Den här övningen är en del av kursen

Dataintegritet och anonymisering i Python

Visa kurs

Övningsinstruktioner

  • Skapa ett BudgetAccountant för integritet med ett epsilon-värde på 1.5, med hjälp av dess konstruktor.
  • Generera ett privat histogram från kolumnen ages med ett epsilon-värde på 0.1.
  • Hämta och visa det privata medelvärdet för ages med ett epsilon0.9 och gränser från 10 till 100 som en tupel.
  • Skriv ut den återstående integritetsbudgeten för de två efterföljande nya frågorna.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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))
Redigera och kör kod