일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- list
- Deep Learning
- 판다스
- paper
- Python Programming
- 논문
- statistics
- ML-Agent
- Hessian Matrix
- machine learning
- 유니티
- Jacobian Matrix
- unity
- 모두를 위한 RL
- pandas
- Laplacian
- rl
- 리스트
- Linear algebra
- 데이터 분석
- 김성훈 교수님
- reinforcement learning
- optimization
- 딥러닝
- Series
- 사이킷런
- David Silver
- 강화학습
- neural network
- convex optimization
RL Researcher
Lecture 6: Q-Network 본문
우리는 앞서 Q-Table에 대해서 완벽히 이해했었습니다.
어떠한 State에 대해서 Action이 주어지면 Q값을 최대화 할수 있는 방법으로 진행하게 되는 것입니다.
미로 문제 같은 경우 100x100x4형태의 array가 필요합니다.
위의 예제가 $2^{80 \times 80}$이므로 계산을 수행해 보았습니다.
우리는 위와 같이 실전 문제에 대해서는 Q-Table을 적용하지 못합니다.
위처럼 실행활에 Q-Table은 이용하지 못합니다. 그럴때 이용하느 것이 있습니다. 바로 Q-Network입니다. State에 대한 Action을 수행하게 되었을 때 어떠한 값을 출력합니다.
입력과 출력이 사용자가 조절이 가능하기 때문에 입력을 State만 줘 보겠습니다. 우리가 앞으로 사용하게 될 Q-NN입니다.(Neural-network)
우리는 State와 Action을 주고 Q-Value 값 하나를 얻어올 수도 있지만 우리는 State만 주고 가능한 모든 Q-Value값 중 가장 높은 Q-Value값을 선택하게 될것입니다.
학습을 수행할 텐데 출력이 선형회귀라고 했을 때, Optimal Q값을 Label이라고 합니다.
우리가 맞추고자 하는 y Label은 Optimal Q입니다. 결과적으로 W의 cost값은 예측한 Q값과 실제 Optimal Q값의 차이입니다.
Ws라는 말을 계속 쓸 수 없으니 앞으로는 $\hat{Q}$라고 할것입니다. $\hat{Q}(s,a \mid \theta)$가 추정 값이며 $\theta$는 weight입니다.
$\hat{Q}(s,a \mid \theta)$값과 Optimal Q값의 차이를 최소화 하는 weight를 찾아내는 문제입니다.
위의 논문에서 나온 수식은 이때까지의 수식을 하나로 정리한 것입니다.
위의 논문에서 이어지는 Y Label과 손실함수에 대한 이야기를 서술하고 있습니다.
지난시간에 Deterministic과 Stochastic한 것에 대해서 배웠습니다.
위의 수식은 Stochastic Method를 설명하였습니다.
우리의 에러들의 값을 최소화하는 weight를 찾아 학습을 수행하면 예측값이 Q에 수렴하는가??
- Table은 수렴한다고 이전시간에 수식을 통해서 증명했었습니다.
- 아쉽게도 NN에서는 수렴하지 못하고 분산됩니다.
RL과 NN의 합성은 2002년부터 나왔던 이야기입니다.
위의 분산성을 해결하기 위한 해결책이 바로 DQN입니다.
'Reinfrocement Learning > 모두를 위한 RL' 카테고리의 다른 글
Lecture 7: DQN (0) | 2021.02.10 |
---|---|
Lecture 5: Windy Frozen Lake Nondeterministic world! (0) | 2021.02.10 |
Lecture 4: Q-Learning (table) (0) | 2021.02.09 |
Lecture 3: Dummy Q-learning (table) (0) | 2021.02.09 |
Lecture 2: Playing OpenAI GYM Games (0) | 2021.02.09 |