You are on page 1of 5

‫‪ ResNet50‬هو نوع مختلف من نموذج ‪ ResNet‬الذي يحتوي على ‪ 50‬طبقه( ‪ 48‬طبقة التفاف إلى جانب طبقة واحدة‬

‫‪ MaxPool‬وطبقة واحدة متوسطة (‪.Pool‬‬

‫نبدأ ببعض المعلومات األساسية ‪ ،‬مقارنة بالنماذج األخرى ‪ ،‬ثم نتعمق مباشرة في بنية ‪.ResNet50‬‬

‫في عام ‪ 2012‬في مسابقة تصنيف ‪ ، LSVRC2012‬فازت ‪ AlexNet‬بالسعر األول ‪ ،‬وبعد ذلك كان ‪ ResNet‬هو‬
‫الشيء األكثر إثارة لالهتمام الذي حدث لرؤية الكمبيوتر وعالم التعلم العميق‪.‬‬

‫نظرً ا لإلطار الذي قدمته ‪ ، ResNets‬فقد أصبح من الممكن تدريب الشبكات العصبية فائقة العمق وبهذا أعني أنه يمكن‬
‫للشبكة أن تحتوي على مئات أو آالف الطبقات وال تزال تحقق أدا ًء رائعًا‪.‬‬
‫تم تطبيق ‪ ResNets‬في البداية على مهمة‪ K‬التعرف على الصور ولكن كما يمكن أي ً‬
‫ضا استخدام إطار العمل لمهام الرؤية‬
‫غير الحاسوبية أيضً ا لتحقيق دقة أفضل‪.‬‬
‫وقد يجادل الكثير أن مجرد تكديس المزيد من الطبقات يمنحنا أي ً‬
‫ضا دقة أفضل في سبب الحاجة إلى التعلم المتبقي لتدريب‬
‫الشبكات‪ K‬العصبية فائقة العمق‪.‬‬
‫مشاكل‬

‫كما نعلم أن الشبكات‪ K‬العصبية التالفيفية العميقة رائعة ح ًقا في تحديد الميزات ذات المستوى المنخفض والمتوسط والعالي‬
‫من الصور وتكديس المزيد من الطبقات بشكل عام يمنحنا دقة أفضل ‪ ،‬لذا فإن السؤال الذي يطرح نفسه هو الحصول على‬
‫أداء أفضل للنموذج بنفس سهولة تكديس المزيد من الطبقات؟‬

‫مع هذه األسئلة ‪ ،‬تنشأ مشكلة تالشي ‪ /‬انفجار التدرجات التي تم التعامل معها‪ K‬إلى حد كبير بعدة طرق وتمكين الشبكات‪K‬‬
‫التي تحتوي على عشرات الطبقات من التقارب ولكن عندما تبدأ الشبكات العصبية العميقة في التقارب ‪ ،‬نرى مشكلة‬
‫أخرى تتمثل في تشبع الدقة ثم تدهورها بسرعة و لم يكن هذا بسبب فرط التجهيز كما قد يخمن المرء وإضافة المزيد من‬
‫الطبقات إلى نموذج عميق مناسب أدى فقط إلى زيادة خطأ التدريب‪.‬‬
‫تم تصحيح هذه المشكلة بشكل أكبر من خالل أخذ نموذج ضحل ونموذج عميق تم إنشاؤه باستخدام طبقات من النموذج‬
‫الضحل وإضافة طبقات هوية إليه ‪ ،‬وبالتالي ال ينبغي أن ينتج النموذج األعمق أي خطأ تدريب أعلى من نظيره‪ .‬كانت‬
‫الطبقات المضافة مجرد طبقات هوية‪.‬‬
‫شكل ‪1‬‬

‫في الشكل ‪ ، 1‬يمكننا أن نرى على اليسار واليمين أن النموذج األعمق ينتج دائمًا المزيد من األخطاء ‪ ،‬حيث في الواقع ال‬
‫ينبغي أن يفعل ذلك‪.‬‬

‫عالج المؤلفون هذه المشكلة من خالل تقديم إطار عمل التعلم المتبقي العميق ‪ ،‬لذلك قاموا بتقديم اتصاالت مختصرة تؤدي‬
‫ببساطة تعيينات الهوية‬
‫الشكل ‪2‬‬
‫ً‬
‫صراحة بتالئم رسم الخرائط المتبقية وقللوا من ذلك مثل )‪ H (x‬وتركوا الطبقات غير الخطية تناسب‬ ‫لقد سمحوا للطبقات‬
‫تعيين آخر ‪ F (x): = H (x) −x‬بحيث يصبح التعيين األصلي ‪ H (x): = F (x) + x‬كما يتضح من الشكل ‪.2‬‬

‫والفائدة من تعيين هوية االختصار هذه هي عدم وجود معلمات إضافية مضافة إلى النموذج وأي ً‬
‫ضا تم التحكم في الوقت‬
‫الحسابي‪.‬‬
‫الشكل ‪3‬‬
‫لتوضيح مدى جودة شبكة ‪ ResNet‬التي قاموا بتجميعها مع نموذج من ‪ 34‬طبقة ونموذج ‪ 18‬طبقة مع كل من التعيينات‬

‫العادية والمتبقية ولم تكن النتائج مذهلة للغاية حيث تفوقت الشبكة العادية المكونة من ‪ 18‬طبقة على الشبكة العادية المكونة‬
‫من ‪ 34‬طبقة وفي حالة تفوقت ‪ ResNet‬على ‪ 34‬طبقة من ‪ ResNet‬على ‪ 18‬طبقة ‪ ResNet‬كما يمكن رؤيته في‬
‫الشكل ‪.3‬‬

‫الجدول ‪1‬‬

‫سنناقش اآلن حول ‪ Resnet 50‬وأيضً ا الهندسة المعمارية للطبقة المذكورة أعاله ‪ 18‬و ‪ 34‬طبقة ‪ُ ResNet‬تعطى أيضًا‬
‫خرائط متبقية وال تظهر من أجل البساطة‪.‬‬

‫كان هناك تغيير صغير تم إجراؤه على ‪ ResNet 50‬وما فوق ذلك قبل ذلك ‪ ،‬تخطت اتصاالت االختصار طبقتين‬
‫ولكنهم اآلن يتخطون ثالث طبقات وأيضً ا تمت إضافة طبقات التفاف ‪ 1 * 1‬والتي سنراها بالتفصيل مع شبكة ‪ResNet‬‬
‫‪ 50‬هندسة معمارية‪.‬‬
‫كما نرى في الجدول ‪ ، 1‬تحتوي بنية ‪ resnet 50‬على العنصر التالي‪:‬‬

‫نتوء بحجم نواة ‪ 7 * 7‬و ‪ 64‬نواة مختلفة كلها بخطوة بحجم ‪ 2‬تعطينا طبقة واحدة‪.‬‬

‫بعد ذلك ‪ ،‬نرى أقصى تجمع مع حجم خطوة ‪.2‬‬

‫في االلتفاف التالي ‪ ،‬هناك نواة ‪ 1،64 * 1‬تتبع هذا نواة ‪ 3،64 * 3‬وأخيراً ‪ 1،256 * 1‬نواة ‪ ،‬تتكرر هذه الطبقات‬
‫الثالث في إجمالي ‪ 3‬مرات ‪ ،‬مما يمنحنا ‪ 9‬طبقات في هذه الخطوة‪.‬‬

‫بعد ذلك نرى نواة ‪ 1،128 * 1‬بعد ذلك نواة ‪ 3،128 * 3‬وأخيراً نواة ‪ 1،512 * 1‬تكررت هذه الخطوة ‪ 4‬مرات ‪،‬‬
‫مما أعطانا ‪ 12‬طبقة في هذه الخطوة‪.‬‬

‫بعد ذلك يوجد نواة ‪ 1256 * 1‬ونواة أخرى مع ‪ 3،256 * 3‬و ‪ 1،1024 * 1‬ويتكرر هذا ‪ 6‬مرات مما يعطينا إجمالي‬
‫‪ 18‬طبقة‪.‬‬

‫ثم مرة أخرى نواة ‪ 1،512 * 1‬مع اثنين آخرين من ‪ 3،512 * 3‬و ‪ 1،2048 * 1‬وتكرر هذا ‪ 3‬مرات مما يعطينا‬
‫إجمالي ‪ 9‬طبقات‪.‬‬

‫بعد ذلك نقوم بعمل تجمع متوسط وننهيها بطبقة متصلة بالكامل تحتوي على ‪ 1000‬عقدة وفي النهاية وظيفة‬
‫‪ ، softmax‬وهذا يعطينا طبقة واحدة‪.‬‬

‫نحن ال نحسب في الواقع وظائف التنشيط وطبقات التجميع القصوى ‪ /‬المتوسطة‪.‬‬

‫لذلك بإجمالي هذا يعطينا ‪ 50 = 1 + 9 + 18 + 12 + 9 + 1‬طبقة شبكة تالفيفية عميقة‪.‬‬

‫جدا في مجموعة التحقق من ‪ ، ImageNet‬وحقق نموذج ‪ ResNet 50‬معدل خطأ أعلى ‪ 1‬بنسبة‬ ‫كانت النتيجة جيدة ً‬
‫‪ 20.47‬بالمائة وحقق معدل خطأ أعلى ‪ 5‬بنسبة ‪ 5.25‬بالمائة ‪ ،‬تم اإلبالغ عن هذا للنموذج الفردي الذي يتكون من ‪50‬‬
‫طبقة ال مجموعة منه‪ .‬يوجد أدناه الجدول الموضح إذا كنت تريد مقارنته بشبكات ‪ ResNets‬األخرى أو بنماذج أخرى‪.‬‬

‫يمكن استخدام هذه البنية في مهام رؤية الكمبيوتر مثل تصنيف الصور وتوطين الكائنات واكتشاف الكائنات‪.‬‬

‫ويمكن أيضً ا تطبيق هذا اإلطار على مهام الرؤية غير الحاسوبية لمنحها فائدة العمق وتقليل النفقات الحسابية أيضًا‪.‬‬

‫‪ResNet50‬‬
‫‪ ResNet-50‬عبارة عن شبكة عصبية تالفيفية بعمق ‪ 50‬طبقة‪ ، ResNet .‬اختصار لـ ‪، Residual Networks‬‬
‫عبارة عن شبكة عصبية كالسيكية تستخدم كعمود فقري للعديد من مهام رؤية الكمبيوتر‪ .‬كان االختراق األساسي مع‬
‫‪ ResNet‬هو أنه سمح لنا بتدريب الشبكات العصبية العميقة للغاية مع أكثر من ‪ 150‬طبقة‪ .‬إنها شبكة عصبية مبتكرة تم‬
‫تقديمها ألول مرة بواسطة ‪ Kaiming He‬و ‪ Xiangyu Zhang‬و ‪ Shaoqing Ren‬و ‪ Jian Sun‬في ورقة بحثية حول‬
‫رؤية الكمبيوتر لعام ‪ 2015‬بعنوان "التعلم العميق المتبقي للتعرف على الصور"‪.‬‬

‫الشبكات العصبية التالفيفية لها عيب رئيسي ‪" -‬تالشي مشكلة التدرج"‪ .‬أثناء التكاثر العكسي ‪ ،‬تنخفض قيمة التدرج‬
‫اللوني بشكل كبير ‪ ،‬وبالتالي ال يكاد أي تغيير يأتي في األوزان‪ .‬للتغلب على هذا ‪ ،‬يتم استخدام ‪ .ResNet‬إنها تستفيد‬
‫من "‪."SKIP CONNECTION‬‬

‫اآلن سنتحدث عن بنية ‪ .ResNet50‬تتكون بنية ‪ ResNet50‬من ‪ 4‬مراحل كما هو موضح في الرسم البياني أدناه‪.‬‬
‫يمكن للشبكة أن تأخذ صورة اإلدخال ذات االرتفاع والعرض كمضاعفات‪ 32 K‬و ‪ 3‬كعرض القناة‪ .‬من أجل التفسير ‪،‬‬
‫سوف نعتبر حجم المدخالت هو ‪ .3 × 224 × 224‬كل هندسة ‪ ResNet‬تؤدي االلتفاف األولي والتجميع األقصى‬
‫باستخدام أحجام نواة ‪ 7 × 7‬و ‪ 3 × 3‬على التوالي‪ .‬بعد ذلك ‪ ،‬تبدأ المرحلة األولى من الشبكة وتحتوي على ‪ 3‬كتل‬
‫متبقية تحتوي كل منها على ‪ 3‬طبقات‪ .‬حجم النواة المستخدمة‪ K‬إلجراء عملية االلتفاف في جميع الطبقات الثالث لكتلة‬
‫المرحلة ‪ 1‬هي ‪ 64‬و ‪ 64‬و ‪ 128‬على التوالي‪ .‬تشير األسهم المنحنية إلى اتصال الهوية‪ .‬يمثل السهم المتقطع المتصل‬
‫أن عملية االلتواء في الكتلة المتبقية تتم بخطوة ‪ ، 2‬وبالتالي ‪ ،‬سيتم تقليل حجم اإلدخال إلى النصف من حيث االرتفاع‬
‫والعرض ولكن سيتم مضاعفة عرض القناة‪ .‬مع تقدمنا من مرحلة إلى أخرى ‪ ،‬يتضاعف عرض القناة ويقل حجم اإلدخال‬
‫إلى النصف‪.‬‬

‫بالنسبة للشبكات األعمق مثل ‪ ResNet50‬و ‪ ResNet152‬وما إلى ذلك ‪ ،‬يتم استخدام تصميم عنق الزجاجة‪ .‬لكل‬
‫وظيفة متبقية ‪ ، F‬يتم تكديس ‪ 3‬طبقات واحدة فوق األخرى‪ .‬الطبقات الثالث هي ‪ 1 × 1 ، 3 × 3 ، 1 × 1‬تالفيف‪.‬‬
‫طبقات االلتفاف ‪ 1 × 1‬مسؤولة عن تقليل األبعاد ثم استعادتها‪ُ .‬تترك طبقة ‪ 3 × 3‬بمثابة عنق زجاجة بأبعاد إدخال ‪/‬‬
‫إخراج أصغر‪.‬‬

‫أخيرً ا ‪ ،‬تحتوي الشبكة على طبقة متوسط التجميع متبوعة بطبقة متصلة بالكامل بها ‪ 1000‬خلية عصبية (إخراج فئة‬
‫‪.)ImageNet‬‬

You might also like