Quyền riêng tư trong học máy

Một khía cạnh quan trọng của việc sử dụng AI có trách nhiệm là đảm bảo rằng các mô hình ML được ngăn chặn để lộ thông tin nhạy cảm tiềm ẩn, chẳng hạn như thông tin nhân khẩu học hoặc các thuộc tính khác trong tập dữ liệu đào tạo có thể được sử dụng để xác định mọi người. Một cách để đạt được điều này là sử dụng đường xuống dốc ngẫu nhiên riêng biệt (DP-SGD), là một sửa đổi đối với thuật toán giảm độ dốc ngẫu nhiên tiêu chuẩn (SGD) trong học máy.

Các mô hình được đào tạo với DP-SGD có các cải tiến về quyền riêng tư (DP) khác biệt có thể đo lường được, giúp giảm thiểu rủi ro lộ dữ liệu đào tạo nhạy cảm. Vì mục đích của DP là giúp ngăn chặn việc xác định các điểm dữ liệu riêng lẻ, một mô hình được đào tạo với DP sẽ không bị ảnh hưởng bởi bất kỳ ví dụ đào tạo đơn lẻ nào trong tập dữ liệu đào tạo của nó. Kỹ thuật DP-SGD cũng có thể được sử dụng trong học tập liên hợp để cung cấp quyền riêng tư khác biệt ở cấp độ người dùng. Bạn có thể tìm hiểu thêm về học sâu riêng tư khác biệt trong bài báo gốc .

import tensorflow as tf
from tensorflow_privacy.privacy.optimizers import dp_optimizer_keras

# Select your differentially private optimizer
optimizer = tensorflow_privacy.DPKerasSGDOptimizer(
    l2_norm_clip=l2_norm_clip,
    noise_multiplier=noise_multiplier,
    num_microbatches=num_microbatches,
    learning_rate=learning_rate)

# Select your loss function
loss = tf.keras.losses.CategoricalCrossentropy(
    from_logits=True, reduction=tf.losses.Reduction.NONE)

# Compile your model
model.compile(optimizer=optimizer, loss=loss, metrics=['accuracy'])

# Fit your model
model.fit(train_data, train_labels,
  epochs=epochs,
  validation_data=(test_data, test_labels),
  batch_size=batch_size)
  

Quyền riêng tư của TensorFlow

Tensorflow Privacy (TF Privacy) là một thư viện mã nguồn mở được phát triển bởi các nhóm trong Google Research. Thư viện bao gồm việc triển khai các Trình tối ưu hóa TensorFlow thường được sử dụng để đào tạo các mô hình ML với DP. Mục đích là cho phép những người thực hành ML sử dụng các API Tensorflow tiêu chuẩn để đào tạo các mô hình bảo vệ quyền riêng tư bằng cách chỉ thay đổi một vài dòng mã.

Các trình tối ưu hóa riêng tư khác nhau có thể được sử dụng cùng với các API cấp cao sử dụng lớp Trình tối ưu hóa, đặc biệt là Keras. Ngoài ra, bạn có thể tìm thấy các triển khai riêng tư khác nhau của một số mô hình Keras. Tất cả các Trình tối ưu hóa và mô hình có thể được tìm thấy trong Tài liệu API .