Datenschutz beim maschinellen Lernen

Ein wichtiger Aspekt der verantwortungsvollen KI-Nutzung besteht darin, sicherzustellen, dass ML-Modelle daran gehindert werden, potenziell sensible Informationen wie demografische Informationen oder andere Attribute im Trainingsdatensatz preiszugeben, die zur Identifizierung von Personen verwendet werden könnten. Eine Möglichkeit, dies zu erreichen, besteht darin, den differentiell privaten stochastischen Gradientenabstieg (DP-SGD) zu verwenden, der eine Modifikation des standardmäßigen stochastischen Gradientenabstiegs (SGD)-Algorithmus im maschinellen Lernen ist.

Mit DP-SGD trainierte Modelle weisen messbare Verbesserungen des Differential Privacy (DP) auf, wodurch das Risiko der Offenlegung sensibler Trainingsdaten verringert wird. Da der Zweck von DP darin besteht, zu verhindern, dass einzelne Datenpunkte identifiziert werden, sollte ein mit DP trainiertes Modell von keinem einzelnen Trainingsbeispiel in seinem Trainingsdatensatz beeinflusst werden. DP-SGD-Techniken können auch beim föderierten Lernen verwendet werden, um unterschiedliche Privatsphäre auf Benutzerebene bereitzustellen. Sie können mehr über differentiell privates vertieftes Lernen in lernen das ursprüngliche Papier .

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)
  

TensorFlow-Datenschutz

Tensorflow Privacy (TF Privacy) ist eine Open-Source-Bibliothek, die von Teams in Google Research entwickelt wurde. Die Bibliothek enthält Implementierungen häufig verwendeter TensorFlow-Optimierer zum Trainieren von ML-Modellen mit DP. Das Ziel ist es, ML-Praktiker mit Standard-Tensorflow-APIs zu befähigen, datenschutzwahrende Modelle zu trainieren, indem nur wenige Codezeilen geändert werden.

Die differentiell privaten Optimierer können in Verbindung mit High-Level-APIs verwendet werden, die die Optimizer-Klasse verwenden, insbesondere Keras. Darüber hinaus finden Sie differenziell private Implementierungen einiger Keras-Modelle. Alle der Optimizers und Modelle finden Sie im finden API - Dokumentation .