Setting
통계학적인 관점에서, 강화학습(RL)은 uncertainty 하에서 이루어지는 sequential decision making 혹은 dynamic optimization 이라고 할 수 있다. 일반적인 supervised learning 세팅에서는 관측 데이터 (X,Y) 쌍들로부터 conditional distribution Pr(Y∣X) 를 학습하는 것인 반면, RL에서는 보상(reward)을 최대화하는 policy π를 찾고자 한다.
Policy
Parametric Conditional Distribution
πθ(a∣s)=Pr(At=a∣St=s;θ)
Policy는 상태 s에서 행동 a를 선택할 확률을 나타내는 조건부 확률 분포이다.
- Input: state s∈S, 현재 상태(ex. 현재 게임 화면, 채팅 기록 등)
- Output: action a∈A, 취할 수 있는 행동(ex. 캐릭터 이동, 답변 생성에서 Token "The" 선택 등)
- Parameter θ : weights of neural networks
Reward
Reward function rt(s)는 시점 t에서 상태가 s인 agent가 환경으로부터 받는 scalar feedback signal이다. 강화학습의 목표는 장기적으로 받을 보상의 합을 최대화하는 것이다.
Gt=k=0∑∞γkrt+k+1
- γ : discount factor, 0≤γ<1 (주로 0.99 사용), 미래 보상에 대한 현재 가치의 감소율
Value function
다음과 같은 3개의 주요 가치 함수(value function)가 있다.
Qπ(st,at)Vπ(st)Aπ(st,at)=Eπ[Gt∣s=st,a=at]=Est,at,…[l=0∑∞γlrt+l+1]=Eπ[Gt∣s=st]=Eat,st+1,…[l=0∑∞γlrt+l+1]=Qπ(st,at)−Vπ(st)(State-action value Function)(Value Function)(Advantage Function)
- State-Action Value Function Qπ(s,a): 상태 s에서 행동 a를 취했을 때 기대되는 누적 보상
- Value Function Vπ(s): 상태 s에서 기대되는 누적 보상 (평균적인 action 기준)
- Advantage Function Aπ(s,a): 특정 행동의 가치가 평균적인 행동에 비해 얼마나 좋은지
Optimization Objective

강화학습의 목표는 policy πθ의 파라미터 θ를 최적화하여 기대 누적 보상(expected cumulative reward)을 최대화하는 것이다. 즉, 다음과 같은 목적함수를 최적화한다.
J(θ)=Eτ∼πθ[G(τ)]
PPO(Proximal Policy Optimization)
PPO는 제약 조건 하에서의 정책 최적화 알고리즘으로 볼 수 있다.
Vanilla Policy Gradient
목적함수 J(θ)의 gradient estimator는 다음과 같이 표현된다.
∇θJ(θ)=E^t[∇θlogπθ(at∣st)A^t]
Gt 가 아닌 At 를 사용하는 이유는 Gt가 가지는 높은 분산(variance)을 줄이기 위함이다. (highly stochastic reward 환경에서 특히 유용)
Aπ(st,at)=Qπ(st,at)−Vπ(st)
Trust Region Policy Optimization
TRPO는 policy 업데이트 시 KL divergence 제약 조건을 도입하여 급격한 변화를 방지한다.
θmaxsubject toE^t[πθold(at∣st)πθ(at∣st)A^t]E^t[DKL(πθold(⋅∣st)∥πθ(⋅∣st))]≤δ
이때 위 제약조건 문제는 penalized objective로 변환하여 해결할 수 있다.
θmaxE^t[πθold(at∣st)πθ(at∣st)A^t−βDKL(πθold(⋅∣st)∥πθ(⋅∣st))]
또한,
Clipped Surrogate Objective
PPO는 TRPO의 복잡성을 줄이기 위해 clipped surrogate objective를 도입한다. TRPO의 objective 내 비율 항목을 다음과 같이 정의한다.
rt(θ)=πθold(at∣st)πθ(at∣st)
그러면, CLIP된 목적함수는 다음과 같이 표현된다.
LCLIP(θ)=E^t[min(rt(θ)A^t,clip(rt(θ),1−ϵ,1+ϵ)A^t)]
여기서 ϵ는 작은 양수 하이퍼파라미터로, 일반적으로 0.2로 설정된다.
만일 action이 advantage A^t에 대해 긍정적이라면, 확률을 높인다 (rt(θ)>1). 다만, rt(θ)가 1+ϵ를 초과하지 않도록 클리핑한다.
-
Schulman, John, Sergey Levine, Pieter Abbeel, Michael Jordan, and Philipp Moritz. 2015. “Trust Region Policy Optimization.” Proceedings of the 32nd International Conference on Machine Learning, June 1, 1889–97. https://proceedings.mlr.press/v37/schulman15.html.
-
Schulman, John, Filip Wolski, Prafulla Dhariwal, Alec Radford, and Oleg Klimov. 2017. “Proximal Policy Optimization Algorithms.” arXiv:1707.06347. Preprint, arXiv, August 28. https://doi.org/10.48550/arXiv.1707.06347.