في التمارين التفاعلية أدناه، ستتعمق في فهم آلية عمل الشبكات العصبية. ستتعرف أولاً على كيفية تأثير تغييرات المعلمات والمعلمات الفائقة على تنبؤات الشبكة. ثم ستستخدم ما تعلمته لتدريب شبكة عصبية على التعامل مع البيانات غير الخطية.
التمرين 1
تقوم الأداة التالية بإعداد شبكة عصبية بالتكوين التالي:
- طبقة إدخال تحتوي على 3 خلايا عصبية تتضمن القيم
0.00 و 0.00 و 0.00 - طبقة مخفية تحتوي على 4 خلايا عصبية
- طبقة إخراج تحتوي على عصبون واحد
- تم تطبيق دالة التنشيط ReLU على جميع عقد الطبقة المخفية وعقدة الإخراج
راجع الإعداد الأولي للشبكة (ملاحظة: لا تنقر على زر ▶️ أو >| بعد)، ثم أكمل المهام الموجودة أسفل الأداة.
المهمة 1
جميع قيم خصائص الإدخال الثلاثة لنموذج الشبكة العصبية هي 0.00 . انقر على كل عقدة في الشبكة لعرض جميع القيم الأولية. قبل الضغط على زر التشغيل ( ▶️ )، أجب عن هذا السؤال:
ما نوع قيمة المخرجات التي تعتقد أنها ستنتج: موجبة، سالبة، أم صفر؟
قيمة ناتجة موجبة
لقد اخترت قيمة إخراج موجبة . اتبع التعليمات أدناه لإجراء الاستدلال على بيانات الإدخال ومعرفة ما إذا كان اختيارك صحيحًا.
قيمة الناتج السالبة
لقد اخترت قيمة إخراج سالبة . اتبع التعليمات أدناه لإجراء الاستدلال على بيانات الإدخال ومعرفة ما إذا كان اختيارك صحيحًا.
قيمة الإخراج 0
لقد اخترت قيمة الإخراج 0. اتبع التعليمات أدناه لإجراء الاستدلال على بيانات الإدخال ومعرفة ما إذا كنت على صواب.
انقر الآن على زر التشغيل (▶️) أعلى الشبكة، وشاهد جميع قيم الطبقة المخفية وعقدة الإخراج وهي تُملأ. هل كانت إجابتك أعلاه صحيحة؟
انقر هنا للاطلاع على شرح
ستختلف قيمة المخرجات الدقيقة التي ستحصل عليها بناءً على كيفية تهيئة معلمات الوزن والانحياز عشوائيًا. مع ذلك، بما أن قيمة كل عصبون في طبقة الإدخال تساوي صفرًا، فإن الأوزان المستخدمة لحساب قيم عقد الطبقة المخفية ستكون جميعها صفرًا. على سبيل المثال، ستكون عملية حساب عقدة الطبقة المخفية الأولى كما يلي:
ص = ReLU(ث 11 * 0.00 + ث 21 * 0.00 + ث 31 * 0.00 + ب)
y = ReLU(b)
لذا ستكون قيمة كل عقدة في الطبقة المخفية مساوية لقيمة ReLU للانحياز (b)، والتي ستكون 0 إذا كانت b سالبة و b نفسها إذا كانت b تساوي 0 أو موجبة.
سيتم بعد ذلك حساب قيمة عقدة الإخراج على النحو التالي:
ص = ReLU(ث 11 * س 11 + ث 21 * س 21 + ث 31 * س 31 + ث 41 * س 41 + ب)
المهمة الثانية
قبل تعديل الشبكة العصبية، أجب عن السؤال التالي:
إذا أضفت طبقة مخفية أخرى إلى الشبكة العصبية بعد الطبقة المخفية الأولى، وأعطيت هذه الطبقة الجديدة 3 عقد، مع الحفاظ على جميع معلمات الإدخال والوزن/الانحياز كما هي، فما هي حسابات العقد الأخرى التي ستتأثر؟
جميع العقد في الشبكة، باستثناء عقد الإدخال.
لقد اخترت جميع العقد في الشبكة، باستثناء عقد الإدخال . اتبع التعليمات أدناه لتحديث الشبكة العصبية والتحقق من صحة اختيارك.
العقد الموجودة في الطبقة المخفية الأولى فقط
لقد اخترتَ فقط العُقد الموجودة في الطبقة المخفية الأولى . اتبع التعليمات أدناه لتحديث الشبكة العصبية والتحقق من صحة اختيارك.
عقدة الإخراج فقط
لقد اخترت عقدة الإخراج فقط . اتبع التعليمات أدناه لتحديث الشبكة العصبية والتأكد من صحة اختيارك.
الآن قم بتعديل الشبكة العصبية لإضافة طبقة مخفية جديدة بثلاث عقد كما يلي:
- انقر فوق زر + الموجود على يسار النص "طبقة مخفية 1" لإضافة طبقة مخفية جديدة قبل طبقة الإخراج.
- انقر فوق زر "+" الموجود أعلى الطبقة المخفية الجديدة مرتين لإضافة عقدتين إضافيتين إلى الطبقة.
هل كانت إجابتك أعلاه صحيحة؟
انقر هنا للاطلاع على شرح
يتغير فقط عقدة الإخراج. ولأن الاستدلال في هذه الشبكة العصبية "تغذية أمامية" (تتقدم العمليات الحسابية من البداية إلى النهاية)، فإن إضافة طبقة جديدة إلى الشبكة ستؤثر فقط على العقد التي تلي الطبقة الجديدة، وليس على تلك التي تسبقها.
المهمة 3
انقر على العقدة الثانية (من الأعلى) في الطبقة المخفية الأولى من مخطط الشبكة. قبل إجراء أي تغييرات على إعدادات الشبكة، أجب عن السؤال التالي:
إذا قمت بتغيير قيمة الوزن w 12 (المعروض أسفل عقدة الإدخال الأولى، x 1 )، فما هي حسابات العقد الأخرى التي يمكن أن تتأثر ببعض قيم الإدخال؟
لا أحد
لم تختر أي خيار. اتبع التعليمات أدناه لتحديث الشبكة العصبية ومعرفة ما إذا كان اختيارك صحيحًا.
العقدة الثانية في الطبقة المخفية الأولى، وجميع العقد في الطبقة المخفية الثانية، وعقدة الإخراج.
لقد اخترت العقدة الثانية في الطبقة المخفية الأولى، وجميع العقد في الطبقة المخفية الثانية، وعقدة الإخراج . اتبع التعليمات أدناه لتحديث الشبكة العصبية والتأكد من صحة اختيارك.
جميع العقد في الطبقة المخفية الأولى، والطبقة المخفية الثانية، وطبقة الإخراج.
لقد اخترت جميع العقد في الطبقة المخفية الأولى، والطبقة المخفية الثانية، وطبقة الإخراج . اتبع التعليمات أدناه لتحديث الشبكة العصبية والتأكد من صحة اختيارك.
الآن، انقر في حقل النص الخاص بالوزن w 12 (المعروض أسفل عقدة الإدخال الأولى، x 1 )، وغيّر قيمته إلى 5.00 ، ثم اضغط على مفتاح الإدخال. لاحظ التحديثات التي طرأت على الرسم البياني.
هل كانت إجابتك صحيحة؟ كن حذرًا عند التحقق من إجابتك: إذا لم تتغير قيمة العقدة، فهل يعني ذلك أن الحساب الأساسي لم يتغير؟
انقر هنا للاطلاع على شرح
العقدة الوحيدة المتأثرة في الطبقة المخفية الأولى هي العقدة الثانية (التي نقرت عليها). لا تتضمن حسابات قيم العقد الأخرى في الطبقة المخفية الأولى القيمة w 12 كمعامل، لذا فهي غير متأثرة. تتأثر جميع العقد في الطبقة المخفية الثانية، لأن حساباتها تعتمد على قيمة العقدة الثانية في الطبقة المخفية الأولى. وبالمثل، تتأثر قيمة عقدة الإخراج لأن حساباتها تعتمد على قيم العقد في الطبقة المخفية الثانية.
هل ظننتَ أن الإجابة هي "لا شيء" لأن قيم العقد في الشبكة لم تتغير عند تغيير قيمة الوزن؟ لاحظ أن الحساب الأساسي للعقدة قد يتغير دون تغيير قيمتها (مثلاً، ReLU(0) و ReLU(–5) كلاهما يُنتجان قيمة صفر). لا تفترض كيفية تأثر الشبكة بمجرد النظر إلى قيم العقد؛ تأكد من مراجعة الحسابات أيضاً.
التمرين 2
في تمارين تقاطع الميزات في وحدة البيانات الفئوية ، قمتَ بإنشاء تقاطعات الميزات يدويًا لملاءمة البيانات غير الخطية. الآن، ستختبر قدرتك على بناء شبكة عصبية قادرة على التعلّم التلقائي لكيفية ملاءمة البيانات غير الخطية أثناء التدريب.
مهمتك: تكوين شبكة عصبية يمكنها فصل النقاط البرتقالية عن النقاط الزرقاء في الرسم التخطيطي أدناه، وتحقيق خسارة أقل من 0.2 على كل من بيانات التدريب والاختبار.
تعليمات:
في الأداة التفاعلية أدناه:
- قم بتعديل المعلمات الفائقة للشبكة العصبية عن طريق تجربة بعض إعدادات التكوين التالية:
- أضف أو أزل الطبقات المخفية بالنقر فوق الزرين + و - الموجودين على يسار عنوان "الطبقات المخفية" في مخطط الشبكة.
- أضف أو أزل الخلايا العصبية من طبقة مخفية بالنقر فوق الزرين + و - الموجودين أعلى عمود الطبقة المخفية.
- قم بتغيير معدل التعلم عن طريق اختيار قيمة جديدة من القائمة المنسدلة "معدل التعلم" الموجودة أعلى الرسم التخطيطي.
- قم بتغيير دالة التنشيط عن طريق اختيار قيمة جديدة من القائمة المنسدلة "التنشيط" الموجودة أعلى الرسم التخطيطي.
- انقر فوق زر التشغيل (▶️) الموجود أعلى الرسم التخطيطي لتدريب نموذج الشبكة العصبية باستخدام المعلمات المحددة.
- لاحظ تصور النموذج الذي يطابق البيانات مع تقدم التدريب، بالإضافة إلى قيم خسارة الاختبار وخسارة التدريب في قسم الإخراج .
- إذا لم يحقق النموذج خسارة أقل من 0.2 على بيانات الاختبار والتدريب، فانقر على "إعادة ضبط"، وكرر الخطوات من 1 إلى 3 مع مجموعة مختلفة من إعدادات التكوين. كرر هذه العملية حتى تحصل على النتائج المرجوة.
انقر هنا للاطلاع على حلنا
لقد تمكنا من تحقيق خسارة أقل من 0.2 في كل من الاختبار والتدريب عن طريق:
- إضافة طبقة مخفية واحدة تحتوي على 3 خلايا عصبية.
- اختيار معدل تعلم قدره 0.01.
- اختيار دالة التنشيط ReLU.