ПочатиПочніть безкоштовно

Прогнозування рівня зарплат

У цій вправі ви використаєте набір даних про доходи з перепису, щоб передбачити, чи мають люди річний дохід понад $50K, чи ні.

Пам'ятайте, що під час створення приватної моделі слід указати межі як параметр, щоб уникнути додаткових втрат приватності та витоку інформації. Зазвичай межі можна обрати незалежно від даних — на основі предметної експертизи або за допомогою пошуку з DP-гістограмою.

Набір даних уже завантажено та розділено на X_train, y_train, X_test і y_test. Класифікатор доступний як dp_GaussianNB.

Ця вправа є частиною курсу

Конфіденційність даних і анонімізація в Python

Переглянути курс

Інструкції до вправи

  • Встановіть межі моделі, обчисливши значення min і max у тренувальних даних та додавши випадковий шум: відніміть і додайте випадкові числа в діапазоні від 5 до 40 для 5 стовпців наших даних.
  • Створіть класифікатор dp_GaussianNB з епсилоном 0.5 і раніше визначеними межами.
  • Навчіть модель на даних і подивіться оцінку (score).

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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))
Редагувати та запускати код