Action Chunking
تعلّم كيف يحسّن تقسيم الأفعال إلى مقاطع دقة الروبوتات وتعلّم التقليد. اكتشف كيفية استخدام Ultralytics YOLO26 للحد من الأخطاء المتراكمة في وكلاء الذكاء الاصطناعي.
تُعدّ تجزئة الإجراءات تقنية متقدمة في التعلّم العميق، تُستخدم على نطاق واسع في مجالَي الروبوتات والتعلّم بالمحاكاة، حيث يتنبأ النموذج بتسلسل (أو «تجزئة») من الإجراءات المستقبلية بدلًا من إجراء واحد في كل خطوة زمنية. ومن خلال التنبؤ بمسار متعدد الخطوات، تتيح تجزئة الإجراءات لـوكلاء الذكاء الاصطناعي تنفيذ مهام معقدة ممتدة الأفق بسلاسة وموثوقية أكبر. وقد اكتسب هذا النهج زخمًا كبيرًا بعد تقديم تجزئة الإجراءات باستخدام Transformers (ACT)، وهي بنية نموذج تجمع بين التنبؤ الزمني ومدخلات الرؤية الحاسوبية عالية الأبعاد.
الحد من الأخطاء المتراكمة#
في التقليد السلوكي التقليدي، يتنبأ النموذج بالخطوة الفورية التالية استنادًا إلى الحالة الحالية. لكن أثناء الاستدلال في الوقت الحقيقي، تؤدي أوجه عدم الدقة الطفيفة في التنبؤ إلى نقل النظام إلى حالات غير مرصودة. وتتضاعف هذه الأخطاء بسرعة، مما يؤدي إلى فشل المهمة، وهي ظاهرة تُعرف باسم الأخطاء المتراكمة.
تعالج تجزئة الإجراءات هذا القيد مباشرةً. فمن خلال التنبؤ بإجراءات متعددة في الوقت نفسه (مثل 50 حركة للمفاصل تغطي ثانية واحدة من الحركة)، ينخفض أفق التحكم الفعّال. ويلتزم النظام بخطة قصيرة الأجل متماسكة استنادًا إلى ملاحظة بصرية موثوقة واحدة، مما يقلل بدرجة كبيرة من تكرار الأخطاء التفاعلية. وعند دمج أُطر الرؤية الأساسية مثل Ultralytics YOLO26 لتحقيق الوعي المكاني وتحديد المربعات المحيطة، تصبح التنبؤات الناتجة مستقرة للغاية في مواجهة ضوضاء العملية.
التطبيقات الواقعية#
أتاحت تجزئة الإجراءات إمكانات جديدة في الأتمتة الفيزيائية، ولا سيما عند نشرها على أجهزة الذكاء الاصطناعي الطرفي المحسّنة بأُطر مثل Intel Edge:
- المعالجة الروبوتية الدقيقة: في الأتمتة الصناعية، تستخدم الروبوتات التنبؤات المجزأة لتنفيذ المهام الغنية بالتلامس التي تتطلب دقة عالية، مثل تمرير الكابلات، أو إدخال البطاريات في الفتحات، أو التعامل مع العناصر التي تتعقبها مجموعات بيانات تجزئة الطرود. ويمنع توليد تسلسلات إجراءات متماسكة الحركات المتقطعة وغير المتسقة المعتادة في التعلّم بالمحاكاة ذي الخطوة الواحدة.
- الملاحة الذاتية: في القيادة الذاتية وتحليق الطائرات المسيّرة، يتيح التنبؤ بكتلة من أوامر التحكم (مثل التوجيه والتسارع) تخطيطًا أكثر سلاسة للمسار، وهو مفهوم جرى بحثه على نطاق واسع في أبحاث الروبوتات الصادرة عن IEEE. وبالاقتران مع تتبّع الأجسام المستمر وتقدير العمق، تستطيع المركبات التنقل بأمان في البيئات الديناميكية المعقدة.
التمييز بين المفاهيم ذات الصلة#
لفهم كيفية اندراج هذه التقنية ضمن منظومة الذكاء الاصطناعي الأوسع على نحو أفضل، من المفيد تمييزها عن المصطلحات المشابهة:
- تجزئة الإجراءات مقابل التعرّف على الإجراءات: بينما تُولّد تجزئة الإجراءات تسلسلًا من الأوامر المستقبلية لتنفيذها بواسطة آلة، فإن التعرّف على الإجراءات هو العملية التحليلية المتمثلة في تحديد الأنشطة التي تحدث ضمن بث فيديو.
- تجزئة الإجراءات مقابل نماذج التسلسل إلى التسلسل: تربط بنيات التسلسل إلى التسلسل تسلسل إدخال بتسلسل إخراج، وتُستخدم على نطاق واسع في الترجمة الآلية. وتستخدم تجزئة الإجراءات هذه البنى بكثافة، وتحديدًا Transformers، لكنها تقصر المخرجات بالكامل على عناصر التحكم الحركية منخفضة المستوى والحركيات بدلًا من النص.
- تجزئة الإجراءات مقابل التعلّم المعزّز: يعتمد التعلّم المعزّز على إشارات المكافأة لتعليم الوكيل من خلال التجربة والخطأ. وعلى العكس، تُستخدم تجزئة الإجراءات أساسًا في التقليد السلوكي الخاضع للإشراف، حيث يتعلم النموذج مباشرةً من العروض البشرية دون تعظيم صريح للمكافأة.
تنفيذ تجزئة الإجراءات#
عمليًا، يقيّم نظام الرؤية البيئة، ويولّد مفكك تسلسل المسار المجزأ. يوضح مقتطف Python التالي وحدة مفاهيمية في PyTorch (بديلًا عن TensorFlow) تقبل حالة البيئة، مثل حالة مشتقة من عملية اكتشاف الأجسام، وتُخرج تسلسلًا من الإجراءات المستقبلية.
import torch
import torch.nn as nn
class ActionChunker(nn.Module):
def __init__(self, state_dim, action_dim, chunk_size):
super().__init__()
# Maps the current state to a sequence of future actions
self.decoder = nn.Linear(state_dim, chunk_size * action_dim)
self.chunk_size = chunk_size
self.action_dim = action_dim
def forward(self, state):
# Predict the entire action chunk at once
chunk = self.decoder(state)
return chunk.view(-1, self.chunk_size, self.action_dim)
# Example: 128-dim state, 6 degrees of freedom, 50-step chunk
model = ActionChunker(state_dim=128, action_dim=6, chunk_size=50)
# Generate a 50-step action trajectory from a single observation
current_state = torch.randn(1, 128)
action_trajectory = model(current_state)
print(f"Action Chunk Shape: {action_trajectory.shape}")تتطلب إدارة مجموعات البيانات الضخمة اللازمة لتدريب سياسات الروبوتات موارد كبيرة. وتبتكر جهات رائدة في الصناعة مثل OpenAI و[Anthropic](https://ultralytics-translation-1.invalid نماذج واسعة النطاق، لكن المطورين في الاستخدام اليومي يعتمدون على أدوات متاحة. تعمل منصة Ultralytics على تبسيط دورة حياة البيانات للمدخلات المرئية، إذ توفر إمكانات مؤتمتة لـتعليق البيانات وتدريب النماذج بسلاسة. ومع تطور النماذج باتجاه بنيات موحّدة للرؤية واللغة والإجراءات (VLA)، سيستمر الجمع بين أنظمة الرؤية الفعّالة وتجزيء الإجراءات المتين في تحديد الجيل التالي من الأتمتة الذكية.









