RL Researcher

Lecture 6: Q-Network 본문

Reinfrocement Learning/모두를 위한 RL

Lecture 6: Q-Network

Lass_os 2021. 2. 10. 02:34

우리는 앞서 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입니다.

Comments