본문 바로가기
일반상식

One shot imitation

by 이덕휴-dhleepaul 2020. 3. 8.

https://arxiv.org/pdf/1810.05017.pdf

One-shot High Fidelity Imitation

  1. Introduction

One shot imitation이란?
- 한 번 또는 몇 번의 demonstration으로 사람처럼 특정한 task를 해결할 수 있도록 가르치는 것
(일종의 meta learning이라 볼 수 있음)
 
이 paper 에서는 1) 높은 신뢰도로 demonstration을 흉내내도록 함 2) 높은 신뢰도의 imitation뿐만 아니라 task를 더욱 효율적으로 해결하고자 함
저자들은 high-fidelity imitation을 어떤 우연한 action이나 task와 관계없는 action에 대해서도 demonstration trajectory를 따라가는 행위라고 여기고 있다. 기존의 접근법들은 RL을 사용하여 매우 expensive하였지만 인간에게는 이러한 행위가 cheap(one or few shot에 해결 가능)한 task이기에 이로부터 영감을 받아 meta learning의 off policy RL의 접근법을 도입하고자 했다.(Figure 1)
Figure 1 one-shot high-fidelity imitation learning의 대략적인 알고리즘.
본 논문의 main contribution은 다음과 같다
  • Meta mimic 알고리즘을 도입하여 복잡한 비디오에서도 one shot high fidelity imitation을 보여주었다
  • Meta mimic이 video demonstration을 잘 이용하고 이 demonstration에서의 action과 reward의 질을 높여 사람의 원격조종보다 효율적으로 manipulation task를 해결하는 unconditional policy를 배우게 하였다.
  • 실험에서 ablation을 통해 network가 클수록 generalization이 잘 되는 high fidelity imitation을 한다고 밝혔다. 또한 instance normalization의 중요성에 대해서도 강조하였다.
  • 실험을 통해 demonstration의 수가 증가할수록 training은 one-shot high fidelity imitation task 에서 더 좋은 generalization성능을 보여주었다.
 
  1. Meta-mimic
Meta mimic이란?
- demonstrator보다 좋은 성능을 내기 위해 one-shot high-fidelity imitation policy와 unconditional task policy를 학습하는 알고리즘이다. 1개의 input만으로 1) 다양한 experiences와 2) one-shot high-fidelity imitation policy를 만들어내도록 하고 이 다양한 experiences를 통해 unconditional task policy를 만들어 낸다.
2.1 Learning a policy for one shot high-fidelity imitation
Figure 2 대략적인 알고리즘 pseudo code와 picture
 
하나의 stochastic task에 대해서 demonstration을 sequence of observation을 정의한다.
d: demonstration 이며 또한 각각의 observation d­t 는 image 혹은 image + information을 의미한다. πθ는 deterministic parameterized imitation policy를 의미하며 이 현재 observation과 주어진 demonstration을 조건으로 하여 action을 생성한다.
그리고 특정한 policy를 이용해 observation sequence를(rollout trajectory) 추출해내는 environment rederer를 ε로 나타낸다.
High-fidelity imitation의 목표는 결국 expected imitation return을 최대화 하는 policy의 parameter θ를 추정하는 것이다. 다시 말해 observation과 demonstration을 유사하게 만드는 것(similarity)이다.
Sim은 similarity(reward, return)를 측정하는 함수이다. 일반적으로 ε으로 미분하는 것은 불가능하기에 이들은 RL을 통해 해결하고자 하였다. 이 과정을 one-shot imitation이라고 부르는 이유는 training time에서는 여러 demonstration을 사용하지만 test time에서 single novel demonstration d* 를 learned conditional policy를 통해 따라 하기 때문이다.
Imitation policy training의 subroutine으로 D4PG알고리즘(Barth-Maron et al.,2018)을 사용했으며 이는 independent actor를사용하여 environment와 interact하여 replay table에 trajectory data를 입력하는 off-policy RL 알고리즘이다. 이 replay dataset을 통해 expected return을 maximize하는 policy를 학습한다. MetaMimic의 경우는 policy와 reward를 매우 상세하게 정하여서 이를 해냈었다.
매 episode의 시작마다 single demonstration d가 sample된다. 그리고 environment의 initial condition은 이 demonstration들의 set이다. 따라서 o1=d1 이 된다. ­그리고 이들의 실험에서 observation과 demonstration이 high-dimension input이기에 policy representation은 사용하기 어려운 문제가 있는데 이를 해결하기 위해 local context만 고려하는 방법으로 model을 simplify하였다.
즉 t+1의 demonstration state를 goal state로 설정하였다고 볼 수 있고 이는 time varying 하다.
매 time step마다 오직 goal state인 dt+1에만 의존하는 reward를 계산하고자 한다.
oimage 는 raw pixel observation을 의미하며 obody는 자체적인 parameter(로봇의 joint의 position, angle, velocity)를 말한다. oimage는 object와 agent사이의 information을 주지만 agent 자체의 상태를 알 수 없기에 obody­­ term을 결합한 reward가 좋은 성능을 보인다고 주장한다.
 
    1. Learning an unconditional task policy
Unconditional task policy란?
- 이 논문에서는 단순히 demonstration에 대한 정보가 없이 오직 observation에만 의존한 policy를 unconditional task policy라고 언급한 것 같습니다. 저는 읽으면서 용어에 대한 의문이 들었던지라 혹시 필요하실 까봐 적어둡니다.
MetaMimic은 replay memory를 experience set으로 하여 task를 학습한다(exploration). 그래서 기존의 방법들은 demonstration data를 바로 직접 off policy replay memory에 넣어서 exploration을 하였다. 그러나 이 방법은 demonstration 뒤에 숨겨진 action과 reward에 관해 알 수 있어야 한다. 따라서 이들은 다른 접근법을 사용하였다. demonstration으로부터 observation을 하여 이를 imitate하는 것 외에 imitation agent가 그 자체의 observation, action, reward를 생성한다. 이를 통해 생성된 experiences와 demonstration을 함께 replay memory에 넣으면 더 좋은 성능을 발휘한다고 얘기했다. 이들은 RL agents가 새로운 문제를 해결하는 과정에서도 어떠한 이점을 얻기 때문이라고 이야기 하였다.
Imitation policy가 environment와 interact하는 과정을 통해 task reward를 추정할 수 있게 되고 이 reward를 통해 off policy task learner가 unconditional task policy를 optimize 할 수 있다고 하였다. 이 policy는 imitation actor의 policy로부터 생성된 transition을 통해서 학습할 수 있다.
(transition)
이를 통해 task learner가 off-policy를 통해 얻은 cumulative reward를 얻을 수 있고 이 덕에 demonstration 뒤에 숨겨진 action과 reward를 알아낼 필요가 없어진다. demonstration이 존재하기에 imitation trajectory도 이를 따라 high reward area에 존재하기 쉬워지고 이를 통해 exploration problem도 해결할 수 있는 것이다.
  1. Related Works
experiment부분은 일단은 로봇팔로 실험한 부분과 network architecture 관련한 부분이라 저는 보통 많이 넘기는 부분이라 생략했습니다. 대신 related work부분만 잠깐 짚고 넘어가자면 이 부분에서는 논문에서 우리가 참고할만한 topic들을 언급해서 좋은 것 같아 한번 덧붙여 봅니다.
  • General imitation learning
  • One-shot imitation learning
  • Imitation by tracking
  • Inverse dynamics models
  • Multi-task off-policy reinforcement learning
  • fD-style methods

 

 

p.s. deepest 프로젝트 중에 정리했었던것

'일반상식' 카테고리의 다른 글

Corona시대의 언어  (0) 2020.08.05
한중일 근현대사  (0) 2020.04.21
들여다 본다  (0) 2020.02.29
[신재생] 연료전지   (0) 2020.02.24
Work  (0) 2020.02.09