Membership Inference Attacks
يختبر هجوم استدلال العضوية ما إذا كان سجل محدد موجودًا ضمن بيانات تدريب النموذج، مستغلًا فجوة الخسارة التي يسببها فرط التخصيص.
تحاول هجمة استدلال العضوية تحديد ما إذا كان سجل بيانات معين جزءًا من بيانات تدريب نموذج تعلم آلي. ويكون السجل، مثل صورة أشعة لمريض أو صورة شخص، بحوزة المهاجم أصلًا، ثم يستعلم من النموذج ليقرر ما إذا كان «عضوًا» أو «غير عضو». وقد تكون العضوية وحدها حساسة، ما يجعل هذه الهجمات خطرًا أساسيًا على خصوصية البيانات: فإذا دُرّب نموذج على مرضى مصابين بمرض معين فقط، فإن إثبات وجود صورة أشعة شخص ما ضمن بيانات التدريب يكشف تشخيصه. قدّم رضا شكري وماركو ستروناتّي وكونغتشنغ سونغ وفيتالي شيماتيك هجمات استدلال العضوية على نماذج التعلم الآلي عام 2017، وعرضوا تطبيقها على منصات تجارية للتعلم الآلي كخدمة من Google وAmazon.
لماذا تسرّب النماذج معلومات العضوية#
تتصرف النماذج على البيانات التي دُرّبت عليها بطريقة مختلفة. فعادةً ما تعيّن لأمثلة التدريب خسارة أقل وثقة أعلى من الأمثلة غير المرئية، وتتسع الفجوة مع فرط التخصيص. وتسرب النماذج الكبيرة التي تحفظ أمثلة نادرة أو صورًا مكررة أو قيمًا شاذة أكبر قدر من المعلومات، كما يمكن لنماذج الذكاء الاصطناعي التوليدي، بما فيها النماذج اللغوية الكبيرة (LLMs)، أن تكشف العضوية بإعادة إنتاج صور التدريب أو نصوصه حرفيًا تقريبًا.
تستخدم أبسط الهجمات حدًا فاصلًا للخسارة: فتخمن أن السجل «عضو» كلما كانت خسارة النموذج عليه منخفضة على نحو غير معتاد. يدرّب المقتطف أدناه مصنف شبكة عصبية صغيرًا في PyTorch على 100 سجل عشوائي بتسميات عشوائية، لا يمكن تعلمها إلا بالحفظ، ثم يهاجم مزيجًا من تلك السجلات الأعضاء و100 سجل لم يرها النموذج قط:
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}")تصنف الهجمة 85% من السجلات تصنيفًا صحيحًا، في حين تبلغ دقة التخمين العشوائي 50%. وتقترب خسارة كل عضو من الصفر، لكن 15 سجلًا من غير الأعضاء، صادف أن النموذج تنبأ بتسمياتها العشوائية بثقة أكبر، تقع دون الحد الوسيط وتدفع 16 عضوًا فوقه. وتضيق النماذج الأقدر على التعميم فجوة الخسارة، ما يخفض دقة الهجمة من دون أن يلغيها عادةً.
هجمات أقوى وطرق قياسها#
- النماذج الظلية: تدرّب الهجمة الأصلية لعام 2017 عدة نماذج على بيانات مشابهة مع معرفة العضوية، ثم تدرّب مصنفاً على مخرجاتها للتعرّف على أنماط العضوية.
- الهجمات المعايرة: تقارن هجمة نسبة الترجيح (LiRA)، التي نشرها نيكولاس كارليني وزملاؤه عام 2022، خسارة السجل بنماذج مرجعية دُرّبت مع السجل ومن دونه. وهذا يكشف القيم الشاذة المحفوظة التي يفوتها حد عالمي واحد.
- الهجمات التي تقتصر على التصنيف: حتى واجهات برمجة التطبيقات التي لا تعيد سوى تصنيف متنبأ به تسرّب معلومات؛ إذ تتطلب عادةً تغييرات أكبر في مدخلات الأعضاء، من النوع الذي تبحث عنه الهجمات الخصومية، قبل أن يتغير التنبؤ.
لأن الدقة الإجمالية تخفي الأفراد القلائل الأكثر عرضة للخطر، تعرض عمليات تدقيق الخصوصية معدل الإيجابيات الحقيقية عند معدل إيجابيات كاذبة منخفض جداً، مثل 0.1%. ويمكن لأدوات الخصوصية مفتوحة المصدر إنشاء تقارير استدلال العضوية التي تنفذ هذه الهجمات على نموذج مدرّب وترسم مدى تعرضه للخطر عبر نقاط التحقق أثناء التدريب.
هجمات الخصوصية ذات الصلة#
استدلال العضوية هو أضيق أشكال تسرّب بيانات التدريب. يعيد عكس النموذج بناء سمات ممثلة لفئة أو لشخص، ويستكمل استدلال السمات حقلًا حساسًا مفقودًا في سجل يعرف المهاجم جزءًا منه، بينما يستعيد استخراج بيانات التدريب محتوى حرفيًا مثل النصوص المحفوظة في الذاكرة. يعمل تسميم البيانات في الاتجاه المعاكس، إذ يفسد مجموعة التدريب بدلًا من القراءة منها. وتستخدم أساليب محو التعلم الآلي، التي تحاول إزالة تأثير سجل بعد التدريب، استدلال العضوية لاختبار ما إذا كان السجل لا يزال يترك أثرًا. ولأن العضوية أصغر وحدة للتسرّب، أصبح استدلال العضوية المقياس القياسي لتحديد مقدار ما تكشفه عملية التدريب عن السجلات الفردية.
وسائل الدفاع#
الخصوصية التفاضلية هي وسيلة الدفاع ذات الضمان الرسمي. ففي التدريب باستخدام DP-SGD، وهو إصدار من الانحدار المتدرج العشوائي متاح لـPyTorch عبر Opacus، يُقص تدرج كل مثال وتُضاف ضوضاء معايرة، ما يحد رياضيًا من مقدار تغيير أي سجل منفرد للنموذج، ومن ثم يضع سقفًا لميزة كل هجمة استدلال عضوية، مقابل كلفة في الدقة. وتحد تدابير عملية المخاطر بدرجة أكبر: إذ يحد الانتظام وزيادة بيانات التدريب والإيقاف المبكر من فرط التخصيص، كما يمنع حذف السجلات المكررة حفظ الصورة أو المستند الواحد مرات عديدة، ويمكن لواجهات برمجة التطبيقات العامة إرجاع التسميات أو درجات الثقة المقربة فقط.
تُعد منحنيات تدريب نموذج الرؤية أسرع وسيلة للتحقق من التعرض. فعندما يُضبط كاشف Ultralytics YOLO26 على صور حساسة مثل صور الأشعة الطبية أو شارات الموظفين، يسجل وضع التدريب خسارتي التدريب والتحقق في كل حقبة. ويوقف وسيط patience، الذي تبلغ قيمته الافتراضية 100 حقبة، التدريب عندما لا تتحسن ملاءمة التحقق طوال ذلك العدد من الحقب، ما يوقف الحقب المتأخرة التي تستمر فيها خسارة التدريب بالانخفاض بينما تتوقف نتائج التحقق عن التحسن؛ وهي الفجوة التي تستغلها هجمة حد الخسارة.










