التعلم المعزز1992متوسط9 دقيقة قراءة
خوارزميات إحصائية بسيطة لتتبُّع التدرُّج في التعلُّم بالتعزيز للشبكات العصبية
Simple Statistical Gradient-Following Algorithms for Connectionist Reinforcement Learning
Williams, R. J. — Machine Learning
المشكلة
بحلول عام 1992، كان الانتشار العكسي قد حوّل الشبكات العصبية إلى أداة قوية في التعلّم الموجَّه: أعطِ الشبكة صورة قطة مع الإجابة الصحيحة «قطة»، وستتعلّم. لكنّ هذا النجاح اعتمد على وجود إجابة صحيحة في كل خطوة — وهو شرط لا يتحقّق في التعلّم بالتعزيز.
في التعلّم بالتعزيز، العميل يختار أفعالًا ويتلقّى مكافأة عدديّة فقط — رقم يقول «+10» أو «−3». هذا الرقم يُخبرك بمدى جودة أدائك الإجمالي، لكنه لا يُخبرك ماذا كان ينبغي أن تفعل. لا يوجد «ناتج مستهدف» لحساب الخطأ بالنسبة إليه، وبالتالي لا يمكن تشغيل الانتشار العكسي بالطريقة المعتادة. فكيف تحسب اتجاه تحسين الأوزان حين تعتمد النتيجة على أفعال عشوائية اختارتها الشبكة نفسها — والبيئة التي أعطت صندوق أسود لا يمكن اشتقاقه رياضيًّا؟
الإسهام
اكتشف ويليامز أنّ تحديث الأوزان في التعلّم بالتعزيز يمكن أن يكون بسيطًا بشكل مدهش: خذ المكافأة التي حصلت عليها، واضربها في اتجاه تعديل الأوزان الذي يجعل الفعل المُختار أكثر احتمالًا. هذا التحديث البسيط يتّبع — بشكل مُثبت رياضيًّا — اتجاه تعظيم المكافأة المتوقّعة. الحيلة الرياضية التي تجعل هذا ممكنًا تُعرف ، وميزتها الكبرى أنّها لا تحتاج نموذجًا رياضيًّا للبيئة ولا تشترط أن تكون دالّة المكافأة قابلة للاشتقاق — فقط جرّب أفعالًا وراقب النتائج. لكنّ هذا المُقدِّر يعاني من تذبذب شديد بين التجارب، لذلك قدّمت الورقة أيضًا فكرة خطّ الأساس: اطرح قيمة مرجعية من المكافأة قبل التحديث، فيهدأ التذبذب دون أن يفسد اتجاه التعلّم. بهذين الابتكارين معًا، أصبحت أساليب تدرّج عمليّة للمرة الأولى.
الأثر
كل خوارزمية حديثة تُدرِّب نماذج الذكاء الاصطناعي بناءً على تقييمات البشر تعود جذورها إلى هذه الورقة. خوارزمية PPO — التي تُدرِّب ChatGPT وClaude وGemini عبر التعلّم بالتعزيز من التقييم البشري — هي سليل مباشر لـ REINFORCE. وكذلك A3C وTRPO وعائلة الفاعل والناقد بأكملها. جميعها تستخدم الفكرة الأساسية ذاتها التي أثبتها ويليامز — أنّه يمكنك حساب اتجاه تحسين سياسة عشوائية عبر حيلة المشتقّة اللوغاريتمية. بل إنّ الهويّة الرياضية نفسها تظهر خارج التعلّم بالتعزيز تمامًا: في المُرمِّز التلقائي المتغايِر، وفي الاستدلال المتغايِر، وفي البحث الآلي عن بنية الشبكة. إنّها واحدة من أكثر الأفكار إعادةً للاستخدام في تاريخ تعلّم الآلة.
في ، هناك معلّم يُمسك بيدك في كل خطوة: «هذه الصورة قطة، وهذه كلب.» الشبكة تقارن إجابتها بالإجابة الصحيحة، وتُصلح أوزانها عبر . العملية واضحة لأنّ الاتجاه الصحيح معروف دائمًا.
في ، لا وجود لمعلّم — بل مُسجِّل نقاط فحسب. تخيّل أنّ الشبكة تقف أمام عدة أزرار وتقلب عملات معدنية لاختيار أيّها تضغط. بعد سلسلة من الضغطات، يظهر الحكم ويقول «+10» أو «−3». لكنّه لا يقول أبدًا أيّ ضغطة كانت السبب — فقط النتيجة الإجمالية.
هنا تأتي فكرة REINFORCE: إن حصلتَ على +10، عُد إلى كل عملة قلبتَها واسأل: «في أيّ اتجاه يجب أن أُميلك حتى يصبح هذا التسلسل بالذات أكثر احتمالًا في المرة القادمة؟» ثم أمِل كل عملة بذلك المقدار، مضروبًا في حجم المكافأة (+10). النتيجة: المسارات التي أعطت نتائج جيدة تصبح أكثر احتمالًا تدريجيًّا، والمسارات السيئة تتلاشى — دون أن يُخبرك أحد ما كان الفعل «الصحيح».
المشكلة: لا يوجد هدف للانتشار العكسي
في التعلّم الموجَّه، الوصفة واضحة: الشبكة تتنبّأ بـ ، تقارنها بالهدف المعروف ، ثم تُمرّر الخطأ عبر الانتشار العكسي لحساب تدرّج . كل في الشبكة يعرف بالضبط في أيّ اتجاه يتحرك وبأيّ مقدار — لأنّ الإجابة الصحيحة موجودة للمقارنة.
التعلّم بالتعزيز يكسر هذه الوصفة في موضعين جوهريين:
- لا توجد إجابة صحيحة. يختار الفعل في ، والبيئة تُعيد مكافأة عدديّة فقط. لا أحد يُخبر العميل ماذا كان ينبغي أن يفعل، مما يعني أنّه لا يوجد «هدف» لحساب الخطأ بالنسبة إليه.
- البيئة صندوق أسود لا يمكن اشتقاقه. المكافأة تأتي من البيئة — محرك فيزيائي، لعبة، مُقيِّم بشري — ولا نملك معادلات رياضية تصفها. لذلك لا يمكنك تمرير عبرها كما تفعل في الانتشار العكسي المعتاد.
قبل ويليامز، كانت الحلول المتاحة محدودة وباهظة: إمّا بناء نموذج رياضي كامل للبيئة (وهو غير عملي لبيئات معقّدة)، أو تجربة تعديل كل وزن على حدة ومراقبة تأثيره على المكافأة — وهذا يتطلّب آلاف التجارب لكل خطوة تحديث واحدة في الشبكات الكبيرة.
الخطوة 1: اجعل الشبكة تُخرج احتمالات بدل قرارات حتميّة
الخطوة الأولى لويليامز أنيقة في بساطتها: بدلًا من أن تُخرج الشبكة فعلًا واحدًا حتميًّا (مثل «تحرّك يمينًا»)، اجعلها تُخرج توزيعًا احتماليًّا على جميع الأفعال المتاحة — أي نسبة مئوية لكل فعل تُعبّر عن مدى ترجيح الشبكة له. مثلًا: «يمين 60%، يسار 25%، أعلى 10%، أسفل 5%». ثم يُسحب الفعل الفعلي عشوائيًّا وفقًا لهذه النسب.
هذا التوزيع يُسمّى ويُرمز له بـ — أي احتمال اختيار الفعل حين تكون الشبكة في الحالة بأوزانها الحالية . لفضاء أفعال منفصل، تحسب طبقة المخرجات هذا التوزيع عبر دالّة (تمامًا كما في المعتاد).
لماذا العشوائية مهمّة هنا؟ لأنّ العميل يحتاج إلى تجريب أفعال مختلفة ليكتشف أيّها يعطي مكافآت أعلى. لو كان يختار دائمًا الفعل الأعلى احتمالًا، لن يستكشف بدائل قد تكون أفضل — وهذا هو جوهر معضلة مقابل .
الهدف النهائي: إيجاد أوزان تُعظِّم المكافأة الإجمالية المتوقّعة:
والسؤال الذي طرحه ويليامز: هل يمكننا حساب — أي اتجاه تعديل الأوزان الذي يزيد المكافأة المتوقّعة — حتى نصعد في اتجاه التدرّج كما نفعل في التعلّم الموجَّه؟
الخطوة 2: حيلة المشتقّة اللوغاريتمية — جوهر REINFORCE
هنا نصل إلى الجوهر الرياضي. المشكلة واضحة: نريد حساب — أي في أيّ اتجاه نُعدّل الأوزان لزيادة المكافأة المتوقّعة. لكنّ التوقّع هنا محسوب على مسارات مُعايَنة من السياسة ذاتها التي نحاول تحسينها. وبما أنّ المعاينة عملية عشوائية منفصلة، لا يمكن تمرير التدرّج عبرها مباشرةً — فهي ليست دالّة رياضية قابلة للاشتقاق.
الحيلة التي وجدها ويليامز تعتمد على خاصية بسيطة ومعروفة في التفاضل. الفكرة: بدلًا من اشتقاق الاحتمال مباشرةً، اشتقّ لوغاريتم الاحتمال ثم اضربه في الاحتمال نفسه:
لماذا هذا مفيد؟ لأنّ الطرف الأيسر يتطلّب اشتقاق التوزيع الاحتمالي بالكامل (وهو صعب)، بينما الطرف الأيمن يحتوي على كمُعامل ضرب — وهذا يعني أنّنا نستطيع تحويل التكامل إلى توقّع يمكن تقديره ببساطة عبر أخذ عيّنات. الهويّة نفسها مجرد قاعدة السلسلة: بما أنّ ، ضرب الطرفين في يُعطي المعادلة أعلاه.
الآن نُطبّقها على المكافأة المتوقّعة:
خوارزمية REINFORCE خطوة بخطوة
الآن نجمع كل القطع معًا في خوارزمية عملية:
- شغّل تفاعلية كاملة. دع السياسة العشوائية تتفاعل مع البيئة من البداية إلى النهاية، وسجّل كل شيء: الحالات التي مرّ بها العميل، والأفعال التي اختارها، والمكافآت التي تلقّاها.
- احسب لكل خطوة. العائد هو مجموع المكافآت المستقبلية مع تخفيض تدريجي للمكافآت البعيدة: . يجعل المكافآت القريبة أهمّ من البعيدة — لأنّ المكافأة بعد 100 خطوة أقلّ يقينًا من المكافأة في الخطوة التالية.
- احسب اتجاه التحسين. لكل خطوة، اضرب العائد في اتجاه زيادة احتمال الفعل المُختار: .
- حدّث الأوزان. طبّق .
- كرّر من الخطوة 1 مع جولة جديدة.
هذه طريقة — أي أنّها تنتظر حتى تنتهي الجولة بالكامل قبل تحديث أيّ وزن (لا تُقدّر المكافآت المستقبلية، بل تنتظر رؤيتها فعلًا). هذا أنّ العائد تقدير غير متحيّز للمكافأة الحقيقية المتوقّعة. عيبه: أنّ الانتظار حتى نهاية الجولة قد يكون بطيئًا جدًّا.
مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.
import numpy as np
def softmax(x):
e = np.exp(x - x.max())
return e / e.sum()
# شبكة السياسة: الحالة ← احتمالات الأفعال W = np.random.randn(4, 2) * 0.01 # 4 حالات، فعلان
alpha = 0.01 # معدل التعلم gamma = 0.99 # معامل خفض العوائد المستقبلية
for episode in range(1000):
states, actions, rewards = [], [], []
s = env.reset()
# 1) نفّذ جولة تفاعلية كاملة
while not done:
probs = softmax(W[s])
a = np.random.choice(len(probs), p=probs)
s_next, r, done = env.step(a)
states.append(s); actions.append(a); rewards.append(r)
s = s_next
# 2) احسب العوائد G_t لكل خطوة
G = 0
returns = []
for r in reversed(rewards):
G = r + gamma * G
returns.insert(0, G)
# 3-4) حدّث الأوزان باستخدام تدرّج السياسة
for t in range(len(states)):
s, a, G_t = states[t], actions[t], returns[t]
probs = softmax(W[s])
# ∇_θ log π(a|s) في softmax: one-hot(a) - probs
grad_log = -probs.copy()
grad_log[a] += 1.0
W[s] += alpha * G_t * grad_log # التحديث الجوهريمشكلة التذبذب العالي وكيف تحلّها خطوط الأساس
في REINFORCE يشير في المتوسط إلى الاتجاه الصحيح — أي أنّه غير متحيّز. لكنّ مشكلته العملية أنّ تذبذبه هائل بين جولة وأخرى. السبب أنّ العائد يعتمد على كامل من الأفعال العشوائية، فمسار محظوظ قد يحصل على ، والمسار التالي يحصل على . يتأرجح اتجاه التحديث بعنف من جولة لأخرى، فيصبح التعلّم بطيئًا للغاية — كأنّك تحاول المشي في خطّ مستقيم لكنّ الريح تدفعك يمينًا ويسارًا بشكل عشوائي.
حلّ ويليامز أنيق: اطرح قيمة مرجعية تُسمّى من العائد قبل ضربه في التدرّج:
الفكرة بسيطة: بدلًا من أن تسأل «هل كانت المكافأة كبيرة؟»، اسأل «هل كانت المكافأة أفضل من المتوقّع؟». إن حصلت على +10 في حالة يكون متوسّطها +8، فالفرق +2 فقط — تحديث صغير. لكن إن حصلت على +10 في حالة متوسّطها +2، فالفرق +8 — تحديث كبير. هذا يُمركز الإشارة حول الصفر ويُقلّل التذبذب جذريًّا.
الجميل رياضيًّا أنّ أيّ خطّ أساس لا يعتمد على الفعل يُحافظ على عدم تحيُّز التقدير (لأنّ — وهذا يعني أنّ طرح ثابت من المكافأة لا يُغيّر الاتجاه المتوسّط للتدرّج، فقط يُهدّئ تذبذبه).
أفضل خطّ أساس ممكن يقترب من — أي المكافأة المتوقّعة من هذه الحالة فصاعدًا. هذه الملاحظة قادت مباشرةً إلى بنية : شبكة «الناقد» تتعلّم تقدير ، وشبكة «الفاعل» تستخدم الفرق — الذي يُسمّى الأفضلية — كوزن لتدرّج السياسة. فلا يُعزَّز الفعل إلّا إذا أعطى نتيجة أفضل من المتوقّع، لا مجرد نتيجة إيجابية.
الدمج مع التحديث التراجعي
من أجمل جوانب هذه الورقة أنّ REINFORCE لا تحتاج آلية تدريب جديدة — بل تستخدم الانتشار العكسي ذاته الذي تعرفه الشبكات العصبية أصلًا. الفرق الوحيد هو ما يُمرَّر عكسيًّا عبر الشبكة.
في التعلّم الموجَّه: تُمرّر تدرّج الخطأ — أي الفرق بين ما توقّعته الشبكة وما كانت الإجابة الصحيحة.
في REINFORCE: تُمرّر تدرّج لوغاريتم احتمال الفعل المُختار ، ثم تضرب التحديث الناتج في المكافأة المُعدّلة . بقية العملية — الانتشار العكسي عبر الطبقات، حساب التدرّجات الجزئية — تبقى كما هي تمامًا.
هذا الاستقلال عن البنية أمر بالغ الأهمية: سواء كانت شبكة السياسة شبكة أو أو — كما اتّضح لاحقًا — شبكة ، فإنّ صياغة ويليامز تعمل دون تعديل. الشرط الوحيد: أن تُنتج طبقة المخرجات توزيعًا احتماليًّا قابلًا للاشتقاق على الأفعال. وبهذا أعطت الورقة التعلّم بالتعزيز مفتاحًا للاستفادة من أيّ تطوّر مستقبلي في بنى الشبكات العصبية.
الإرث: من REINFORCE إلى تدريب النماذج اللغوية الكبرى
معادلة تدرّج السياسة التي أثبتتها هذه الورقة هي واحدة من أكثر المعادلات تأثيرًا في تاريخ تعلّم الآلة. لفهم مدى تأثيرها، تتبّع كيف تطوّرت عبر ثلاثة عقود — مع ملاحظة أنّ الهويّة الرياضية الأصلية ظلّت في قلب كل هذه التطوّرات:
1992
REINFORCE
ويليامز يُثبت أنّ ضرب المكافأة في تدرّج لوغاريتم الاحتمال يُعطي اتجاه التحسين الصحيح. الطريقة تحتاج جولات كاملة وتعاني من تذبذب عالٍ — لكنّ الأساس الرياضي متين وأنيق.
2000
مبرهنة تدرُّج السياسة (ساتون وآخرون)
ساتون وزملاؤه يُعمّمون نتيجة ويليامز لتشمل المهام المستمرة التي لا تنتهي بجولات محدّدة، مما أسّس نظريًّا لأساليب الفاعل والناقد (Actor-Critic) التي تتعلّم أثناء التشغيل دون انتظار نهاية الجولة.
2015
TRPO
يستخدم تدرّج السياسة مع إضافة ضمانة أمان — كل تحديث يُحصر في «منطقة ثقة» يكون فيها التقريب الرياضي صالحًا، مما يمنع السياسة من التغيّر بشكل مفاجئ وكارثي بين تحديث وآخر.
2016
A3C
يُشغّل عشرات العملاء بالتوازي في نسخ مستقلة من البيئة، كلّ منهم يجمع تجارب ويحسب تدرّجات السياسة مع خطّ أساس مُتعلَّم (الناقد). هذا التوازي سرّع التعلّم بشكل كبير ومكّن من التعامل مع بيئات ثلاثية الأبعاد معقّدة لأول مرة.
2017
PPO
يُبسّط فكرة TRPO بشكل كبير عبر «قصّ» نسبة التحديث بدلًا من حساب منطقة الثقة الكاملة — خوارزمية سهلة التنفيذ وفعّالة، أصبحت الأداة الأساسية في التعلّم العميق بالتعزيز ولاحقًا العمود الفقري لتدريب النماذج اللغوية عبر التقييم البشري (RLHF).
2022
التعلّم بالتعزيز من التقييم البشري للنماذج اللغوية
PPO — وهو سليل مباشر لـ REINFORCE — يُستخدم لضبط GPT وClaude وGemini بناءً على تفضيلات المُقيّمين البشريين. الفكرة: بدلًا من المكافأة من بيئة لعبة، المكافأة تأتي من حُكم إنسان على جودة الإجابة. هويّة التدرّج التي وضعها ويليامز عام 1992 تقع في قلب أكثر أنظمة الذكاء الاصطناعي تأثيرًا في العقد الأخير.
المرجعWilliams, R. J.. Simple Statistical Gradient-Following Algorithms for Connectionist Reinforcement Learning. Machine Learning, 1992.
مصطلحات هذه الورقة
- خوارزمية REINFORCEREINFORCE
- تدرج السياسة التشغيليةPolicy Gradient
- حيلة المشتقّة اللوغاريتميةLog-Derivative Trick
- مُقدِّر دالّة الرصيدScore Function Estimator
- خطّ الأساس (في التعلّم بالتعزيز)Baseline (RL)
- تقليل التباينVariance Reduction
- السياسة العشوائيةStochastic Policy
- العائد التراكميReturn (Cumulative Reward)