علم الأعصاب2020متوسط19 دقيقة قراءة
كائنٌ ينمو من خليّة واحدة ويرمّم نفسه
Growing Neural Cellular Automata
Mordvintsev, A. · Randazzo, E. · Niklasson, E. · Levin, M. — Distill
المشكلة
تبني الكائنات الحيّة أجسادها دون أن يقرأ أحدٌ مخطّطاً. الخلايا تحمل جينوماً واحداً، ولا تحسّ إلا بمحيطها المباشر، ومع ذلك تبلغ تشريحاً بعينه ثم تدافع عنه. نعرف جينات كثيرة لازمة للتجدّد، لكننا لا نعرف خوارزمية كافية له. وقد نمذجت الأوتومات الخلوية التفاعلَ المحلّي منذ فون نويمان، وأنتجت قواعدُ مصمَّمة يدوياً أو مستنبَطة بالتطوّر أنماطاً بديعة، غير أن أحداً لم يستطع أن يبدأ من أيّ شكل يختاره فيستخرج قاعدة محلّية تُنميه ثم تحافظ عليه.
الإسهام
أوتوماتا خلويّة قاعدةُ تحديثها شبكة صغيرة قابلة للاشتقاق — نحو ثمانية آلاف معامل — تتقاسمها كل خليّة وتعمل على متّجه حالة من ستّ عشرة قناة. الإدراك التفافٌ ثابت بمرشّحات سوبل، والقاعدة تُخرج مقدار تغيّر يُضاف لا حالةً جديدة، وكل خليّة تُحدِّث نفسها على رمية قرعة مستقلّة، والخلية التي لا جار حيّ لها تُصفَّر. أما التدريب فانتشار عكسي عبر الزمن مقابل خسارة على البكسلات. والعمل الحقيقي يقع في اختيارين تدريبيَّين: مجمّع من الحالات السابقة يجعل الهدف جاذباً، وإتلافٌ يُطبَّق على عيّنات المجمّع يوسّع الحوض المحيط به.
الأثر
أثبتت أن نظاماً لامركزياً تماماً، لا حالة عامّة فيه، يمكن برمجته بالنزول الاشتقاقي ليبلغ هيئةً بعينها ويدافع عنها، بل ويتعافى من أعطابٍ لم يرها قط. وقد امتدّ هذا الخطّ في سلسلة «الأنظمة ذاتية التنظيم القابلة للاشتقاق»، وهو يجاور الشبكات العصبية على الرسوم البيانية، وروبوتات الأسراب، وكل موضع يتعيّن فيه على وكلاء متطابقين أن يتّفقوا على نتيجة عامّة برسائل محلّية وحدها.
يفقد السمندل ساقه فيُنبتها من جديد: عظماً وعضلاً وعصباً، بالترتيب الصحيح وبالطول الصحيح، ثم يتوقّف. ولا خليّة في تلك الساق رأت سمندلاً قط. كل ما تعرفه الواحدة منها هو كيمياء سطحها ومَن يضغط عليها من الجيران.
اللغز ليس كيف تنقسم الخليّة. اللغز كيف يتّفق حشدٌ من الخلايا، كلٌّ منها أعمى وراء غشائه، على أين تنتهي الساق.
الجسد الذي يبني نفسه
يبدأ كل كائن متعدّد الخلايا تقريباً من خليّة واحدة، ثم ترتّب ذرّيّةُ تلك الخليّة نفسها في التشريح ذاته في كل مرة. هذا هو التخلّق، وهو أوضح مثال نملكه على التنظيم الذاتي: الترتيب لا يُفرَض من الخارج، بل ينتج عن قرارات محلّية -أودعها بها خالقها سبحانه- تتّخذها على التوازي خلايا تتقاسم جينوماً واحداً، ولا يفرّق بينها إلا ما أحسّت به وما خزّنته.
والمدهش فيه ليس حدوثه، بل أنه يُدافَع عنه. اشطر جنيناً ثديياً في طوره المبكر نصفين يصر كل نصف فرداً كاملاً. أتلِف عين السمندل أو طرفه أو أجزاء من دماغه يُعَد بناؤها. في جماعة الخلايا إذن شيءٌ يمثّل الهيئة المكتملة تمثيلاً يكفي لملاحظة الانحراف عنها وتصحيحه. ومع ذلك لا تحمل أيّ خليّة بمفردها تلك الهيئة.
والسؤال المفتوح ليس أيّ الجينات لازم؛ فكثير منها معروف. السؤال أيّ خوارزمية كافية: ماذا يجب أن تحسبه الخليّة من محيطها وحده حتى يترتّب عليه تشريح بعينه.
كانت الأوتومات الخلوية هي الطريق الطبيعي لطرح هذا السؤال منذ استعملها فون نويمان في التكاثر الذاتي: شبكة من الخلايا، وقاعدة واحدة تُطبَّق على كل خليّة في كل خطوة، وحالة جديدة لا تعتمد إلا على جوار ضيّق. أنماط تورنغ التفاعلية الانتشارية، ولعبة الحياة عند كونواي، ونموذج غراي-سكوت، ثم نظيراتها الأحدث ذات القيم المتّصلة مثل SmoothLife وLenia: كلها تُظهر كم من السلوك يمكن أن تولّده حفنة قيود محلّية.
لكن المشكلة في اتجاه السير. تلك القواعد كانت تُكتَب أو يُبحَث عنها ثم تُشغَّل لنرى ما الذي يظهر. أما السير في الاتجاه المعاكس — أن تسمّي الشكل أولاً ثم تستخرج قاعدة محلّية تُنتجه — فقد جُرّب بالبحث التطوّري، وأشهره «علم فرنسا» الذي يُصلح نفسه عند ميلر، غير أنه لا يبلغ أيّ هدف نختاره.
وتغيّر هذه الورقة شيئاً واحداً في الإعداد، وهذا الشيء الواحد هو الذي يفتح الباب: تجعل حالة الخليّة قيماً متّصلة لا منفصلة، فتصبح قابلة للاشتقاق. والقاعدة القابلة للاشتقاق نستطيع تدريبها بالأدوات نفسها التي ندرّب بها أي شبكة عصبية. ومعنى ذلك أن الشكل المطلوب صار يُكتب دالّةَ خسارة، بدل أن يُصمَّم داخل القاعدة باليد.
الخليّة ستّة عشر عدداً
تحمل كل خليّة في الشبكة متّجهاً من ستّ عشرة قيمة حقيقية. الثلاث الأولى هي اللون الذي نراه. والرابعة هي قناة الشفافية، وهي تحمل تعريفاً لا مظهراً: الخليّة التي تتجاوز شفافيّتها 0.1 ناضجة، وجيرانها المباشرون في طور النمو، وما وراء ذلك خواء تُصفَّر كل قنواته في كل خطوة. أي أن السؤال «أيّ الخلايا موجود؟» لا يُسجَّل في مكان، بل يُشتقّ من الحالة نفسها اشتقاقاً متّصلاً.
أما القنوات الاثنتا عشرة الباقية فلا معنى لها البتّة. لا تذكرها دالّة الخسارة بحرف. هي ذاكرة الخليّة الخاصّة ووسيلتها الوحيدة في الإشارة، وللقاعدة أن تستعملها تراكيزَ كيميائية، أو تقديراً للموضع، أو ساعةً، أو أيّ شيء آخر ينفع. وما تتّفق الخلايا في النهاية على وضعه هناك مُتعلَّم، وفيه يسكن التنسيق كلّه. إنه لم يُملِ عليه أحدٌ معناه.
وهنا تبلغ المشابهة الحيوية أشدّها. كل خليّة تشغّل القاعدة ذاتها، تماماً كما تحمل كل خليّة في الكائن الجينوم ذاته. ولا تختلف خليّتان في السلوك إلا لاختلاف متّجهَي حالتهما — أي لاختلاف ما تلقّته كلٌّ منهما وما بثّته وما احتفظت به.
قاعدة واحدة على أربع مراحل
يجب أن يطبّق التحديثُ العمليةَ نفسها على كل خليّة، وألّا يعتمد إلا على جوارٍ من ثلاث في ثلاث؛ وهذا بعينه تعريف . وتقسّم الورقة هذا التحديث أربع مراحل، والمرحلة الأولى وحدها قرارٌ له تعليل يستحقّ الشرح.
المرحلة الأولى هي الإدراك، وهي التفافٌ ثابت بحجم ثلاث في ثلاث: مرشّحا سوبل الكلاسيكيان يقدّران كيف تتغيّر كل قناة أفقياً ورأسياً، أي مشتقّاتها الجزئية. النواة هنا غير مُتعلَّمة، مع أنه كان بالإمكان تعلّمها. والسبب حيويّ: الخلايا الحقيقية تقرأ في الأغلب تدرّجات كيميائية. لذلك تأخذ كل خليّة تقديرين للتدرّج عن كل قناة، إلى جانب حالتها هي، وتُجمع كلها في متّجه إدراك من ثمانية وأربعين بُعداً.
وحين تُثبَّت النواة يُثبَّت معها معنى في هذا النموذج: لكل خليّة هو جوارها المباشر، ولا شيء أبعد منه. وسنرى لاحقاً أن هذا التثبيت ليس قيداً فحسب، بل مقبضٌ نتحكّم منه في النموذج.
مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.
def perceive(state_grid):
# نواة ثابتة لا مُتعلَّمة: الخلية تقرأ التدرّجات،
# كما تقرأ الخلية الحقيقية تدرّج التركيز الكيميائي.
sobel_x = [[-1, 0, +1],
[-2, 0, +2],
[-1, 0, +1]]
sobel_y = transpose(sobel_x)
grad_x = conv2d(sobel_x, state_grid)
grad_y = conv2d(sobel_y, state_grid)
# 16 قناة ذاتية + 16 تدرّجاً أفقياً + 16 تدرّجاً رأسياً = 48
return concat(state_grid, grad_x, grad_y, axis=2)
def update(perception_vector):
# تعمل لكل خلية على حدة، والأوزان نفسها في الخلايا كلها.
x = dense(perception_vector, output_len=128)
x = relu(x)
# تهيئة بالأصفار، فالقاعدة غير المدرَّبة لا تفعل شيئاً
# بدل أن تُتلف البذرة في الخطوة الأولى.
ds = dense(x, output_len=16, weights_init=0.0)
return ds # مقدار تغيّر يُضاف، لا حالة تحلّ محلّ الحالة
في المرحلة الثانية يمرّ متّجه الإدراك عبر التفاف بحجم واحد في واحد، ثم دالّة التفعيل ReLU، ثم التفاف ثانٍ بالحجم نفسه؛ نحو ثمانية آلاف معامل جملةً. ولأن الالتفافين بحجم واحد في واحد، فهما في الحقيقة شبكة صغيرة تُطبَّق على كل موضع مستقلّاً عن غيره.
وثمّة تفصيلان أهمّ من المعمار كلّه. الأول أن المُخرَج مقدارُ تغيّر يُضاف إلى الحالة القائمة، كما في . فإذا لم يكن لدى القاعدة ما تقوله، بقيت الخليّة على حالها. والثاني أن الطبقة الأخيرة تُهيَّأ بالأصفار، فلا تفعل القاعدةُ قبل التدريب شيئاً البتّة، وتنجو البذرة من الخطوة الأولى بدل أن يُتلفها ضجيج التهيئة. ولا ReLU على المُخرَج، لأن مقدار التغيّر يجب أن يقدر على الطرح كما يقدر على الجمع.
المرحلة الثالثة تُلغي الساعة المشتركة. الأوتوماتا التقليدية تحدّث خلاياها كلها دفعةً واحدة، وهذا يفترض وجود شيء يزامنها، والنظام ذاتي التنظيم ينبغي ألّا يحتاج إلى ذلك. لذلك يكون هنا : كل خليّة تُحدِّث نفسها باحتمال النصف في كل خطوة، مستقلّةً عن سائر الخلايا. ومن الناحية الآلية هذا إسقاطٌ عشوائي (dropout) يُطبَّق على متّجه التحديث لا على الأوزان.
أما المرحلة الرابعة فهي قناع الحياة الذي مرّ وصفه. ولاحظ الترتيب: القاعدة تحسب، ثم تقرّر القرعة أيُطبَّق المحسوب أم لا، وعندها فقط يُعاد فحص الوجود.
التجربة الأولى — قاعدة تبلغ الشكل
التجربة الأولى ساذجة عن قصد. صفِّر الشبكة كلها إلا خليّة بذرة واحدة في المركز، واجعل كل قنواتها عدا قنوات اللون واحداً. شغّل قاعدة التحديث عدداً من الخطوات يُسحَب عشوائياً بالتساوي بين 64 و96. والسحب العشوائي مقصود: هو يُلزم النمط بأن يكون حاضراً طوال نافذة من الزمن، لا في لحظة واحدة بعينها.
ثم قِس خسارةً تربيعية، بكسلاً بكسلاً، بين قنوات اللون والشفافية وبين الصورة المطلوبة. وبعدها مرِّر الاشتقاق راجعاً عبر الخطوات كلها، من آخرها إلى أوّلها. هذا هو ، تماماً كما يُفعَل مع الشبكات التكرارية.
وينجح الأمر، وينجح من أول محاولة جادّة: تصير الخليّة الواحدة سحليّةً أو وجهاً ضاحكاً أو عيناً في بضعة آلاف من دورات التدريب. ويسجّل المؤلفون تحفّظاً عملياً واحداً: يضطرب التدريب في أطواره المتأخّرة وتقفز الخسارة فجأة. وقد عالجوه بتطبيع تدرّج كل معامل على حدة قبل التحديث.
صار في يد الورقة إذن قاعدةٌ تُنمي الخليّة حتى تبلغ الهدف. وبقيّة الورقة كلها عن المسافة بين قاعدة تمرّ بالهدف وقاعدة تقصده فتثبت عنده.
والآن شغّل القاعدة المدرَّبة إلى ما بعد الأفق الذي دُرِّبت عليه. طُبِّقت الخسارة في مكان ما داخل تلك النافذة ولم تُطبَّق بعدها قط، فما تفعله القاعدة عند الخطوة المئتين غير مقيَّد بشيء — ويظهر أثر ذلك. ففي تجارب تدريب بالإعدادات نفسها تماماً، تضمحلّ بعض الأنماط حتى تفنى، ويستمرّ بعضها في النمو حتى يفقد شكله بالكامل، ويصادف بعضها أن يكاد يستقرّ.
وهذا ليس خللاً يُرقَّع. هذا هو الفرق بين مطلبين لا تستطيع خسارةٌ تُقاس داخل نافذة واحدة أن تفرّق بينهما: كن عند الهدف حينها، وكن عند الهدف وابقَ فيه. كل قاعدة تحقّق الأول تُعطى الدرجة نفسها، حقّقت الثاني أم لم تحقّقه، فأيّهما يقع عليه التدريب متروك للمصادفة.
التجربة الثانية — ما يبقى هو ما يوجد
لننظر إلى الشبكة الآن على أنها نظام ديناميكي. كل خليّة نظامٌ له الديناميكا نفسها، مقترنٌ بجيرانه، والتدريب يضبط تلك الديناميكا المشتركة. ما حصلت عليه التجربة الأولى مسار: ينطلق النظام من البذرة فيمرّ بالهدف. والمطلوب أقوى من ذلك: أن يكون الهدف ، أي حالةً يعود إليها النظام بعد أن يُدفَع عنها.
والطريق المباشر إلى تدريبٍ كهذا أن تشغّل القاعدة خطواتٍ أكثر بكثير، وتطبّق الخسارة مراراً على امتدادها، فتتعلّم القاعدة أن تعود إلى الهدف من حيث شردت. لكن الثمن باهظ: كل تنشيط وسيط في الحلقة يجب أن يُحفظ من أجل المرور العكسي، فتكبر الذاكرة المطلوبة مع كل خطوة إضافية.
وبديل الورقة يحقّق الأثر نفسه بكلفة حلقة قصيرة. احتفظ بمجمّع من الحالات، يُملأ في البداية بنسخ من البذرة. اسحب منه دفعةً، درّب عليها الحلقة القصيرة المعتادة، ثم أعِد كتابة الحالات النهائية الناتجة في المجمّع. وحين تُسحَب تلك الحالات في المرة التالية تكون هي نقطة البداية، فيمتدّ النشر الفعلي عبر خطوات التدريب بدل أن ينحبس داخل خطوة واحدة.
مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.
def pool_training():
seed = zeros(64, 64, 16)
seed[64 // 2, 64 // 2, 3:] = 1.0 # تشغيل الشفافية والقنوات المخفية
pool = [seed] * 1024
for i in range(training_iterations):
idxs, batch = pool.sample(32)
batch = sort_desc(batch, loss(batch))
# إعادة البذر في *أسوأ* عينة لا في عينة عشوائية: يحفظ هذا
# قدرة النمو من البذرة، ويطرد الحالات الرديئة من المجمّع.
batch[0] = seed
outputs, loss = train(batch, target)
# نهايات اليوم هي بدايات الغد.
pool[idxs] = outputs
تفصيلان في تلك الحلقة يستحقّان الوقوف. الأول أن استبدال عيّنة واحدة ببذرة جديدة في كل دفعة يمنع ما يشبه النسيان الكارثي: لولاه لانجرف المجمّع نحو الحالات المتأخّرة، ولفقدت القاعدةُ رويداً قدرتَها على النمو من خليّة واحدة أصلاً. والثاني أن الاستبدال يقع تحديداً في أعلى العيّنات خسارةً لا في عيّنة عشوائية، وهذا يجعل أطوار التدريب الأولى أثبت بكثير، لأن المجمّع يُنظَّف باستمرار من الحالات الرديئة التي تنتجها قاعدة نصف مدرَّبة.
والمجمّع يغيّر كذلك ما هو مطلوب من القاعدة، ويغيّره مع الوقت. ففي البداية يكون مليئاً بحالات مكسورة ونصف مكتملة وخاطئة، والقاعدة تُدرَّب على التعافي منها. ثم كلما تحسّنت القاعدة امتلأ المجمّع بحالات تكاد تكون الهدف، فينتقل التدريب إلى الصقل. ولم يصمّم أحدٌ هذا المنهج الدراسي؛ إنما هو أثر جانبي لإطعام النظام مخرجاته.
التجربة الثالثة — تجدّدٌ لم يطلبه أحد
قبل تدريب أي شيء جديد، يُتلف المؤلفون نماذج التجربة الثانية ويراقبون. يُترك كل نموذج ينمو مئة خطوة، ثم يُقطَع النمط: يُزال نصفه مرّةً ونصفه الآخر مرّة، ويُقتطع مربّع من وسطه. ولم يرد في تدريبها ذكرٌ للإتلاف قط.
ومع ذلك يُصلح عددٌ منها نفسه. السحليّة خاصّةً تعود فتنمو عوداً مقنعاً. والسبب ليس غامضاً متى استقرّ تأطير الجاذب في الذهن: التدريب على البقاء ينتقي قواعد تنمو وتثبت ولا تُهلك نفسها، والحالة المتلَفة تقع قريباً بما يكفي من حالات تعرف تلك القواعد كيف تتصرّف فيها، فتعيدها الديناميكا نفسها إلى الهدف.
لكنه ميلٌ لا ضمان. وإخفاقاته تستحقّ أن نذكرها، لأنها تشبه ما نعرفه من الأحياء: فمن النماذج ما يردّ على الجرح بنموّ لا يُكبَح، ومنها ما بلغ من فرط الثبات أن يتجاهل الجرح تجاهلاً تامّاً، ومنها ما يُهلك نفسه — وبخاصّة تحت الإتلاف الأشدّ.
ولكي يصير التجدّد موثوقاً، وسِّع عن عمد. التغيير ثلاثة أسطر في حلقة التدريب: اسحب من المجمّع كما كنت تفعل، ثم صفِّر منطقةً دائرية موضعها عشوائي في بضع من العيّنات الأقلّ خسارة قبل أن تجري خطوة التدريب. صار على القاعدة الآن أن تنتقل من حالات متلَفة إلى الهدف — وتلك الحالات المتلَفة مسحوبة من المجمّع، أي أنها نسخ متلَفة من حالاتٍ تبلغها القاعدة فعلاً.
والتعافي الناتج أقوى وأوسع من الإتلاف الذي رأته في التدريب: تُتلَف النماذج بدوائر ممحوّة، ثم تتجدّد من قطوعٍ مستطيلة لم تلقَها يوماً. وهذا هو أوضح دليل تقدّمه الورقة على أن المُتعلَّم حوضٌ لا جدولُ إصلاحات محفوظة.
التجربة الرابعة — أدِر المجسّات يَدُر الجسد
تذكّر أن الإدراك كان ثابتاً لا مُتعلَّماً: مرشّحا سوبل يقدّران التدرّج على محورين متعامدين. اقرأ ذلك قراءةً حيوية تجد أن لكل خليّة مجسّين مصوَّبين على هذين المحورين، يبلّغ كلٌّ منهما كيف يتغيّر التركيز على امتداد اتجاهه. فماذا يحدث لو صوّبنا المجسّين إلى جهة أخرى؟
تدوير المجسّين يعني تدوير نواتَي سوبل معاً. ويجري ذلك بعد التدريب، على نموذج منتهٍ، دون أن يُمسّ وزن واحد. عندها ينمو النمط مُداراً بالزاوية المختارة. لم يُعَد تدريب شيء، ولم تُخبَر خليّةٌ قط بمعنى الاتجاه.
ويجدر أن ندقّق لماذا هذا أكثر من مجرّد تغيير إطار مرجعي. على مستوٍ متّصل لكان الأمر شبه بديهي. أما على شبكة بكسلات فلا: تدوير شبكة من البكسلات لا يقابل كل بكسل ببكسل واحد، ويستلزم عادةً استيفاءً بين خلايا لم تعد تنطبق على بعضها. وصمودُ النمط في هذه العملية يعني أن تحتمل ظروفاً بعيدة عن الظروف التي دُرِّبت عليها. وهذه لم تُطلب في دالّة الخسارة.
لماذا لا يُسمح لخليّة بساعة
من السهل أن نظنّ التحديث العشوائي مجرّد حيلة لمنع الإفراط في الملاءمة، وهو ليس كذلك. تحديثُ الخلايا كلها في آنٍ واحد يستلزم ساعةً عامّة، والساعة العامّة هي بعينها البنية المركزية التي تحاول الورقة الاستغناء عنها. ولو كانت النتيجة معلّقة على تزامن تامّ لكانت نتيجةً أضعف بكثير، إذ لا يملك ذلك التزامنَ جمعٌ فيزيائي من خلايا ولا من روبوتات.
لذلك تنتظر كل خليّة فترةً عشوائية مستقلّة، تُنمذَج قناعاً لكل خليّة يصفّر التحديث باحتمال النصف. عُد إلى شبكة النمو أعلاه واخفض احتمال التحديث: يصل الجسد نفسه، بعد خطوات أكثر لا غير. وارفعه إلى أقصاه يصر النمو جبهةَ موجة متزامنة نظيفة. الشكل لا يعنيه الأمر.
وهذا أيضاً ما يجعل تكهّن الخاتمة متماسكاً. يرسم المؤلفون صورة نسخة فيزيائية: شبكة من حواسيب صغيرة مستقلّة، لكل واحد منها نحو عشرة كيلوبايت من ذاكرة القراءة تحفظ فيها القاعدة، وبضع مئات من البايتات ذاكرةَ عمل، وثنائيّ باعث للضوء ملوّن، وقدرة على تمرير ستّة عشر عدداً إلى جيرانه. وهذا الجهاز لا يكون قابلاً للبناء إلا لأن لا شيء في النموذج يحتاج أن تخطو الشبكة كلها في اللحظة نفسها.
ما لا تحلّه هذه الورقة
ما الذي فتحته
صلةُ هذا النموذج بالشبكات الالتفافية ليست تشبيهاً بل هويّة: على حدّ عبارة المؤلفين أنفسهم، يمكن وصف النموذج وصفاً مكافئاً بأنه شبكة التفافية تكرارية متبقّية بإسقاط عشوائي لكل بكسل. والإدراك الثابت بحجم ثلاث في ثلاث هو الالتزام نفسه بالحقل الاستقبالي المحلّي الذي التزم به النيوكوغنيترون، لكن الورقة تصل إليه من الجهة المقابلة: فالمحلّية هنا ليست حجّة كفاءة حسابية، بل هي الشيء المُنمذَج ذاته.
وثمّة صلتان أخريان تستحقّان الإمساك بهما. تأطيرُ الهدف بوصفه جاذباً هو الحركة نفسها التي تقوم بها شبكات هوبفيلد، غير أن الحوض هنا مُدرَّب لا مُشيَّد، والحالة المخزّنة منثورة على شبكة لا على أوزان. والتدريب على مُدخلات أُفسدت عن عمد طلباً لتعافٍ متين هو استراتيجية المرمّزات الذاتية المزيلة للضجيج، مطبَّقةً هنا على نظام مكاني يكون الإفسادُ فيه جرحاً.
والقنوات الاثنتا عشرة المخفيّة تمثيل موزّع لم يُملَ عليه معناه، ابتكرته الخلايا لأن التنسيق اقتضاه. والتحديث المُتعلَّم دالّة ديناميكا من النوع الذي تلائمه بالضبط نماذج العالم، إلا أنها هنا متقاسَمة بين آلاف الوكلاء دفعةً واحدة. وأمّا لاحقاً فقد امتدّ الخيط إلى شبكات تصنّف نفسها بنفسها، وإلى العائلة الأوسع من أنظمة تمرير الرسائل؛ في حين أن روبوتات الأسراب التي تشير إليها المناقشة، من الكيلوبوت إلى الأجهزة العصبية القابلة للدمج، ما زال سلوكها الجمعي يُصمَّم باليد.
المرجعMordvintsev, Randazzo, Niklasson, Levin. Growing Neural Cellular Automata. Distill, 2020.
مصطلحات هذه الورقة
- قاعدة التحديثUpdate Rule
- الالتفاف الرقميConvolution
- المعرفة المكانيةLocality
- حقل الاستقبال المحليlocal receptive field
- الوصلة التجاوزيةResidual Connection
- التحديث غير المتزامنAsynchronous Update
- التحديث التراجعي عبر الزمنBackpropagation Through Time
- جاذبAttractor
- حوض الجذبBasin of Attraction
- السلوك الناشئEmergent Behavior
- التمثيل الموزّعDistributed Representation
- ديناميكيات مُتعلَّمةLearned Dynamics
- المتانةRobustness
- التعميمGeneralization