건조젤리의 저장소

4-1. Q-learning 본문

공부 기록/모두를 위한 딥러닝 (RL)

4-1. Q-learning

건조젤리 2019. 11. 19. 15:19

김성훈 교수님의 강의내용을 정리한 내용입니다.

출처 : http://hunkim.github.io/ml/

 

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

 

hunkim.github.io


이전 시간에 배운 Dummy Q-learning은 학습한 경로가 고정되어 효율적이지 못한 단점이 있다.

 

* Exploit: 현재 값을 이용

* Exploration: 새로운 시도

 

Exploit과 Exploration을 적절하게 사용하면 최적의 값을 찾을 수 있을까?

 

E-greedy 방법을 사용하자!

 

랜덤한 값을 뽑았을 때 e보다 작은 경우: 랜덤한 값(Exploration)

그 외: 기존에 알고있는 최대값(Exploit)

 

학습이 진행될수록 랜덤값의 영향력을 줄이기 위해,

e값을 점차적으로 줄여간다.


또다른 Exploit VS Exploration 방법중 하나는 랜덤 노이즈를 추가하는 방법이다.

 

예를들어 5개의 카테고리중 하나의 최대값을 선택하기 전에,

랜덤 노이즈를 더한 후 선택하는 방법이다.

이 방법 또한 학습이 진행될수록 랜덤값의 영향력을 줄이기 위해 위와 같은 식을 쓴다.

 

이 방법은 무작위 랜덤값을 선택하는 방법과 다르게, 기존값을 어느정도 반영하는 특징을 가지고 있다.


위의 방법을 사용하여 2가지 길을 찾아냈다고 가정하자.

 

만약 Agent가 갈림길에 서 있을 경우, 어느길로 가야할지 선택해야 한다.

 

하지만 두 길 모두 같은 최대값을 가지기 때문에 선택이 어렵다. 어떻게 해야 할까?

위 식을 이용하면 목표가 가까울수록 더 큰 값을 얻게 하여 Agent를 최소 거리로 유도하게 된다.

이 식을 정리하면 위와 같다.

 

Q-Learning 수식

이전의 예제에 이를 적용해보면, 갈림길 구역에서 거리가 짧은 길이 더 큰 값을 가지는 것을 알 수 있다.

행동을 선택할때 E&E 방법을 사용하고

Q값에 Discount를 적용한다.

Q의 근사치는

어떤 방향으로 움직였을 경우 항상 같은 상을 받을때와,

상태의 수가 유한할 경우 Q에 수렴하게 된다.

Comments