Action Chunking
Phân đoạn hành động khiến một policy của robot dự đoán chuỗi hành động tiếp theo từ một lần quan sát, giảm lỗi tích lũy. Nội dung đề cập ACT, làm mượt và VLA.
Phân nhóm hành động là kỹ thuật trong học robot, trong đó policy dự đoán một chuỗi, hay một nhóm, gồm k hành động tiếp theo từ một quan sát duy nhất thay vì dự đoán một hành động cho mỗi bước điều khiển. Tên gọi này mượn khái niệm từ tâm lý học và khoa học thần kinh, tức gom một chuỗi hành động thành một đơn vị duy nhất; khái niệm này đi vào lĩnh vực học robot cùng với Action Chunking with Transformers (ACT) năm 2023. ACT học các tác vụ tinh vi cần hai tay phối hợp, như lắp pin vào khe, với tỷ lệ thành công 80-90% chỉ từ 10 phút trình diễn trên cánh tay robot ALOHA giá rẻ. Dự đoán theo nhóm hiện là tiêu chuẩn trong học bắt chước và các model thị giác-ngôn ngữ-hành động (VLA) được xây dựng cho robotics đa dụng.
Vì sao dự đoán theo nhóm hiệu quả#
Trong bắt chước hành vi, một policy học cách sao chép các hành động trong phần trình diễn của con người. Mỗi sai sót nhỏ khiến robot chuyển sang trạng thái chưa từng xuất hiện trong dữ liệu trình diễn, nơi dự đoán tiếp theo kém chính xác hơn, khiến lỗi tích lũy trong suốt tác vụ dài. Policy thực hiện k hành động cho mỗi lần dự đoán đưa ra ít quyết định hơn k lần trong mỗi lượt thực hiện; các tác giả ACT mô tả đây là mức giảm k lần đối với chân trời hiệu dụng của tác vụ. Trong thí nghiệm loại bỏ thành phần mô phỏng của họ, tỷ lệ thành công trung bình trên hai tác vụ tăng từ 1% khi mỗi lần chỉ dự đoán một hành động lên 44% với nhóm 100 hành động.
Các nhóm hành động còn nắm bắt được nhịp độ mà một quan sát đơn lẻ không thể thể hiện. Người trình diễn có thể dừng và do dự; policy dự đoán từng bước nhưng nhìn thấy cùng một ảnh trước và sau khoảng dừng sẽ không biết nên chờ hay di chuyển, trong khi nhóm hành động có chứa khoảng dừng sẽ tái tạo được hành vi đó. Ngoài ra, khi phần trình diễn thể hiện hai cách hợp lệ để thực hiện một tác vụ, dự đoán toàn bộ chuỗi cùng lúc giúp robot theo một trong hai cách thay vì lấy trung bình cả hai.
Robot thực hiện một nhóm hành động rồi yêu cầu policy tạo nhóm mới:
Lập kế hoạch lại sau khi thực hiện toàn bộ nhóm giúp giảm số lần gọi model; lập kế hoạch lại sau một phần của nhóm, như Diffusion Policy thực hiện, áp dụng ý tưởng chân trời lùi của điều khiển dự đoán theo model và phản ứng nhanh hơn trước tình huống bất ngờ.
Làm mượt điểm nối giữa các nhóm#
Robot chuyển động theo cơ chế vòng hở trong một nhóm, còn mỗi nhóm mới bắt đầu bằng một dự đoán mới, vì vậy chuyển động có thể bị giật tại điểm chuyển giao giữa hai nhóm. Phương pháp gộp theo thời gian của ACT truy vấn policy ở mỗi bước và thực thi trung bình có trọng số của mọi dự đoán từ các nhóm cho bước hiện tại, với trọng số exp(−m·i) gán trọng số lớn nhất cho dự đoán cũ nhất. Ví dụ NumPy này so sánh việc phân nhóm thông thường với gộp theo thời gian trên một policy giả lập, trong đó mỗi nhóm đều có một sai số nhỏ riêng:
import numpy as np
rng = np.random.default_rng(0)
k, steps, m = 10, 100, 0.1 # chunk size, episode length, temporal-ensembling decay
target = np.sin(np.linspace(0, np.pi, steps + k)) # the demonstrated joint trajectory
# Stand-in policy: at step t it predicts actions for steps t..t+k-1, each chunk off by its own error
chunks = [target[t : t + k] + rng.normal(0, 0.05) for t in range(steps)]
# Plain chunking: query every k steps and execute each chunk open loop
plain = np.concatenate([chunks[t] for t in range(0, steps, k)])
# Temporal ensembling (ACT): query every step and average all predictions for step t, oldest weighted most
ensembled = []
for t in range(steps):
preds = [chunks[s][t - s] for s in range(max(0, t - k + 1), t + 1)]
weights = np.exp(-m * np.arange(len(preds)))
ensembled.append(np.dot(weights, preds) / weights.sum())
for name, actions in (("plain", plain), ("ensembled", np.array(ensembled))):
print(f"{name}: largest jump between consecutive actions = {np.abs(np.diff(actions)).max():.3f}")
print(f"demonstration: largest jump = {np.abs(np.diff(target[:steps])).max():.3f}")Phân nhóm thông thường tạo ra bước nhảy lớn nhất giữa hai bước là 0.085 tại điểm nối giữa các nhóm, lớn khoảng ba lần so với mức 0.029 trong phần trình diễn. Gộp dự đoán giảm mức này xuống 0.044, vì mỗi hành động được thực thi là trung bình của tối đa mười dự đoán được tạo từ các quan sát khác nhau.
Model lớn hơn khiến việc che giấu các điểm nối khó hơn, vì suy luận có thể mất nhiều thời gian hơn một bước điều khiển. Phương pháp phân nhóm thời gian thực của Physical Intelligence tạo nhóm tiếp theo trong khi nhóm hiện tại vẫn đang được thực thi, cố định các hành động sẽ chạy trong độ trễ suy luận và điền các hành động còn lại sao cho khớp với chúng; phương pháp này giúp các tác vụ động như quẹt diêm vẫn hoạt động khi độ trễ vượt quá 300 ms.
Chia nhỏ hành động trong các policy robot hiện đại#
- ACT: Một Transformer được huấn luyện dưới dạng autoencoder biến phân có điều kiện, xuất ra các chunk gồm 100 mục tiêu vị trí khớp, tương ứng hai giây chuyển động ở tần số điều khiển 50 Hz của ALOHA.
- Diffusion policy: Các policy này tạo từng chuỗi hành động bằng cách khử nhiễu lặp đi lặp lại, phù hợp để biểu diễn các bản trình diễn có nhiều lời giải riêng biệt.
- Model VLA: π0 của Physical Intelligence kết hợp một model thị giác-ngôn ngữ với một chuyên gia hành động được huấn luyện bằng flow matching, tạo ra các chunk gồm 50 hành động để điều khiển ở tần số lên tới 50 Hz. Thư viện LeRobot của Hugging Face cung cấp các bản triển khai mã nguồn mở của ACT, Diffusion Policy và π0.
Hầu hết các policy này mã hóa ảnh thô từ camera bằng một backbone được học. Thay vào đó, policy có thể điều kiện hóa theo vị trí vật thể lấy từ một detector: một model Ultralytics YOLO26 được fine-tune trên các bộ phận trong một ô làm việc sẽ chuyển mỗi frame thành một vài tọa độ box hoặc keypoint, để policy chia chunk dùng làm trạng thái thay cho pixel thô.
Chia nhỏ hành động và các khái niệm liên quan#
- Nhận dạng hành động: Xác định hoạt động trong video. Chia nhỏ hành động tạo ra các lệnh mà robot thực thi.
- Điều khiển dự đoán theo mô hình: Tối ưu hóa chuỗi hành động dựa trên một model động lực học ở mỗi bước. Policy chia chunk học các chuỗi từ bản trình diễn và không cần model.
- Model hành động lớn: Các AI agent hoạt động trong giao diện phần mềm thông qua thao tác nhấp và lệnh gọi API. Chia nhỏ hành động liên quan đến các lệnh vận động cấp thấp, chẳng hạn như vector 14 chiều gồm vị trí khớp mà ACT xuất ra cho hai cánh tay của ALOHA ở mỗi bước.










