강화 학습
위키백과 ― 우리 모두의 백과사전.
이 문서는 en:Reinforcement learning에서 한국어로 번역 중입니다. 원문은 글 안에 주석 처리되어 있습니다. 같이 번역해 주세요. |
목차 |
[편집] 강화 학습이 다루는 문제
강화 학습은 기계 학습이 다루는 문제 중에서 다음과 같이 기술 되는 것을 다룬다. 어떤 환경(environment)을 탐색하는 에이전트(agent)가 현재의 상태(state)를 인식하여 어떤 행동(action)을 취한다. 그러면 그 에이전트는 환경으로부터 포상(reward)을 얻게 된다. 포상은 양수와 음수 둘 다 가능하다. 강화 학습의 알고리즘은 그 에이전트가 앞으로 누적될 포상을 최대화 하는 일련의 행동을 어떻게 취할 것인가의 정책(policy)를 찾는 방법이다.
환경은 일반적으로 finite-state Markov decision process(MDP)로 표현이 가능하다. 이런 관점에서 강화 학습 알고리즘은 다이나믹 프로그래밍과 깊은 연관이 있다. MDP에서 상태 전이 확률(state transition probabilities)와 포상은 확률에 따른 값일 수도 있고, 이미 결정되어 있는 값일 수도 있다.
강화 학습이 원하지 않는 행동을 명시적으로 수정하는 지도 학습과 다른 점은 온라인 수행에 중심을 두고 있다는 점이다. 강화 학습은 아직 조사되지 않는 영역을 탐험하는 것과 이미 알고 있는 지식을 이용하는 것의 균형을 잡는것이다. 이 탐험과 이용 사이에 있는 tredeoff는 multi-armed bandit과 같은 문제에서 알아 볼 수 있다.
공식으로 정리하면, 강화 학습 모델은 다음과 같이 구성된다.
- 환경 상태 집합, S;
- 행동 집합, A;
- 포상() 의 집합;.
매 시점 t, 에이전트는 자신의 상태 st S와 가능한 행동 A(st)을 가지고 있다. 에이전트는 어떤 행동 a∈A(st) 을 취하고, 환경으로 부터 새로운 상태 st+1 와 포상 rt+1 을 받는다. 이 상호작용에 기반해서 강화 학습 에이전트는 누적된 포상값 R 을 최대화 하는 정책 π:S→A 을 개발한다. 종료 상태(terminal state)가 존재하는 MDPs에서는 R=r0+r1+...+rn 이고, 그렇지 않은 MDPs에서는 R=Σtγtrt 가 된다. 여기서 &gamma 는 미래의 포상이 현재에 얼마나 가치 있는지를 표현하는 할인율(discount factor)로 0과 1사이의 값이다.
강화 학습은 장기, 단기의 포상 사이 tradeoff가 존재하는 문제를 다루는 데 적합하다. 이것은 로봇 제어, 엘리베이터 스케줄링, 통신망, 백개먼과 체스 같은 게임에 성공적으로 적용되어 왔다.