เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

สำรวจข้อมูลด้วย Privacy Budget Accountant

ระบบสำรวจข้อมูลที่รองรับ differential privacy จำเป็นต้องบริหารจัดการงบประมาณความเป็นส่วนตัว ซึ่งวัดปริมาณความเป็นส่วนตัวที่สูญเสียไปจากการรันหลาย query

ในแบบฝึกหัดนี้ คุณจะสำรวจชุดข้อมูล IBM HR Analytics Employee Attrition & Performance พร้อมติดตามงบประมาณความเป็นส่วนตัวไปด้วย จำไว้ว่าหาก query ใดใช้งบประมาณเกินที่กำหนดไว้ใน accountant จะเกิดข้อผิดพลาดขึ้น

ฮิสโทแกรมเป็นเครื่องมือที่มีประโยชน์ในการแสดงภาพข้อมูลแบบ differentially private โดยมีรูปแบบ syntax เดียวกับฟังก์ชันใน numpy แต่มีพารามิเตอร์ epsilon เพิ่มเข้ามา

ชุดข้อมูลเต็มพร้อมใช้งานในชื่อ hr และข้อมูลอายุของพนักงานอยู่ในชื่อ ages นอกจากนี้ยังมีฟังก์ชัน show_histogram() ที่สร้างและโหลดไว้แล้ว เพื่อพล็อตฮิสโทแกรมเหมือนที่ทำในบทก่อนหน้า

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

ความเป็นส่วนตัวของข้อมูลและการทำให้ข้อมูลไม่ระบุตัวตนด้วย Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • สร้าง BudgetAccountant สำหรับความเป็นส่วนตัวโดยกำหนด epsilon เป็น 1.5 โดยใช้ constructor ที่เตรียมไว้
  • สร้างฮิสโทแกรมแบบส่วนตัวจากคอลัมน์ ages โดยกำหนด epsilon เป็น 0.1
  • คำนวณและแสดงค่าเฉลี่ยแบบส่วนตัวของ ages โดยใช้ epsilon เป็น 0.9 และกำหนด bounds จาก 10 ถึง 100 ในรูปแบบ tuple
  • แสดงงบประมาณความเป็นส่วนตัวที่เหลืออยู่สำหรับ 2 query ถัดไป

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# 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))
แก้ไขและรันโค้ด