티스토리 뷰
sinanju06/딥러닝 논문 리뷰
강화학습 논문 정리 14편 : DexMV : Imitation Learning for Dexterous Manipulation from Human Videos (ECCV 2022)
hanyangrobot 2023. 11. 23. 12:59작성자 : 한양대학원 인공지능융합학과 유승환 박사과정 (CAI LAB)
Keywords : Dexterous manipulation, Learning from human demonstrations, Reinforcement Learning
논문 링크 : https://link.springer.com/chapter/10.1007/978-3-031-19842-7_33
홈페이지 링크 : https://yzqin.github.io/dexmv/
영상 링크 : https://www.youtube.com/watch?v=scN4-KPhJe8
깃헙 링크 : https://github.com/yzqin/dexmv-sim
Abstract
(1) 연구 문제 : Computer Vision + Dexterous Manipulation
- 컴퓨터 비전 기술을 활용하여 로봇이 복잡한 dexterous manipulation 작업을 수행하기
- dexterous manipulation은 로봇이 손이나 다른 머니퓰레이터를 사용하여 다양하고 복잡한 물체를 다룰 수 있는 능력을 의미함
- 인간의 손가락처럼 미세하고 정밀한 움직임을 할 수 있는 로봇의 능력을 지칭하기도 함
- 예시 : 로봇이 물건을 잡고, 돌리고, 조립하는 것과 같은 작업들
(2) 제안하는 방법 : DexMV (Dexterous Manipulation from Videos)
- 모방 학습을 위한 새로운 플랫폼 및 파이프라인 DexMV를 제안
- 다수의 손가락을 가진 로봇 손으로 복잡한 dexterous manipulation 작업을 수행하는 시뮬레이션 시스템
- 동일한 작업을 수행하는 실제 인간 손의 대규모 demonstrtaions을 기록하는 컴퓨터 비전 시스템
- DexMV 파이프라인은 video에서 3차원 손과 물체의 자세를 추출하고, human motion을 로봇 demonstrtaions으로 변환하는 새로운 demonstrations 번역 방법을 제안함
- 그후, 해당 demonstrations을 사용하여 여러 모방 학습 알고리즘을 적용하고 벤치마킹함
- 본 연구의 결과는 demonstations이 실제로 로봇 학습을 크게 향상시키고, 강화학습만으로는 해결할 수 없는 복잡한 작업을 해결할 수 있음을 보여줌
1. Introduction
(1) 연구 질문 : Computer Vision 기술로 Dexterous Manipulation 문제를 풀 수 있을까?
- Dexterous manipulation 개요
- Dexterous manipulation은 인간이 물리적 세계와 상호 작용하는 주요한 수단임
- 인간은 일상적인 작업에서 다양한 물체로 dexterous manipulation 작업을 수행함
- 컴퓨터 비전 분야의 발전
- 3D hand-object pose estimation : 로봇이나 컴퓨터 시스템이 손과 손이 들고 있는 물체의 3차원 위치와 방향을 정확하게 파악하는 기술
- affordance reasoning : 로봇이나 컴퓨터 시스템이 주변 환경과 물체를 인식하고, 이를 바탕으로 그 물체들이 제공하는 가능한 행동이나 사용 방법을 이해하고 추론하는 기술
- 예시 : 컴퓨터 비전 시스템이 의자를 본다면, 그것이 "앉을 수 있는" 물체라는 것을 인식하기. 이는 단순히 물체를 식별하는 것을 넘어서, 그 물체가 어떤 행동이나 상호작용을 허용하는지를 이해하는 과정을 포함.
- 한계점 : 컴퓨터 비전 기술 만으로 로봇에 인간과 같은 dexterity를 갖추는 것은 여전히 매우 어려운 과제 (컴퓨터 비전 기술만으로 물리적 정보를 100% 유추하기 어렵기 때문)
- 컴퓨터 비전 + 강화학습의 한계점
- 샘플 복잡성 : Dexterous manipulation의 자유도가 높기 때문에, 그만큼 더 많은 학습 데이터를 필요로 함 (Adroit Hand의 경우 손 24 자유도 + 머니퓰레이터 6자유도 = 30자유도)
- 비정상적인 행동 : 보상 함수를 악용해서 우리가 원치 않는 비정상적인 행동을 취할 수 있음
- 연구 질문 : 컴퓨터 비전 기술의 도움으로 물리적 세계와의 상호 작용에서 인간의 경험을 로봇에 활용할 수 있을까요?
(2) 답변 : human demonstrations으로부터의 모방 학습
- 선행 연구 1 : Rajeswaran, A., et al.: Learning complex dexterous manipulation with deep reinforcement learning and demonstrations (2018)
- 특징 : 가상 현실(VR) 헤드셋과 모션 캡쳐 장갑을 사용하여 수집한 human demonstrations의 짝을 이루는 4가지 다른 조작 작업과 함께 시뮬레이션 환경을 제공
- 한계점 1 : VR을 이용한 데이터 수집은 상대적으로 비용이 많이 들고 확장성이 떨어지며, 각 작업마다 수집된 demonstrations은 25개에 불과함
- 한계점 2 : 해당 선행 연구의 4가지 다른 조작 작업은 단순한 작업이기 때문에 human demonstrations이 없어도 비슷한 성능을 달성할 수 있음이 증명됨
- 선행 연구 : Radosavovic, I., Wang, X., Pinto, L., Malik, J.: State-only imitation learning for dexterous manipulation. In: IROS (2021)
- 제안하는 아이디어 : human videos에서 다양한 일상 물체를 이용한 조작 작업을 학습하기! human video는 VR보다 데이터 수집 비용이 적음
(3) 제안하는 아이디어 : DexMV
- 시뮬레이션에서 다양한 물체들을 대상으로 다수의 손가락을 가진 로봇 손(Adroit Robotic Hand)을 사용하는 새로운 작업을 소개
- human demonstrations으로써 같은 작업을 수행하는 실제 인간 손 비디오를 수집
- Video demonstrations이 완벽한 모방(e.g. behavior cloning)을 배우기에 최적은 아닐 수 있지만, 데이터셋의 양으로 해결
- 또한 RL은 성공적인 시도와 실패한 시도에서 모두 학습할 수 있음
(4) DexMV 플랫폼 구성
- 첫번째 구성 : 인간이 조작 작업을 수행하는 비디오를 기록하는 컴퓨터 비전 시스템 (그림 1의 1행)
- 두번째 구성 : 다수의 손가락을 가진 로봇으로 dexterous manipulation을 위한 상호 작용 환경을 제공하는 물리적 시뮬레이션 시스템 (그림 1의 3행)
- 연구 목표 : 새로운 모방 학습 파이프 라인을 통해 3D 비전과 로봇의 dexterous manipulation을 연결하는 것
(5) DexMV 파이프라인 구성
- 첫번째 단계 : 기록된 비디오에서 3D hand-object 자세 추출 (그림 1의 2행)
- 두번째 단계 : 3D human hand trajectories를 robot hand demonstrations으로 변환하는 최적화 기반 접근법
- robot hand state를 얻기 위한 hand motion retargeting 접근법
- 학습울 위한 action을 얻기 위한 robot action estimation
- 세번째 단계 : robot demonstrations이 주어지면, 시뮬레이션 환경에서 모방 학습을 수행
(6) Dexterous Manipulation Tasks 소개
- 첫번째 작업 : 물체를 목표 위치로 이동시키기 (그림 1의 Reloacte)
- 두번째 작업 : 로봇 손이 머그컵에서 입자들을 용기로 붓기 (그림 2의 Pour)
- 세번째 작업 : 로봇 손이 물체를 용기 안으로 넣기 (그림 3의 Place inside)
(7) 연구의 기여점
- Human video를 사용하여 dexterous manipulation을 학습하기 위한 DexMV 플랫폼
- 이 플랫폼은 컴퓨터 비전 및 시뮬레이션 시스템을 여러 가지 복잡한 dexterous manipulation 작업과 함께 포함하고 있음
- 모방 학습을 수행하기 위한 DexMV 파이프라인
- human video를 로봇 시연으로 변환하는 데 중요한 혁신
- DexMV 플랫폼과 파이프라인을 통해, 우리는 다양한 복잡한 작업에서 dexterous manipulation 성능을 크게 향상시키고, 보이지 않는 물체 인스턴스에 대한 일반화 능력을 향상시킴
2. Related Work
2-1. Dexterous Manipulation
(1) Optimization and planning
- 이에 대한 한계점은 논문에서 언급 X
- 필자는 정확한 동역학 모델과 상태 추정에 의존하는 것이 한계점이라고 생각함
(2) Reinforcement Learning
- 강화학습으로 Dexterous Manipulation을 제어하는 연구가 진행되어 왔음
- 한계점 : 오직 강화학습만으로 학습하는 것은 엄청난 데이터 샘플이 필요함. 왜냐하면 일반적인 2자유도 로봇 그리퍼와 달리, 본 연구에 사용된 Adroit Robotic Hand은 30 자유도이기 때문에, optimization space를 크게 증가시킴. (손 24자유도, 팔 6자유도)
2-2. Imitation Learning from Human Demonstrations
(1) Behavior Cloning
- 인공지능이나 로봇이 전문가의 행동을 직접 관찰하고 모방하여 그와 유사한 행동을 학습하는 기술
(2) Inverse Reinforcement Learning
- 전문가의 행동을 관찰하고, 그 행동을 지도하는 숨겨진 보상 함수를 추론하는 기술
(3) Augmenting the RL training with demonstrations
- 강화학습 과정에서 전문가의 demonstrations 데이터를 추가하여 학습 과정을 개선하는 기술
- 기존 연구의 한계점 : 전문가 정책이나 VR을 사용하여 수집된 expert demonstrations에 의존하는데, 이는 복잡한 작업에 대해 확장 및 일반화할 수 없음
- 최근 연구의 특징 및 한계점 : video를 이용한 모방 학습과 강화학습. 그러나 대부분의 작업들이 상대적으로 간단함. (예시 : 2-finger 그리퍼로 블록 밀기 작업등을 수행)
- 제안하는 아이디어 : 새롭고 도전적인 dexterous manipulation 작업에 대한 컴퓨터 비전 기술의 자세 추정을 활용한 모방 학습 및 강화학습의 융합 (강화학습만 사용하면 이러한 작업을 해결하는 데 실패함)
2-3. Hand-Object Interaction
(1) Object Pose Estimation + Hand Pose Estimation
- 실제 물체들과 그들의 3D 스캔 데이터로 YCB 데이터셋을 제안함
- 이 외에도 물체 자세를 넘어서, hand-object 자세의 공동 추정을 위한 데이터셋과 방법도 제안되어 왔음
(2) Hand-object Contact Reasoning
- 이 기술은 기능적인 파지를 위해 사용될 수 있음
(3) 로봇 핸드를 제어하기 위한 hand pose estimation
- hand pose를 robot motion으로 매핑하기 위한 motion retargeting이 필요
- 이러한 연구들은 오브젝트가 관여하지 않는 원격 조작(teleoperation)에 초점을 맞춤
- DexMV에서는 demonstration 번역 설정을 고려함. 이는 hand-object pose의 sequence를 robot demonstrations으로 변환함
3. Overview
(1) DexMV Platform
- 다음과 같은 시스템으로 구성됨
- 1) Computer Vision : 인간의 manipulation 비디오를 기록하는 컴퓨터 비전 시스템
- 2) Simulation : 동일한 작업을 수행하는 물리 시뮬레이터
- 시뮬레이터에서 3가지 도전적인 작업 환경을 제공함
- 컴퓨터 비전 시스템을 사용하여 실제 세계에서 이 3가지 작업에 대한 human demonstrations을 수집함
- 비디오는 시간당 약 100개의 demonstrations을 효율적으로 수집할 수 있음
(2) DexMV Pipeline
- 목적 : Human Video로부터 모방 학습을 진행하기
- 컴퓨터 비전 시스템에서 녹화된 비디오가 주어지면, pose estimation과 motion retargeting을 수행하여 human video를 robot hand demonstrations으로 변환 진행
- 이러한 시연들은 정책의 학습에 사용되며, 여러 모방 학습 및 강화학습 알고리즘이 적용됨
- demonstrations으로부터 학습함으로써, 우리의 정책은 단지 하나의 trajectory를 따르는 대신, 다른 목표와 물체 구성을 가진 환경에서도 작동될 수 있음
4. DexMV Platform
(1) Computer Vision System
- 목적 : 다양한 실제 물체들을 조작하는 human demonstration video를 수집하기
- 위 사진과 같이 정육면체 frame($35 in^{3}$)을 만들고, top front와 top left에 2대의 RealSense D435 카메라(RGB-D 카메라)를 부착함
- 데이터 수집 중 사람은 해당 frame 내에서 조작 작업을 수행할 것임 (예 : 설탕 상자를 이동시키기)
- demonstration video는 2대의 카메라(전면 시야와 측면 시야)를 사용하여 기록됨
(2) Simulation System
- 시뮬레이션 시스템은 MuJoCo 시뮬레이터 위에 Adroit Hand를 사용하여 구축됨
- human demonstrations과 일치하는 여러 dexterous manipulation 작업을 설계함
(3) Task Description
- 다양한 물체를 사용한 3가지 유형의 manipulation 작업을 제안
- 사람이 조작하기에 적당한 크기의 YCB Objects를 선택
- YCB Object란? : https://www.ycbbenchmarks.com/
- 3가지 작업에 대해 상태는 모두 동일함 : robot joint angles & object pose
- 이동 작업의 경우, 목표 위치도 포함
- 3가지 작업에 대해 행동도 모두 동일함 : 각 관절의 위치 및 이동에 대한 30차원의 제어 명령 (로봇 핸드의 24 자유도 + 로봇 머니퓰레이터의 6자유도)
(3-1) Task 1 : Relocate
- 목표 : 로봇 핸드가 테이블 위의 물체를 목표 위치로 옮기기는 정책을 학습하기
- 하단 행의 시뮬레이션 시스템에서 투명한 녹색 모양은 목표 위치를 나타내며, 이는 학습 및 테스트 중에 변경될 수 있음 (goal-conditioned)
- 작업 성공 기준 : 물체가 목표 위치에 도달하면 특정한 방향성이 없어도 작업은 성공적으로 해결된 것으로 간주됨
(3-2) Task 2 : Pour
- 목표 : 로봇 핸드가 머그컵에 도달하여 그 안에 있는 입자들을 용기 안으로 부울 수 있는 정책을 학습하기
- 작업 성공 기준 : 용기 안으로 부어진 입자의 비율이 임계값을 넘으면 성공했다고 판단
(3-3) Task 3 : Place Inside
- 목표 : 로봇 핸드가 물체를 집어서 용기 안에 넣을 수 있는 정책을 학습하기
- 물체와 용기 간의 충돌을 회피하기 위해 조심스럽게 용기에 접근해야 함..!
- 작업 성공 기준 : 용기 내부에 들어간 물체 mesh 부피의 비율이 임계값을 넘으면 성공했다고 판단
- 학습에 사용되지 않은 물체들에 대한 평가도 진행함 (e.g. ShapeNet 데이터셋)
5. Pose Estimation
- 3차원 위치 추정은 제 전공 분야가 아니라서 어렵네요...ㄷㄷ
5-1. Object Pose Estimation
(1) PVN3D Model을 통한 6자유도 자세 추정
- 물체의 위치와 방향을 나타내기 위해 6자유도 자세를 사용
- translation $T \in R^{3}$ : x, y, z
- rotation $R \in SO(3)$ : 수업 시간에 배운 회전 행렬 형태
- 비디오의 각 프레임 t에서, YCB 데이터셋에서 학습된 PVN3D 모델을 사용하여 물체를 감지하고 6자유도 자세를 추정
- RGB 이미지와 포인트 클라우드를 모두 입력으로 사용하는 PVN3D 모델은 먼저 instance segmentation mask를 추정함
- 분할된 포인트 클라우드에 대한 dense voting을 통해, 물체 키 포인트의 3D 위치를 예측함
- 6자유도 물체 자세는 PnP matching error를 최소화하여 최적화 진행 (PnP matching error는 잘 몰라서... 나중에 기회가 되면 정리해보겠습니당)
5-2. Hand Pose Estimation
(1) MANO 모델을 활용한 손의 관절 위치 추정
- 매 프레임 t에 대하여 아래 3개의 파라미터로 구성된 손을 표현하기 위해 MANO 모델을 활용함
- 15개 조인트의 3D rotation을 위한 hand pose parameter $\theta_{t}$
- root global pose $r_{t}$
- shape parameter $\beta_{t}$
- 3D 손의 joint는 hand kinematics function을 통해 계산될 수 있음
- $j_{t}^{3d} = J(\theta_{t}, \beta_{t}, r_{t})$
- human video가 주어지면, off-the-shelf skin segmentation 및 hand detection models을 사용하여 손 마스크 $M_{t}$를 얻음
- 그 다음, RGB 이미지를 사용하여 매 프레임 t에 대한 아래 3개의 파라미터를 예측하기 위해, 학습된 hand pose estimation 모델을 사용함
- 2D hand joints $j_{t}^{2d}$
- MANO parameters
- $\theta_{t}$ (15개 조인트의 3D rotation을 위한 hand pose parameter)
- $\beta_{t}$ ( shape parameter )
- hand mask $M_{t}$에 의해 마스킹된 depth image의 중심을 사용하여 root joint $r_{t}$를 추정함
- 각 프레임 t의 초기 추정치 $\theta_{t}, \beta_{t}, \r_{t}$와 카메라 위치 $\Pi$를 사용하여, 최적화 문제로써 3D hand joint estimation을 다음과 같이 공식화함
- 위 수식 (1)에서
- $\lambda=0.001$
- $R$ : depth rendering function
- $D_{t}$ : frame t에 해당하는 depth map
- 우리는 2D에서 re-projection error를 최소화하고, depth map에서 손의 3D 위치를 최적화함
- 수식 1의 argmin 항이 re-projection error이고, + 뒤에 있는 항이 손의 3D 위치를 최적화하는 것 같은데... 지금으로써는 구체적인 이해가 안되는군요 ㅜㅜ
- 수식 1은 보정된 외부 파라미터를 가진 다양한 카메라에서 목표를 최소화함으로써 멀티 카메라 설정으로 더 확장될 수 있음
- 본 연구는 기본적으로 2대의 카메라를 사용하여 가림 현상(occlusion)을 처리함
- 추가적으로 우리는 $j_{t}^{3d}$와 $\beta_{t}$의 차이를 최소화하는 후처리 절차를 배치함
6. Demonstration Translation
(1) Demonstrations Translation이 필요한 이유
- 일반적인 모방 학습 알고리즘은 expert demonstrations에서 state-action 쌍을 사용함
- 학습 데이터로 로봇의 state와 모터의 action을 필요로 하지만, human hand pose를 직접 사용하지는 않음
- 그림 3의 파란색 박스에 나와 있는 kinematics chains에서 볼 수 있듯이, 로봇 손과 인간 손이 비슷한 다섯 손가락 형태를 공유하지만, 그들의 kinematics chain은 다름. 또한 각 손가락 관절의 길이도 다름.
(2) 제안하는 방법 요약
- 본 연구에서 인간 중심의 자세 추정 결과로부터 로봇 중심의 모방 데이터로 demonstrations을 변환하는 새로운 방법을 제안함
- 구체적으로 demonstrations 변환에는 두 단계가 있음 (그림 3의 빨간색 박스를 참고)
- 1) 사람 손 동작을 로봇 손 동작에 맞추기 위한 hand motion retargeting
- 2) Robot action의 예측 (i.e. 로봇 모터의 토크) : 어떠한 wired sensor도 없이, 오직 자세 추정 결과로부터 action을 복구해야 함
6.1 Hand Motion Retargeting
(1) Hand Motion Retargeting 문제 정의
- 컴퓨터 그래픽스와 애니메이션에서 motion retargeting은 영화나 만화와 같은 어플리케이션을 위해 연주자의 동작을 가상 캐릭터에게 재타겟하는데 사용됨
- 애니메이션 커뮤니티가 현실적인 시각적 외모를 강조하는 동안, 우리는 robotics manipulation 맥락에서 retargeted motion의 물리적 효과에 더 많은 고려를 함
- 즉, 로봇 동작은 실행 가능해야 하며, 모터의 물리적 한계(e.g. 가속도와 토크)를 고려해야 함
- 공식적으로, 하나의 video에서 추정된 human hand pose의 sequence${(\theta_{t}, \beta_{t}, r_{t})}$를 가지고, hand pose retargeting은 로봇 joint angle의 sequence ${q_{t}}_{t=0}^{T}$를 계산하는 것으로 정의할 수 있음. 이때 t는 T+1 길이의 sequence의 step number임.
- 우리는 optimization 문제로써 hand pose retargeting 문제를 공식화 함
(2) Optimization with Task Space Vectors
- 대부분의 manipulation 작업에서, 사람의 손과 다수의 손가락을 가진 로봇 손은 손 끝(fingertip)을 사용하여 물체와 접촉함
- 따라서 fingertip 기반 매핑에서 retargeting은 손바닥 위치에서 finger tips 위치까지 정의된 작업 공간 벡터(Task Space Vector, TSV)를 보존함으로써 해결됨 (그림 3의 녹색 상자에 있는 녹색 화살표로 표시됨)
- 이렇게 하면 인간과 로봇 손은 손바닥에 대해 같은 fingertip 위치를 가질 것임
- 그러나 fingertip만을 고려하는 것은 아래의 그림 4의 mid row에서 나타난 것처럼 예상치 못한 최적화 결과를 초래할 수 있음.
- fingertip 위치가 보존되어 있지만, 손가락의 구부러짐 정보가 손실되어 retargeting한 후 물체를 관통하게 됨
- 관절 각도가 로봇의 특이점(singularity)에 가까울 때, 이 문제는 더욱 심각해짐.
- 이 문제를 해결하기 위해, 본 연구는 그림 3의 녹색 박스에서 보여지는 것처럼, 손바닥에서 중간 phalanx까지의 TSV(파란색 화살표)를 포함함. 이때의 optimization objective는 다음의 수식과 같음.
- 위 수식 2에서
- $v_{i}^{H}(\theta, \beta, r)$ : 사람 손의 forward kinematics 함수로써, 사람 손에 대한 i 번째 TSV를 계산
- $v_{i}^{R}(q)$ : 로봇 손의 forward kinematics 함수로써, 로봇 손에 대한 i 번째 TSV를 계산
- 수식 2의 첫번째 항은 finger tip-palm TSV와 finger tip-phalanx TSV를 매칭시키는 best ${q_{t}}_{t=0}^{T}$를 찾음
- 이때, 사람 손의 TSV ${v_{i}^{H}(\theta_{0}, \beta_{0}, r_{0})}_{t=0}^{T}$는 더 나은 smoothness를 위해 최적화 전에 low pass filter에 의해 전처리 되었음!
- 수식 2의 두번째 항은 L2 normalization을 의미함 (temporal consistency를 향상시키기 위해 적용)
- 최적화 기법은 NLopt의 Sequential Least-Squares Quadratic Programming을 사용함, 이때 $\alpha=8e-3$을 적용함
6.2 Robot Action Extimation
(1) Robot Joint Angle에서 Robot Action으로 변환하는 과정에 대한 개요
- Hand motion retargeting은 각 타임 스텝의 human hand poses에서 robot joint angles ${q_{t}}_{t=0}^{T}$로의 temporal-consistent 변환을 제공함
- 그러나, 행동(i.e. 조인트 토크 혹은 제어 커맨드)는 알려져 있지 않음
- 로봇 공학에서, joint torque $\tau$는 로봇의 inverse dynamics function $\tau = f_{inv}(q, q', q'')$에 의해 계산될 수 있음
- 이 함수를 사용하여, robot joint angle의 sequence를 continuous joint trajectory function $q(t)$로 변환함
- 그 뒤에, 1차 미분 방정식 q'(t)와 2차 미분 방정식 q''(t)는 토크 $\tau(t) = f_{inv}(q(t), q'(t), q''(t))$를 계산하는데 사용될 수 있음
(2) One Important Property of q(t)
- 3차 미분 방정식 q'''(t) : 각가속도의 절대적인 값은 매우 작을 수 있음
- 우리는 이를 다음과 같은 2가지 이유로, minimum-jerk requirement라고 부름
- 1) 생리학적 연구에 따르면 사람 손의 움직임은 최소 움직임 궤적(minimum jerk trajectory)이며, 이는 움직임 중에 가장 적은 노력이 필요함을 나타냄. 이 요구 사항은 사람의 행동을 닮게 되며, 이는 다시 더 자연스러운 로봇 동작으로 이어짐
- 2) 둘째, jerk를 최소화하면 모터에 대한 낮은 joint position error를 보장하고, 실제 로봇의 과도한 마모를 제한할 수 있음. 따라서 우리는 적용된 trajectory 함수도 minimum jerk가 되기를 기대함. 이에 대한 모델은 다음의 선행 연구의 모델을 참고함.
- [74] Todorov, E., Jordan, M.I.: Smoothness maximization along a predefined path accurately predicts the speed profiles of complex arm movements. J. Neurophysiol. 80(2), 696–714 (1998)
7. Imitation Learning
(1) 개요 및 Background
- 본 연구는 변환된 demonstration을 사용하여 모방 학습을 수행함.
- behavior cloning을 사용하는 대신, demonstrations을 강화학습에 통합하는 모방 학습 알고리즘을 채택함
- $<S, A, P, R, \gamma>$로 표현된 MDP(Markov Decision Process)를 고려함
- S, A는 행동 공간이고, $P(s_{t+1}|s_{t}, a_{t})는 상태 전이 확률, R(s,a)는 보상 함수, $\gamma$는 감가율을 의미함.
- RL의 목표는 policy $\pi(a|s)$를 따르는 기대되는 보상을 최대화하는 것임
- demonstrations $\pi_{D}$에서 생성된 trajectories ${(s_{i}, a_{i})}_{i=1}^{n}$이 주어지면, 이 trajectories와 보상 R을 활용하여 agent policy $\pi_{\theta}$를 최적화함.
- 우리는 2가지 설정에 대한 모방 학습을 평가함 : (state-action) 모방, 그리고 (state-only) 모방
7.1 State-Action Imitation Learning
(1) GAIL : Generative Adversarial Imitation Learning
- Occupancy measure $\rho_{\pi}$는 정책 $\pi$에 대한 state-action 튜플의 density를 의미함
- GAIL은 objective $d(\rho_{\pi_{E}}, \rho_{\pi_{\theta}})$를 최소하는 것을 목표로 함
- $d$ : distance function
- $\pi_{\theta}$ : 파라미터 $\theta$에 의해 파라미터화된 정책
- GAIL은 Generative Adversarial 학습을 사용하여 distance를 추정하고, 다음과 같은 목표로 distance를 최소화하며, 이때 $D_{w}$는 discriminator를 의미함
- 만약에 위 수식이 이해가 안되면 아래의 링크를 통해 GAN의 개념을 익혀보세요!!
- https://www.samsungsds.com/kr/insights/generative-adversarial-network-ai-2.html
- GAIL에 보상 함수를 적용하기 위해, 우리는 선행 연구[36]에서 제안된 접근 방식을 채택함. 본문에서는 이를 GAIL+로 표시함.
- 선행 연구[36] : Kang, B., Jie, Z., Feng, J.: Policy optimization with demonstrations. In: ICML (2018)
(2) DAPG (Demo Augment Policy Gradient)
- DAPG의 목적 함수는 다음과 같음
- 이때 각 표기는 다음을 의미함
- k : 학습 iteration
- $A^{\pi_{\theta}}$ : 정책 $\pi_{\theta}$의 advantage function
- $\lambda_{0}$, $\lambda_{1}$ : demonstrations의 (state-action) 쌍의 이득을 결정하기 위한 하이퍼 파라미터
7.2 State-Only Imitation Learning
(1) SOIL (State-Only Imitation Learning)
- demonstrations에서 action 정보를 사용하지 않는 SOIL 알고리즘도 평가함
- SOIL은 정책을 실행할 때 수집된 trajectory를 사용하여 inverse model $h_{\phi}$를 학습함으로써 DAPG를 state-only imitation으로 확장함
- inverse model은 demonstrations에서 누락된 action을 예측하고 정책은 DAPG처럼 학습됨.
- 정책과 inverse model은 동시에 최적화가 진행됨
8. Experiment
(1) Experiment Settings
- 강화학습 베이스 라인 : TRPO (TRPO를 사용하다니... 저자들은 변태인가봅니다...ㅋㅋ)
- 벤치마크 모방학습 알고리즘 : SOIL, GAIL+, DAPG
- 모든 모방학습 알고리즘은 같은 하이퍼 파라미터를 가진 TRPO와 통합됨
- 모든 정책은 3개의 랜럼 시드에 의해 평가됨.
- 기본적으로 2대의 카메라를 사용하여 hand pose가 추정됨
8.1 Experiments with Relocate
(1) Main Comparisons
- SugarBox를 제외한 나머지 물체들에 대해 DAPG의 성능이 가장 좋았음.
- SugarBox에서는 SOIL의 성능이 가장 좋았음.
(2) Ablation on Motion Retargeting Method
- 위 그림 6-a는 다양한 retargeting 방법으로 생성된 demonstrations에 따른 SOIL의 성능을 토마토 수프 캔을 이동시키는 작업에서 보여줌.
- 본 연구의 리타게팅 디자인(파란색 곡선)이 fingertip 매핑(빨간색 곡선)을 기반으로 한 retargeting보다 모방학습 성능을 향상시킬 수 있음을 보여줌
- 또한 L2 Norm 없는 식 2의 최적화는(녹색 곡선) 성능이 크게 떨어지는 것을 보여줌.
(3) Ablation on the Number of Demonstrations.
- 더 많은 demonstrations이 제공될 때, SOIL은 더 나은 샘플 효율성과 성능을 달성할 수 있으며, 변동성이 감소함.
(4) Ablation on Environmental Conditions.
- demonstrtaions이 다른 물리적 환경에서도 잘 적용되는 것을 보여줌. 또한 SOIL의 모든 정책은 순수 RL보다 훨씬 더 나은 성능을 보여주고 있음.
(5) Ablation on Hand Pose Estimation.
- 비디오에서 캡쳐된 hand pose estimation에서 4개의 다른 설정을 선정함
- 1) 1 CAM : 카메라 1개
- 2) 1 CAM Post : 카메라 1개 + 후처리
- 3) 2 CAM : 카메라 2개
- 4) 2 CAM Post : 카메라 2개 + 후처리 (어떤 후처리 기법은 5.2 섹션에서 언급됨 : frame 간의 j_t와 B_t의 차이를 최소화하는 후처리 절차 적용)
- 카메라 2개가 1개보다 더 나은 성능을 보여줌.
8.2 Experiments with Pour
- DAPG의 성능이 가장 우수함.
- SOIL로 입자의 inverse model을 학습하기 어려운 반면, analytical inverse dynamics function은 여전히 DAPG에게 합리적인 동작을 제공함.
8.3 Experiments with Place Inside
- 이 역시 DAPG의 성능이 가장 좋음.
8.4 Generalization on Novel Objects and Category
(1) Generalization with Relocate.
- Novel Obejct Instances, Same Category : 같은 카테고리 내에서 본 적 없는 새로운 물체
- ShapeNet 데이터셋에서 can, bottle, mug cup 카테고리를 선택함.
- Novel Category : 새로운 범주에서의 물체 인스턴스.
- ShapeNet 데이터셋에서 카메라 카테고리를 선택함.
- DAPG가 같은 카테고리 및 새로운 카테고리 실험에서 학습에 본 적 없는 물체에 대해 일반화가 잘되며, 다른 모델의 성능보다 크게 능가하는 것을 볼 수 있음
(2) Generalization with Pour and Place Inside
- DAPG가 짱짱맨임
9. Conclusion
- DexMV는 컴퓨터 비전/시뮬레이션 시스템에 대한 플랫폼을 제공하고 human video에서 dexterous manipulation을 배우기 위한 파이프라인을 제공하는 최초의 연구.
- 두 시스템 간의 격차를 해소하기 위해 새로운 demonstrations 변환 모듈을 제안함
'sinanju06 > 딥러닝 논문 리뷰' 카테고리의 다른 글
댓글