[강화학습] DQN 알고리즘을 구현해보자.
DQN 알고리즘은 Q-learning을 심층신경망을 이용해 근사하는 방식입니다. 하지만, 심층신경망만을 이용한다고해서 성능이 좋지는 않아서 target network와 experience replay를 사용해 뛰어난 성능을 높였습니다. $$Q(S_t, A_t) \leftarrow Q(S_t, A_t) + \alpha [R_{t+1} + \gamma \max_{a} Q(S_{t+1}, a) - Q(S_t, A_t)] $$target network와 experience replay를 사용하지않은 DQN을 naive DQN이라고합니다.두 기술을 사용하지 않았을 시에는 target이 계속 움직여 학습이 불안정하다는 문제와 temporal correlation의 문제가 있었습니다. 계속 움직여서 생기는 문제는 t..