يحتوي هذا المستودع على رمز مصدر Pytorch لـ AAAI2020 عن طريق الفم: GRAPY-ML: الرسم البياني الهرمي التعلم المتبادل للحوض البشري عبر Haoyu He و Jing Zhang و Qiming Zhang و Dacheng Tao.
Pytorch = 1.1.0
Torchvision
سكيبي
Tensorboardx
numpy
Opencv-Python
Matplotlib
تحتاج إلى تنزيل مجموعات البيانات الثلاث. يمكن العثور على مجموعة بيانات CIHP ومجموعة بيانات ATR في هذا المستودع ويتم استعارة الكود لدينا بشكل كبير أيضًا.
بعد ذلك ، يجب ترتيب مجموعات البيانات في المجلد التالي ، ويجب إعادة ترتيب الصور بهيكل الملف المقدم.
/data/dataset/
يتم توفير نماذج بريدرين وبعض النماذج المدربة هنا للاختبار والتدريب.
اسم النموذج | وصف | مستمدة من |
---|---|---|
deeplab_v3plus_v3.pth | أوزان الأوزان الأسبق لـ DeepLab V3+ | |
CIHP_PREREARIN.PTH | تم تدريب نموذج DeepLab V3+ المستنسخ على مجموعة بيانات CIHP | deeplab_v3plus_v3.pth |
ciHP_Trained.pth | نموذج GPM مدرب على مجموعة بيانات CIHP | CIHP_PREREARIN.PTH |
deeplab_multi-dataset.pth | نموذج DeepLab V3+ التعلم متعدد المهام المستنسخة مدرب على CIHP ، مجموعة بيانات Pascal-Ferson و ATR | deeplab_v3plus_v3.pth |
gpm-ml_multi-dataset.pth | نموذج GRAPY-ML مدرب على CIHP ، مجموعة بيانات PASCAL و ATR | deeplab_multi-dataset.pth |
gpm-ml_finetune_pascal.pth | طراز Grapy-ML تم تحريكه على مجموعة بيانات Pascal-Person | gpm-ml_multi-dataset.pth |
للاختبار ، قم بتشغيل البرامج النصية التالية:
bash eval_gpm.sh
bash eval_gpm_ml.sh
أثناء التدريب ، تحتاج أولاً إلى الحصول على نموذج DeepLab PretRain (مثل CIHP_DLAB.PTH) على كل مجموعة بيانات. يهدف هذا الفعل إلى توفير نتيجة أولية أولية جديرة بالثقة لعملية GSA في GPM.
bash train_dlab.sh
يتم توفير نموذج ImageNet PretRain في الجدول التالي ، ويجب عليك أن تثير اسم مجموعة البيانات والفئات المستهدفة إلى مجموعة البيانات التي تريدها في البرنامج النصي. (CIHP: 20 فئة ، باسكال: 7 فصول و ATR: 18 فئة)
في الخطوة التالية ، يجب عليك الاستفادة من نموذج DeepLab Pretrain لزيادة تدريب نموذج GPM.
bash train_gpm.sh
يوصى باتباع إعدادات التدريب في ورقتنا لإعادة إنتاج النتائج.
أولاً ، يمكنك إجراء عملية DeepLab Pretrain بواسطة البرنامج النصي التالي:
bash train_dlab_ml.sh
يتم تحويل DeepLab V3+ متعدد البيانات كمهمة بسيطة متعددة المهام.
بعد ذلك ، يمكنك تدريب طراز GPM-ML مع مجموعة التدريب من جميع مجموعات البيانات الثلاثة بواسطة:
bash train_gpm_ml_all.sh
بعد هذه المرحلة ، سيكون أول مستويين من نموذج GPM-ML أكثر قوة وتعميمًا.
أخيرًا ، يمكنك محاولة FineTune على كل مجموعة بيانات بواسطة نموذج ما قبل المسبق الموحد.
bash train_gpm_ml_pascal.sh
@inproceedings{he2020grapy,
title={Grapy-ML: Graph Pyramid Mutual Learning for Cross-dataset Human Parsing},
author={He, Haoyu and Zhang, Jing and Zhang, Qiming and Tao, Dacheng},
booktitle={Proceedings of the AAAI Conference on Artificial Intelligence},
year={2020}
}