SpineNet: تعلّم العمود الفقري المُتَغَيِّر المُقَاسَاتِ للاعتراف والتحديد

الشبكات العصبية التلافيفية (Convolutional Neural Networks) تُشفِّر عادةً الصورة المدخلة إلى سلسلة من الميزات الوسيطة ذات دقة تتناقص تدريجياً. بينما يُعد هذا الهيكل مناسباً للمهام التي تتطلب التصنيف، فإنه لا يُظهر أداءً جيداً في المهام التي تتطلب التعرف والتحديد في آن واحد (مثل كشف الكائنات). ولحل هذه المشكلة، تم اقتراح هياكل المُشفِّر-المُفكِّك (encoder-decoder)، والتي تُطبّق شبكة مُفكِّكة على نموذج أساسي مُصمم مسبقاً لمهام التصنيف. في هذه الورقة، نُقدّم حجّة تفيد بأن هياكل المُشفِّر-المُفكِّك غير فعّالة في إنتاج ميزات متعددة المقياس قوية، وذلك بسبب الاعتماد على نموذج أساسي يقلّل من المقياس. ونُقدّم SpineNet، وهو نموذج أساسي يمتلك ميزات وسيطة مُرتّبة وفقاً لمقياس متنوّع (scale-permuted)، مع اتصالات بين المقياسين، وتم تعلّمه عبر خوارزمية البحث عن البنية العصبية (Neural Architecture Search) في سياق مهام كشف الكائنات. وباستخدام كتل بناء مشابهة، تتفوّق نماذج SpineNet على نماذج ResNet-FPN بنسبة تصل إلى 3% في دقة AP على مقاييس مختلفة، مع استخدام 10-20% أقل من العمليات الحسابية (FLOPs). وبشكل خاص، تحقق SpineNet-190 دقة 52.5% AP باستخدام كاشف Mask R-CNN، و52.1% AP باستخدام كاشف RetinaNet على مجموعة بيانات COCO، وباستخدام نموذج واحد دون استخدام تعديلات عند الاختبار، مما يفوق بشكل كبير الأداء السابق للنماذج المماثلة. كما يمكن لـ SpineNet نقل مهاراته إلى مهام التصنيف، حيث حقق تحسّناً بنسبة 5% في دقة التصنيف الأولي (top-1) على مجموعة بيانات iNaturalist الصعبة ذات التصنيف الدقيق. الكود متاح عبر: https://github.com/tensorflow/tpu/tree/master/models/official/detection.