الروبوتات2016متقدم12 دقيقة قراءة
التدريب الشامل لسياسات بصرية-حركية عميقة
End-to-End Training of Deep Visuomotor Policies
Levine, S. · Finn, C. · Darrell, T. · Abbeel, P. — JMLR
المشكلة
قبل عام 2016 كانت أنظمة تعلّم الروبوتات مبنية على سلسلة وحدات مصمَّمة يدوياً: وحدة رؤية تقدّر أوضاع الأجسام، ومُقدِّر حالة يدمج قراءات الحساسات، ومتحكم منخفض المستوى يحسب أوامر المحركات. المشكلة أن كل وحدة كانت تُصمَّم وتُضبط بمعزل عن غيرها، فإذا أخطأ نظام الرؤية لم يستطع المتحكم تصحيح الخطأ، ونظام الرؤية بدوره لم يكن يعلم أصلاً بفشل المهمة حتى يُحسّن نفسه. الفكرة البديلة — شبكة عصبية واحدة تأخذ البكسلات وتُخرج عزوم المحركات مباشرةً — كانت تبدو مستحيلة عملياً: التعلّم المعزّز بلا نموذج يحتاج آلاف التجارب على روبوت حقيقي، والشبكة الالتفافية بمعاملاتها الـ 92,000 كانت أكبر بمراتب مما تقدر الطرق المتاحة آنذاك على التعامل معه.
الإسهام
تعتمد الطريقة على (GPS) لتفكيك مشكلة التعلّم البصري-الحركي إلى جزأين يسهل حلّ كلٍّ منهما: (1) تعلّم معزّز مرتكز على المسارات عبر متحكمات خطية-غاوسية بسيطة لها وصول إلى الحالة الكاملة للنظام، و(2) تعلّم بإشراف يُقطِّر تلك المسارات في شبكة التفافية عميقة لا ترى سوى صور الكاميرا. كذلك تقدّم الورقة بنية معمارية جديدة تستخدم softmax مكانياً لتحويل خرائط السمات الالتفافية إلى إحداثيات ثنائية البعد لنقاط سمات مدمجة، وهو تمثيل مكاني مثالي للتحكم. التدريب الشامل من خلال GPS يمكّن طبقات الرؤية من اكتشاف سمات مخصّصة للمهمة تتفوق على السمات المدرَّبة وحده. المحصّلة: أول طريقة تدرّب سياسات بصرية-حركية عميقة لمهام مناولة معقدة بتحكم مباشر في العزوم، بدقائق فقط من التفاعل الفعلي مع الروبوت.
الأثر
أثبتت هذه الورقة أن التعلّم البصري-الحركي الشامل نهج عملي قابل للتطبيق في الروبوتات الواقعية. طبقة الـ softmax المكاني تحوّلت إلى مكوّن أساسي في شبكات الإدراك الروبوتي. أما إطار البحث الموجَّه عن السياسة فقد أثّر في جيل كامل من أساليب تعلّم الروبوتات. السؤال الجوهري الذي طرحته الورقة — «هل التدريب المشترك أفضل من التدريب المنفصل؟» — وإجابته المؤكَّدة بـ«نعم» فتحا الباب لأعمال لاحقة في التعشير العشوائي للبيئة، والنقل من المحاكاة إلى الواقع، وسياسات الانتشار، والإمساك الروبوتي واسع النطاق (QT-Opt)، وكلها تدرّب الإدراك والتحكم كمنظومة واحدة.
تخيّل أنك تحاول التقاط كرة بمساعدة شخصين يعملان كلٌّ منهما بمعزل عن الآخر: الأول يراقب الكرة ويصيح لك بالإحداثيات، والثاني — معصوب العينين — يحرّك يده بناءً على ما يسمعه. لو قال المُراقب «مترين لليسار» لكن الذراع لا تتحرك إلا بخطوات 30 سنتيمتراً، فلن تُسدّ الفجوة أبداً. كل طرف محبوس في حدود عمله ولا يستطيع تعويض أخطاء الطرف الآخر.
الآن تخيّل شخصاً واحداً يرى الكرة ويحرّك يده في الوقت نفسه. عيناه تتعلمان تلقائياً تتبّع ما يهمّ فعلاً — الدوران والمسار والسرعة — وذراعه تتكيّف لحظياً مع ما يراه. هذا هو جوهر البصري-الحركي: واحدة تأخذ صورة الكاميرا وتُخرج مباشرةً المحركات، وتُدرَّب بحيث تتحسّن «العيون» و«اليدان» معاً.
المشكلة: السلاسل المُجزّأة تنهار عند نقاط الوصل
قبل هذه الورقة، لو أردت من روبوت إحكام غطاء على زجاجة، كان عليك بناء سلسلة من الوحدات المنفصلة:
- نظام رؤية (مُصمَّم يدوياً غالباً) يُقدِّر الموضع ثلاثي الأبعاد للزجاجة من صورة الكاميرا.
- مُقدِّر حالة يدمج قراءات مُرمِّزات المفاصل ووضع وتقدير الرؤية في متّجه حالة واحد.
- مُتحكِّم — غالباً من نوع PD أو متتبع مسارات — يحسب العزوم اللازمة للوصول إلى الهدف المُقدَّر.
كل وحدة كانت تُصمَّم وتُضبط بمعزل عن غيرها، ولا تُحدَّث بناءً على أداء الوحدات الأخرى. فلو أخطأ نظام الرؤية بمقدار سنتيمتر واحد، لا يملك المتحكم طريقة للتعويض. وفي المقابل، نظام الرؤية نفسه ليس لديه أي دافع لتحسين دقته لأنه لا يتلقى أي إشارة تخبره بأن المهمة فشلت. في مهام التي تتطلب دقة ملليمترية — مثل إدخال قطعة في مكعب تصنيف الأشكال — كان هذا النهج المُجزّأ يفشل باستمرار.
السؤال الذي تطرحه الورقة يبدو بسيطاً لكنه جوهري: هل تدريب الإدراك والتحكم معاً من البداية إلى النهاية يتفوق على تدريب كلٍّ منهما على حدة؟ الإجابة بـ«نعم» استلزمت التغلب على عقبتين: (1) كيف تدرّب سياسة فيها 92,000 معامل بالكمية الضئيلة من البيانات التي يولّدها روبوت حقيقي، و(2) كيف تصمّم بنية شبكة تحتفظ بالمعلومات المكانية التي يحتاجها المتحكم.
الحيلة: البحث الموجَّه عن السياسة (GPS)
تدريب سياسة شبكة عصبية عميقة مباشرةً بـ على روبوت حقيقي أمر غير عملي — طرق مثل REINFORCE تحتاج آلاف الساعات الروبوتية. ما يفعله البحث الموجَّه عن السياسة هو تفكيك المشكلة إلى مشكلتين فرعيتين أبسط تعملان بالتناوب:
الخطوة أ — («المعلّمون»): لكل وضع تدريبي (كأن تكون الزجاجة في الموضع رقم 3)، نُحسِّن متغيّراً زمنياً باستخدام تعلّم معزّز مرتكز على مع ديناميكيات محلية مُقدَّرة. هذه المتحكمات ترى الحالة الكاملة — زوايا المفاصل ومواضع الأجسام والسرعات — وتكلفة أمثلتها منخفضة. فكّر فيها كمدرّسين خصوصيين يملكون رؤية كاملة للمشهد.
الخطوة ب — («الطالب»): نجمع المسارات من كل المعلّمين وندرّب سياسة الشبكة الالتفافية العميقة على تقليد أفعالهم، لكن مدخلها الوحيد هو صور الكاميرا . المطلوب من الطالب أن يتعلم كيف يرى ما يعرفه المعلّمون — أي أن يستنتج مواضع الأجسام من البكسلات الخام.
الفكرة المحورية هنا هي أنه بعد تدريب الطالب، يعود المعلّمون ويعدّلون مساراتهم بحيث يستطيع الطالب فعلاً إعادة تنفيذها. هذا التبادل يُصاغ رياضياً كأمثَلة تتقارب نحو حل محلي أمثل تتطابق فيه سياسة الطالب مع سلوك المعلّمين.
دالة الهدف الرياضية
ينطلق البحث الموجَّه عن السياسة من مسألة أمثَلة مُقيَّدة: الهدف هو تقليل التكلفة المتوقعة لـالمسار، بشرط أن يتطابق توزيع المسار مع السياسة:
دالة هدف التعلّم بإشراف لسياسة الطالب تأخذ شكل موزون: نُقلِّل الفرق بين الفعل الذي تتنبأ به السياسة والفعل الوسطي للمعلّم، مع ترجيح كل نقطة بمقلوب مصفوفة التغايُر لمتحكم المعلّم. بعبارة أخرى، يُعاقَب الطالب أكثر عند اللحظات التي يكون فيها المعلّم واثقاً من فعله:
البنية المعمارية: softmax مكاني للتحكم
الشبكات الالتفافية المعتادة في تستخدم للتخلص من المعلومات المكانية — فالقطة قطة أينما ظهرت في الصورة. لكن متحكم الروبوت عنده حاجة معاكسة تماماً: هو يحتاج أن يعرف أن «الزجاجة على بُعد 3 سنتيمترات لليسار». لذلك صمّم المؤلفون بنية معمارية جديدة بثلاث أفكار أساسية:
1. بلا تجميع. الطبقات الالتفافية تحتفظ بالدقة المكانية كاملةً (109×109 في الطبقة الأخيرة).
2. . بدلاً من ، كل واحدة من الـ 32 تمرّ عبر softmax على المواقع المكانية، فتتحول إلى توزيع احتمالي يجيب عن سؤال بسيط: «أين توجد هذه السمة في الصورة؟»
3. الموقع المتوقع. الإحداثي (x, y) المتوقع لكل سمة يُحسب كمجموع مُرجَّح — أي soft-argmax. النتيجة 32 (64 إحداثياً) تشكّل ملخصاً مكانياً مضغوطاً للمشهد بأكمله.
بعد ذلك تُدمج نقاط السمات هذه مع زوايا مفاصل الروبوت، ثم تمرّ عبر صغيرتين (40 وحدة لكل منهما) تُخرجان 7 عزوم للمحركات. الشبكة كلها لا تتجاوز نحو 92,000 معامل — رقم ضئيل بمقاييس ، لكنه كان ضخماً بمقاييس بحث السياسات في 2016.
خط أنابيب التدريب الكامل
التدريب الكامل يمرّ بثلاث مراحل مصمَّمة لتقليل وقت تفاعل الروبوت قدر الإمكان:
المرحلة 1 — على الوضع: يحرّك الروبوت الجسم المستهدف في مواضع عشوائية ويسجّل صور الكاميرا مقرونةً بوضع الجسم. نحو 1000 زوج صورة-وضع تُستخدم لتدريب الطبقات الالتفافية مسبقاً على تقدير الوضع. الطبقة الالتفافية الأولى تُهيَّأ بأوزان ImageNet. الهدف هو إعطاء طبقات الرؤية انطلاقة مبكرة في تعلّم ملامح الأجسام، قبل أن يبدأ أي تعلّم تحكمي.
المرحلة 2 — التدريب المسبق لـالمسارات: على مدى 15 تكراراً، يدرّب البحث الموجَّه عن السياسة المتحكمات الخطية-الغاوسية البسيطة فقط (المعلّمين)، بدون تحسين السياسة البصرية-الحركية الكاملة. تُستخدم مؤقتاً شبكة صغيرة كاملة الاتصال تعمل على الحالة الكاملة لتنسيق المسارات فيما بينها. الغرض هنا هو منح المعلّمين بداية قوية في تعلّم المهارات الحركية.
المرحلة 3 — : تُدرَّب سياسة الشبكة الالتفافية الكاملة باستخدام GPS. في كل تكرار تُحسَّن طبقات التحكم الحركي وحدها أولاً (لأنها لم تحظَ بتدريب مسبق)، ثم تُضبط الشبكة بأكملها من الطرف إلى الطرف. السبب أن الطبقات الحركية تُنتج أخطاءً كبيرة في البداية، ولو ضبطنا كل شيء دفعة واحدة لنسيت الطبقات الالتفافية السمات المفيدة التي تعلمتها. عادةً يكفي 2–4 تكرارات من GPS.
التجارب الواقعية: من البكسلات إلى العزوم
اختبر المؤلفون طريقتهم على أربع مهام مناولة باستخدام ، وكلها تتطلب تحكماً بصرياً بدقة ملليمترية:
- علّاقة المعاطف — تعليق علّاقة على رف، بقبضتين × 3 مواضع للرف.
- مكعب تصنيف الأشكال — إدخال شبه منحرف في الفتحة المطابقة، بـ 9 مواضع للمكعب.
- المطرقة اللعبة — إدخال مخلب المطرقة تحت مسمار، بـ 3 قبضات × 5 مواضع للمسمار.
- غطاء الزجاجة — إحكام غطاء على زجاجة، بـ 9 مواضع للزجاجة.
قُورنت ثلاثة إعدادات: التدريب الشامل (الطريقة الكاملة)، وسمات الوضع (سمات رؤية مدرَّبة مسبقاً وطبقات التحكم وحدها تُدرَّب بـ GPS)، وتنبؤ الوضع (الرؤية تُخرج تقدير وضع ثلاثي الأبعاد والتحكم يُدرَّب منفصلاً).
ما الذي تعلّمت الشبكة رؤيته
الجميل في الـ softmax المكاني أنه يُجبر الشبكة على التعبير عن فهمها البصري على هيئة نقاط سمات، وهذا يعني أننا نستطيع حرفياً أن نرى ما تنظر إليه السياسة. بعد التدريب الشامل، تبيّن أن النقاط المُتعلَّمة تختلف نوعياً عن تلك الناتجة عن تقدير الوضع وحده:
- سمات مرتبطة بالمهمة تظهر تلقائياً: السياسة تكتشف نقاطاً على الجسم المستهدف وعلى ذراع الروبوت معاً — وكلاهما ضروري لتوجيه التلامس بدقة.
- المُشتتات تُكبَت: الـ softmax المكاني يعمل كآلية : التنشيطات الضعيفة تُخمَد بالتسوية، فتتجاهل السياسة الأجسام غير المعنية حتى لو لم تكن موجودة أثناء التدريب.
- موجَّهة بالهدف لا بالتعرّف: سمات تقدير الوضع تتركّز عادةً على حواف الأجسام لتحديد موقعها في الفراغ. أما سمات التدريب الشامل فتتتبّع تحديداً أسطح التلامس التي تهمّ المهمة — كفوّهة الزجاجة أو طرف مخلب المطرقة.
الـ softmax المكاني في شيفرة برمجية
مبسَّط لإظهار الفكرة — ليس التنفيذ الحقيقي.
import numpy as np
def spatial_softmax(feature_maps):
"""حوّل خرائط سمات (C, H, W) إلى إحداثيات نقاط سمات (C, 2)."""
C, H, W = feature_maps.shape
# 1. Softmax على المواقع المكانية لكل قناة
flat = feature_maps.reshape(C, -1) # (C, H*W)
weights = np.exp(flat - flat.max(axis=1, keepdims=True))
weights /= weights.sum(axis=1, keepdims=True) # كل قناة مجموعها 1
weights = weights.reshape(C, H, W)
# 2. الموقع المتوقع: المتوسط المُرجَّح لإحداثيات (x, y)
xs = np.linspace(-1, 1, W) # إحداثيات x مُسوَّاة
ys = np.linspace(-1, 1, H) # إحداثيات y مُسوَّاة
grid_x, grid_y = np.meshgrid(xs, ys)
fp_x = (weights * grid_x).sum(axis=(1, 2)) # (C,)
fp_y = (weights * grid_y).sum(axis=(1, 2)) # (C,)
return np.stack([fp_x, fp_y], axis=1) # (C, 2) نقاط سمات
# الاستخدام: 32 خريطة استجابة → 32 نقطة سمة → 64 إحداثياً
# هذه الأرقام الـ 64 + زوايا المفاصل = كل ما تراه الطبقات الحركية
feature_maps = np.random.randn(32, 109, 109) # محاكاة مخرج conv3
points = spatial_softmax(feature_maps)
print(f"الشكل: {points.shape}") # (32, 2)
# كل نقطة هي (x, y) قابلة للاشتقاق — كل شيء قابل للتدريبلماذا أهمّت هذه الورقة
أجابت هذه الورقة عن سؤال ظلّ معلّقاً منذ بدايات الروبوتات القائمة على الشبكات العصبية: هل يمكن فعلاً تدريب شبكة واحدة من البكسلات إلى العزوم مباشرةً؟ الإجابة لم تكن «نعم» فحسب، بل «نعم، والنتائج أفضل بفارق واضح من النهج المُجزّأ». ثلاثة إسهامات من هذا العمل أثّرت في مسار الحقل:
- مبدأ التدريب الشامل في الروبوتات. التدريب المشترك يتيح لنظام الرؤية أن يتعلم سمات مفيدة للتحكم لا للتعرّف فحسب. هذا المبدأ أصبح اليوم أساس كل نظام حديث تقريباً في تعلّم الروبوتات.
- الـ softmax المكاني. عملية الـ soft-argmax التي تحوّل خرائط السمات إلى إحداثيات ثنائية البعد صارت لبنة بناء واسعة الانتشار في بنيات تقدير الوضع والمناولة والملاحة.
- البحث الموجَّه عن السياسة كجسر بين عالمين. أثبت GPS أنك لست مضطراً للمفاضلة بين في الطرق القائمة على النموذج والقدرة التعبيرية لـ — يمكنك الجمع بينهما باستخدام الأولى لتعليم الثانية. هذا النموذج — المعلّم يُرشد والطالب يتعلّم — يتكرر اليوم في أنحاء تعلّم الروبوتات الحديث.
2016
السياسات البصرية-الحركية (هذه الورقة)
أول طريقة شاملة تدرّب شبكات التفافية عميقة من البكسلات إلى العزوم لمهام تلاعب واقعية، باستخدام البحث الموجّه عن السياسة والـ softmax المكاني.
2017
التعشير العشوائي للبيئة
درّب Tobin وزملاؤه سياسات بصرية-حركية في بيئة محاكاة بتعشير عشوائي للنسيج والإضاءة وزاوية الكاميرا، ثم نقلوها إلى روبوت حقيقي — موسّعين بذلك مبدأ التدريب الشامل ليشمل النقل من المحاكاة إلى الواقع.
2018
QT-Opt
وسّع Kalashnikov وزملاؤه مهمة الإمساك البصري إلى 580,000 محاولة حقيقية عبر 7 روبوتات، بتدريب دالة Q من البكسلات بشكل شامل. أثبتوا أن هذا النهج قابل للعمل على نطاق صناعي.
2022
SayCan
ربط Ahn وزملاؤه النماذج اللغوية بمهارات بصرية-حركية، حيث تعمل بدائيات مناولة مدرَّبة شاملاً كـ«أيدٍ» يُنسّق بينها «عقل» النموذج اللغوي.
2023
سياسة الانتشار
استبدل Chi وزملاؤه مخرجات السياسة الغاوسية بنماذج الانتشار العكسي، ما أتاح توليد توزيعات أفعال متعددة المنوال مع الإبقاء على التدريب البصري-الحركي الشامل.
كل نظام حديث لتعلّم الروبوتات يربط صور الكاميرا بالأفعال — سواء في الانتقاء داخل المستودعات أو المساعدة الجراحية — يحمل بصمة هذه الورقة. السؤال الذي طرحته وأجابت عنه بوضوح لا يزال المبدأ التصميمي المهيمن: درِّب الإدراك والتحكم معاً.
المرجعLevine, Finn, Darrell, Abbeel. End-to-End Training of Deep Visuomotor Policies. JMLR, 2016.
مصطلحات هذه الورقة
- السياسةPolicy
- البحث الموجَّه عن السياسةGuided Policy Search
- الشبكة العصبية الالتفافيةConvolutional Neural Network (CNN)
- Softmax مكانيSpatial Softmax
- مسار تتابع الحالات والأفعالTrajectory
- التعلم المعززReinforcement Learning
- من طرف إلى طرفend-to-end
- نقطة السمةFeature Point
- العزمTorque