Membership Inference Attacks
Ein Membership-Inference-Angriff prüft, ob ein bestimmter Datensatz im Trainingsmaterial eines Modells enthalten war. Dazu nutzt er die durch Overfitting entstehende Lücke beim Verlust.
Ein Mitgliedschaftsinferenzangriff soll feststellen, ob ein bestimmter Datensatz Teil der Trainingsdaten eines Machine-Learning-Modells war. Der Angreifer besitzt den betreffenden Datensatz bereits, etwa eine Aufnahme eines Patienten oder ein Foto einer Person, und befragt das Modell, um zwischen „Mitglied“ und „kein Mitglied“ zu entscheiden. Schon die Mitgliedschaft kann vertraulich sein. Daher sind solche Angriffe ein wesentliches Risiko für den Datenschutz: Wenn ein Modell nur mit Daten von Patienten mit einer bestimmten Krankheit trainiert wurde, offenbart der Nachweis, dass die Aufnahme einer Person im Trainingssatz enthalten war, deren Diagnose. Reza Shokri, Marco Stronati, Congzheng Song und Vitaly Shmatikov stellten 2017 Mitgliedschaftsinferenzangriffe auf Machine-Learning-Modelle vor und führten sie bei kommerziellen ML-as-a-Service-Plattformen von Google und Amazon vor.
Warum Modelle die Zugehörigkeit zu Trainingsdaten preisgeben#
Modelle verhalten sich bei den Daten, mit denen sie trainiert wurden, anders. Bei Trainingsbeispielen weisen sie gewöhnlich einen geringeren Verlust und eine höhere Sicherheit auf als bei unbekannten Beispielen. Bei Überanpassung wird dieser Unterschied größer. Große Modelle, die sich seltene Beispiele, doppelte Bilder oder Ausreißer merken, geben am meisten preis. Auch Modelle für generative KI, darunter große Sprachmodelle (LLMs), können die Mitgliedschaft offenlegen, indem sie Trainingsbilder oder -texte nahezu wortgetreu wiedergeben.
Beim einfachsten Angriff wird ein Grenzwert auf den Verlust angewendet: Ein Datensatz gilt als „Mitglied“, wenn der Verlust des Modells darauf ungewöhnlich niedrig ist. Der folgende Ausschnitt trainiert in PyTorch einen kleinen Klassifikator mit einem neuronalen Netz auf 100 zufälligen Datensätzen mit zufälligen Labels, die nur auswendig gelernt werden können. Anschließend greift er eine Mischung aus diesen Mitgliedern und 100 Datensätzen an, die das Modell nie gesehen hat:
import torch
import torch.nn.functional as F
torch.manual_seed(0)
x, y = torch.randn(200, 20), torch.randint(0, 2, (200,))
is_member = torch.arange(200) < 100 # the first 100 records form the training set
# Train a small classifier on the members only, long enough to memorize them
model = torch.nn.Sequential(torch.nn.Linear(20, 256), torch.nn.ReLU(), torch.nn.Linear(256, 2))
optimizer = torch.optim.Adam(model.parameters(), lr=0.01)
for _ in range(300):
optimizer.zero_grad()
F.cross_entropy(model(x[is_member]), y[is_member]).backward()
optimizer.step()
# Loss-threshold attack: guess "member" for every record with below-median loss
with torch.no_grad():
losses = F.cross_entropy(model(x), y, reduction="none")
guess = losses < losses.median()
print(f"attack accuracy: {(guess == is_member).float().mean():.2f}")Der Angriff klassifiziert 85 % der Datensätze richtig. Zufälliges Raten käme nur auf 50 %. Der Verlust ist bei fast allen Mitgliedern nahezu null. Bei 15 Datensätzen, die keine Mitglieder sind, hat das Modell das zufällige Label jedoch zufällig mit noch höherer Sicherheit vorhergesagt. Ihr Verlust liegt unter dem mittleren Grenzwert, sodass 16 Mitglieder darüber landen. Eine bessere Generalisierung verringert den Verlustunterschied und damit die Trefferquote des Angriffs, beseitigt ihn aber gewöhnlich nicht.
Stärkere Angriffe und ihre Messung#
- Schattenmodelle: Beim ursprünglichen Angriff von 2017 werden mehrere Modelle mit ähnlichen Daten trainiert, deren Zugehörigkeit bekannt ist. Anschließend wird anhand ihrer Ausgaben ein Klassifikator trainiert, der erkennt, woran sich die Zugehörigkeit zu den Trainingsdaten zeigt.
- Kalibrierte Angriffe: Der Likelihood Ratio Attack (LiRA), den Nicholas Carlini und seine Kollegen 2022 veröffentlichten, vergleicht den Verlust eines Datensatzes mit Referenzmodellen, die mit und ohne diesen Datensatz trainiert wurden. So werden auswendig gelernte Ausreißer sichtbar, die ein einzelner globaler Grenzwert übersieht.
- Angriffe auf Basis von Bezeichnungen: Auch APIs, die nur eine vorhergesagte Bezeichnung zurückgeben, können Informationen preisgeben. Für Modelle, deren Vorhersage durch eine Eingabestörung umkippt, wie sie bei der Suche durch adversarielle Angriffe eingesetzt wird, sind in der Regel größere Störungen erforderlich.
Da die Gesamtgenauigkeit die wenigen am stärksten gefährdeten Personen nicht erkennen lässt, geben Datenschutzprüfungen die Trefferquote bei einer sehr niedrigen Falschalarmrate an, etwa 0.1 %. Open-Source-Werkzeuge für den Datenschutz können Berichte zu Mitgliedschaftsinferenzangriffen erstellen. Diese führen die Angriffe gegen ein trainiertes Modell aus und stellen dessen Anfälligkeit für verschiedene Trainingsstände dar.
Verwandte Angriffe auf die Privatsphäre#
Membership-Inferenz ist die engste Form des Trainingsdatenlecks. Modellinversion rekonstruiert repräsentative Merkmale einer Klasse oder einer Person, die Attributinferenz ergänzt ein fehlendes sensibles Feld eines Datensatzes, den ein Angreifer teilweise kennt, und die Extraktion von Trainingsdaten gewinnt wörtliche Inhalte wie auswendig gelernte Texte zurück. Datenvergiftung wirkt in die entgegengesetzte Richtung und verfälscht den Trainingsdatensatz, anstatt daraus zu lesen. Methoden des maschinellen Verlernens, die versuchen, den Einfluss eines Datensatzes nach dem Training zu entfernen, nutzen Membership-Inferenz, um zu prüfen, ob der Datensatz noch Spuren hinterlässt. Da die Mitgliedschaft die kleinste Einheit eines Datenlecks ist, gilt Membership-Inferenz inzwischen als Standardmaß dafür, wie viele einzelne Datensätze ein Trainingsprozess preisgibt.
Schutzmaßnahmen#
Differential Privacy bietet einen Schutz mit formaler Garantie. Beim Training mit DP-SGD, einer Variante des stochastischen Gradientenabstiegs, die für PyTorch über Opacus verfügbar ist, wird der Gradient jedes Beispiels begrenzt und kalibriertes Rauschen hinzugefügt. So wird mathematisch begrenzt, wie stark ein einzelner Datensatz das Modell verändern kann. Dadurch wird der Vorteil jedes Mitgliedschaftsinferenzangriffs eingeschränkt, wenn auch mit gewissen Einbußen bei der Genauigkeit. Weitere Maßnahmen verringern das Risiko: Regularisierung, Datenerweiterung und vorzeitiges Beenden des Trainings begrenzen die Überanpassung. Durch das Entfernen doppelter Datensätze wird verhindert, dass sich das Modell ein einzelnes Bild oder Dokument mehrfach einprägt. Öffentliche APIs können außerdem nur Labels oder gerundete Konfidenzwerte zurückgeben.
Die Trainingskurven eines Bildverarbeitungsmodells sind der schnellste Weg, um zu prüfen, welche Informationen es preisgibt. Wenn ein Detektor mit Ultralytics YOLO26 mit vertraulichen Bildern wie medizinischen Aufnahmen oder Mitarbeiterausweisen feinabgestimmt wird, protokolliert der Trainingsmodus den Trainings- und Validierungsverlust in jeder Epoche. Das Argument patience ist standardmäßig auf 100 Epochen gesetzt und beendet das Training, wenn sich die Validierungsleistung über diese Anzahl von Epochen nicht verbessert hat. So werden die späten Epochen abgeschnitten, in denen der Trainingsverlust weiter sinkt, während die Validierungsergebnisse stagnieren – genau diese Lücke nutzt ein Angriff mit Verlustschwellenwert aus.










