Začněte nyníZačněte zdarma

Předpovídání platů

V tomto cvičení použiješ datovou sadu census income k tomu, abys předpověděl/a, zda mají jednotlivci roční plat vyšší než 50 000 USD, nebo ne.

Měj na paměti, že při vytváření soukromého modelu je potřeba zadat meze jako parametr – zajistíš tím, že nedojde k dodatečné ztrátě soukromí ani úniku informací. Meze si obvykle můžeš zvolit nezávisle na datech, a to na základě znalosti domény nebo pomocí prohledávání s DP histogramem.

Dataset byl načten a rozdělen na X_train, y_train, X_test a y_test. Klasifikátor je dostupný jako dp_GaussianNB.

Toto cvičení je součástí kurzu

Ochrana soukromí a anonymizace dat v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Nastav meze modelu tak, že vypočítáš hodnoty min a max v trénovacích datech a přidáš náhodný šum – odečteš a přičteš náhodná čísla v rozsahu 5 až 40 pro každý z 5 sloupců v našich datech.
  • Vytvoř klasifikátor dp_GaussianNB s hodnotou epsilon 0.5 a dříve vytvořenými mezemi.
  • Natrénuj model na datech a podívej se na výsledné skóre.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Set the min and max of bounds for the data and add noise using random
bounds = (X_train.____(axis=0) - random.____(range(5, 40), 5), 
          ____)

# Built the classifier with epsilon of 0.5
dp_clf = ____(epsilon=____, bounds=____)

# Fit the model to the data and print the score
____
print("The accuracy of the differentially private model is ",
       dp_clf.score(X_test, y_test))
Upravit a spustit kód