발표 준비하기.
안녕하세요! 저희 조는 강화학습을 기초부터 공부해보기 위해 Playing Atari with Deep Reinforcement Learning를 리뷰하게 되었습니다. 먼저 강화학습이란 에이전트가 주어진 환경에서 어떻게 행동해야 하는지에 대해 학습하는 것을 다루는데요, 여기서 에이전트는 쉽게 말해 플레이어가 조작하는 대상이라고 생각하시면 됩니다. 이 논문의 목표는 가능한 많은 게임을 성공적으로 플레이 할 수 있는 단일 신경망 에이전트를 만드는 것입니다.
이 영상을 보시면 왼쪽은 공을 튕겨내는 패들이 아무런 행동없이 가만히 한쪽에서 공을 튕겨내는 모습을 보실 수 있고, 오른쪽 그림 같은 경우에는 공이 떨어지는 위치로 패들이 이동하여 공을 튕겨내고, 공을 안쪽으로 밀어내여 더 많은 블럭을 깨는 등, 왼쪽보다 효율적인 모습을 보여줍니다. 이런식으로 환경과 상호작용하고, 보상을 통해 학습하여 발전해나가는 것이 강화학습이라고 생각하시면 되겠습니다.
이런 강화학습에서 많이 알려진 알고리즘 중에 하나가 Q-러닝입니다.
논문에서 제시하는 DQN, 즉 Deep-Q 러닝은 Q-러닝의 변형입니다. Q-러닝 함수가 MDP를 기반으로 작동하기 때문에, MDP에 대해 먼저 알아보도록 하겠습니다. MDP는 의사결정 과정을 확률과 그래프를 통해 모델링한 것입니다. 여기서 중요한 개념이 바로 마코프 상태(Markov state)입니다. 마코프 상태란 "모든 상태는 오직 그 직전의 상태와 그때 취한 행동에만 의존한다"는 가정을 의미하는데요. 이러한 가정이 필요한 이유는 계산 효율성 때문입니다. 과거의 모든 상태와 행동을 기억하고 고려하려면, 다뤄야 할 데이터 양이 지나치게 많아져 학습 속도가 크게 저하될 수 있습니다. 반면, 마코프 가정을 통해서는 현재 상태만으로 다음 상태를 예측할 수 있어 학습 과정을 훨씬 효율적으로 처리할 수 있습니다.
이때, MDP 구조에서 중요한 역할을 하는 것이 바로 벨만 방정식(Bellman Equation)입니다. MDP는 현재 상태에서의 결정이 미래의 보상에 미치는 영향을 고려해야 하는데, 벨만 방정식은 이러한 미래 보상의 누적값을 계산하는 데 사용됩니다. 벨만 방정식이 사용된 Q-러닝의 식은 다음과 같습니다. 식 좌변의 Q값은 특정 상태에서 특정 행동을 취했을 때 예상되는 총 보상을 나타내며, 이를 통해 에이전트는 최적의 행동을 선택할 수 있습니다. 식 우변의 r(s,a)는 현재 상태 s에서 행동 a를 취했을 때 받을 즉각보상을 나타냅니다. 또한 는 다음상태 에서 받을 수 있는 보상의 최대값인데요 과 은 상태 s에서 행동 a를 취해 도달하는 바로 다음 상태 입니다. 마지막으로 는 할인율이라고 부르는 값으로, 미래가치에 대한 중요도를 조절합니다. 값은 커질수록 미래에 받을 보상에 더 큰 가치를 둡니다.
자 하지만 이렇게 매 순간 보상이 가장 높다고 판단되는 행동을 취한다는 점에서, 문제점이 발생합니다. 항상 그 순간에서의 최선의 선택만 한다면 다른 가능성을 낳을 수도 있는 새로운 선택을 시도하지 않을 것이기 때문입니다. 이 문제를 해결하기 위해 - greedy 정책을 사용하는데요. 0보다 크고 1보다 작은 특정 값을 사용한 것 입니다. 의 확률로는 원래 했던 최선의 행동을 선택하고 의 확률로는 랜덤하게 행동을 선택하는 것입니다.
즉 Q러닝은 위의 내용들을 활용하여 에이전트가 환경과 상호작용하면서 최적의 행동을 학습하는 방법을 제공하는 알고리즘입니다. 강화학습 알고리즘에서는 여러번의 반복을 통해 모든 상황에서의 확률을 구하게 되는데 보시는바와 같이 테이블 형태로 저장합니다. 하지만 상태 공간이 너무 크면 계산 효율이 떨어질 수 있기 때문에 DQN은 Q-러닝에서 사용하는 table 대신 신경망을 사용하여 신경망 모델이 Q값을 근사해낼 수 있도록 학습시키는 것입니다.
하지만 딥러닝을 강화학습과 결합하려 하니 여러가지 문제점이 발생합니다.
첫째 강화학습은 지연된 스칼라보상을 통해 학습합니다. 앞에 게임에서 보셨다시피 블럭을 패들로 튕겨을때 바로 보상을 받는것이 아니라 여러 타임스텝이 지난후에 보상을 받기 때문에 딥러닝으로 학습을 시키기 어렵습니다.
둘째 딥러닝에서는 데이터 샘플이 독립적이라고 가정하지만, 강화학습에서는 방금 보여드린 게임처럼 연속적인 데이터를 다루기 때문에 편향성을 가지기 쉽습니다. 이 논문에서는 위 문제를 해결하기 위해 경험 재생이라는 해결 방법을 제시하고 있습니다.
DQN은 신경망을 사용함과 동시에 경험 재생 기법도 사용합니다. 경험 재생이란 에이전트가 과거의 경험을 저장하고, 이를 무작위로 샘플링하여 학습에 사용하는 방법입니다.
DQN의 알고리즘을 보며 이어서 설명하겠습니다.
먼저 리플레이 메모리 D를 크기 N으로 초기화하고 Q값을 무작위 가중치로 초기화 합니다.
다음으로 에피소드 1에서 최종 에피소드 M까지 초기상태 을 설정하고, 이를 전처리 하여 을 얻습니다. 각각의 에피소드에서 게임이 끝날때까지 아래 알고리즘을 반복합니다.
1. 확률 에 따라 무작위 행동를 선택하거나, greedy 정책, 즉 현재의 보상을 최대화 하는 행동을 선택합니다. 이때 선택된 걸 라고 정의하겠습니다.
2.에뮬레이터에서 를 실행하고, 보상 와 이미지 을 관찰합니다.
3.보상과 이미지를 이용하여 상태를 업데이트하고 전처리된 데이터 을 얻습니다. 전단계와 현단계의 데이터 을 리플레이 메모리에 저장합니다.
4.리플레이 메모리 D에서 하나의 미니배치를 샘플링합니다. 이곳이 경험 재생기법을 사용한 부분입니다.
5.가 종단상태, 즉 해당 에피소드가 끝났을 경우, 는 , 끝나지 않았을 경우 현재보상에 최적의 장기보상을 예측한 값을 더해 Q값을 업데이트 합니다.
6.마지막으로 손실함수에 대해 경사하강법으로 가중치를 업데이트 한후 다음 에피소드를 진행합니다.
이제 연구 결과를 살펴보겠습니다.
Figure 2에서는 DQN의 훈련 과정에서의 성과를 시각화한 두 개의 플롯이 있습니다. 왼쪽 두 개의 플롯은 각각 Breakout과 Seaquest 게임에서의 에피소드당 평균 보상을 보여줍니다. 이 평균 보상은 10,000 스텝 동안 ε-greedy 정책을 실행하여 수집한 통계로, 여기서 ε 값은 0.05로 설정되었습니다. 이는 에이전트가 95%의 확률로 최적의 행동을 선택하고, 5%의 확률로 무작위 행동을 선택했음을 의미합니다. 이러한 설정은 에이전트가 새로운 전략을 탐색하면서도 기존에 학습한 최적의 행동을 유지할 수 있도록 도와줍니다. 이 플롯에서 보상은 시간이 지남에 따라 점차 증가하는 경향을 보이며, 이는 에이전트가 훈련을 통해 환경에 대한 이해도를 높이고 있음을 나타냅니다.
오른쪽 두 개의 플롯은 보류된 상태 집합에서의 평균 최대 예측 행동 가치를 나타냅니다. 이는 DQN이 특정 상태에서 얼마나 효과적으로 보상을 극대화할 수 있는지를 보여줍니다. 평균 최대 예측 행동 값이 상승하는 것은 에이전트가 환경에서의 행동을 더욱 정교하게 조정하고 있다는 것을 의미합니다. 한 에포크는 50,000개의 미니배치 가중치 업데이트에 해당하며, 이는 약 30분의 훈련 시간을 소모하는 것을 나타냅니다.
Figure 3은 게임 Seaquest에서 학습된 가치 함수의 변화를 시각적으로 보여줍니다. A 지점에서 적이 화면 왼쪽에 나타날 때, 예측된 가치가 급격히 증가하는데, 이는 에이전트가 적과의 교전에서 얻을 수 있는 잠재적 보상을 인식하고 있음을 나타냅니다. 이 점프는 적을 공격하는 것이 긍정적인 결과를 가져올 것이라는 에이전트의 이해를 반영합니다.
에이전트가 적에게 어뢰를 발사할 때, 예측된 가치는 B 지점에서 정점을 찍습니다. 이 정점은 어뢰가 적에 접근하고 있어 성공적인 공격이 예상된다는 것을 나타냅니다. 이 가치의 증가는 에이전트의 의사결정 과정이 효과적임을 보여주며, 실시간으로 행동의 결과를 평가하는 능력을 나타냅니다.
적이 파괴되어 화면에서 사라진 후, 가치는 C 지점에서 초기 상태와 비슷한 수준으로 돌아갑니다. 이 감소는 에이전트의 보상 기대가 충족되었음을 의미하며, 더 이상 적이 위협이나 보상의 기회로 여겨지지 않음을 보여줍니다.
마지막으로, DQN과 다른 강화학습 알고리즘들의 결과를 비교해보겠습니다. DQN은 사전 정보 없이 RGB 스크린샷을 입력으로 받아들이지만, 대부분의 다른 알고리즘들보다 월등히 높은 점수를 기록했습니다. 특히 일부 게임에서는 인간 플레이어의 성과를 초월하기도 했습니다.
결론적으로, 이 논문은 강화학습을 위한 새로운 딥러닝 모델을 소개하며, 원시 픽셀만을 입력으로 사용하여 Atari 2600 컴퓨터 게임에 대한 복잡한 제어 정책을 마스터할 수 있는 능력을 입증했습니다. 또한, 강화학습을 위한 심층 네트워크 훈련을 용이하게 하기 위해 확률론적 미니배치 업데이트와 경험 재생 메모리를 결합한 온라인 Q-러닝의 변형을 제시했습니다.