Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
Chapter 8. 딥강화학습
<기계학습개론>강의서울대학교컴퓨터공학부
장병탁
교재:장교수의딥러닝,홍릉과학출판사, 2017.
Slides Prepared by장병탁,최진영
Biointelligence LaboratorySchool of Computer Science and Engineering
Seoul National University
Version 20171109
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 1
목차
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 2
8.1강화학습과 MDP 문제 ...…………………………… 4
8.2 MC 학습과 TD 학습 ......……………………………. 8
8.3 Sarsa와 Q학습알고리듬 .………...……………….. 11
8.4딥큐넷(DQN) ……….………………...,…………… 14
8.5딥강화학습의 활용: AlphaGo ........…………………. 17
요약 ………………..………………………………….….. 19
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
들어가는 질문n 감독학습, 무감독 학습과 비교하여 강화학습이 다른 점은 무엇인가?
n 마코프결정문제(MDP)를 정의하고 다양한 해결 방법들을 기술하시오.
n 벨만 최적식, 동적프로그래밍의 개념을 설명하시오.
n MDP 문제 해결을 위한 방법으로서의 강화학습을 설명하시오.
n 강화학습의 다양한 전략들을 기술하고 서로간의 차이를 설명하시오.
n 모델기반 vs. 모델프리 RL의 차이를 설명하시오.
n 오프라인 vs. 온라인 RL의 차이를 설명하시오.
n On-policy vs. Off-policy RL의 차이를 설명하시오.
n MC학습(몬테칼로기반동적프로그래밍방식)방법을 설명하시오.
n TD학습방법을기술하고 MC방법과의차이를 설명하시오.
n TD학습, Sarsa, Q학습알고리듬을 설명하고 차이점을 기술하시오
n 알파고가 사용한 딥강화학습 DQN의 핵심 아이디어들을 설명하시오.
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 3
Introductionn 감독학습:
n 무감독학습: or
n 강화학습 (RL): p(a|s)
q 강화학습의 특징
§ 에이전트의상태(s)와행동(a)에대해보상(r)을최대화하는정책 p(a|s) 를찾는문제
§ 환경과 상호작용하는 에이전트(로봇)
§ 순차적 의사 결정 문제, 행동 제어 문제
§ 미래 보상 고려, 지연된 보상(delayed reward)
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 4
8.1 강화학습과 MDP 문제 (1/4)
( )y f x=~ ( )x p x( )x f x=
Introductionn RL의활용: 로보틱스, 게임등
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 5
8.1 강화학습과 MDP 문제 (2/4)
n Markov Decision Process (MDP)- Markov Decision Process =
: States of the agent: Actions of the agent: State transition probability : Reward : Discount factor
- Markov Property:
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 6
8.1 강화학습과 MDP 문제 (3/4)
, , , , S A P R γ
' 1(S ' | S ,A )ass t t tP P s s a+= = = =
1(R | S ,A )as t t tR s a+= Ε = =
1 1 1,...,(S | S ) (S | S )t t t tP P+ +=
SA
RP
γ
n 반환 (return,G): Discounted accumulated mean reward
q 정책 π (policy of the agent):
q 가치함수 V (Value function =장기적 반환):
q 최적 정책: Value function을최대화하는정책을찾음
q 벨만 최적식 (Bellman optimality equation)see text: page 175
q 동적 프로그래밍(dynamic programming, DP)q 강화학습 RL = Approximate Solution to MDP
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 7
8.1 강화학습과 MDP 문제 (4/4)
1 2 1 1 10...t t t t k t tk
G R R R R G∞+ + + + + +=
= + γ + = γ = + γ∑
( | ) ( | )t ta s P A a S sπ = = =
10
( ) [ | ] [ | ]kt t t k t
kV s E G S s E R S sπ π π
∞
+ +=
= = = γ =∑
10
( , ) [ | , a] [ | ,A ]kt t t t k t t
kQ s a E G S s A E R S s aπ π π
∞
+ +=
= = = = γ = =∑
* ( , )arg max Q s aππ
π =* V ( )arg max sππ
π =
Policy Iterationn 강화학습의학습 패러다임
- Evaluation: 를현재의정책 를 통해학습
- Improvement: 를현재의가치함수 를통해학습
- Improvement의예: Greedy improvement
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 8
8.2 MC 학습과 TD 학습(1/3)
1( ) ( , )arg maxk ka
s Q s aπ + =
( , )Q s aπ
( , )Q s aπ
( )sπ
( )sπ
Methods for RLn Monte-Carlo RL (MC 학습)
- DP 방법에서 에피소드의Return (G)을 Value function으로부터 Sampling하여 근사(MC 근사)
- 에피소드가끝나야학습이가능- 에피소드의길이가길거나무한한경우사용하기어려움
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 9
8.2 MC 학습과 TD 학습(2/3)
1 2[ ... | , ]t t t t tG R R S s A a+ += + γ + = =
1 2( , ) [G ( , ) ( , ) ... | , ]t tq s a E s a G s a S s A aπ = + + = =
Methods for RLn Temporal Difference RL (TD학습)
- Bootstrapping을사용해에피소드가끝나지않아도학습가능
- MC 방법에비해효율적
q 모델기반 vs. 모델프리 RL
q MC: 모델기반 (전이확률필요)
q TD: 모델프리(전이확률 불필요)
q 오프라인 vs. 온라인 학습
q MC:오프라인(샘플 모아서 update)
q TD: 온라인(바로 update)
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 10
8.2 MC 학습과 TD 학습(3/3)
1 1( ) [ ( ) | ]t t tV s E R V s S sπ π+ += + γ =
1 1 1( , ) [ ( ,a ) | ,A ]t t t t tQ s a E R Q s S s aπ π+ + += + γ = =
Value Based RLn Bootstrapping Value Based RL- Value function만을학습
- Action의선택은 greedy policy를사용:-대표적으로SARSA와Q-learning이있음
- Table을사용하는방법과 Approximation을사용하는방법이있음
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 11
8.3 SARSA와 Q학습 알고리듬 (1/3)
1( ) ( , )arg maxk ka
s Q s aπ + =
Value Based RLn SARSA
- On-policy 알고리듬: 경험을모으는 policy가현재 policy임
알고리즘 1: Sarsa 학습 알고리즘
Q(s,a)를 임의값으로 초기화
For에피소드=1,…, n dos 초기화
s에 따르는 Q(예, ε-greedy) 를 통해 유래된 a를 선택
For 시퀀스 t =1,…,T doa 선택, 보상 r과 다음 상태 s’관측s’=st+1에 따르는 Q (예, ε-greedy)를통해 유래된 a’=at+1을 선택
s ←s’;; a←a’;;End For
End For
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 12
8.3 SARSA와 Q학습 알고리듬 (2/3)
1 1 1 ( , ) ( , ) [ ( , ) ( , )]t t t t t t t t tQ s a Q s a r Q s a Q s aα + + += + + γ −
1 1 1 ( , ) ( , ) [ ( , ) ( , )]t t t t t t t t tQ s a Q s a r Q s a Q s aα + + += + + γ −
Value Based RLn Q-learning
- Off-policy 알고리듬: 경험을모으는 policy가현재 policy와다름
알고리듬 2;; Q-Learning 알고리듬
Q(s,a)를임의값으로초기화For 에피소드=1, …, n dos초기화For 시퀀스 t =1,…,T do
s에따르는 Q (예, ε-greedy)를통해유래된 a를선택a선택, 보상 r과다음상태 s’=st+1 관측
s←s’;;End For
End For
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 13
8.3 SARSA와 Q학습 알고리듬 (3/3)
1 1 ( , ) ( , ) [ max ( , ) ( , )]t t t t t t t taQ s a Q s a r Q s a Q s aα + += + + γ −
1 1 ( , ) ( , ) [ max ( , ) ( , )]t t t t t t t taQ s a Q s a r Q s a Q s aα + += + + γ −
n Q-learning의업데이트식
n DQN은Q학습의 오류함수 최소화에 딥신경망과 오류역전파 알고리듬을 사용
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 14
8.4 딥큐넷(DQN) (1/3)
21 [ max ( ', ) ( , )]2 a
L r Q s a Q s a= + γ −
State
Q(State,Action=0)
Q(State,Action=1)
.
.
.
Q(State,Action=K)
1 1 ( , ) ( , ) [ max ( , ) ( , )]t t t t t t t taQ s a Q s a r Q s a Q s aα + += + + γ −
n Target Network Trickn 학습초기Q(s’,a’)이부정확하고변화가심함è학습성능저하
n DQN과동일한구조를가지고있으며학습도중weight값이변하지않는별도의네트워크
(Target Network)에서Q(s’,a’)를계산 - Target Network의weight값들은주기적으로DQN의것을복사
n Replay Memory Trickn Changing Data Distribution: Agent의행동에따라들어오는데이터의분포가변화함 (e.g. 어
떤 mini batch를학습한후무조건왼쪽으로가도록 policy가변화è이후왼쪽으로가지않
는경우의데이터를얻을수없게되어학습이불가능)
n (State, Action, Reward, Next State)데이터를Buffer에저장해놓고그안에서Random Sampling하여mini batch를구성하는방법으로해결
n Reward Clipping Trickn 도메인에 따라 Reward의 크기가 다르기 때문에 Q value의 크기도 다름
n Q value의 크기 variance가 매우 큰경우 신경망 학습이 어려움
n Reward의 크기를 [-1, +1] 사이로 제한하여 안정적 학습
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 15
8.4 딥큐넷(DQN) (2/3)
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 16
8.4 딥큐넷(DQN) (3/3)
n Atari 2600 비디오 게임에서실험n 절반이상의게임에서사람보다우수n 기존방식(linear)에비해월등한향상n 일부게임은실패(reward가 sparse, 복잡한단계를필요)
n PaperMnih, Volodymyr, et al. "Human-level control through deep reinforcement learning." Nature 518.7540 (2015): 529-533.
n Videohttps://www.youtube.com/watch?v=TmPfTpjtdgg
n Open sourcehttps://github.com/gliese581gg/DQN_tensorflow
n AlphaGon A3C와Monte-Carlo Tree Search알고리즘을조합
n 탐색공간이매우큰바둑에서학습을 통해서 인간을뛰어넘는성능데모 n 정책망(policy network, actor)과가치망(value network, critic)을따로학습
n 정책망은프로기사들의기보를사용해지도학습후강화학습적용
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 17
8.5 딥강화학습의 활용: AlphaGo (1/2)
n Monte-Carlo Tree Search- Selection: ,- Expansion: 잎노드에도착하면정책망을통해새로운잎노드생성
- Evaluation:- Backup:
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr 18
8.5 딥강화학습의 활용: AlphaGo (2/2)
argmax( ( , ) ( , ))t t ta
a Q s a u s a= +( , )( , )
1 ( , )t
tt
P s au s aN s a
∝+
( ) (1 ) ( )L L LV s v s zθλ λ= − +
( , ) 1( , , )i
N s a s a i=∑ 1( , ) 1( , , ) ( )( , )
iL
iQ s a s a i V s
N s a= ∑
Silver, D., Huang, A., Maddison, C. J., Guez, A., Sifre, L., Van Den Driessche, G., ... & Dieleman, S. (2016). Mastering the game of Go with deep neural networks and tree search. Nature, 529(7587), 484-489.
n 강화학습과MDP 문제
n MDP: State, Action, Reward, Transition, Discount로구성.순차적 의사결정
n 강화학습은 MDP문제를 근사적으로 해결하는 머신러닝 방법
n Reward기대치를 최대화하는 방향으로 Agent의 행동을 선택하도록학습
n Sarsa와Q-Learning
n Value Function을 Approximation하고이를최대화하는 Action 선택
n Sarsa, Q-Learning
n DQN: Deep Neural Network로Q값을근사
n 딥강화학습의 활용
n AlphaGo바둑 AI
n RL과Monte Carlo Tree Search
n 정책망, 가치망에 딥러닝을 활용
© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
요약
19© 2017, 장교수의 딥러닝, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr