day 21 - Convolutional Neural
Networks (CNN)
day 21 -
Convolutional Neural
Networks (CNN)
السلام عليكم ورحمة الله... معاكم Kaito :)
مرحبا بيكم فالنهار 21 ديال سلسلة 30 يوم من التعلم الآلي..
شفنا بشكل واسع الشبكات العصبية وكيفاش خدامين
اليوم غنشوفو واحد النوع من هاد neural networks
حيت هوما أنواع.. كل واحد فين كيتستعمل
اليوم غندويو على Convolutional Neural Networks
كيتسماو أيضا CNN
لا لا ماشي هادو..

وا هادو يا لمعلم..

ولكن ماتدهشرش اصديقي..
غنبسطو الأمور كيف ديما..
شناهو CNN؟
الشبكة العصبية التلافيفية (CNN) هي واحد النوع من الشبكات العصبية الاصطناعية
اللي تصممات باش تعالج بيانات الشبكة المرئية بحال التصاور والفيديوات.
واهاد شبكات CNN كنطبقوها باش نعرفو الأنماط اللي كاينين في الصور،
وهدشي كيخليها مفيدة لمهام بحال تصنيف الصور،
و مهام Object Detection،
وحتى إنشاء الصور!
اييه بهاد CNN كتقدر تقاد تصاور جداد او تبدل عليهم :)

كيفاش كيدير ليها؟
ساهلة
كيخدم كيما كيخدم دماغنا
باش كتقدر تميز او توصف وجه انسان؟
كتبقا تشوف واش عندو عينين, نيف, فم, اذنين.. فدماغك كتشوف كل وحدة وملي كتجمعهوم كتقول هذا وجه كامل ..
هادا هو الكونسبت ديال CNN ولكن اعمق
هو كيحاول يشوف بالبكسلز pixels
وكيبدا من اصغر نقطة وكيبدا يجمع كل حاجة بوحدها
حتى كيكون واحد التشكيلة كيسميها feature
وكيدير نفس الحاجة لنقط اخرى حتى كيجمع كلشي مع كلشي وكيكون الصورة على حسب المجموعات اللي اكتشف

شنو هما الخطوات اللي كيدوز منهم هاد CNN؟
هاد النوع من الشبكة العصبية كيحتوي على طبقات من الخلايا العصبية المترابطة..
بحيث ان كل neuron كتتفاعل مع neurons اللي محيطين بيها فنفس الطبقة..
الطبقة الأولى كتكتشف ملامح بسيطة بحال الخطوط والمستويات.
ومن بعد كتنقل الملامح للطبقة التالية لي كتجمعها باش تكون ملامح أكثر تعقيداً.
وهكذا حتى كانوصلو لآخر طبقة لي كتميز الأنماط المعقدة بنسبة عالية من الدقة.
وهاد الطبقات هما :
الطبقات التلافيفية Convolutional Layers،
وطبقات التجميع Pooling Layers،
والطبقات المتصلة بالكامل (Dense Layer (Fully-Connected Layers.

الطبقة التلافيفية Convolutional Layers:
هذه هي الطبقة الأولى والمرحلة الاولى،
الداتا كتصور هي الصورة اللي كترجع على شكل واحد المربع من pixels
حيتاش PC كيتعامل مع الارقام 0 و 1
مكيعرفش لا تصاور لا الوان لا والو

هاد الطبقة كتقوم بتطبيق عملية التلافيف على البيانات الداخلة input image
باستخدام فلاتر filters متعددة ذات أحجام مختلفة.
شناهما هاد الفلافل اللي كتقولينا اصاحبي؟ 💀
التلافيف (Convolution هو عملية رياضية أساسية ف CNNs
و هو عبارة عن ضرب جزئي لمصفوفتين matrix،

هاد feature detector هو الفلتر ديالنا..
بحيث كيتم تمرير هاد الفلتر الصغير (كيتسمى ايضا Kernel)
بشكل منزلق عبر المصفوفة الأولى.
وهاكدا كيقوم الفلتر باستخراج ملامح محلية من المصفوفة الأولى بحال الخطوط والمستويات, ولا الأشكال البسيطة.
والنتيجة ديالو هي مصفوفة ثانية أصغر حجما لي كتحتوي على الملامح المستخرجة من المصفوفة الأولى.
وكتسمى Feature Map

طبقة التجميع Pooling Layers:
هاد الطبقة كتستعمل لتقليل الحجم المكاني (العرض والارتفاع)
ديال feature map اللي خرجات لينا فالطبقة الاولى،
طبقات التجميع كيتبعو واحد تسلسل من طبقة ولا أكثر ديال الطبقات التلافيفية
وكتهدف باش تدمج الميزات التي تم التعلم ديالها والتعبير عنها فخريطة الميزات feature map ديال الطبقة السابقة .
بهاد الشكل، يمكن نعتبرو التجميع تقنية لضغط ولا تعميم تمثيلات الميزات feature representations

كاينين أنواع كثار ديال Pooling:
Max Pooling
Average Pooling
Sum Pooling
…
كل واحد عندو طريقة التطبيق الخاصة بيه
غالبًا ما كتكون طبقات التجميع بسيطة جدًا،
مثلا ف average pooling باش تنشئ خريطة السمات الخاصة بيها
كاتاخذ متوسط قيمة المدخلات
بالنسبة ل max pooling
كاتاخذ الحد الأقصى ليها

مثلا ف دوك 4 مربعات الاولين على اليسار اكبر قيمة هي 1
خديناها وحطيناها ف Feature map الجديدة ديالنا
وهادي اللي عندنا فيها 4 1 و 0 1 ختارينا اكبر رقم وحطيناه ف الماب ديالنا..
وهكا غاديين حتا كنكملوها..

ولكن مزال مسالينا..
ديك Pooled Feature map اللي خرجات لينا فالطبقة السابقة
كنديرو ليها واحد اللعيبة كتسمى Flattening
وهي بكل بساطة كنردوها من مصفوفة لواحد السطر ديال القيم باش تجي مزيانة وواجدة للطبقة الاخيرة اللي عندنا

الطبقة المتصلة بالكامل Fully-Connected Layers:
بعد عدة طبقات تلافيفية ومجمعة،
الطبقات المتصلة بالكامل أو Fully-Connected Layers
هي من آخر طبقات الشبكات العصبية التلافيفية
وظيفتها أنها كتقوم بربط كل neuron بالطبقة السابقة بروابط مباشرة
بمعنى أن كل عقدة كاتتأثر بعقدة في الطبقة السابقة
والهدف منها هو تحویل مصفوفة السمات الناتجة من الطبقات التلافيفية إلى نموذج قابل للاستخدام فحالات التصنيف والاستدلال.
عادة ما كيكونو آخر جوج طبقات فالشبكة العصبية متصلتين بالكامل.

وصافي هادي هي CNN
وراه هاد البروسيس كيتعاود بزاف دلمرات ببزاف ديال الطبقات
البلان كاين ف Feature Extractors
هادوك هما Weights ديالنا
ملي كتعطينا الطبقة الاخيرة النتيجة المتوقعة كنحسبو Cost Function
وكنبقاو نبدلو فالقيم ديال Feature Extractor
حتا كتخرج لينا توقعات اللي بغينا
هادشي بخلاصة هو CNN
غدا غنديرو واحد التطبيق ديال هاد CNN على واحد المثال من الحياة ديالنا
وغتفهمو مزيااااان كل خطوة كيفاش كنطبقوها
هادي خلاصة اليوم:
نتلاقاو فايمايل اخر غدا!
كنتمنى تكونو استافدتو.. ايلا عندكم شي تساؤل اولا مشرحتش شي حاجة مزيان، غير صيفط ليا رد فهاد المايل نيت..
— Kaito
ملاحظات:
DataScience Bdarija on Instagram
Image Classification with Convolutional Neural Networks (CNNs)
ايلا عاجبك هدشي وقادر باش تساند هاد newsletter بدعم مادي
دخل لهنا: https://ko-fi.com/callmekaito
شكرا (:

السلام عليكم ورحمة الله... معاكم Kaito :)
مرحبا بيكم فالنهار 21 ديال سلسلة 30 يوم من التعلم الآلي..
شفنا بشكل واسع الشبكات العصبية وكيفاش خدامين
اليوم غنشوفو واحد النوع من هاد neural networks
حيت هوما أنواع.. كل واحد فين كيتستعمل
اليوم غندويو على Convolutional Neural Networks
كيتسماو أيضا CNN
لا لا ماشي هادو..

وا هادو يا لمعلم..

ولكن ماتدهشرش اصديقي..
غنبسطو الأمور كيف ديما..
شناهو CNN؟
الشبكة العصبية التلافيفية (CNN) هي واحد النوع من الشبكات العصبية الاصطناعية
اللي تصممات باش تعالج بيانات الشبكة المرئية بحال التصاور والفيديوات.
واهاد شبكات CNN كنطبقوها باش نعرفو الأنماط اللي كاينين في الصور،
وهدشي كيخليها مفيدة لمهام بحال تصنيف الصور،
و مهام Object Detection،
وحتى إنشاء الصور!
اييه بهاد CNN كتقدر تقاد تصاور جداد او تبدل عليهم :)

كيفاش كيدير ليها؟
ساهلة
كيخدم كيما كيخدم دماغنا
باش كتقدر تميز او توصف وجه انسان؟
كتبقا تشوف واش عندو عينين, نيف, فم, اذنين.. فدماغك كتشوف كل وحدة وملي كتجمعهوم كتقول هذا وجه كامل ..
هادا هو الكونسبت ديال CNN ولكن اعمق
هو كيحاول يشوف بالبكسلز pixels
وكيبدا من اصغر نقطة وكيبدا يجمع كل حاجة بوحدها
حتى كيكون واحد التشكيلة كيسميها feature
وكيدير نفس الحاجة لنقط اخرى حتى كيجمع كلشي مع كلشي وكيكون الصورة على حسب المجموعات اللي اكتشف

شنو هما الخطوات اللي كيدوز منهم هاد CNN؟
هاد النوع من الشبكة العصبية كيحتوي على طبقات من الخلايا العصبية المترابطة..
بحيث ان كل neuron كتتفاعل مع neurons اللي محيطين بيها فنفس الطبقة..
الطبقة الأولى كتكتشف ملامح بسيطة بحال الخطوط والمستويات.
ومن بعد كتنقل الملامح للطبقة التالية لي كتجمعها باش تكون ملامح أكثر تعقيداً.
وهكذا حتى كانوصلو لآخر طبقة لي كتميز الأنماط المعقدة بنسبة عالية من الدقة.
وهاد الطبقات هما :
الطبقات التلافيفية Convolutional Layers،
وطبقات التجميع Pooling Layers،
والطبقات المتصلة بالكامل (Dense Layer (Fully-Connected Layers.

الطبقة التلافيفية Convolutional Layers:
هذه هي الطبقة الأولى والمرحلة الاولى،
الداتا كتصور هي الصورة اللي كترجع على شكل واحد المربع من pixels
حيتاش PC كيتعامل مع الارقام 0 و 1
مكيعرفش لا تصاور لا الوان لا والو

هاد الطبقة كتقوم بتطبيق عملية التلافيف على البيانات الداخلة input image
باستخدام فلاتر filters متعددة ذات أحجام مختلفة.
شناهما هاد الفلافل اللي كتقولينا اصاحبي؟ 💀
التلافيف (Convolution هو عملية رياضية أساسية ف CNNs
و هو عبارة عن ضرب جزئي لمصفوفتين matrix،

هاد feature detector هو الفلتر ديالنا..
بحيث كيتم تمرير هاد الفلتر الصغير (كيتسمى ايضا Kernel)
بشكل منزلق عبر المصفوفة الأولى.
وهاكدا كيقوم الفلتر باستخراج ملامح محلية من المصفوفة الأولى بحال الخطوط والمستويات, ولا الأشكال البسيطة.
والنتيجة ديالو هي مصفوفة ثانية أصغر حجما لي كتحتوي على الملامح المستخرجة من المصفوفة الأولى.
وكتسمى Feature Map

طبقة التجميع Pooling Layers:
هاد الطبقة كتستعمل لتقليل الحجم المكاني (العرض والارتفاع)
ديال feature map اللي خرجات لينا فالطبقة الاولى،
طبقات التجميع كيتبعو واحد تسلسل من طبقة ولا أكثر ديال الطبقات التلافيفية
وكتهدف باش تدمج الميزات التي تم التعلم ديالها والتعبير عنها فخريطة الميزات feature map ديال الطبقة السابقة .
بهاد الشكل، يمكن نعتبرو التجميع تقنية لضغط ولا تعميم تمثيلات الميزات feature representations

كاينين أنواع كثار ديال Pooling:
Max Pooling
Average Pooling
Sum Pooling
…
كل واحد عندو طريقة التطبيق الخاصة بيه
غالبًا ما كتكون طبقات التجميع بسيطة جدًا،
مثلا ف average pooling باش تنشئ خريطة السمات الخاصة بيها
كاتاخذ متوسط قيمة المدخلات
بالنسبة ل max pooling
كاتاخذ الحد الأقصى ليها

مثلا ف دوك 4 مربعات الاولين على اليسار اكبر قيمة هي 1
خديناها وحطيناها ف Feature map الجديدة ديالنا
وهادي اللي عندنا فيها 4 1 و 0 1 ختارينا اكبر رقم وحطيناه ف الماب ديالنا..
وهكا غاديين حتا كنكملوها..

ولكن مزال مسالينا..
ديك Pooled Feature map اللي خرجات لينا فالطبقة السابقة
كنديرو ليها واحد اللعيبة كتسمى Flattening
وهي بكل بساطة كنردوها من مصفوفة لواحد السطر ديال القيم باش تجي مزيانة وواجدة للطبقة الاخيرة اللي عندنا

الطبقة المتصلة بالكامل Fully-Connected Layers:
بعد عدة طبقات تلافيفية ومجمعة،
الطبقات المتصلة بالكامل أو Fully-Connected Layers
هي من آخر طبقات الشبكات العصبية التلافيفية
وظيفتها أنها كتقوم بربط كل neuron بالطبقة السابقة بروابط مباشرة
بمعنى أن كل عقدة كاتتأثر بعقدة في الطبقة السابقة
والهدف منها هو تحویل مصفوفة السمات الناتجة من الطبقات التلافيفية إلى نموذج قابل للاستخدام فحالات التصنيف والاستدلال.
عادة ما كيكونو آخر جوج طبقات فالشبكة العصبية متصلتين بالكامل.

وصافي هادي هي CNN
وراه هاد البروسيس كيتعاود بزاف دلمرات ببزاف ديال الطبقات
البلان كاين ف Feature Extractors
هادوك هما Weights ديالنا
ملي كتعطينا الطبقة الاخيرة النتيجة المتوقعة كنحسبو Cost Function
وكنبقاو نبدلو فالقيم ديال Feature Extractor
حتا كتخرج لينا توقعات اللي بغينا
هادشي بخلاصة هو CNN
غدا غنديرو واحد التطبيق ديال هاد CNN على واحد المثال من الحياة ديالنا
وغتفهمو مزيااااان كل خطوة كيفاش كنطبقوها
هادي خلاصة اليوم:
نتلاقاو فايمايل اخر غدا!
كنتمنى تكونو استافدتو.. ايلا عندكم شي تساؤل اولا مشرحتش شي حاجة مزيان، غير صيفط ليا رد فهاد المايل نيت..
— Kaito
ملاحظات:
DataScience Bdarija on Instagram
Image Classification with Convolutional Neural Networks (CNNs)
ايلا عاجبك هدشي وقادر باش تساند هاد newsletter بدعم مادي
دخل لهنا: https://ko-fi.com/callmekaito
شكرا (:

التالي