본문 바로가기

papers

Human-level control through deep reinforcement learning

이 연구는 구글 딥마인드사가 개발한 강화학습 인공지능에 대해 작성하였다. 특히 Atari 게임에서 인공지능이 구석을 공략하는 사람들이 쓰는 일종의 게임 공략을 하는 모습으로 유명하다.

강화학습의 이론은 주어진 환경을 어떻게 최적화를 하는가를 다룬다. 현실 문제에 강화학습을 반영할 때 고차원의 입력을 효율적으로 표현(representation)해야하고 이전의 경험들을 새로운 상황에서 적용시켜야 한다. 사람이나 동물은 강화학습이나 계층적인 감각 처리 시스템(hierarchical sensory processing systems)을 조합하여 문제를 해결하는 것 처럼 보인다. 이 연구 이전에 강화학습 에이전트는 사람이 피쳐를 직접 가공해야하는 분야나 저차원의 데이터에 국한되었었는데, 저자들은 딥러닝(Q-network)을 end-to-end로 policy를 학습시켜 이를 개선하였다.

저자의 모델(deep q-network, DQN)은 픽셀과 게임 점수만을 입력으로 받아 다른 알고리즘이나 숙련된 게이머보다 좋은 실력을 보이기도 했다. 나는 강화학습 논문을 처음 보기 때문에 나무위키에서 용어에 대한 설명을 발췌하였다.

agent: 학습하는 대상(ex: 개, 사람, 로봇 등)
environment: agent 상호작용하는 환경
state(observation): agent가 필요로하는 구체적인 정보(속도, 위치 등 agent가 모든 것을 안다면 fully observed)
state value: state s에서 보상을 받고 특정 policy를 따랐을 때 reward
action: agent가 실제로 한 행동, policy에 의해 도출
action value: state s에서 action a를 한 후 policy를 따랐을 때의 기대 값
policy: agent가 움직이는 방향 또는 정책으로 결정론적이거나 확률적임
action space: 주어진 환경에서 가능한 action의 집합
reward: 한 단계의 보상, agent의 action에 대한 평가
return: 누적된 보상의 합
state-value function: return의 기대 값
exploration: 탐험, 도박적으로 기존에 알던 값 이상의 값을 얻기 위함
exploitation: 활용, 기존에 알던 값으로만 행동(exploration과 대립)
discount rate(factor): 할인율
episode: agent가 terminal state에 도달했을 때 episode가 끝남
history: 한 episode에서 agent의 (state, action, reward, next state)의 시퀀스

Agent의 목적은 미래의 누적 reward를 최대화하는것이다. CNN을 이용해 최적의 action-value 함수를 근사한다. 아래의 함수는 보상을($r_t$) $\gamma$에 의해 t스텝마다 할인하고 행동정책(behaviour policy) $\pi$을 최대화하는 것이다.

강화학습은 뉴럴넷 같은 비선형 근사기에서 불안정하다고 알려졌었는데, 관찰 시퀀스의 상관관계가 시간이 지날수록 분포가 변하거나 agent의 행동의 결과인 action-value와 reward에 현 state와 action의 최대 값에 할인율을 곱한 target-value의 상관관계가 변하기 때문이다.  

저자들은 두가지 방법으로 학습의 불안정성을 극복한다. 첫째는 experience replay이다. 데이터를 랜덤화하여 관찰 시퀀스의 상관관계를 없애고 데이터 분포를 스무딩한다. 두번째는 반복적인 개선(iterative update)로 target value에 대한 action value를 주기적으로 업데이트하는 것이다. 

연구진은 value 함수(Q)를 CNN을 이용하여 학습한다. experience replay방법을 적용하기 위해 state, action, reward, t+1 시점의 state를 각 스텝마다 저장한다. Q-러닝 업데이트의 손실함수는 아래와 같다. target value와 action value의 차이의 제곱을 줄이는 방향으로 학습하는 것이다. target network의 파라미터 $\theta_i^-$는 $theta_i$와 함께 C 스텝마다 업데이트된다.

PDF 뷰어 흑백모드에서 칼라모드 변경이 귀찮아서 흑백 그림으로 올린다.. 색상이 살아있는 버전은 원문을 참고해주세요.

DQN 모델 아키텍처

저자들은 Atari 2600 플랫폼에서 49개의 게임으로 실험하였는데 인간 게이머도 실험에 참가시켰다. 학습을 위한 입력으로는 게임의 이미지를 이용해 다양한 게임에서 성공적인 policy를 학습할 수 있는지를 실험했다. 연구진의 DQN 모델은 당시 존재하던 43개의 강화학습 방법론을 이겼고 인간 테스터와 비교해도 많은 수의 경우에서 나은 성능(테스터 점수의 75%이상, 29개 게임)을 달성했다. 

DQN 에이전트의 이전 선형 모델과 인간 테스터와의 게임별 실험 결과는 논문의 Figure 3에서 확인할 수 있다. Figure 4에서는 t-SNE 방법으로 차원축소 및 시각화하여 Space Invader 게임에서 DQN 모델이 어떻게 잘 표현되었는지를 나타냈다. 

저자들은 이 연구를 통해 단일 강화학습 모델로 여러 게임의 다양한 environment에서 policy를 학습할 수 있음을 발표하였다. 

 

Reference
https://www.youtube.com/watch?v=XdG6L5Hd06M&t=204s
https://namu.wiki/w/%EA%B0%95%ED%99%94%ED%95%99%EC%8A%B5/%EC%9A%A9%EC%96%B4 

https://www.nature.com/articles/nature14236