التدريب العملي في مجال تعلّم الآلة: تصنيف الصور

مقدمة عن الشبكات العصبية التفافِية

تم تحقيق إنجاز كبير في مجال إنشاء نماذج لتصنيف الصور من خلال اكتشاف أنّه يمكن استخدام شبكة عصبية التفافية (CNN) لاستخراج تمثيلات متزايدة المستوى لمحتوى الصورة. بدلاً من معالجة البيانات مسبقًا لاستخراج ميزات مثل الأشكال والقوام، تأخذ شبكة النقل التسلسلي للصور (CNN) بيانات وحدات البكسل الأولية للصورة فقط كمدخلات و"تتعرّف" على كيفية استخراج هذه الميزات، وتستنتج في النهاية نوع العنصر الذيتشكله.

في البداية، تتلقّى شبكة النقل التسلسلي للصور (CNN) خريطة ميزات إدخال: وهي مصفوفة ثلاثية الأبعاد حيث يتوافق حجم السمتَين الأوليتَين مع الطول والعرض للصور بالبكسل. حجم السمة الثالثة هو 3 (يتوافق مع القنوات الثلاث للصورة الملونة: الأحمر والأخضر والأزرق). تتألف شبكة النقل العصبية التسلسلية من مجموعة من الوحدات، تُجري كلّ وحدة منها ثلاث عمليات.

1. الالتفاف

تُستخرج عملية التفاف مربّعات من خريطة الكيانات المدرَجة في الإدخال، وتطبّق فلاتر عليها لحساب ميزات جديدة، ما يؤدي إلى إنشاء خريطة كيانات مُدرَجة في الإخراج أو كيان مُدرَج في نموذج التفاف (قد يكون حجمه وعمقه مختلفَين عن خريطة الكيانات المدرَجة في الإدخال). يتم تحديد عمليات التفاف من خلال مَعلمتَين:

  • حجم المربّعات التي يتم استخراجها (عادةً 3×3 أو 5×5 بكسل)
  • عمق خريطة ميزات الإخراج، الذي يتوافق مع عدد الفلاتر التي يتم تطبيقها

أثناء عملية التفاف، تنزلق الفلاتر (المصفوفات التي تبلغ مساحتها حجم المربّع) بفعالية على شبكة خريطة العناصر المدخلة أفقيًا وعموديًا، بكسل واحد في المرة، مع استخراج كل مربّع مقابل (راجِع الشكل 3).

عملية لفّ 3x3 على خريطة ميزة
4x4 الشكل 3. تم إجراء عملية تحويل ضوئي 3×3 بعمق 1 على خريطة ميزات إدخال 5×5، التي تبلغ عمقها أيضًا 1. هناك تسعة مواقع محتملة بحجم 3×3 لمحاولة استخراج مربّعات من خريطة العناصر بحجم 5×5، لذا ينتج عن هذا التصفيف 3×3 خريطة عناصر ناتجة.

لكل زوج من الفلتر والوحدة، تُجري شبكة النقل التسلسلي للصور عملية ضرب لكل عنصر من ملف تعريف العميل ومصفوفة الوحدة، ثم تُجمع كل عناصر المصفوفة الناتجة للحصول على قيمة واحدة. بعد ذلك، يتمّ عرض كلّ قيمة من هذه القيم الناتجة لكلّ زوج من مربّعات الفلاتر في مصفوفة السمة الملتفة (راجِع الشكلين 4(أ) و4(ب)).

خريطة ميزات 5×5 وشبكة تلافيف 3×3 الشكل 4(أ). الجانب الأيسر: خريطة ميزات إدخال 5×5 (العمق 1). اليمين: عملية التفاف بحجم 3×3 (العمق 1).

الشكل 4(ب): على يمين الصفحة: يتم تنفيذ عملية التفاف بحجم 3×3 على خريطة ميزات الإدخال بحجم 5×5. الجانب الأيمن: العنصر الملتوي الناتج انقر على قيمة في خريطة الكيانات الناتجة لاطلاعك على كيفية احتسابها.

أثناء التدريب، "تتعرّف" شبكة النقل التسلسلي للصور على القيم المثلى لمصفوفات الفلاتر التي تتيح لها استخراج ميزات مفيدة (الأشكال والزوايا والقوام) من خريطة ميزات الإدخال. مع زيادة عدد الفلاتر (عمق خريطة ميزات الإخراج) المُطبَّقة على الإدخال، يزداد أيضًا عدد الميزات التي يمكن لشبكة CNN استخراجها. ومع ذلك، فإنّ الفلاتر تُشكّل معظم الموارد التي تنفقها شبكة النقل العصبية التسلسلي، لذا يزداد وقت التدريب أيضًا مع إضافة المزيد من الفلاتر. بالإضافة إلى ذلك، يقدّم كل فلتر تمت إضافته إلى الشبكة قيمة إضافية أقل مقارنةً بالفلتر السابق، لذا يهدف المهندسون إلى إنشاء شبكات تستخدِم الحد الأدنى من عدد الفلاتر اللازمة لاستخراج الميزات اللازمة لصنيف الصور بدقة.

2. ReLU

بعد كل عملية تلافيف، تُطبِّق شبكة CNN عملية تحويل "وحدة خطية معدَّلة" (ReLU) على الميزة التي تم تلافيفها، وذلك لإدخال غير الخطية في النموذج. تعرِض دالة ReLU، \(F(x)=max(0,x)\)، القيمة x لجميع قيم x > 0، وتعرِض القيمة 0 لجميع قيم x ≤ 0.

3- تجميع

بعد دالة ReLU، تأتي خطوة تجميع، حيث تُخفِّض شبكة النقل التسلسلي للصور (CNN) عيّنة الالتفاف السمة (لتوفير الوقت في المعالجة)، ما يؤدي إلى تقليل عدد سمات خريطة السمات، مع الحفاظ على معلومات السمات الأكثر أهمية. تُعرف إحدى خوارزميات جمع الحد الأقصى الشائعة المستخدَمة في هذه العملية.

تعمل ميزة "تجميع الحد الأقصى" بطريقة مشابهة للالتفاف. ننتقل فوق خريطة العناصر ونستخرج مربّعات بحجم محدّد. بالنسبة إلى كل مربّع، يتمّ إخراج الحدّ الأقصى للقيمة إلى خريطة ميزات جديدة، ويتمّ تجاهل جميع القيم الأخرى. تتطلب عمليات Max pooling مَعلمتَين:

  • حجم فلتر "تجميع الخلاصات القصوى" (عادةً 2×2 بكسل)
  • Stride: المسافة، بوحدة البكسل، التي تفصل كل مربّع مستخرَج على عكس التصفّح، حيث تنزلق الفلاتر على خريطة السمات بكسلًا تلو الآخر، في تجميع الحد الأقصى، تحدّد الخطوة المواقع التي يتم فيها استخراج كل مربّع. بالنسبة إلى الفلتر 2×2، تُحدِّد الخطوة 2 أنّ عملية تجميع القمم القصوى ستستخرج جميع الوحدات المربّعة 2×2 غير المتداخلة من خريطة العناصر (راجِع الشكل 5).

صورة متحركة لعملية تجميع الحد الأقصى على خريطة ميزات 4×4 باستخدام فلتر 2×2 وخطوة
2

الشكل 5. الجانب الأيسر: تم إجراء تجميع أقصى على خريطة ميزات 4×4 باستخدام فلتر 2×2 وخطوة 2. على اليسار: ناتج عملية تجميع القمم يُرجى العِلم أنّ خريطة العناصر الناتجة أصبحت الآن 2×2، مع الاحتفاظ بأعلى القيم فقط من كل مربّع.

الطبقات المكتملة الاتصال

في نهاية الشبكة العصبية التوليدية، تتوفّر طبقة واحدة أو أكثر متصلة بالكامل (عندما تكون طبقتان "متصلتان بالكامل"، تكون كل عقدة في الطبقة الأولى متصلة بكل عقدة في الطبقة الثانية). ووظيفتها هي تنفيذ التصنيف استنادًا إلى الميزات المستخرَجة من عمليات التفاف البيانات. عادةً، تحتوي الطبقة النهائية المتصلة بالكامل على دالة تنشيط softmax، والتي تُخرج قيمة احتمالية تتراوح بين 0 و1 لكل تصنيف من التصنيفات التي يحاول النموذج توقّعها.

يوضّح الشكل 6 البنية الشاملة لشبكة عصبية تفافية.

مخطّط بياني شامل لشبكة عصبية تلافيفية يعرض الإدخال،
وحدتَي تلافيف، وطبقتَين مكتملتَي الاتصال للتصنيف

الشكل 6: تتضمّن شبكة النقل العصبية التسلسلي (CNN) المعروضة هنا وحدتَي تصفّح (تصفّح + ReLU + تجميع) لاستخراج الخصائص، وطبقتَين متصلتَين بالكامل للتصنيف. قد تحتوي شبكات النقل العصبية التجميعية الأخرى على أعداد أكبر أو أصغر من الوحدات التجميعية، وطبقات متصلة بالكامل أكبر أو أقل. غالبًا ما يجري المهندسون تجارب لمعرفة الإعدادات التي تحقّق أفضل النتائج لنموذجهم.