استنساخ الريبو
git clone https://github.com/peterliht/knowledge-distillation-pytorch.git
تثبيت التبعيات (بما في ذلك pytorch)
pip install -r requirements.txt
ملاحظة: يمكن العثور على جميع المقاييس المفرطة وتعديلها في "params.json" ضمن "model_dir"
-قم بتدريب شبكة شبكة سي إن إن من 5 طبقات مع المعرفة المقطرة من نموذج RESNET-18 الذي تم تدريبه مسبقًا
python train.py --model_dir experiments/cnn_distill
-قم بتدريب نموذج RESNET-18 مع المعرفة المقطوعة من معلم RESNEXT-29 تم تدريبه مسبقًا
python train.py --model_dir experiments/resnet18_distill/resnext_teacher
- بحث Hyperparameter عن تجربة محددة ('parent_dir/params.json')
python search_hyperparams.py --parent_dir experiments/cnn_distill_alpha_temp
-تحديد نتائج تجارب الأبحاث الحديثة
python synthesize_results.py --parent_dir experiments/cnn_distill_alpha_temp
الوجبات السريعة (مزيد من التفاصيل التي يتعين إضافتها):
-تقطير المعرفة من Resnet-18 إلى 5 طبقات CNN
| نموذج | التسرب = 0.5 | لا تسرب |
|---|---|---|
| 5 طبقات CNN | 83.51 ٪ | 84.74 ٪ |
| 5 طبقة CNN ث/ ريسنيت 18 | 84.49 ٪ | 85.69 ٪ |
- تقطير المعرفة من النماذج الأعمق إلى Resnet-18
| نموذج | دقة الاختبار |
|---|---|
| الأساس Resnet-18 | 94.175 ٪ |
| + kd oderesnet-28-10 | 94.333 ٪ |
| + kd preresnet-110 | 94.531 ٪ |
| + KD Densenet-100 | 94.729 ٪ |
| + KD Resnext-29-8 | 94.788 ٪ |
H. Li ، "استكشاف تقطير المعرفة للشبكات العصبية العميقة لحلول الأجهزة الفعالة" ، تقرير CS230 ، 2018
هينتون ، جيفري ، أوريول فينالس ، وجيف دين. "تقطير المعرفة في شبكة عصبية." Arxiv preprint Arxiv: 1503.02531 (2015).
Romero ، A. ، Ballas ، N. ، Kahou ، SE ، Chassang ، A. ، Gatta ، C. ، & Bengio ، Y. (2014). fitnets: تلميحات للشبكات العميقة الرقيقة. Arxiv preprint Arxiv: 1412.6550.
https://github.com/cs230-stanford/cs230-stanford.github.io
https://github.com/bearpaw/pytorch-lassification