Yolo 비전 선전
선전
지금 참여하기
용어집

작업 분할

액션 청킹이 로봇의 정밀도와 모방 학습을 어떻게 향상시키는지 알아보세요. Ultralytics 활용해 AI 에이전트의 누적 오류를 줄이는 방법을 확인해 보세요.

액션 청킹은 로봇 공학 및 모방 학습 분야에서 널리 활용되는 고급 딥러닝 기법으로, 모델이 각 시간 단계마다 단일 동작을 예측하는 대신 미래 동작의 시퀀스(또는 “청크”)를 예측합니다. 다단계 궤적을 예측함으로써, 액션 청킹은 AI 에이전트가 복잡하고 장기적인 과제를 더욱 부드럽고 안정적으로 수행할 수 있게 해줍니다. 이 접근 방식은 시간적 예측과 고차원 컴퓨터 비전 입력을 결합한 모델 아키텍처인 ACT(Action Chunking with Transformers)가 도입된 이후 상당한 주목을 받았습니다.

연쇄적 오류 완화

전통적인 행동 복제(behavioral cloning)에서는 모델이 현재 상태를 바탕으로 바로 다음 단계를 예측합니다. 그러나 실시간 추론 과정에서 사소한 예측 오차만으로도 시스템이 관측되지 않은 상태로 전환됩니다. 이러한 오류는 급속히 누적되어 작업 실패로 이어지는데, 이를 ‘오류 누적(compounding errors)’ 현상이라고 합니다.

액션 청킹은 이러한 한계를 직접적으로 해결합니다. 여러 동작을 동시에 예측함으로써(예: 1초간의 움직임을 포괄하는 50개의 관절 운동), 효과적인 제어 지평이 축소됩니다. 이 시스템은 단일한 신뢰할 수 있는 시각적 관측을 바탕으로 일관된 단기 계획을 수립하므로, 반응성 오류의 발생 빈도를 대폭 줄입니다. 공간 인식 및 바운딩 박스 위치 파악을 위해 Ultralytics 같은 비전 백본을 통합하면, 그 결과로 도출된 예측은 프로세스 노이즈에 대해 놀라울 정도로 안정적입니다.

실제 애플리케이션

액션 청킹은 물리적 자동화 분야에서 새로운 가능성을 열어주었으며, 특히 Intel 같은 프레임워크로 최적화된 엣지 AI 하드웨어에 적용될 때 그 효과가 두드러집니다:

  • 정밀한 로봇 조작: 산업 자동화 분야에서 로봇은 묶음 단위의 예측을 활용하여 케이블 연결, 배터리 장착, 또는 패키지 분할 데이터셋으로 추적되는 물체 취급과 같이 높은 정밀도가 요구되는 접촉이 빈번한 작업을 수행합니다. 일관성 있는 동작 시퀀스를 생성함으로써 단일 단계 모방 학습에서 흔히 나타나는 갑작스럽고 불규칙한 움직임을 방지할 수 있습니다.
  • 자율 주행: 자율 주행 및 드론 비행 분야에서 조향 및 가속과 같은 제어 명령의 일련을 예측하면 더 매끄러운 궤적 계획이 가능해지며, 이는 최근 IEEE 로봇공학 논문에서 집중적으로 다루어진 개념입니다. 이를 지속적인 물체 추적깊이 추정 기술과 결합하면, 차량은 복잡한 동적 환경에서도 안전하게 주행할 수 있습니다.

관련 개념 구분하기

이 기술이 더 넓은 인공지능 생태계 내에서 어떤 위치를 차지하는지 더 잘 이해하려면, 유사한 용어들과 구별해 보는 것이 도움이 됩니다:

  • ‘동작 챕킹’ 대 ‘동작 인식’: 동작 챕킹은 기계가 실행할 일련의 향후 명령을 생성하는 반면, 동작 인식은 영상 피드 내에서 일어나는 활동을 식별하는 분석적 과정입니다.
  • 액션 청킹 대 시퀀스-투-시퀀스 모델: 시퀀스-투-시퀀스 아키텍처는 입력 시퀀스를 출력 시퀀스로 매핑하며, 기계 번역 분야에서 널리 사용됩니다. 액션 청킹은 이러한 아키텍처, 특히 트랜스포머를광범위하게 활용하지만, 출력을 텍스트가 아닌 순수한 저수준 운동 제어 및 운동학 정보로만 제한합니다.
  • 행동 청크화 대 강화 학습: 강화 학습은 보상 신호를 활용하여 에이전트가 시행착오를 통해 학습하도록 합니다. 반면, 행동 청크화는 주로 지도형 행동 복제(behavioral cloning)에 적용되며, 이 경우 모델은 명시적인 보상 극대화 과정 없이 인간의 시연으로부터 직접 학습합니다.

액션 청킹 구현

실제로는 비전 시스템이 환경을 평가하고, 시퀀스 디코더가 청크화된 궤적을 생성합니다. 다음과 같습니다. 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 은 대규모 모델을 선도하고 있지만, 일반 개발자들은 접근성이 뛰어난 도구에 의존합니다. Ultralytics 시각적 입력에 대한 데이터 라이프사이클을 간소화하여, 자동화된 데이터 주석 처리 및 원활한 모델 훈련 기능을 제공합니다. 모델이 통합된 비전-언어-행동(VLA) 아키텍처로 진감함에 따라, 효율적인 비전 시스템과 견고한 행동 청크링을 결합하는 것이 차세대 지능형 자동화의 핵심이 될 것입니다.

함께 AI의 미래를 만들어 갑시다!

미래의 머신러닝 여정을 시작하세요