مدخل إلى الشبكات العصبية الالتفافية

المؤلف: عمر الصنهاجي الغازي *
*مهندس في المعلوميات و الرياضيات التطبيقية، مدير مشاريع و مهتم بميدان الذكاء الاصطناعي و سلاسل الكتل
صفحة لنكد إن

آخر تحديث: Aug. 11, 2023, 9:09 p.m.

سوف نتعرف في هذا المقال على أهم خصائص و مكونات الشبكات العصبية الالتفافية (Convolutional Neural Networks) التي تستخدم في التعرف على الصور و الأشياء



الحمد لله و الصلاة و السلام على سيدنا رسول الله و على آله و صحبه و من والاه
في هذا المقال، سوف نحاول توضيح المفاهيم التالية بإذن الله:
- ما معنى شبكة عصبية التفافية ؟
- ما هي الغاية منها و ميادين استعمالها ؟
- ما معنى عملية الالتفاف Convolution ؟
ما معنى عملية التجميع Pooling ؟
ما معنى دوال التفعيل Relu و Softmax ؟ و ما معنى التسطيح Flatten ؟

ما معنى الشبكة العصبية الالتفافية ؟
الشبكة العصبية الالتفافية Convolutional Neural Network هي تقنية من التقنيات المستعملة في التعلم المراقب.
الشبكة العصبية الالتفافية هي شبكة عصبية عادية مكونة من عدد من الطبقات من العصبونات.
الشيء المميز للشبكة الالتفافية أنها تستعمل بالخصوص في التعرف على الصور، مما يمكننا من استعمال تقنيات خاصة بالصور تجعل تدريب الشبكة العصبية أكثر فعالية.
الشبكات العصبية الالتفافية دورها الأساسي هو التعرف على الصور و الأشياء و تستعمل في عموم برامج الرؤية الحاسوبية Computer Vision

هندسة الشبكات العصبية الالتفافية



تتكون الشبكات الالتفافية بشكل عام من طبقة دخول، و طبقتي التفاف و تجميع تليهما طبقة تفعيل، إضافة إلى طبقة تسطيح، و طبقة ربط كامل.

طبقة الدخول
لنفترض أن الصور التي يتم تدريب الشبكة عليها تتكون من m x n بكسل
إذا كانت الصور رمادية، فإن طبقة الدخول يجب أن تكون ذات أبعاد m x n x 1
إذا كانت الصور ملونة، فإن طبقة الدخول يجب أن تكون ذات أبعاد m x n x 3 (بعد إضافي لكل لون من الألوان الأساسية الثلاثة: أحمرو أزرق و أخضر)

طبقة الالتفاف
الالتفاف Convolution هو عملية رياضية تتمثل في تطبيق فلتر (أو مصفاة) على مصفوفة الصورة الأصلية (عن طريق الجداء المصفوفي) من أجل إنشاء مصفوفة جديدة مختزَلة.
الغاية من هذه العملية هي:
- تجنب التعامل مع الأصفار في المصفوفة الأصلية، التي تكلف طاقة حسابية كبيرة للشبكة العصبية، و اختزالها في مصفوفة أصغر
- تغيير معاملات الفلاتر أثناء عملية تدريب الشبكة العصبية، حتى تتمكن الشبكة من استخراج ملامح الصورة تلقائيا (الأطراف و الحواف)




طبقة التفعيل
تقوم طبقة التفعيل بتطبيق دالة التفعيل (وحدة خطية معدلة , Rectified Linear Unit: ReLu ) من أجل تصفير مخارج العصبونات التي تعطي قيما سالبة، و تقوية فعالية تدريب الشبكة العصبية (انظر تفاصيل أكثر في موضوع الانتشار الخلفي Back propagation و خوارزمية الانحدار المتدرج Gradient Descent)
دالة التفعيل تثبت فعاليتها في تدريب الشبكات العصبية و تتفادى مشكل التدرج المتلاشي Vanishing gradient




طبقة التجميع
يتمثل التجميع Pooling في تقليص أبعاد المصفوفة عبر القيام بجمع عناصرها في مصفوفة أصغر.
هناك نوعان من التجميعات:
- تجميع قصوي Max pooling، يتمثل في القيام بجمع عناصر المصفوفة، و هو الأكثر استعمالا في الشبكات العصبية الالتفافية
- تجميع متوسط Average pooling، يتمثل في القيام بحساب متوسط قيم خانات المصفوفة





طبقة التسطيح
يتمثل التسطيح في تحويل كل مصفوفة مجمعة (و تسمى أيضا خارطة ملامح Feature map) ناتجة عن عمليات الالتفاف و التجميع في الأخير إلى سلسلة خطية عددها هو عدد خانات المصفوفة السابقة




طبقة الربط الكامل و تفعيل سوفت ماكس
تقوم هذه الطبقة الأخيرة بربط عصبونات طبقة التسطيح بشكل كامل مع عصبونات المخارج (التي يمثل كل عصبون منها طبقة تصنيف واحدة)، و يتم تفعيل كل عصبون من عصبونات المخارج بدالة تفعيل سوفت ماكس Softmax
دالة تفعيل سوفت ماكس هي دالة تفعيل خاصة تقوم بتوزيع الاحتماليات بين 0 و 1 على كل تصنيف، و هي التي تمكن من تحديد التصنيف الأكثر احتمالية حسب كل صورة مدخلة





إذن رأينا في هذا المقال جميع مكونات الشبكات العصبية الالتفافية التي تستعمل في التعرف على الصور و الأشياء، و تعرفنا على مفاهيم طبقات الالتفاف و التجميع و التفعيل و التسطيح
في المقال القادم إن شاء الله، سوف نقوم ببرمجة شبكة عصبية التفافية كاملة عبر مكتبات كيراس Keras و تنسر فلوو Tensor Flow تستطيع التعرف على الأرقام المكتوبة بخط اليد
نتمنى أن يكون المقال قد نال إعجابكم


مصادر المقال:
https://miro.medium.com/
https://tikz.net/janosh/
https://machinelearningmastery.com/
https://www.researchgate.net/
https://www.superdatascience.com/
https://vitalflux.com/
IBM AI engineering course

الرجوع إلى الصفحة الرئيسية