الشبكات العصبية1990متوسط19 دقيقة قراءة
الانتشار العكسي عبر الزمن: كيف تتعلّم الشبكة من ماضيها
Backpropagation Through Time: What It Does and How to Do It
Werbos, P. J. — Proceedings of the IEEE
المشكلة
في عام 1990 كان الانتشار العكسي أشهر طريقة لتدريب الشبكات العصبية، لكن أغلب الباحثين عرفوه وصفةً لشبكات مرتّبة في طبقات ولا ذاكرة لها. غير أن كثيراً من المسائل الحقيقية تجري عبر الزمن: الكلام، والأهداف المتحرّكة، والتنبّؤ، والتحكّم. في هذه المسائل يعتمد الجواب الصحيح في لحظةٍ ما على ما حدث قبلها، وقد لا تظهر نتيجة قرارٍ اليوم إلا بعد خطوات كثيرة. كان المجال يحتاج إلى مشتقات دقيقة وغير مكلفة لأنظمة تعود مخرجاتها إليها مُدخلاتٍ، وإلى تدوين رياضي منضبط يسمح للباحثين بتطبيق هذا الحساب على أنظمة معقّدة دون أن يقعوا في الأخطاء.
الإسهام
يعيد فيربوس تقديم الانتشار العكسي بوصفه طريقة عامة: حساب المشتقات الدقيقة لهدف واحد عبر أي نظام مرتّب من خطوات قابلة للاشتقاق. أساس ذلك التي وضعها لـ«المشتقات المرتّبة»، ومتغيّرات التغذية الراجعة التي يرمز لها بالبادئة «F_». ثم يعطي معادلات الانتشار العكسي عبر الزمن وشيفرة زائفة على نمط فورتران. تعمل الشبكة إلى الأمام وتخزّن كل حالة، ثم يعود الحساب في مسحٍ عكسي من الخطوة الأخيرة إلى الأولى، ويُجمَع تدرّج كل وزن مشترك من جميع الخطوات، مع روابط تأخير لخطوة واحدة ولخطوتين. ويطبّق الآلية نفسها على تعرّف الأنظمة وعلى التحكّم العصبي، حيث تنتشر عكسياً عبر نموذج للمنظومة المتحكَّم بها حتى تصل إلى شبكة الفعل. ويعرض التكاليف بصراحة: تخزين كامل، وتحديث دفعي، وبديل أمامي دقيق تنمو كلفته مع مربّع حجم الشبكة، ونقّاد تكيّفيون لمن يحتاج تعلّماً آنياً حقاً.
الأثر
صارت هذه الورقة المرجع المعتمد لتدريب الشبكات المتكرّرة. فكل شبكة متكرّرة حديثة تُدرَّب بالإجراء الذي تصفه: افرد الشبكة عبر الزمن ثم امسح إلى الوراء، وغالباً ضمن نافذة مقتطَعة. ووضوحها في بيان كلفة الذاكرة والزمن فتح الأسئلة التالية: تحليل بنجيو وزملائه لسبب تلاشي التدرّجات أو انفجارها عبر المسافات الطويلة، وذاكرة LSTM ذات البوّابات التي صُمّمت لعلاج ذلك، والبحث المستمر عن قواعد تعلّم تعمل أثناء التشغيل دون تخزين الماضي.
تخيّل محاسباً يُغلق دفاتر سنة كاملة من التجارة. الخسارة النهائية معروفة، وكل معاملة أدّت إليها مدوَّنة في السجلّ بترتيب وقوعها. يبدأ المحاسب من آخر قيد ويعود شهراً بعد شهر. وكل معاملة تُحمَّل ما أحدثته من ضرر مباشر، ثم نصيبها مما تسبّبت فيه لاحقاً عبر معاملات أخرى.
لكي ينجح هذا يلزم أمران. الأول أن يُحفَظ السجلّ كله، لأن أي معاملة لا تُحاسَب قبل أن يُعرَف الرقم الأخير. والثاني أن القاعدة التي طُبّقت كل شهر قاعدة واحدة، فتُحاسَب على ما فعلته في الأشهر الاثني عشر كلها دفعة واحدة. هذا هو الانتشار العكسي عبر الزمن.
الانتشار العكسي طريقة محاسبة، لا حيلة خاصة بالشبكات العصبية
يبدأ فيربوس بفكرة كان من السهل أن تفوت القارئ عام 1990: لا يتعلّق بالعصبونات في جوهره. إنه طريقة لحساب كمية واحدة، هي الهدف، بالنسبة إلى كل مُدخل وكل معامل في نظام مبني من خطوات معروفة وقابلة للاشتقاق. والحساب دقيق ورخيص في آن واحد. قد يكون الهدف خطأ التصنيف، وقد تكون المعاملات أوزان شبكة. لكن أول تطبيق عملي له، في أطروحة فيربوس عام 1974، كان ملاءمة نموذج ديناميكي للنزعة القومية والتواصل الاجتماعي.
ثم يعرض الحالة المألوفة بتدوين جديد. في تُحسَب قيمة كل عصبون من قيم كل العصبونات التي تسبقه: مجموع موزون نسمّيه ، تليه هي . والشبكات ذات الطبقات حالة خاصة، تُثبَّت فيها أغلب هذه الأوزان عند الصفر. ويقوم التدريب على تقليل مجموع مربّعات الخطأ على بيانات التدريب بطريقة . نحسب مشتقة الخطأ بالنسبة إلى كل وزن، ثم نحرّك كل وزن عكس مشتقته بخطوة يحدّدها . ونصيحته أن تبدأ الأوزان صغيرة وعشوائية، وأن يُرفَع المعدّل حتى يبدأ الخطأ بالتباعد.
لا جديد في شيء من هذا. الجديد الوحيد، كما يقول، هو طريقة حساب المشتقات: حساب دقيق لجميع الأوزان في مرور واحد عبر النظام.
الأثر المباشر لمتغيّرٍ ليس أثره الكلّي
حين عرض فيربوس الفكرة على أساتذة هارفارد عام 1972، شكّكوا في إمكان الوثوق بحسابات متشابكة إلى هذا الحد. فكان جوابه مبرهنة: قاعدة السلسلة في صيغتها الخاصة بـ. تصلح هذه القاعدة لأي نظام يمكن حساب كمياته واحدة بعد أخرى بترتيب ثابت، آخرها الهدف.
الفكرة كلها قائمة على التمييز بين نوعين من المشتقات. العادية تقيس الأثر المباشر: نغيّر متغيّراً واحداً ونُبقي كل ما عداه ثابتاً. أما المشتقة المرتّبة فتقيس الأثر الكلّي: نغيّر المتغيّر ثم نعيد حساب كل ما يأتي بعده. مثال الورقة نظام من معادلتين: و . الأثر المباشر لـ في هو 3. أما الأثر الكلّي فهو 23، لأن يحرّك أيضاً، و يحرّك من جديد: . فأيّ الأثرين يهمّنا في التدريب؟ الأثر الكلّي. ففي الشبكة الحقيقية، كل ما يأتي بعد المتغيّر يتحرّك معه، ولا يبقى شيء منه ثابتاً.
يعطي فيربوس المشتقة المرتّبة للخطأ بالنسبة إلى متغيّرٍ اسماً قصيراً: «التغذية الراجعة» إلى ذلك المتغيّر، ويرمز لها بالبادئة «F_». بعد هذه التسمية يصير الحساب آلياً. نبدأ بالتغذية الراجعة إلى المخرجات، وهي ببساطة الخرج مطروحاً منه الهدف. ثم نمرّ على العصبونات بترتيب معكوس. كل عصبون يجمع التغذية الراجعة من كل عصبون لاحق يغذّيه، موزونةً بقوة الرابط بينهما. ثم نضربها في ميل الدالة السينية ، فنحصل على التغذية الراجعة إلى مُدخله . وتدرّج الوزن هو هذه القيمة مضروبة في التنشيط الداخل عبر ذلك الوزن. ومن هذا السريان العكسي للمعلومات جاء اسم الطريقة. ولكل عصبون في الشيفرة يمرّ على الروابط نفسها في الاتجاه المعاكس.
وفي الورقة ملاحظتان عمليتان تستحقان التوقّف عندهما. الأولى أن كل مشتقة مرتّبة يمكن التحقّق منها بالاضطراب: نحرّك المتغيّر قليلاً في موضع حسابه ونعيد التشغيل. يُلحّ فيربوس على هذا لكشف الأخطاء البرمجية، ويعترف بأنه لم يشغّل الشيفرة الزائفة التي كتبها. والثانية أن التغذية الراجعة التي تصل إلى المُدخلات مفيدة بذاتها. فهي تقول لنا مدى تأثّر الهدف بكل مُدخل، وهذا أساس .
الشبكة التي لا ذاكرة لها تفقد الكرة
بعض مهام التصنيف تتحسّن إذا استطاعت الشبكة أن تستفيد مما رأته قبل ذلك. أمثلة الورقة هي التعرّف على الكلام، وكشف الغواصات، وتمييز الأجسام المتحرّكة. فتمييز الحركة يتطلّب مقارنة المشهد عند اللحظة بالمشهد عند . وكثير من أنظمة التعرّف الجيدة تبني صورتها عن العالم في اللحظة بتعديل صورتها في اللحظة السابقة. حتى مرشّح كالمان يعمل بهذه الطريقة.
أوضح أمثلة فيربوس يأتي في موضع لاحق من الورقة. تخيّل كرة تتدحرج تحت طاولة ثم تخرج من جهتها الأخرى. المتنبّئ الذي لا ذاكرة له لا يرى إلا المُدخل الحالي. فإذا غابت الكرة عن النظر، لم يبقَ لديه شيء يبني عليه. أما المتنبّئ الذي يملك ذاكرة فيستطيع أن يواصل تتبّعها. ويستشهد فيربوس بصيغة أطرف لهارولد سو: إنسان بلا ذاكرة يطارده نمر، ينسى النمر بمجرّد أن يستدير ليهرب.
الحل شبكة تستقبل عصبوناتها مُدخلات من خطوات زمنية سابقة أيضاً. وصيغة فيربوس عامة عن قصد: ، يستطيع فيها أي عصبون أن يقرأ قيمة أي عصبون آخر قبل خطوة أو خطوتين.
افرد الشبكة، خزّن كل شيء، ثم امسح إلى الوراء
هنا الملاحظة المركزية في الورقة. الشبكة المتكرّرة ما زالت تحسب قيمها بترتيب ثابت، بشرط أن يمتدّ هذا الترتيب عبر الزمن كما يمتدّ عبر العصبونات. وإذا كان الأمر كذلك، فقاعدة السلسلة للمشتقات المرتّبة تنطبق كما هي دون تعديل. ومن هنا يُبنى في ثلاث خطوات.
الخطوة الأولى: شغّل الشبكة إلى الأمام على التسلسل كله، من إلى ، واحفظ كل قيمة وسيطة. الخطوة الثانية: عامِل هذا التشغيل كله على أنه واحد كبير أمامي التغذية، فيه نسخة من الشبكة لكل خطوة زمنية. هذا ما نسمّيه . لكن النسخ ليست مستقلّة، فهي تتقاسم الأوزان نفسها، وهذه هي . الخطوة الثالثة: أرسل إلى الوراء من الخطوة الأخيرة إلى الأولى، وأضف عند كل خطوة إسهامها إلى تدرّج كل وزن مشترك.
ماذا نكسب من ذلك؟ نحلّ مسألة عبر الزمن. فالمُدخل عند الخطوة صار يمكن أن يُحاسَب، لوماً أو فضلاً، على خطأ ظهر عند الخطوة . وسلسلة التغذية الراجعة بينهما هي التي تنقل هذا إلى التدرّج. بعبارة أخرى، ما يحدث في لحظة مبكرة يُسجَّل أثره في تحديث الأوزان، حتى لو لم يظهر هذا الأثر إلا بعد خطوات.
مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.
import numpy as np
def s(z):
return 1.0 / (1.0 + np.exp(-z))
def forward(X, W, W1, W2, m, n):
# X مصفوفة المُدخلات (T, m). أول m عصبوناً تنسخ المُدخلات، وآخر n عصبوناً هي المخرجات
T, K = len(X), W.shape[0]
x = np.zeros((T + 2, K)) # الصفّان 0 و1 يحملان x(-1) و x(0) بقيمة صفر
for t in range(T):
r = t + 2
x[r, :m] = X[t]
for i in range(m, K): # المعادلة 15: مُدخلات اللحظة نفسها، وقبل خطوة، وقبل خطوتين
net = W[i, :i] @ x[r, :i] + W1[i] @ x[r - 1] + W2[i] @ x[r - 2]
x[r, i] = s(net)
return x # كل الحالات مخزَّنة، لأن المسح العكسي سيحتاجها
def backward(x, Y, W, W1, W2, m, n):
T, K = len(Y), W.shape[0]
F_net = np.zeros((T + 4, K)) # قيم F_net عند T+1 و T+2 تبقى صفراً
F_W, F_W1, F_W2 = (np.zeros_like(W) for _ in range(3))
for t in reversed(range(T)): # المسح إلى الوراء عبر الزمن
r, q = t + 2, t # رقم الصف في x، ورقمه في F_net
F_x = np.zeros(K)
F_x[K - n:] = x[r, K - n:] - Y[t] # المعادلة 9: الخطأ في هذه اللحظة
for i in reversed(range(m, K)):
F_x[i] += W[i + 1:, i] @ F_net[q, i + 1:] # مسارات اللحظة نفسها
F_x[i] += W1[m:, i] @ F_net[q + 1, m:] # مسارات التأخير لخطوة، من t+1
F_x[i] += W2[m:, i] @ F_net[q + 2, m:] # مسارات التأخير لخطوتين، من t+2
F_net[q, i] = F_x[i] * x[r, i] * (1 - x[r, i]) # المعادلة 11 مع 13
# المعادلات 12 و17 و18: كل خطوة زمنية تضيف إلى الأوزان المشتركة نفسها
F_W += np.tril(np.outer(F_net[q], x[r]), -1)
F_W1 += np.outer(F_net[q], x[r - 1])
F_W2 += np.outer(F_net[q], x[r - 2])
rows = np.arange(K)[:, None] >= m # عصبونات المُدخل لا أوزان لها
return F_W * rows, F_W1 * rows, F_W2 * rows
كيف نجعلها تتدرّب فعلاً
في الورقة نصائح عملية مأخوذة من تجربة فيربوس نفسه. الانتشار العكسي عبر الزمن يلائم بطبيعته . فالمشتقات لا توجد إلا بعد مرور أمامي وعكسي كاملين، ولذلك تتغيّر الأوزان مرة واحدة لكل تسلسل. وفي العادة يجب أن يكون معدّل التعلّم أصغر بكثير مما هو في الانتشار العكسي العادي. ومن المفيد أيضاً أن تبدأ أوزان الذاكرة مثبَّتة عند الصفر، أو عند الواحد لإجبار الشبكة على التذكّر، ثم تُحرَّر تدريجياً.
وليس كل خطأ في كل لحظة مهماً بالضرورة. في التعرّف على الكلام مثلاً، قد لا يهمّنا إلا التصنيف عند نهاية كل فونيم. يكفي عندها أن نجعل التغذية الراجعة من الخرج صفراً في اللحظات الأخرى. وتلاحظ الورقة أن أي معيار خطأ آخر يمكن وضعه مكان المعيار الأصلي بالسهولة نفسها. وحين تأتي البيانات تسلسلاتٍ منفصلة، ككلمات أو تجارب روبوت، يطبّق المرور الأمامي والعكسي على تسلسل واحد، ويحدّث الأوزان، ثم ينتقل إلى التالي. فلا يلزم تخزين أكثر من تسلسل واحد في كل مرة.
ثم يتناول فيربوس . يرى أنها أقل خطراً مما يُشاع حين تفوق أنماطُ التدريب عددَ المُدخلات بكثير. لكنه يبيّن أيضاً مدى سهولة ظهورها، ويكفيه لذلك مثال من ثلاثة أنماط تدريب ووزنين فقط.
لكل نمط من الأنماط الثلاثة خطٌّ مستقيم في فضاء الأوزان، وكل نقطة عليه تطابق ذلك النمط تماماً. والخطوط الثلاثة تشكّل مثلثاً. يقول فيربوس إن رؤوس المثلث تقابل تقريباً قيماً صغرى محلية. وإعادة بناء مثاله تكشف متى يصحّ ذلك. مع مربّع الخطأ العادي ودالة سينية، تكون الأخاديد حول الخطوط ليّنة، فتندمج في وادٍ واحد في الوسط. أما مع معيار أحدّ، كالخطأ مرفوعاً للأس 1.5 الذي تقترحه الورقة نفسها، فتصير الأخاديد شديدة الانحدار، ويَعلق الانحدار عند أقرب رأس من رؤوس المثلث. أي أن ظهور هذه القيم الصغرى هنا يتوقّف على معيار الخطأ الذي نختاره. وهذا هو تحذير الورقة العام في صورة مصغّرة: الأنماط المتعارضة قد تخلق قيماً صغرى حتى في أصغر المسائل.
وفي مسألة السرعة، يتكلّم فيربوس بصراحة: الانحدار الأشدّ طريقة غير فعّالة. ويستشهد بقواعد تجريبية سرّعت التقارب مئة ضعف. أما طرق شبه نيوتن فلا تنجح إلا مع نحو مئة وزن. و بصيغة بولاك–ريبيير تحتاج إلى تعلّم دفعي وإلى بحث خطّي دقيق جداً. وأفضل ما نجح معه هو طريقة شانو في التدرّجات المترافقة. ويذكّر كذلك بأن مربّع الخطأ ليس مقدّساً. فالأس 1.5 يعمل مع كل المعادلات السابقة بالقدر نفسه. وإذا أضفنا إلى شبكة خطية، اقتربت النتيجة، كلما كبرت العقوبة، من عند كوهونن. وقد دافع بعض الإحصائيين عن هذا الأسلوب بوصفه تنبّؤاً بالقياس على حالات سابقة.
أبعد من التصنيف — تعلّم كيف يتحرّك نظام ما
المشتقات نفسها تخدم أغراضاً أبعد من تمييز الأنماط. في ، أو «التعرّف العصبي» كما يسمّيه فيربوس، الهدف هو تعلّم نموذج يتنبّأ بسلوك نظام ديناميكي. في كل خطوة تستقبل الشبكة المشاهدات ، والأفعال التي كانت تحت سيطرتنا، وتُدرَّب على التنبّؤ بـ . ومن دون ذاكرة، لا يستطيع التنبّؤ أن يستعمل إلا الحاضر، فنعود إلى الكرة التي اختفت تحت الطاولة. أما الانتشار العكسي عبر الزمن فيسمح بنموذج له ، أي ذاكرة داخلية يحملها من خطوة إلى التي تليها، فيبقى أثر الكرة فيها حتى وهي غائبة عن النظر. ويسرد فيربوس نقاط الضعف الباقية بوضوح: قد تسوء التنبّؤات على مدى عدة خطوات، والطريقة لا تحدّد مصدر الضجيج، ولا تستطيع التكيّف في الزمن الحقيقي.
والطريقة تتجاوز الشبكات العصبية بكثير. فأي نموذج مكتوب كسلسلة من المعادلات القابلة للاشتقاق، كالنماذج الاقتصادية القياسية، يمكن تكييفه ببناء نظيره المقابل، الذي يمرّ على معادلاته نفسها في الاتجاه المعاكس. بل يمكن أن يعمل الانتشار العكسي داخل حزمة إحصائية دون أن يراه المستخدم أصلاً. أما النماذج التي يجب حلّ معادلاتها معاً في كل خطوة زمنية فتحتاج إلى عناية أكبر. وبلغة الشبكات، هذه شبكات «مزدوجة التكرار»، وقد سمّاها فيربوس لاحقاً . والشبكات التي تستقرّ على حالة توازن، مثل شبكات بينيدا وألميدا، حالات خاصة منها. وهذه الشبكات المستقرّة قريبة الصلة بـشبكة هوبفيلد.
نشر المنفعة عكسياً عبر نموذج المنظومة
في لا يكون الهدف خطأً. الهدف هنا مقياس للأداء اسمه المنفعة، ونجمعه على امتداد الزمن. وأمثلة الورقة تمتدّ من الطاقة التي تصرفها ذراع روبوت إلى صافي أرباح صناعة الغاز. وتشترك في العمل شبكتان. الأولى المتحكَّم بها، وهو يتنبّأ بكيفية استجابتها. والثانية شبكة الفعل، تنظر إلى الحالة وتختار إشارة التحكّم . والتدريب يقع على شبكة الفعل وحدها.
والإجراء هو الانتشار العكسي عبر الزمن مطبَّقاً على النظام المركّب. من كل حالة بداية، نشغّل شبكة الفعل والنموذج إلى الأمام حتى اللحظة . ثم نمسح إلى الوراء من إلى الخطوة الأولى، مروراً بالصيغة المقابلة لدالة المنفعة، ثم للنموذج، ثم لشبكة الفعل. يعطينا هذا المسح مشتقة المنفعة الكلّية بالنسبة إلى كل وزن في شبكة الفعل. بعد ذلك تتحرّك الأوزان مع التدرّج لا عكسه، لأن المطلوب تعظيم المنفعة. وكما يقول فيربوس، كلمة «الانتشار العكسي» تصف طريقة حساب المشتقات فقط. لا شيء في الطريقة يشترط وجود خطأ أو تصنيف. وهذا هو النهج الذي استعمله نغوين وويدرو في مسألة «الشاحنة التي ترجع إلى الرصيف»، واستعمله جوردان كذلك.
يوضّح العرض لماذا يهمّ المسح العكسي الكامل في التحكّم. الضغط على دوّاسة الوقود الآن يغيّر السرعة فوراً. لكنه لا يغيّر الموضع إلا لاحقاً. أما كلفة الوصول بسرعة زائدة فتظهر بعد ذلك بوقت أطول. والتدرّج الذي لا ينظر إلا خطوة أو خطوتين إلى الأمام لا يرى هذه العواقب. ولذلك يتعلّم متحكّماً لا يفعل شيئاً، أو متحكّماً يرتطم بالرصيف. أما الانتشار العكسي عبر المسار كله فيسمح لأثر قرار الكبح المتأخّر أن يصل إلى الأوزان المسؤولة عنه.
اختار فيربوس هذه الطريقة لتطبيقه على صناعة الغاز الطبيعي لأنها سريعة ودقيقة. لكنه يسمّي نقطة ضعفها بوضوح. فهي تعامل النموذج على أنه حتمي، ولذلك لا تحسب حساب الضجيج في العملية المتحكَّم بها. ولهذا الغرض، وللتعلّم أثناء تشغيل النظام، يشير إلى عائلة طرق . هذه الطرق تتعلّم تقدير المنفعة المستقبلية، على طريقة التقريبية، ولا تحتاج إلى أي مرور عكسي عبر الزمن.
ثمن التدرّجات الدقيقة
تكاليف هذه الطريقة نابعة من بنيتها، ويذكرها فيربوس بوضوح. فهي تحتاج إلى التاريخ الأمامي كله قبل أن تحسب أي شيء. ولذلك تنمو الذاكرة مع طول التسلسل، ولا يحدث التعلّم إلا بعد انتهائه. وتقليل عدد الروابط يخفّف التخزين، لكنه لا يلغيه. وهذا يستبعد التعلّم الآني الحقيقي، الذي تُستعمَل فيه كل مشاهدة مرة واحدة ثم تُهمَل.
ويمكن أيضاً حساب المشتقات الدقيقة أثناء السير إلى الأمام في الزمن. تحتفظ هذه الطريقة في كل خطوة بمقدار اعتماد كل عصبون على كل وزن. إنها طريقة ويليامز وزيبسر، المعروفة اليوم باسم التعلّم المتكرّر الآني، وإن كانت الورقة لا تستعمل هذا الاسم. كان فيربوس قد درس معادلات الاضطراب الأمامية هذه عام 1982، ورفضها للشبكات العصبية لأن كلفتها تنمو مع مربّع حجم الشبكة. والبديل التقريبي أن نعيد صياغة مسائل الذاكرة كمسائل تحكّم، ونستعمل النقّاد التكيّفيين. هذه الطرق غير دقيقة ومعقّدة، لكنها تسير إلى الأمام في الزمن. وتوصية فيربوس في الوقت الراهن أن نقبل بالتعلّم بالتسلسلات، ولا ندفع ذلك الثمن.
ما الذي أطلقته هذه الورقة
1974
أطروحة فيربوس
أول استعمال عملي للانتشار العكسي، في ملاءمة نموذج ديناميكي للنزعة القومية والتواصل الاجتماعي.
1986
الانتشار العكسي يصل إلى الجميع
روملهارت وهينتون وويليامز ينشرونه على نطاق واسع في كتاب «المعالجة الموزّعة المتوازية»، مع الإقرار بأعمال سابقة لباركر ولوكون.
1987
شبكات تستقرّ على توازن
بينيدا وألميدا يوسّعان الانتشار العكسي ليشمل الشبكات المتكرّرة التي تستقرّ على حالة توازن.
1989
تدرّجات دقيقة إلى الأمام في الزمن
طريقة ويليامز وزيبسر، المعروفة اليوم بالتعلّم المتكرّر الآني، تستغني عن التخزين مقابل حساب أكثر بكثير.
1990
هذه الورقة
عرض كامل للانتشار العكسي عبر الزمن مع شيفرة زائفة، ومعه استعمالاته في تعرّف الأنظمة وفي التحكّم العصبي، كمسألة الشاحنة التي ترجع إلى الرصيف.
1994
لماذا تصعب المسافات الطويلة
بنجيو وسيمار وفراسكوني يبيّنون أن التدرّجات المنقولة إلى الوراء عبر خطوات كثيرة تميل إلى التلاشي أو الانفجار.
1997
LSTM
هوخرايتر وشميدهوبر يصمّمان ذاكرة ذات بوّابات، لكي يستطيع الخطأ أن يعبر مسافات زمنية طويلة.
ما حسمته الورقة هو الإجراء. فكل دُرّبت منذ ذلك الحين تستعمل الإجراء الموصوف هنا: افرد، خزّن، ثم امسح إلى الوراء. وفي الغالب يُقتطَع المسح عند نافذة ثابتة. وهذه هي مقايضة الأفق نفسها التي رأيناها في عرض الشاحنة، مطبَّقة هذه المرة على البيانات لا على التحكّم.
أما ما تركته الورقة مفتوحاً فصار الفصل التالي. فهي تعطي تدرّجات دقيقة عبر تسلسلات طويلة، لكنها لا تقول شيئاً عن حجم هذه التدرّجات بعد مئة خطوة. ثم بيّن بنجيو وزملاؤه أنها في الغالب إما تتقلّص نحو الصفر أو تنفجر، وهذا ما يجعل تعلّم الاعتمادات البعيدة صعباً. وصُمّمت LSTM لعلاج ذلك، بأن تعطي الخطأ مساراً عبر الزمن لا يتقلّص. ومع ذلك، ما زالت الاثنتان تعتمدان على المسح العكسي الذي وصفته هذه الورقة لحساب تدرّجاتهما.
المرجعWerbos. Backpropagation Through Time: What It Does and How to Do It. Proceedings of the IEEE, 1990.
مصطلحات هذه الورقة
- التحديث التراجعي عبر الزمنBackpropagation Through Time
- المشتقة المرتبةOrdered Derivative
- قاعدة السلسلةChain rule
- الفَرْدUnrolling
- الشبكة العصبية التكراريةRecurrent Neural Network (RNN)
- الشبكة التكرارية ذات التأخير الزمنيTime-Lagged Recurrent Network
- مشاركة المعاملاتparameter sharing
- إشارة الخطأ الرياضيةError signal
- إسناد الائتمانCredit Assignment
- ضبط النظامSystem Identification
- التحكم العصبيNeurocontrol
- نموذج المنظومةPlant Model
- الناقد التكيفيAdaptive Critic