0Pricing
Learn AI with Python · درس

خوارزمية الانتشار العكسي

مفاهيم التعلم والتحسين

خوارزمية الانتشار العكسي درس مجاني في Learn AI with Python على CoddyKit. هذا هو الدرس 4 من أصل 5. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Learn AI with Python، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Learn AI with Python 5 دروس في المجموع.

ما الانتشار العكسي؟

خوارزمية الانتشار العكسي

الانتشار العكسي خوارزمية أساسية تُستخدم لتدريب الشبكات العصبية. وتحسب تدرّج دالة الخسارة بالنسبة إلى كل وزن من خلال نشر الأخطاء إلى الخلف عبر الشبكة.

خوارزمية الانتشار العكسي — رسم توضيحي 1

الخطوات الأساسية للانتشار العكسي

الخطوات الأساسية للانتشار العكسي

تتضمن عملية الانتشار العكسي ما يلي:

  1. التمرير الأمامي: حساب المخرج والخسارة.
  2. التمرير العكسي: حساب تدرج دالة الخسارة بالنسبة إلى الأوزان والانحيازات.
  3. تحديث الأوزان: ضبط الأوزان باستخدام خوارزمية تحسين مثل الانحدار المتدرج.

دالة الخسارة

دالة الخسارة

تحدد دالة الخسارة مقدار الفرق بين القيم المتنبأ بها والقيم الفعلية. وتشمل دوال الخسارة الشائعة ما يلي:

  • متوسط مربع الخطأ (MSE): لمهام الانحدار.
  • خسارة الإنتروبيا المتقاطعة: لمهام التصنيف.

الانحدار المتدرج

الانحدار المتدرج

الانحدار المتدرج خوارزمية تحسين تُستخدم لتقليل دالة الخسارة. وتحدّث الأوزان والانحيازات عبر اتخاذ خطوات صغيرة في اتجاه التدرج السالب.

قاعدة التحديث:

Weight = Weight - Learning_Rate * Gradient

قاعدة السلسلة في الانتشار العكسي

قاعدة السلسلة في الانتشار العكسي

تُستخدم قاعدة السلسلة لحساب تدرج دالة الخسارة لكل طبقة. وتتيح تمرير الخطأ إلى الخلف عبر الشبكة.

على سبيل المثال، يكون تدرج الخسارة بالنسبة إلى وزن كما يلي:

∂L/∂W = ∂L/∂O * ∂O/∂Z * ∂Z/∂W

مثال على الانتشار العكسي

مثال على الانتشار العكسي

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

نُعدّل الأوزان باستخدام التمريرين الأمامي والخلفي لتقليل الخطأ عبر عدة دورات تدريبية.

import numpy as np

# Example: Simple backpropagation setup
weights = np.array([0.5, -0.5])
inputs = np.array([2, 3])
target = 1
learning_rate = 0.01

# Forward pass
output = np.dot(inputs, weights)
loss = (target - output) ** 2

# Backward pass
error = 2 * (output - target)
gradients = error * inputs

# Weight update
weights -= learning_rate * gradients
print("Updated Weights:", weights)

التحديات في الانتشار العكسي

التحديات في الانتشار العكسي

تشمل المشكلات الشائعة ما يلي:

  • تلاشي التدرجات: تصبح التدرجات صغيرة جدًا، مما يؤدي إلى إبطاء عملية التعلم.
  • انفجار التدرجات: تصبح التدرجات كبيرة جدًا، مما يسبب عدم الاستقرار.
  • القيم الدنيا المحلية: قد تتوقف الخوارزمية عند حلول غير مثلى.

تحسينات الانتشار العكسي

تحسينات الانتشار العكسي

لمعالجة هذه التحديات، تتضمن التقنيات الحديثة ما يلي:

  • دوال التنشيط: تساعد ReLU على الحد من تلاشي التدرجات.
  • خوارزميات التحسين: تعمل خوارزميات مثل Adam وRMSProp على تحسين التقارب.
  • التنظيم: يمنع فرط التخصيص من خلال فرض عقوبة على الأوزان الكبيرة.

الملخص والخطوات التالية

الملخص والخطوات التالية

في هذا الدرس، قمنا بما يلي:

  • استكشفنا خوارزمية الانتشار العكسي ودورها في تدريب الشبكات العصبية.
  • تعرّفنا على الانحدار المتدرج وقاعدة السلسلة.
  • ناقشنا تحديات الانتشار العكسي والتحسينات الحديثة عليه.

بعد ذلك، سننفّذ أول شبكة عصبية لنا باستخدام TensorFlow لنرى الانتشار العكسي أثناء العمل.

خوارزمية الانتشار العكسي — رسم توضيحي 10

الأسئلة الشائعة

هل درس «خوارزمية الانتشار العكسي» مجاني؟

نعم — نص درس «خوارزمية الانتشار العكسي» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Learn AI with Python، انتقل إلى CoddyKit PRO. تتضمن دورة Learn AI with Python 5 دروس في المجموع.

ماذا ستتعلم في «خوارزمية الانتشار العكسي»؟

مفاهيم التعلم والتحسين تتمرن على Learn AI with Python مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Learn AI with Python؟

لا تُشترط خبرة سابقة. Learn AI with Python على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 5.

كم من الوقت يستغرق درس «خوارزمية الانتشار العكسي»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Learn AI with Python هذا؟

نعم. كل درس في Learn AI with Python يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. مقدمة إلى الشبكات العصبية
  2. دوال التنشيط
  3. الشبكات العصبية أمامية التغذية
  4. خوارزمية الانتشار العكسي
  5. أول شبكة عصبية باستخدام TensorFlow
← العودة إلى Learn AI with Python