데이터사이언스/강화학습

강화학습 - (3) 탐색과 활용

Johnny Yoon 2020. 8. 24. 22:00
728x90
반응형

강화학습

탐색과 활용 (Exploration & Exploitation Trade-off)

탐색

탐색(Exploration)은 에이전트가 장기적인 이익을 추구할 수 있도록 환경에 대한 지식을 얻을 수 있게 해준다.

 

예제)

한 사람이 가장 좋아하는 식당에 가서 갈 때마다 위 세가지 메뉴중 하나의 메뉴를 선택한다.

$q^*(a)$는 각 메뉴의 가치를, $q(a)$는 예측된 메뉴의 가치를, $N(a)$는 해당 메뉴를 선택한 횟수를 의미한다.

선택할 때마다 이 사람은 각 메뉴에 대해 평가하고, 이를 통해 $q(a)$를 갱신한다.

갱신된 $q(a)$값이 곧 탐색을 통해 얻은 에이전트(식당에 간 사람)의 지식이 된다.

이 지식을 기반으로 이 사람은 추후에 어떤 음식을 주문할 것인지를 선택하게 된다.

 

활용

활용(Exploration)은 에이전트의 단기적인 이익을 추구하는 행위이다.

대부분의 강화학습에서는 탐욕적인(greedy) 방법을 통해 행동을 선택하기 때문에,

현재의 행동가치함수에 따라 가장 높은 보상을 줄 것으로 예상되는 행동을 선택하는 행위가 된다.

 

예제)

만약 위의 예제에서 식당에 간 사람이 첫번째 음식만을 먹어보았고,

이 음식이 마음에 들어 첫번째 음식만 계속 선택했다고 가정해 보자.

이 사람은 첫번째 음식밖에 경험하지 못했기 떄문에 첫번째 음식이 최고였지만,

$q^*(a)$에 의하면 최고의 음식은 두번째 음식이다.

따라서 에이전트(식당에 간 사람)는 절대 두번째 음식을 선택할 수 없게 된다.

 

탐색 vs. 활용

위의 예제와 같은 상황은 탐색과 활용의 딜레마에 빠지게 한다.

그렇다면 우리는 언제 탐색을 하고, 언제 탐색을 통해 모은 지식을 활용 해야할까?

활용을 한다면 현재에 기반해 좋은 보상을 얻을 수 있을 수도 있지만,

탐색을 한다면 각 행동에 대한 더 정확한 예측을 할 수 있게 된다.

하지만 한번에 이 두가지의 방법을 모두 선택할 수는 없다.

 

Epsilon Greedy

입실론 그리디(Epsilon Greedy) 기법은 이를 가장 간단히 구현한 방법이다.

먼저 $\epsilon$(입실론)의 확률로 랜덤한 행동을 선택하고,

이 확률에 걸리지 않았다면 탐욕적인 방식으로 행동을 선택한다.

 

예제)

주사위를 굴려 1이 나온다면 탐색을, 다른 숫자가 나온다면 탐욕적인 방법을 선택할 수 있다.

이 경우에는 입실론이 $\frac{1}{6}가 되는 것이다.

 

입실론 그리디를 수식으로 정의하면 다음과 같다:

$$A_t \leftarrow \begin{cases} argmax_a Q_t(a) & \mbox{with probability } 1 - \epsilon \\ a ~ Uniform({a_1 ... a_k}) & \mbox{with probability } \epsilon \end{cases}$$

 

$1 - \epsilon$의 확률로 탐욕적인 행동(argmax)을 선택하고, $\epsilon$의 확률로 랜덤한 행동을 선택한다.

 

728x90
반응형