لماذا يتفوق ACT في المهام اليدوية
تم تطوير ACT (Action Chunked Transformers) في الأصل خصيصًا لأبحاث التلاعب اليدوي. إن رؤيته الأساسية - وهي أن توقع تسلسل الإجراءات المستقبلية (الأجزاء) بدلاً من الإجراءات ذات الخطوة الواحدة يقلل من الخطأ المضاعف - لها قيمة خاصة بالنسبة للمهام اليدوية، حيث يمكن أن يؤدي خطأ صغير في مسار إحدى الذراعين إلى فشل متتالي في تنفيذ الذراع الأخرى.
إن آلية تقسيم العمل تعطي السياسة أفقًا للتخطيط بشكل فعال. بدلاً من الالتزام بأمر مشترك واحد في كل خطوة زمنية تبلغ 50 هرتز، يخطط ACT لـ 100 خطوة للأمام ويسهل التنفيذ. بالنسبة لمهمة التسليم، يعني هذا أن السياسة يمكنها "رؤية" اقتراب كلا الذراعين نحو نقطة التسليم كجزء من تسلسل مخطط له، بدلاً من التفاعل مع كل إطار بشكل مستقل. ومن الناحية التجريبية، يؤدي هذا إلى خفض معدل حالات فشل النقل المتوسط إلى النصف مقارنة بالنهج غير المقسمة في مجموعات البيانات الثنائية.
تحذير واحد: يفترض ACT أن العروض التوضيحية الموجودة في مجموعة البيانات الخاصة بك تمثل أ استراتيجية متسقة. إذا أظهرت العروض التوضيحية المختلفة طرقًا مختلفة تمامًا لتنفيذ عملية التسليم - ذراع مختلفة تبدأ، وارتفاع مختلف للتسليم - فسيواجه مكون CVAE صعوبة في تشفير نمط واحد. يجب أن تنفذ جميع العروض التوضيحية المائة الخاصة بك نفس استراتيجية الحركة.
أمر التدريب
--device cuda ضع علامة إذا كان لديك وحدة معالجة الرسومات. تبلغ تكلفة خيارات وحدة معالجة الرسومات السحابية (Lambda Labs وVast.ai) حوالي 0.50 إلى 1.50 دولارًا في الساعة للأجهزة المطلوبة.
قراءة منحنيات التدريب Bimanual
تختلف منحنيات التدريب ثنائي اليدين عن التدريب بذراع واحدة بطريقة مهمة: لديك مساحتان للعمل، ويجب أن تتعلم السياسة كيفية التنسيق بينهما. راقب هذه الأنماط في منحنيات الخسارة الخاصة بك (عرض في TensorBoard على tensorboard --logdir ~/dk1-policies/):
L_reconstruction (خسارة العمل الشاملة)
يجب أن ينخفض من ~3.0 إلى أقل من 0.4 بمقدار 60.000 خطوة. تشير الهضبة التي تزيد عن 0.7 بعد 40.000 خطوة إلى وجود مشكلات في جودة مجموعة البيانات - من المحتمل وجود تباين كبير جدًا في توقيت التسليم أو موضعه.
L_kl (تسوية CVAE)
يبدأ بالقرب من 0 ويرتفع ببطء إلى 5-15. إذا ارتفع فوق 30، فإن CVAE يكافح من أجل العثور على نمط مدمج للتضمين. وهذا يعني غالبًا أن عروضك التوضيحية تحتوي على الكثير من التنوع السلوكي. فكر في استبعاد أقل 20% من العروض التوضيحية وإعادة التدريب اتساقًا.
خطأ في الإجراء: اليسار مقابل اليمين
إذا قمت بتمكين تسجيل أخطاء الإجراء لكل ذراع (عبر training.log_per_action_dim=true تجاوز)، سترى منحنيات خسارة منفصلة لأبعاد الإجراء اليسرى واليمنى. تشير الفجوة الكبيرة والمستمرة بين الاثنين إلى أن العروض التوضيحية لأحد الذراعين أكثر اتساقًا من الذراع الأخرى - قم بمراجعة قائمة التحقق من جودة الوحدة 4 الخاصة بك للتعرف على الذراع المتأخر.
المعلمات الفائقة الخاصة بالثنائي اليدوي
| المعلمة | الافتراضي (ذراع واحدة) | يوصى باستخدام DK1 ثنائي الاستخدام | لماذا |
|---|---|---|---|
action_dim |
7 | 14 | ذراعان مكونان من 6 أذرع DOF + قابضان = 14 بُعدًا للحركة |
chunk_size |
100 | 100 | نفس الشيء - يعتبر تقطيع الإجراء مناسبًا تمامًا للجداول الزمنية للتنسيق الثنائي |
dim_feedforward |
3200 | 3200 | لا حاجة للتغيير - يتم التعامل مع مساحة العمل الأكبر بواسطة رأس الإجراء، وليس عرض المحول |
num_steps |
50000 | 80000 | يتطلب التنسيق بين اليدين المزيد من خطوات التدريب للتقارب بشكل موثوق؛ 80 ألفًا هو الحد الأدنى العملي لـ 100 عرض تجريبي |
batch_size |
32 | 16 | تم تقليله ليناسب عينات مجموعة البيانات الأكبر حجمًا (موجزات الكاميرا المزدوجة) في ذاكرة وحدة معالجة الرسومات |
kl_weight |
10 | 10 | الافتراضي يعمل بشكل جيد. تزيد إلى 20 فقط إذا ظل L_kl بالقرب من الصفر بعد 30 ألف خطوة (لا يتعلم CVAE) |
اختيار نقطة التفتيش
حفظ نقاط التفتيش كل 5000 خطوة (training.save_freq=5000). لا تفترض أن نقطة التفتيش النهائية هي الأفضل. يمكن أن تتداخل السياسات ثنائية الأيدي مع عدد كبير من الخطوات - تتعلم السياسة إعادة إنتاج العروض التوضيحية التدريبية بشكل مثالي ولكنها تفقد تعميمها على الاختلافات الطفيفة في العالم الحقيقي التي ستواجهها أثناء التقييم.
حدد نقطة التفتيش في الخطوة حيث L_reconstruction وصلت إلى الحد الأدنى قبل البدء في الهضبة أو الزيادة قليلاً. عادةً ما يكون هذا في نطاق 60.000-80.000 خطوة لمجموعات البيانات ثنائية اليد المكونة من 100 عرض توضيحي. انشر نقطتي التفتيش (نقطة التفتيش ذات الحد الأدنى من الخسارة والنقطة الأخيرة) وقارن أدائهما في العالم الحقيقي في الوحدة 6.
اكتملت الوحدة الخامسة عندما...
أكمل التدريب 80.000 خطوة وتم حفظ نقاط التفتيش عندها ~/dk1-policies/cube-handoff-v1/. النهائي L_reconstruction القيمة أقل من 0.5. لقد حددت أفضل نقطة تفتيش لديك بناءً على منحنيات الخسارة. أنت تفهم لماذا يتصرف منحنى L_kl كما هو الحال أثناء الجري. أنت جاهز للنشر على أجهزة حقيقية في الوحدة 6 - معدل النجاح المستهدف في عملية التسليم المكعب هو >60% (اليد الثنائية أصعب من الذراع الواحدة، وهذه نتيجة قوية من التشغيل الأول).