
إطار بحثي لاكتشاف الأبواب الخلفية وإزالتها في النماذج اللغوية، يجمع بين الكشف عن الشذوذ القائم على السمات وإلغاء التعلّم القائم على LoRA عبر BERT وBART وLLaMA وQwen.
هذا هو المستودع الرسمي للورقة البحثية:
DUP: Detection-guided Unlearning for Backdoor Purification in Language Models
يقدّم DUP إطارًا موحّدًا يجمع بين الكشف عن الشذوذ القائم على السمات وإزالة التعلّم الموفّر للمعاملات لإزالة الأبواب الخلفية من نماذج اللغة المُدرَّبة مسبقًا. وهو فعّال عبر نماذج اللغة المُدرَّبة مسبقًا التقليدية ونماذج اللغة الكبيرة الحديثة على حدٍّ سواء، بما في ذلك BERT وBART وLLaMA 3B وQwen 3B.
يُطبَّق إطار DUP ويُختبر في البيئة التالية:
Python: 3.10
OS: Ubuntu 22.04
CUDA: 11.8
PyTorch: 2.1.2
Accelerate: 1.0.1
PEFT: 0.12.0
language-tool-python: 2.8.1
نزّل النماذج التالية وضعها تحت الدليل /victim_models:
bert-base-uncasedbart-baseLLaMA-3.2-3B-InstructQwen2.5-3Bمجموعات البيانات المسمومة جاهزة بالفعل وتقع في /poison_data
لشنّ هجمات الأبواب الخلفية:
python demo_attack.py
الهجمات المدعومة:
تحدّد هذه الوحدة المدخلات المسمومة باستخدام درجات مسافة Mahalanobis والبصمة الطيفية مع اختيار تكيّفي للطبقات.
python demo_detection.py
تزيل هذه الوحدة الأبواب الخلفية باستخدام التقطير القائم على LoRA الموجّه بالكشف:
python demo_unlearning.py
.
├── victim_models/ # Pretrained model weights
├── poison_data/ # poisoned datasets
├── openbackdoor/ # Core implementation of backdoor attacks and defenses
├── demo_attack.py # Backdoor attack scripts
├── demo_detection.py # Detection procedure
├── demo_unlearning.py # Unlearning procedure
└── README.md # Project documentation