Beyond CS285 VAIL 리뷰


IRL이 가지고 있는 철학과 특징은 인간의 의도를 학습하는 것인데 개인적으로 마음에들어

지난번 소개한 GAIL의 확장팩인 VAIL 논문을 따로 보게되었다.


전편으로 가기 논문의 풀네임이 엄청나게 긴데 (VARIATIONAL DISCRIMINATOR BOTTLENECK IMPROVING IMITATION LEARNING, INVERSE RL, AND GANS BY CONSTRAINING INFORMATION FLOW)


식별자(discriminator)에 보틀넥을 추가함으로써 기존 GAIL을 개선했다는 내용이다. Abstarcat


생성자(generator)와 식별자 간의 훈련 밸런스가 쉽게 깨져 GAN의 훈련이 어려웠다라고 하는데 이는 Introduction과 Related work 파트에서 그간의 연구들이 했던 시행착오를 설명해주면서

식별자에 보틀넥을 적용하여 앞선 연구들이 마주쳤던 Optimizing 이슈를 어느정도 극복하였다고 한다.


Variational Discriminator Bottleneck(VDB)


여기에서 말하는 보틀넥의 풀네임이다. 컨셉은 식별자의 정보를 통제하여 생성자가 Optimizing 되는 시간을 벌어주는 역할을 한다.


GAN 프레임워크에서의 식별자의 목표는 데이터 샘플 확률밀도 함수p*(x)의 분포와 생성자의 분포를 구별하는 것이다. 식으로 나타내면

여기서 인코더(E)를 하나 추가하고 정보 검열을 위해 Ic를 투입하여 식별자가 초기에 빠르게 학습되는 현상을 막을 수 있었다.

식으로는 이렇게 표현한다.

그런데 KL Divergence, 베타, 인코더등을 도입하니 신경망 미분이 기존방식으로는 안된다 ㅋㅋ

그래서 Lagrangian이란 녀석이 도입되었는데 알고보니 KL Divergence를 도입하면서 이것을 미분하기 위해 도입한 것 같다. 미분만 되면 최적의 베타값과 얼마나 정보통제를 해야 식별자가 혼자 훈련되지 않을지를 역전파를 통해 알 수 있기 때문에 도입한 것이다. 식은 이렇게 생겼다.

이렇게 VDB라는 보틀넥을 도입하고 비로소 VAIL이라는 녀석이 탄생한다고 한다. MaxEnt를 개발하신팀도 그렇고.. VAIL을 개발하신팀도 수학을 너무 잘하신다. Discussion and analysis


연구 팀은 VDB의 효과를 해석하기 위해서 노이즈를 투입하는데 이유는 노이즈가 없으면 gradient vanishing 현상이 일어난다고 한다. 초기 정보 통제 값은 1보다 작게 설정해야한다고 하는데 그래야만

Optimizing 됬을때 나중에 식별자와 생성자의 분포가 완전히 달라지는 문제를 해결할 수 있었다고 한다.


거의 대부분의 행동에서 GAIL에 비해 VAIL의 에러 수치가 낮은것을 볼 수 있다. 리워드 함수가 정해진 강화학습peng et al. 2018은 찾아보니 DeepMimic이라고 하는데 VAIL의 일부 모션은 DeepMimic보다 좋은 것도 있다는걸 보여준다.


결론


GAN의 경우 갑자기 학습이 붕괴되는데 Gradient Vanishing 현상 때문이라고 한다.

정보의 보틀넥을 도입함으로써 VAIL은 GAN 프레임워크를 효과적으로 정규화 하고 훈련시킬 수 있었고 VDB 보틀넥은 해당 연구 말고도 다양한 범위에서 쓰일것으로 보인다.

사람의 의도를 학습할 수 있는 IRL이 리워드를 사람이 정해놓는 기존 RL의 성능을 거의 다 따라 온 것에서 굉장히 큰 진전을 이루었다고 할 수 있겠다.







조회수 17회

최근 게시물

전체 보기