레플리
글 수 27

딥 강화학습으로 퐁 게임 학습

조회 수 1963 추천 수 0 2017.03.13 12:48:40


 

http://keunwoochoi.blogspot.kr/2016/06/andrej-karpathy.html

 

 

 

딥 강화학습의 대표적인 방법은 Deep Q-Network입니다.

바로 이 기술로 딥마인드가 아타리 게임을 학습시켰습니다.

 

 

 

K-002.png

 

DQN는 기존 Q-Learning에서 Q테이블을 딥러닝 CNN으로 변경한 것입니다. 아타리 게임의 픽셀정보를 입력으로 하여 신경망을 통해 현재 픽셀 상태 s에서 행동 a를 결정합니다. 그리고 보상값을 받아 주변 상태집합으로 이 보상값을 전파하도록 Q값을 학습시킵니다. 

 

이를 반복하면 전체 상태로 보상값이 퍼져나가 학습이 됩니다. 그러면 현재 상태일때 어떤 행동을 해야 미래의 상태에서 좋은 결과를 얻을 수 있는지 알 수 있게 됩니다.

 

 

 

그런데 DQN와 다른 강화학습 알고리즘으로 정책 그라디언트(Policy Gradients)가 있습니다.

알파고에서는 이 방식으로 스스로 대결하면서 학습을 수행하였습니다.

 

정책 그라디언트는 Q함수로 보상값을 조금씩 전체 상태집합에 전파하지 않습니다.

그보다는 승패가 결정될때까지 (입력, 목표값)이라는 데이터를 수집하고

수집한 데이터를 사용해 게임의 결과를 반영하여 신경망의 가중치를 변경합니다.

 

 

 

예를 들어 200 프레임에 게임이 끝나고 승부에서 졌다고 가정해봅시다.

 

(1프레임 픽셀집합, UP) -> 가중치 내림

(2프레임 픽셀집합, DOWN) -> 가중치 내림

...

(200프레임 픽셀집합, DOWN) -> 가중치 내림

 

이렇게 200프레임 동안 했던 행동들이 좋지 않아 졌다고 생각하기 때문에 가중치를 모두 내립니다.

 

 

 

저도 아직 코드를 실행해 보진 않았는데 시간날때 한번 돌려봐야겠네요.

 

 

 

< 인공지능 개발자 모임 >

- 페이스북 그룹에 가입하시면 인공지능에 대한 최신 정보를 쉽게 받으실 수 있습니다.

https://www.facebook.com/groups/AIDevKr/

 

List of Articles
제목 글쓴이 날짜 조회 수sort
신경망 Q-Learning으로 구현한 오목 게임 깊은바다 2017-03-29 15640
강화학습 Q-Learning과 DQN에 대한 설명 깊은바다 2017-03-27 9924
텐서플로우에서 DQN 강화학습으로 캐치게임 구현 file 깊은바다 2017-03-18 6860
DQN 강화학습으로 슈퍼마리오 인공지능 구현 깊은바다 2017-10-30 2728
강화학습 관련 노하우 정리 깊은바다 2019-07-29 2692
tensorflow-js로 만들어본 RL 예제: 2. Deep-sarsa 깊은바다 2018-07-27 2529
강화학습 기반의 자율적인 행동 학습 file 깊은바다 2016-03-24 2523
MDP 기반의 스케줄링 구현 file [1] 깊은바다 2016-03-24 2122
딥 강화학습으로 퐁 게임 학습 file 깊은바다 2017-03-13 1963
딥 강화학습 쉽게 이해하기 [2] 깊은바다 2017-02-28 1928
새로운 강화학습 방식인 니마시니 알고리즘 깊은바다 2018-06-03 1590
스타2 강화학습 튜토리얼 [2] 깊은바다 2018-02-04 1534
강화학습과 DQN 소개 깊은바다 2017-10-05 1365
웹브라우저에서 자율주행차 강화학습 프로젝트 [2] 깊은바다 2018-06-21 1256
데미스 하사비스의 카이스트 강연 - 아타리 게임 DQN과 알파고의 원리 깊은바다 2019-07-24 1202