본문 바로가기

황민규

강화학습(Reinforcement Learning)[#6]

Intro

강화학습의 정통 교과서라 할 수 있는 Sutton 교수님의 단단한 강화학습(Reinforcement Learning : An Introduction) 책을 읽어보았다.

챕터 1에서는 강화학습의 핵심 개념을 간단하게 설명하며, 챕터 2부터는 기초이론이 나오기 시작한다.

그리고 챕터 2의 제목이 바로 선택 문제(bandit problem)이며, 그 중에서도 다중 선택 문제(Multi-armed Bandits, 이하 MAB라고 한다)이다. 사실 MAB는 강화학습 문제로 분류되지는 않는다. 하지만 강화학습 책에서 첫 번째로 소개된 이유는 아래와 같다

1. 강화학습을 공부하기 위한 기초 중의 기초이다.

2. 강화학습의 핵심 아이디어 중 하나인 탐색과 활용(Exploration & Exploitation)을 다루고 있다.

이러한 이유로 오늘은 MAB에 대해 간략하게 알아보도록 하겠다.

다중 선택 문제(Multi-armed Bandits)

강화학습을 다른 학습 방법과 구별 짓는 가장 큰 특징은 올바른 행동을 알려주는 지침(instruct)이 아닌 행동의 좋고 나쁨을 평가(evaluate)하는 훈련 정보를 사용한다는 점이다. 이를 위해서는 좋은 행동을 찾기 위한 직접적인 탐색이 필요하다.

다중 선택 문제의 탄생 배경

우선, MAB의 컨샙을 이해하기 위해 MAB가 어떻게 탄생했는지부터 알아보도록 하겠다.

MAB는 사실 카지노에서 슬롯머신 투자를 최적화하기 위해 만들어진 알고리즘이다.

즉 카지노에 있는 여러개의 슬롯머신(Bandit)중 어떤 슬롯머신의 손잡이(Arm)를 내려야 최적의 수익을 얻을 수 있을까? 하는 문제에서 탄생한 것이다. 그렇다면 어떠한 전략으로 투자해야 할까?

다중 선택 문제에서 K개의 행동 각각에는 그 행동이 선택되었을 때 기대할 수 있는 평균 보상값이 할당된다. 이러한 보상값을 해당 행동의 가치(value)라고 한다. 임의의 스탭 t에서 선택되는 행동은 At로 표현하고, 그에 따른 보상은 Rt로 표현한다. 이제 임의의 행동 a의 가치 q(a)는 행동 a가 선택되었을 때 얻는 보상의 기댓값으로 다음의 수식과 같이 표현할 수 있다.

만약 모든 행동의 가치를 이미 알고 있다면 다중 선택 문제를 푸는 것은 문제도 아닐 것이다. 하지만 행동의 가치를 추정할 수는 있어도, 정확히 알지 못한다는 것이 기본 전제다.

임의의 스탭 t에서 추정한 행동 a의 가치는 Qt(a)로 표현할 수 있으며, Qt(a)와 q(a)와 가까워질수록 정확한 추정이 된다고 할 수 있다.

탐색과 활용(Exploration & Exploitation)

위의 식으로 행동의 가치를 추정할 수 있다는 것을 알았다. 그리고 행동의 가치를 추정할 수 있다면, 각 스탭마다 추정 가치가 최대인 행동을 선택하는 것이 가능하다. 여기서 최대의 추정 가치를 갖는 행동을 탐욕적(greedy) 행동이라고 한다. 그리고 이러한 탐욕적 행동을 선택하는 것은 행동의 가치에 대해 현재까지의 지식을 활용(Exploiting)하는 것이다. 그리고 탐욕적 행동이 아닌 다른 행동을 선택하는 것은 비탐욕적 행동의 추정 가치를 상승시킬 수 있으며, 이러한 행위는 탐험(Exploring)이라고 부른다.

지금까지의 안목으로 보면 최적의 결과를 가져오는 것은 탐욕적 행동이다. 하지만 긴 안목으로 보면 지금의 비탐욕적 행동이 결과적으로는 현재의 탐욕적 행동보다 더 큰 결과를 만들어 낼 가능성도 존재한다. 그렇기에 이 둘 간의 적절한 균형을 맞추어야 하며, 하나의 행동을 선택할 때 활용과 탐험을 동시에 할 수 없기 때문에 이러한 현상을 종종 활용과 탐험의 갈등(conflict)라고 한다.

outro

이렇듯 활용과 탐험을 적절히 분배해야 한다는 필요성은 강화학습에서만 나타나는 독특한 어려움이다.

다음 포스팅에서는 행동의 가치를 추정하고 추정값으로부터 행동을 선택하도록 결정하는 방법에 대해 좀 더 자세히 알아보도록 하겠다.