본문 바로가기

Data & AI

[강화학습] 3. 강화학습의 의사결정과정

처음 강화학습을 접하고 가장 복잡했던 게 용어들과 수식이었는데

그 용어 중 하나가 Markov Decision Process입니다. 

우리가 AI를 활용할 때는 대부분 어떤 문제를 해결하거나,
인간이 해내던 일들의 성능을 개선하기 위함입니다.
강화학습은 그런 문제나 일들을 Markov Decision Process로 녹여내고 있습니다. 

줄여서 MDP라고 하는 이 방식으로 강화학습 문제를 수학적이고 논리적으로 표현할 수 있습니다. 

Markov Process
MDP를 이해하기 위해선 아래 순서대로 이해를 하면 도움이 됩니다. 
그전에 일단 Markov라는 건 현재 상태는 과거의 상태를 축약하여 소장하고 있다는 것을 의미합니다. 
어느 시점 t에 상태 s에 있다면, 과거에 어떤 상태를 거쳐왔던, 상태 s1 -> 상태 s2로 전이될 확률은 항상 같다는 성질입니다. 
저는 과거에 연연하지 않고 현재에 집중하자 라는 말이 Markov와 비슷하구나 생각하며 이해했습니다. 
따지듯 생각해 보면 항상 상태 s1과 s2로의 전이 확률이 같다는 Markov특성을 가정한다는 것이 현실세계라는 환경의 정보를 너무 무시하는 것 아닌가 싶지만 정보의 소실을 감안하더라도 실세상을 강화학습하기 위해선 이런 가정 하에 문제를 해석하는 게 필요한 것 같습니다. 

 

Markov Reward Process

우리가 Markov 특성, 그리고 상태 전이 확률에 대해서 이해했습니다. 
Markov Reward Process는 상태, 상태전이확률 외에 보상과 감가율이 추가된 개념입니다. 
여기서 보상은 강화학습이 작동되는 가장 중요한 원소인 것 같습니다. 강화학습은 결국 보상을 최대화하도록 학습하는데
성공적인 강화학습 알고리즘 모두 지금 다루는 이 보상을 최대화하려고 노력하고 있습니다.
보상은  우리가 상태에 가치를 부여하게 되고, 인간인 우리가 생각해 보아도 보상을 통해 더 나은 상태를 얻고자 노력하고 싶은 마음이 들것입니다. 보상이 주어지면서 우리는 상태에 가치를 부여했고, 이를 통해 현재 상태에 대한 가치함수 V를 현재상태로부터 미래 보상의 합의 기댓값으로 정의할 수 있습니다. 감가율은 우리가 바로 다음 상태뿐 아니라 연쇄적으로 먼 상태의 보상에 적용하여 시간에 대한 패널티를 부여할 수 있게 됩니다. 현재와 먼 미래의 보상을 같은 취급 한다면, 상태가 전이되기 위한 "시간"을 무시해서 결국 보상은 같더라도 시간을 손해 보는 일이 발생하기 때문입니다. 

 

Markov Decision Process

상태를 바꾸기 위해선 우리는 행동을 합니다. 

지금까지 다룬 상태와 상태가 전이되는 확률, 상태에 따른 보상을 이야기하면서 자연스럽게 행동이 필요할 것이라고 생각이 듭니다. 

상태가 전이되기 위해선 행동이 필요합니다. Markov Decision Process에는 기존의 상태, 상태전이확률, 보상, 감가율에 행동이 추가됩니다. Markov Reward Process에서 가치함수 V에 대해 이야기했었는데 Markov Decision Process에서 행동이 추가되어 행동가치함수 Q도 현재상태 st에서 a라는 행동을 취한 후, 정책을 따랐을 때 미래 가치의 감가총합으로 정의할 수 있습니다. 이제 강화학습을 위해 환경에서 행동을 가하고 상태가 변하고 보상을 얻는 일련의 과정을 정의할 수 있게 되었습니다. 

MDP를 표현한 그림

현재 상태에서 다음 상태로 가기 위해 행동을 할 텐데, 수행할 행동의 확률 분포를 정책함수라고 합니다. 
정책을 수립하면 정책의 점수를 매길만한 게 필요한데 우리는 정책가치함수와 행동가치함수를 알고 있으므로
정책을 따랐을 때의 가치함수, 정책을 따랐을 때의 행동가치함수를 각각 정의하여 사용합니다. 

정책가치함수의 정의

우리가 어떤 행동을 할지에 따라 보상도 달라지는데 좋은 정책함수를 가지고 있으면 좋은 보상을 기대할 수 있습니다. 

 

최적 정책을 위해선 최적 가치함수를 정의해야 합니다. 
최적 가치함수는 존재하는 정책들을 모두 고려했을 때,  가장 많은 가치함수를 주는 정책의 가치함수값입니다. 

최적 가치함수

이와 비슷하게 최적행동가치함수에 대해서도 정의가능합니다. 그리고 이런 최적정책을 찾아냈을 때 우리는 MDP를 풀게 되었다라고 정의할 수 있습니다.

최적 행동가치함수
최적 가치, 최적 행동가치함수에 대한 Backup Diagrams

 

우리가 가치함수를 계산하면서 특정 상태의 값과 그 후에 이어지는 상태 값들 사이의 관계를 표현하는데 이를 Bellman Expectation Equation이라고 한다. 그리고 최적정책기반의 최적가치함수를 계산할 때는 Bellman Optimality Equation을 정의한다. 
Bellman Optimality Equation을 해석적으로 푸는 것은 하나의 방법일 뿐, 정말 최적의 가치를 내는 정책을 찾기는 아주 어렵다. 강화학습에서는 근사적인 해를 찾는 것으로 만족을 해야 한다.