ÎncepețiÎncepe gratuit

Predicția salariilor

În acest exercițiu, vei folosi setul de date privind venitul din recensământ pentru a prezice dacă persoanele au un salariu de peste 50.000 USD/an sau nu.

Reține că trebuie să specifici limitele ca parametru atunci când creezi modelul privat, pentru a evita pierderi suplimentare de confidențialitate sau scurgeri de informații. De obicei, poți alege limitele independent de date, folosind cunoștințe din domeniu sau o căutare cu un histogramă diferențial privată.

Setul de date a fost încărcat și împărțit în X_train, y_train, X_test și y_test. Clasificatorul este disponibil ca dp_GaussianNB.

Acest exercițiu face parte din cursul

Confidențialitatea datelor și anonimizarea în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Stabilește limitele modelului calculând valorile min și max din datele de antrenament și adăugând zgomot aleatoriu prin scăderea, respectiv adăugarea unor numere aleatoare dintr-un interval de la 5 la 40 pentru cele 5 coloane din datele noastre.
  • Creează un clasificator dp_GaussianNB cu un epsilon de 0.5 și limitele definite anterior.
  • Antrenează modelul pe date și verifică scorul.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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))
Editează și rulează codul