مفهوم الطبقات في الشبكة العصبية
الطبقات (Layers)
عندما يتدرب الذكاء الاصطناعي على صورة قطة مثلا، فإنه يتم تغذيته بكميات من صور القطط فيقوم بتحديد الخصائص و السمات الخاصة و الأكثر تميزا في القطة ( انوف صغيرة ، آذان مدببة ، فراء .. الخ ) فتقوم كل طبقة من طبقات الشبكة العصبية العميقة بالتركيز على جزء معين من هذه السمات، و ترسلها إلى طبقة أخرى لتحديد جزء آخر ثم ترسلها إلى الطبقة التالية وهكذا، حتى تجتمع خصائص و سمات الصورة التي تمكن النظام فيما بعد من التعرف على صورة جديدة لقطة .
تتكون الشبكة العصبية العميقة من ثلاث مجموعات من الطبقات تكمل أدوارها فيما بينها :
طبقة المدخلات (Input Layer)
دورها ينحصر في استقبال (المدخلات) وتمثيلها كمتجهات عددية ، حيث أن كل عقدة في هذه الطبقة تمثل سمة معينة من بيانات المدخلات ثم ترسل هذه القيم إلى جميع العقد في الطبقة المجاورة لها من الطبقات المخفية
الطبقات المخفية (Hidden Layers)
هذه هي الطبقات التي تتم فيها جميع العمليات الحسابية المعقدة، حيث تتلقى كل عقدة في هذه الطبقات المدخلات من عقد الطبقة السابقة، وتطبق عليها وظيفة رياضية معينة، ثم تمرر النتيجة إلى الطبقة التالية، وكلما زاد عدد هذه الطبقات زاد عمق الشبكة وزادت قدرتها على تحليل الأنماط الأكثر تعقيدا.
طبقة المخرجات (Output Layer)
هذه هي الطبقة النهائية التي تقدم لنا نتيجة عمل النموذج، عدد العقد في هذه الطبقة يعتمد على المشكلة التي تحاول الشبكة حلها، فمثلا في مشكلة تصنيف بسيطة (إجابة بنعم أو لا) قد تكون هناك عقدة واحدة فقط.
و من المهم ان نفهم ان الطبقات ليست هي المعنية بمعالجة البيانات بل هي تشكل اطارا للخلايا التي تقوم بالمعالجة، و قد يتبادر الى الذهن تساؤل عن سبب وجود هذه الطبقات طالما أن الخلايا هي من يتواصل مع الخلايا الأخرى و يحلل البيانات، والإجابة على هذا التساؤل تكمن في النقاط التالية اضافة الى كون الطبقة هي إطار يجمع هذه الخلايا:
التعلم التدريجي للتمثيلات المعقدة (Hierarchical Feature Learning)
كل طبقة مخفية تستطيع تعلم تمثيلات على مستوى معين من التعقيد، إذا جمعنا كل الخلايا في طبقة واحدة كبيرة، فإن كل خلية ستتعلم مزيجا من الخصائص البسيطة والمعقدة معا، مما يجعل فهم الأنماط الهرمية صعبا ويحد من قدرة الشبكة على التعلم العميق ، لذلك وجود طبقات متعددة يتيح للطبقة الأولى تعلم الخصائص البسيطة، والطبقة الثانية دمجها لاستخراج أنماط أعلى، وهكذا.
تقليل عدد الاتصالات غير الضرورية (Parameter Efficiency)
لو وضعت كل الخلايا المخفية في طبقة واحدة ضخمة، كل خلية ستحتاج للاتصال بكل مدخلات الطبقة السابقة مما يؤدي إلى عدد هائل من الأوزان، ما يزيد التعقيد الحسابي وصعوبة التدريب، إذن تقسيمها إلى عدة طبقات متتابعة يقلل من عدد الأوزان لكل مستوى ويجعل التدريب أكثر استقرارا .
فصل التمثيلات (Feature Separation)
الطبقات المتتالية تسمح للشبكة بتصفية المعلومات تدريجيا، بحيث تركز كل طبقة على الخصائص الأكثر صلة بالنتيجة النهائية، لو كانت كل الخلايا في طبقة واحدة، تصبح عملية التصفية أقل فعالية، ويصعب على الشبكة التعميم على بيانات جديدة .
تحسين التعقيد التعبيري (Expressive Power)
الشبكات متعددة الطبقات يمكنها تمثيل دوال غير خطية أكثر تعقيدا بكفاءة أكبر من طبقة واحدة حتى لو كانت الطبقة الوحيدة ضخمة جدا، ببساطة (التكديس) (Stacking Layers) يعطي الشبكة القدرة على تعلم تمثيلات مركبة بشكل تدريجي، وهذا ما لا يمكن تحقيقه بنفس الكفاءة في طبقة واحدة كبيرة.
الخلاصة : السبب الأساسي لوجود عدة طبقات مخفية بدل طبقة واحدة ضخمة هو تمكين التعلم الهرمي للميزات، تقليل التعقيد الحسابي، تحسين قدرة الشبكة على التعميم ، وزيادة القوة التعبيرية للنموذج ، ولو جمعت كل الخلايا المخفية في طبقة واحدة، ستفقد الشبكة معظم هذه المزايا ، وستصبح أشبه بـ (شبكة سطحية ضخمة) لكنها أقل قدرة على معالجة الأنماط المعقدة.
تعليقات
إرسال تعليق