सैलरी का पूर्वानुमान
इस अभ्यास में, आप census income डेटासेट का उपयोग करेंगे ताकि यह भविष्यवाणी कर सकें कि व्यक्तियों की सैलरी $50K/year से अधिक है या नहीं।
ध्यान रखें कि प्राइवेट मॉडल बनाते समय आपको बाउंड्स एक पैरामीटर के रूप में निर्दिष्ट करने चाहिए, ताकि अतिरिक्त प्राइवेसी लॉस या जानकारी लीक न हो। आम तौर पर, आप बाउंड्स को डेटा से स्वतंत्र रूप से चुन सकते हैं—डोमेन नॉलेज के आधार पर या DP हिस्टोग्राम से खोज कर।
डेटासेट लोड कर दिया गया है और X_train, y_train, X_test, और y_test में विभाजित है। क्लासिफायर dp_GaussianNB के रूप में उपलब्ध है।
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में डेटा प्राइवेसी और अज्ञातिकरण
अभ्यास निर्देश
- मॉडल के बाउंड्स सेट करें: ट्रेनिंग डेटा में
minऔरmaxमान निकालें, और हमारी 5 कॉलम वाली डेटा तालिका के लिए 5 से 40 की रेंज के रैंडम नंबर घटाकर/जोड़कर रैंडम नॉइज़ मिलाएँ। 0.5epsilon और ऊपर बनाए गए बाउंड्स के साथ एक dp_GaussianNB क्लासिफायर बनाइए।- मॉडल को डेटा पर फिट कीजिए और स्कोर देखिए।
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# 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))