본문으로 건너뛰기

M21.03 · ACT·Action Chunking·Temporal Ensembling

단위별 목표·권장 선수와 자료 준비 상태를 확인하고, 공개된 본문과 활동을 읽고 준비 상태를 확인할 수 있습니다.

전체 커리큘럼

학습 안내

본문을 읽고 장비 없는 기본 실습·세 확인 문제와 해설로 이해를 확인하세요.

예상 학습 시간: 미정. 이 페이지 방문이나 자료 열람으로 완료·숙달을 자동 부여하지 않습니다.

현재 경로·이전·다음 단위 확인 ↓

학습 목표

  • ACT의 chunk 길이·실행 길이/재계획과 적용 시각을 구분하고 합성 시간 범위를 계산한다.
  • 조건부 VAE/Transformer의 학습·추론 정보 흐름과 재구성/KL 손실·패딩 평균을 설명하고 계산한다.
  • 같은 적용 시각 후보의 temporal ensemble을 가중 순서/부호와 함께 계산하고 관측 나이·기하/안전 한계를 판정한다.

아래 설명·실습·문제로 각 학습 목표를 확인하세요.

권장 선수

M11의 신경망/Transformer 기초와 M21.01/02의 BC·행동 표현/정규화·mask가 선수다. 잠재 변수/조건부 VAE는 본문에서 보충한다. 기본은 합성 chunk/손실·후보 표 계산이며 ACT 모델/실물/GPU 실행은 하지 않는다. 이미 알고 있다면 직접 열어볼 수 있습니다.

설명 필수

세 목표에 대응하는 검수된 설명·예제를 읽습니다.

한 번에 여러 행동을 예측한다

ACT(Action Chunking with Transformers)는 현재 관측을 조건으로 여러 미래 행동을 한 묶음, 즉 chunk로 예측하는 모방학습 방법이다. ALOHA/ACT 저자 프로젝트는 한 행동씩 예측하는 방식과 이 시퀀스 예측을 비교한다. 원 연구의 특정 장비/과업 성과를 다른 로봇의 성공 보장으로 쓰지 않는다. 여기서는 구조와 실행 계약을 작은 수치로 이해한다.

H를 출력 행동 수, Δt를 행동 적용 간격이라 하자. H=4/Δt=0.05 s이면 첫 목표부터 마지막 목표까지 시각 차이는(H−1)Δt=0.15 s다. 각 행동을 한 간격 유지한다고 정의하면 묶음의 총 적용 구간은 HΔt=0.20 s다. 첫 행동의 예정 적용 시각이 1.00 s면 목표 시각은 1.00/1.05/1.10/1.15 s이고 마지막 유지 구간은 1.20까지다. 끝점 간 차이와 유지 구간의 길이를 구분한다.

출력 H개를 모두 실행한 뒤 다음 관측으로 재계획할 수도 있고, 앞 E개만 실행하고 다시 예측할 수도 있다. E는 이번에 실행할 길이로 1≤E≤H다. E=2이면 위 계약의 재계획 간격은 0.10 s다. E가 작으면 새 관측을 더 자주 쓸 여지가 있지만 추론 비용/지연과 연결 동작이 필요하다. 매번 제때 새 chunk가 도착한다는 보장은 없으므로 관측 취득/예측 완료/예정 적용 시각과 fallback을 기록한다.

chunk가 시연의 여러 단계를 묶어 예측한다고 오류 누적이나 복구 문제가 자동 소멸하는 것은 아니다. 오래된 관측에서 만든 긴 개방 구간은 새 장애물/물체 미끄럼에 늦게 반응할 수 있다. 출력 길이·실행 길이·실제 제어 주기와 모델 질의 주기를 구분한다. 그리퍼와 관절의 단위/표현 및 제한은 M21.02 계약을 유지한다.

학습의 잠재 표현과 배포 입력을 나눈다

ACT는 조건부 VAE(CVAE)를 사용해 시연 행동 묶음의 변동을 잠재 변수 z로 표현한다. 잠재 변수는 관측에서 직접 측정한 관절값이 아니라 모델 내부의 수치 표현이다. 조건부라는 말은 행동 분포가 현재 영상/관절 관측 같은 조건에 의존한다는 뜻이다. VAE는 시연을 압축하는 encoder와 그 표현/조건에서 행동을 재구성하는 decoder를 함께 학습하는 모형이다.

Action chunk의 겹치는 예측: 한 번의 추론 → 다음 관측의 추론 → 같은 실행 시각끼리 결합 → 실행/관측.그림 원본 크기로 보기

그림 M21.03-1. 각 칸은 서로 다른 역할/근거다. 아래 방향은 자료/처리의 연결이며 실제 성공을 자동으로 보장하지 않는다. 직접 제작한 개념도이며 본문의 조건과 함께 읽는다.

저자 구조에서 학습용 CVAE encoder는 관절 관측과 정답 행동 시퀀스로 z의 분포를 만든다. 다른 Transformer 경로는 다중 시점이 아닌 여러 카메라의 영상·현재 관절과 z를 결합하고 decoder가 chunk를 출력한다. 관측 이력 길이와 카메라 수를 같은 축으로 섞지 않는다. Transformer는 이 입력 요소들의 관계를 결합하는 표현 장치이며 실제 충돌 검사기/제어기의 역할을 대신하지 않는다.

추론 때는 정답 미래 action이 없으므로 학습 encoder를 그대로 실행해 그 값을 요구하지 않는다. 원 ACT의 평가에서는 사전분포 평균인 z=0을 사용한다. 이것은 출력 action이 0이라는 뜻이 아니며 관측을 무시한다는 뜻도 아니다. 학습의 미래 행동은 정답/잠재 분포 학습에 쓰이고, 실제 배포 입력에 몰래 제공하는 것이 아니다. 변형 구현의 설정과 잠재 처리 방식은 해당 버전에서 확인한다.

재구성 손실과 분포 제약의 역할이 다르다

재구성 손실은 예측 action과 시연 action의 차이, KL 항은 학습 잠재 분포와 정한 사전분포의 차이를 벌점으로 주는 항이다. 사전분포는 원 ACT에서 표준정규분포를 사용한다. β는 두 항의 상대 크기를 정하는 무차원 계수이며 단순히 클수록 좋은 성공률이 된다는 뜻은 아니다. 정규화 행동에 대해 다음 형태를 생각한다.

L=Lrecon+βDKL.L=L_{\mathrm{recon}}+\beta D_{\mathrm{KL}}.

원 ACT와 LeRobot ACT는 재구성에 L1, 즉 절대 오차를 사용한다. 다만 패딩을 평균하는 규약은 같다고 가정하지 않는다. original policy.py는 패딩 오차를 0으로 만든 뒤 전체 tensor 평균을 취한다. 이번에 확인한 LeRobot ACT 소스는 유효 mask의 원소 수와 행동 차원으로 나누는 평균을 쓴다. revision을 고정하고 실제 분모를 확인한다.

한 행동 성분의 절대 오차(1,2,0), mask(1,1,0) 예에서 original식 전체 평균은 1, 유효 평균은 1.5다. KL=0.25/β=2라고 주어지면 총 손실은 각각 1.5/2.0이다. 정규화 좌표의 손실이며 실제 rad 오차/작업 성공률이 아니다. 패딩 비율이 달라진 실험의 loss 숫자를 분모 확인 없이 비교하지 않는다. 유효 0 표본도 별도 제외/오류 정책으로 다루며 낮은 손실의 좋은 표본으로 채택하지 않는다.

같은 시각을 예측한 후보만 결합한다

Temporal Ensembling은 여러 예측 시점의 chunk가 같은 적용 시각에 제안한 행동을 결합하는 방법이다. t−2의 chunk 세 번째, t−1의 두 번째, t의 첫 번째처럼 후보를 시간 축에 맞춘다. 한 chunk 안의 서로 다른 미래 목표를 평균해 하나의 경로점으로 만드는 것과 다르다. 패딩/만료·틀린 action 표현의 후보를 섞지 않는다.

이제 E=2의 실행 예와 별도로 매 제어 단계에 재추론하는 합성 경우를 보자. 적용 시각 t의 후보를 생성 시점이 오래된 순서 i=0/1/2로 정하고 값 a_i=(0.2,0.4,0.8) rad라 하자. original ACT와 이번 LeRobot ACT에서 사용하는 방향의 계산은 아래와 같다. κ는 무차원 가중 계수이고 exp는 지수함수다.

wi=exp⁡(−κi),aˉt=∑iwiai∑iwi.w_i=\exp(-\kappa i),\qquad \bar a_t=\frac{\sum_i w_i a_i}{\sum_i w_i}.

κ=ln2이면 가중치는 1/0.5/0.25이고 정규화하면 4/7,2/7,1/7이다. 결과는(4×0.2+2×0.4+1×0.8)/7≈0.342857 rad다. 양의 κ와 oldest i=0의 조합은 오래된 후보에 더 큰 가중치를 준다. κ=0이면 단순 평균 약 0.466667 rad다. 계수만 보고 '항상 최신 예측 우선'이라고 읽지 않는다.

반대로 교육용 age 기반 최신 우선 규칙 exp(−κ×age)을 사용하면 오래된 후보의 age가 2/1/0이라 가중 방향이 뒤집힌다. 같은 값의 정규화 가중치는 1/7,2/7,4/7이고 결과 0.6 rad다. 기존 교재의 일부 temporal filter 예는 이런 최신 우선 계약이다. 두 규칙의 후보 순서/age 정의를 숨기고 같은 ACT 구현이라고 부르지 않는다. 계수의 부호나 후보 정렬을 바꾸면 의미도 바뀐다.

평균은 관측의 신선도나 안전 검사가 아니다

가중 평균이 급격한 명령 변화를 줄일 수 있어도 실제 물체가 계속 같은 상태라는 뜻은 아니다. 오래된 관측/목표가 어느 정도 남는지와 반응 지연을 검토한다. 좌우 회피처럼 모드가 다른 후보의 평균은 유효하지 않은 중간 목표가 될 수 있고, 회전/증분은 프레임·기준을 맞춘 합성 규칙이 필요하다. 관절 범위/속도·충돌/통신 최신성 검사는 출력 후에도 별도로 필요하다.

episode reset/사람 개입/클러치·공구/지시 변경이 생기면 과거 chunk/ensemble 상태를 재사용해도 되는지 정책을 정한다. 값 0도 합법 행동일 수 있으므로 '0이 아니면 유효'라는 임시 규칙에 의존하지 않고 유효 mask/타임스탬프와 이유를 기록하는 것이 명확하다. 어떤 후보가 몇 시각의 action인지와 실제 제한 후 전송 목표·관측을 남겨야 결합 효과를 검증할 수 있다.

기존 5.2 ACT 계보와 기존 5.9 추론/temporal ensemble을 연결해 읽자. 기본 활동은 합성 chunk/후보 계산이며 원 논문/코드의 모델 학습·로봇 평가를 실행하지 않는다.

관련 기존 자료 · 보충해서 읽기

  • 기존 상세 본문 · 관련 기존 자료 · 보충 참고

    5.2 행동 정책의 계보

    목표 일부 관련

    기존 자료의 관련 범위이며 신규 목표 전체의 품질 검수는 아직 진행하지 않았습니다.

  • 기존 상세 본문 · 관련 기존 자료 · 보충 참고

    5.9 20 Hz 폐루프 추론

    목표 일부 관련

    기존 자료의 관련 범위이며 신규 목표 전체의 품질 검수는 아직 진행하지 않았습니다.

  • 기존 상세 본문 · 관련 기존 자료 · 보충 참고

    6.3 출력 안정화

    목표 일부 관련

    기존 자료의 관련 범위이며 신규 목표 전체의 품질 검수는 아직 진행하지 않았습니다.

  • 기존 요약 레슨 · 관련 기존 자료 · 보충 참고

    Action chunk와 20 Hz 폐루프

    목표 일부 관련

    핵심 요약 레슨입니다. 자세한 유도·수식·코드는 연결된 상세 본문을 함께 읽으세요.

학습 범위와 한계

기본 설명·예제가 준비되었습니다. 기존 보충 자료의 범위와 구별하세요.

실습 필수

장비 없는 실습을 수행하고 관찰·계산 근거를 해설과 비교합니다.

입력은 H=4/E=2/Δt=0.05 s·첫 적용 1.00 s, 두 패딩 평균/KL와 세 후보/κ다. 세 후보는 같은 단위/절대 목표/적용 시각이며 이 계산에서는 모두 유효하다고 주어진다.

  1. 목표 시각·끝점 차이/유지 구간과 재계획 간격을 계산하고 chunk 길이와 실행 길이의 차이를 설명한다.
  2. 학습/추론의 정보 흐름을 설명하고 두 재구성/총 손실을 계산한다. 미래 정답 action을 배포 입력으로 요구하는 제안을 판정한다.
  3. original 방향/최신 우선 방향의 ensemble과 κ=0 평균을 구한다. 후보 순서·관측 나이/모드·reset/제한의 기록을 제안한다.

관찰은 chunk 시간, 학습/손실, ensemble 계약으로 나눈다. 막히면 후보 생성 시각과 적용 시각을 별도 축에 쓰고 패딩 분모/가중 순서를 확인한다. 실제 모델은 필요하지 않다.

0 / 8,000자 · 확인하면 이 브라우저에 저장

답안을 작성하고 확인하기를 한 번 선택하면 해설·판정 기준을 열어볼 수 있습니다.

관련 기존 자료 · 보충해서 읽기

학습 범위와 한계

기본 실습은 장비 없이 수행합니다. 실제 장비·GPU 실증을 완료했다는 뜻은 아닙니다.

평가·해설 필수

목표별 세 서술문항에 답하고 해설·판정 기준으로 자기검토합니다.

확인 문제 Q1

H=3/E=1/Δt=0.1 s이며 첫 적용 2.0 s다. 목표 시각·끝점 간 차이/유지 구간·재계획 간격을 구하라. 예측한 3개를 반드시 모두 실행해야 하는가?

0 / 8,000자 · 확인하면 이 브라우저에 저장

답안을 작성하고 확인하기를 한 번 선택하면 해설·판정 기준을 열어볼 수 있습니다.

확인 문제 Q2

절대 오차(2,0)/mask(1,0), KL=0.5/β=2다. 전체 평균/유효 평균 방식의 총 손실을 구하라. 추론 z=0은 action=0이라는 뜻인가?

0 / 8,000자 · 확인하면 이 브라우저에 저장

답안을 작성하고 확인하기를 한 번 선택하면 해설·판정 기준을 열어볼 수 있습니다.

확인 문제 Q3

같은 적용 시각의 오래된 후보 0.2/새 후보 0.8 rad에 oldest i=0/1과 κ=ln2를 쓴다. 결과와 더 큰 가중 후보를 구하라. 최신 우선 age 규칙으로 바꾸면 어떤 점을 다시 명시해야 하는가?

0 / 8,000자 · 확인하면 이 브라우저에 저장

답안을 작성하고 확인하기를 한 번 선택하면 해설·판정 기준을 열어볼 수 있습니다.

관련 기존 자료 · 보충해서 읽기

  • 기존 서술 문항 · 관련 기존 자료 · 보충 참고

    action chunk가 effective horizon과 inference rate에 주는 영향을 설명하라.

    목표 일부 관련

    개별 해설/루브릭의 목표별 충분성은 후속 단위 검수. AI 평가·코드 실행 통과를 의미하지 않음.

    개별 모범답안은 미작성입니다. 기존 관련 개념에 근거한 AI 피드백이며 추론한 해설을 구분해야 합니다.

  • 기존 서술 문항 · 관련 기존 자료 · 보충 참고

    temporal ensembling이 multimodal action에서 위험할 수 있는 사례를 들라.

    목표 일부 관련

    개별 해설/루브릭의 목표별 충분성은 후속 단위 검수. AI 평가·코드 실행 통과를 의미하지 않음.

    개별 모범답안은 미작성입니다. 기존 관련 개념에 근거한 AI 피드백이며 추론한 해설을 구분해야 합니다.

  • 기존 보고서 · 관련 기존 자료 · 보충 참고

    실습 보고서 · 기존 원고와 평가 안내

    목표 일부 관련

    개별 해설/루브릭의 목표별 충분성은 후속 단위 검수. AI 평가·코드 실행 통과를 의미하지 않음.

    개별 모범답안은 미작성입니다. 기존 관련 개념에 근거한 AI 피드백이며 추론한 해설을 구분해야 합니다.

  • 기존 서술 문항 · 관련 기존 자료 · 보충 참고

    action chunk가 오류 누적을 줄이는 측면과 open-loop 위험을 늘리는 측면을 설명하라.

    목표 일부 관련

    개별 해설/루브릭의 목표별 충분성은 후속 단위 검수. AI 평가·코드 실행 통과를 의미하지 않음.

    개별 모범답안은 미작성입니다. 기존 관련 개념에 근거한 AI 피드백이며 추론한 해설을 구분해야 합니다.

  • 기존 서술 문항 · 관련 기존 자료 · 보충 참고

    chunk size 16, control 20 Hz일 때 chunk가 나타내는 시간 길이를 구하라.

    목표 일부 관련

    개별 해설/루브릭의 목표별 충분성은 후속 단위 검수. AI 평가·코드 실행 통과를 의미하지 않음.

    개별 모범답안은 미작성입니다. 기존 관련 개념에 근거한 AI 피드백이며 추론한 해설을 구분해야 합니다.

  • 기존 서술 문항 · 관련 기존 자료 · 보충 참고

    ensemble decay \(\lambda=0.5\)이고 age가 0,1,2인 세 예측의 normalized weight를 구하라.

    목표 일부 관련

    개별 해설/루브릭의 목표별 충분성은 후속 단위 검수. AI 평가·코드 실행 통과를 의미하지 않음.

    개별 모범답안은 미작성입니다. 기존 관련 개념에 근거한 AI 피드백이며 추론한 해설을 구분해야 합니다.

  • 기존 서술 문항 · 관련 기존 자료 · 보충 참고

    `TemporalEnsembler`에 최대 history와 mode-change reset 기능을 추가하라.

    목표 일부 관련

    개별 해설/루브릭의 목표별 충분성은 후속 단위 검수. AI 평가·코드 실행 통과를 의미하지 않음.

    개별 모범답안은 미작성입니다. 기존 관련 개념에 근거한 AI 피드백이며 추론한 해설을 구분해야 합니다.

학습 범위와 한계

서술답안과 해설이 준비되었습니다. 자기검토와 학습 완료는 숙달 인증과 별개입니다.

참고 자료

학습 확인

실습과 세 문항의 답안을 해설과 비교한 뒤, 이 단위의 학습 완료를 직접 기록할 수 있습니다. 자기검토·학습 완료는 자동 채점이나 숙달 인증과 별개입니다.

실습1개·확인 문제3개의 답안을 저장하고 각각 자기검토를 기록하세요.

학습 이동

학습 단계 순서 · 공통 과정 이후 전문화 선택

전체 목차로 돌아가기 →

신규 활동의 답안은 이 브라우저의 통합 학습 기록에 저장합니다. 기존 화면의 답안·진도는 원래 키를 유지합니다. AI 강사는 현재 단위의 준비 상태·부족한 범위와 연결된 실제 자료를 참고합니다.