Breaking

2019년 10월 28일 월요일

CS234 Winter 2019 4강 - Model-Free Control 공부

CS234 Winter 2019 4강 - Model-Free Control 공부




강의 슬라이드 : http://web.stanford.edu/class/cs234/schedule.html
기록을 위한 것이지 보여지기 위한 것이 아닙니다.
RL 초보자이기 때문에 이해한 것이 정답과 다를 수 있습니다.
더불어 한 번에 완성되는 글이 아니기에 글이 없을 수도 있음을 알려드립니다.
Copyright to Stanford CS & Emma brunskill

순서
1. Generalized Policy Iteration
2. Importance of Exploration
3. Monte Carlo Control
4. Temporal Difference Methods for Control
5. Maximization Bias


 어떻게 explore할 것인지 어떻게 최적화optimization할 것인지를 살펴볼 것이다.
policy를 어떻게 구분할 것인지 identify

 생각하고 말하는 로봇을 생각할지모르겠지만 그것들은 시간적으로나 비용적으로 매우 비싸다
off-policy learning에 대해서는 중요하므로 잠시 이야기함
s1 a1 s1 a1
s1 a2 s1 a2
결합시켜 s1 a1 s1 a2와 같은 경로를 만들어 낼 수 있음
이전 정책들로 경험해보지 못한 경로들을 가기 때문에 다름
Q-learning 때 다시 설명할 것

기존의 경로 trajectory 기반으로 새로운 경험을 할 수 있도록 한다.
뒤에 나오지만 SARSA는 On-policy, Q-Learning은 Off-policy

cf) MC는 On일수도 Off로 정책을 수립할 수 있다.





정책 pi가 deterministic하다면 action에 대한 Q 값이 존재하지 않을 가능성이 있으므로 exploration을 시행해야한다.
후에 나오는 epsilon을 통해 deterministic greedy 방식으로 한쪽으로만 가는 것을 방지함



first-visit & every-visit에서 다뤘던 것을 action에 따라 나눠서 바라본 것
뒤에서 부터 판단해야하므로 s1에 대한 a1부터 차례로 넣어야함





Q(,a1) = [1010000]
Q(,a2) = [0100000]
pi greedy 1 2 1 tie
tie는 어떤 것을 넣어도 무관하다는 의미
k=3 epsilon=3





모든 step에 대한 값을 구할 필요가 없다.

1의 질문은 TD일 때의 장점을 알아보는 것
2의 질문은 MC에 대한 장점을 바라보는 것 : variance가 증가하기 때문에 느림

실제로는 굳이 쓰지않아도 잘 작동하기 때문에 따로 설정하지 않음



크게 중요하지 않음



Overestimation과 관련된 내용으로 Q를 높게 평가하는 경향 때문에 lower bound가 항상 크게 나온다. 가령 좋을 수도 나쁠 수도 있는 것에 대해 모두 좋게 보는 경향 때문에 결과적으로 학습에 큰 영향을 준다.
이를 방지하기 위한 것이 Double Q, DQN


Q1 Q Decision Making
Q2 Q Estimate Prediction

오른쪽은 1을 무조건적으로 가지지만 왼쪽은 정규분포 B에 의해 -1.1~0.9의 값을 가진다.
오른쪽으로 가는 것이 무조건적으로 좋지만 왼쪽을 먼저 선택했을 때 음수의 경우에 대해 오른쪽으로 가게 설정하는 것을 기본 토대로 한다.
이 때 Double Q-Learning의 성능이 훨씬 좋다. 빠르게 오른쪽으로 가게 만든다.