컴공돌이의 스터디 블로그

[시즌RL].Lecture 3 - Dummy Q-Learning 본문

강의 Study/모두를 위한 머신러닝과 딥러닝 강의

[시즌RL].Lecture 3 - Dummy Q-Learning

제갈초아 2018. 3. 8. 12:00

* 이 글은 홍콩과기대 김성훈 교수님의 무료 동영상 강좌 "모두를 위한 머신러닝과 딥러닝 강의"를 보고 요점을 정리한 글 입니다.


Q-Learning



  Reinforcement Learning(강화 학습)에서 Agent는 현재 State에서 Action을 취하기 전까지 다른 State에 대한 정보를 알지 못합니다 또한 Goal에 도달하기 전까지는 Reward가 0이기 때문에 Action이 좋은지 나쁜지 알 수 없습니다. 따라서 어떠한 Action을 취할지 결정하는 것은 매우 중요하다고 할 수 있습니다. 


  이러한 상황에서 Agent가 Action을 결정하는 것을 도와주는 함수를 Q-Function이라고 하고 다른말로는 State-Action Value Function이라고도 합니다. 이 함수는 현재의 State정보와 하고자하는 Action정보를 입력값으로 입력하면 Quality(Reward)를 출력합니다. 이런 Q-Function의 출력값을 사용해서 Action을 결정하는 것을 Q-Learning이라고 합니다.


  Q-Function의 수식을 간단하게 표현하면 아래와 같습니다.



  현재 State에서 취할 수 있는 모든 Action을 Q-Function에 넣은 결과 가장 높은 결과값Max Q 라고 하고 이러한 Max Q 값을 가질 수 있는 Action값Optimal Policy 라고 합니다. 이 2가지 값들을 수식으로 표현하면 아래와 같습니다.



  위의 수식에서 한단계 더 나아가서 현재 State s에서 Action a를 취할 경우 State s'로 이동하면서 Reward r을 받는다고 생각하고 State s'에서의 Q값이 존재한다고 가정하면 Q(s,a)로 표현이 가능합니다.


  0번째 State부터 n번째 State까지 움직여서 Goal이 되었다고 가정하면 전체 Reward는  입니다. 이것을 약간 다르게 생각해보면 t번째 State부터 n번째 State까지의 Reward의 합은 이고 t+1번째 State부터 n번째 State까지의 Reward의 합은 이라고 할 수 있습니다. 위 공식들을 잘 살펴본다면 라는 것을 알 수 있을 것 입니다. Reward의 최대값을 구하기 위해서는 Q-Function의 최대값을 반환하는 Action을 입력해야 하므로 결국 는 위에서 보았던 임을 알 수 있습니다.




* Summary *

1. Agent가 Action을 결정하는 것을 도와주는 함수를 Q-Function 또는 State-Action Value Function이라고 하고 이 함수를 사용하여 Action을 결정하는 방법을 Q-Learning 이라고 한다 .

2. Q-Function은 현재의 State정보와 하고자하는 Action정보를 입력값으로 입력하면 Quality(Reward)를 출력한다.

3. 현재 State에서 취할 수 있는 모든 Action을 Q-Function에 넣은 결과 가장 높은 결과값 Max Q 라고 하고 이러한 Max Q 값을 가질 수 있는 Action값 Optimal Policy 라고 하고 로 표현한다.

4.  으로 표현이 가능 하다.

반응형
Comments