Input — what the filter sees: one brightness per pixel, 0 (black) to 255 (white).Output — the feature map. One number per position of the filter.
3×3 patch of the image
×
the filter (edit any number)
=
nine products
→
add them up
الفكرة كلّها.
الـ filter شبكةٌ صغيرة من الأرقام — هنا 3×3، أي تسعة weights. ضعه فوق رقعة 3×3 من الصورة،
واضرب كلّ pixel في الـ weight الذي فوقه، واجمع حواصل الضرب التسعة. ذلك الرقم الواحد هو pixel واحد من
الـ output. ثمّ تحرّك pixel واحدًا إلى اليمين وأعِد الحساب، بالـ weights التسعة نفسها، حتى يمرّ
الـ filter على كلّ موضع.
انظر إلى Vertical edges: العمود الأيسر سالب، والأيمن موجب، والأوسط صفر، ومجموع الـ weights
التسعة 0. على رقعةٍ ذات سطوعٍ واحد متساوٍ تُلغي السوالبُ الموجباتِ ويكون المجموع 0 تمامًا. لا يبقى شيء إلّا
حيث يكون الجانب الأيمن أسطع أو أغمق من الأيسر. هذا هو كاشف الحوافّ (edge detector).
أين يأتي دور الـ CNN.
الـ convolutional layer هي هذا تمامًا، مع فرقٍ واحد: لا أحد يكتب الأرقام التسعة بيده. تبدأ عشوائيّة ويعدّلها
التدريب، وتشغّل الطبقة filters كثيرة جنبًا إلى جنب، كلٌّ منها يُنتج feature map خاصّة به. وعادةً ما تنتهي
الطبقة الأولى من شبكة صور مُدرَّبة بـ filters تشبه كثيرًا ما في هذه الصفحة — ولم يطلب منها أحد أن
تبحث عن الحوافّ.
(بدقّة، تحريك الـ filter دون قلبه هو cross-correlation؛ أمّا الـ convolution في الكتب فتقلب الـ
kernel أوّلًا. ومكتبات الـ deep learning تفعلها بهذه الطريقة وتسمّيها convolution على أيّ حال.)
أمور تستحقّ التجربة:
1. House، Vertical edges، Whole image at once. تضيء الجدران
والباب وجانبا النوافذ؛ وتختفي الخطوط الأفقية الطويلة — الأرض وحافّة السقف وعتبات النوافذ. انتقل إلى
Horizontal edges فيتبادلان الأدوار. والسقف مائل، فيظهر في الاثنين.
2. وما زلت على House، انقر في أيّ مكان من السماء الصافية. الرقعة تسعة أرقام متطابقة، والمجموع 0
تمامًا.
3. Vertical edges مرّة أخرى، معروضةً Signed. يظهر جانبا الباب بلونين متعاكسين:
بالقراءة من اليسار إلى اليمين، الانتقال من الفاتح إلى الغامق سالب ومن الغامق إلى الفاتح موجب. الآن اختر
ReLU، وهي ما يطبّقه الـ CNN بعد كلّ filter — فيختفي نصف الحوافّ. ولكي ترى الاثنين تحتاج الشبكة
إلى filter ثانٍ بإشارات مقلوبة.
4. اختر Do nothing واكتب رقمًا مختلفًا في مكانٍ ما من الشبكة. كلّ filter مجرّد تسعة أرقام،
ولا شيء أكثر. ثمّ جرّب Your own image — تبقى في متصفّحك ولا تُرفَع إلى أيّ مكان.