강화학습의 구성 요소와 구분
강화학습은 에이전트(Agent)가 환경(Environment)과 상호작용하며 누적 보상(Cumulative Reward)을 최대화하도록 학습한다. 즉, 즉각적인 보상(Immediate Reward)뿐만 아니라 장기적인 보상까지 고려해야 한다. 이를 위해 강화학습에서는 몇 가지 중요한 가정이 성립해야 한다. 이번 포스팅에서는 이 가정에 대해서 살펴보고, 강화학습의 구성 요소에 대해서 알아보자.
강화학습의 핵심 가정: Reward Hypothesis & Markov Property
1) Reward Hypothesis
강화학습의 핵심 가정인 Reward Hypothesis는 '모든 목표(Goals)는 기대 누적 보상(Expected cumulative reward)의 극대화로 표현될 수 있다'라는 가정이다. 즉, 강화학습 문제는 단순히 단기적인 이득이 아니라 장기적인 보상을 고려하는 Sequential Decision Making (순차적 의사결정) 문제로 모델링 된다. 강화학습의 목표는 '미래 보상의 극대화'이므로, 즉각적인 보상을 희생하고 장기적으로 더 큰 보상을 얻는 것이 최적의 전략일 수 있다. 이를 지연된 보상(Delayed Reward) 개념이라고 하며, 강화학습에서는 이러한 특성을 반영하기 위해 할인율(Discount Factor, γ)을 사용하여 미래 보상을 현재 가치로 환산한다.
Gt=Rt+γRt+1+γ2Rt+2+…
이 가정이 성립하지 않는다면, 해당 문제에 강화학습을 적용하는 것이 적절하지 않을 수 있다.
2) Markov Property
추가로, 강화학습 알고리즘이 효율적으로 연산되기 위해 Markov Property 또한 성립함이 가정되는데, 이는 현재 상태가 과거의 모든 상태를 포함하고 있다면 미래를 예측하는 데에 과거의 기록 전체가 필요하지 않다는 성질로, 강화학습에서의 상태(Information state)는 이러한 Markov State를 만족한다고 가정하여 연산의 효율성을 높이고 모델을 간결하게 유지할 수 있도록 한다.
P[St+1|St]=P[St+1|S1,S2,…,§t]
많은 강화학습 알고리즘이 이러한 마르코프 성질을 가정하여 설계되는데, 실제 환경에서는 이를 만족하지 않는 경우도 있다. 이 경우, 과거 정보를 요약하는 Feature Engineering을 수행하거나 Recurrent Neural Networks (RNN)과 같은 기법을 활용하여 상태 표현을 보완할 수 있다.
강화학습 에이전트의 구성 요소
강화학습 에이전트는 정책(Policy), 가치 함수(Value Function), 그리고 모델(Model) 중 하나 이상을 가진다.
1) Policy
먼저 정책이란 에이전트의 동작 함수로 에이전트가 특정 상태에서 어떤 행동을 선택할지를 결정하는 함수이다. 정책 함수는 크게 확률적 정책(Stochastic Policy)과 결정적 정책(Deterministic Policy)으로 구분되는데, 확률적 정책은 특정 상태에서 특정 행동을 할 '확률' 값을 출력하고 결정적 정책은 행동 그 자체를 출력한다. 따라서 결정적 정책은 특정 상태에서 항상 같은 행동을 선택하고 확률적 정책은 같은 상태에서도 선택하는 행동이 달라질 수 있다.
π(a|s)
2) Value Function
가치 함수는 특정 상태 혹은 상태-행동 쌍이 얼마나 좋은지 나쁜지를 평가하는 함수이다. 여기에는 특정 상태에서 기대할 수 있는 장기적인 보상의 합을 평가하는 상태 가치 함수(State Value Function)와 특정 상태에서 특정 행동을 취했을 때의 기대 보상을 평가하는 행동 가치 함수(Action Value Function)가 존재한다.
상태 가치 함수는 현재 상태 s에서 시작했을 때, 정책 π를 따를 경우 받을 것으로 기대되는 누적 보상의 기댓값으로, '현재 상태의 좋음'을 평가한다.
Vπ(s)=E[Gt|St=s]
행동 가치 함수는 특정 상태 s에서 특정 행동 a를 했을 때, 이후 정책 π를 따를 경우 받을 기대 보상의 기댓값으로, 특정 상태에서의 '행동의 좋음'을 평가한다.
Qπ(s,a)=E[Gt|St=s,At=a]
3) Model
모델은 환경에 대한 에이전트의 표현으로, 환경이 어떻게 변화하는지를 예측하는 함수 또는 시스템이다. 이는 다음 상태와 보상을 예측하는 기능을 포함한다. 예를 들어, 물리 시뮬레이션에서 물리 법칙을 구현한 물리 엔진도 모델이라고 할 수 있고, 앞서 다뤘던 MDP 또한 모델이라고 볼 수 있다.
강화학습은 이러한 모델을 사용하는지 여부에 따라 크게 두 가지로 나뉜다. 환경에 대한 모델을 만들고, 이를 이용해 학습하는 방식을 모델 기반(Model-based) 방식이라고 하며, 반대로 환경 모델 없이 직접 경험을 통해 학습하는 방식을 모델 프리(Model-free) 방식이라고 한다. 해당 부분에 대해서는 다음 포스팅에서 자세히 다뤄보도록 하겠다.
'ML&DL > 강화학습' 카테고리의 다른 글
벨만 방정식 (0) | 2025.04.07 |
---|---|
모델 기반 vs 모델 프리 (0) | 2025.03.28 |
가치함수와 벨만 방정식 (0) | 2025.03.24 |
마르코프 결정 과정 (Markov decision process) 이해하기 (0) | 2025.03.21 |
UCB(Upper Confidence Bound) 알고리즘 이해하기 (0) | 2025.03.20 |
댓글