Q-Learning, 모델 없이 학습하는 강화 학습
본문 바로가기
인공지능(AI)

Q-Learning, 모델 없이 학습하는 강화 학습

by 동도리동동 2023. 2. 20.
반응형

모델 없이 학습하는 방법

강화 학습(Reinforcement Learning)은 Dynamic environments에서 의사 결정에 사용되는 일종의 머신러닝입니다. 원하는 결과에 대한 명확한 방법이 없고, 에이전트가 시행착오를 통해 학습해야 하는 애플리케이션에 특히 유용하게 사용됩니다. 이러한 강화 학습에서 가장 널리 사용되는 알고리즘 중 하나는 Q-Learning입니다. 이번 포스팅에서는 강화 학습의 개념을 소개하고, Q-Learning의 작동 방식이 무엇인지 알아보겠습니다. 

 

 

 

 

강화 학습(Reinforcement Learning) 이란?

강화학습은 현재 상태에서, 어떤 행동을 하는 것이 좋을지 방향을 찾는 학습 방법이라고 할 수 있습니다. 강화 학습에서 에이전트는 보상 개념을 최대화하는 결정을 내리는 방법을 배우기 위해, 환경과 상호 작용합니다. 에이전트는 자기 행동에 대한 보상(Reward) 또는 페널티의 형태로 피드백을 받게 되므로, 에이전트의 목표는 시간이 지남에 따라 예상되는 보상을 최대화하는 정책을 학습하는 것이라고 할 수 있습니다. 

 

강화 학습은 원하는 결과에 대한 명확한 방법이 없는 애플리케이션에서 특히 유용합니다. 예를 들어, 로봇 공학에서 에이전트는 목표에 도달하기 위해 복잡한 환경을 탐색하는 방법을 배워야 할 수 있습니다. 게임에서 에이전트는 인간 상대에 대해 최적으로 플레이하는 방법을 배워야 할 수 있습니다. 즉, 어떻게 목표에 도달할 수 있고, 게임에서 이길 수 있는지에 대한 방법이 명확하지 않을 때도 머신러닝을 할 수 있습니다. 좀 더 자세한 내용은 아래 포스팅을 참고하면 좋습니다. 

 

강화학습, 상벌점 제도를 적용한 인공지능(AI)

 

강화학습, 상벌점 제도를 적용한 인공지능(AI)

강화학습은 채찍과 당근이 필요한 인공지능 머신러닝(Machine Learning)은 알고리즘을 사용하여 데이터를 분석하고 학습하는 일종의 인공지능(AI)입니다. 머신러닝을 진행하는 유형에 따라서, 지도

dongdoridong.tistory.com

 

 

Q-Learning 이란?

Q-Learning은 마르코프 결정 과정(Markov Decision Process, MDP)에서 최적의 정책을 학습하기 위해 사용되는 일종의 강화 학습 알고리즘입니다. 즉, Markov 결정 과정에서 에이전트가 특정 상황에서 특정 행동을 하게 되는 최적의 Policy를 배우는 것으로, 에이전트의 목표는 시간이 지남에 따라 예상되는 보상을 최대화하는 Policy를 학습하는 것입니다. 

 

여기서, 마르코프 결정 과정(Markov Decision Process)은 의사결정 과정을 모델링하는 수학적인 틀입니다. 좀 더 쉽게 말하면, 어떤 결과가 일어나게 되는 과정을 상태별로 나타내고, 하나의 상태에서 다른 상태로 변화(전이)하는 확률도 표현해 놓은 것입니다. Q-Learning과 연관 지어 생각해 보면, 특정 상황에서 보상을 최대화하는 방향으로 행동하는 Policy를 학습하게 된다고 볼 수 있습니다. 

 

Q-Learning은 현재 상태에서, 특정 행동을 했을 때의 Reward의 기댓값을 예측하는 Q 함수를 학습함으로써, 최적의 Policy를 학습하게 됩니다. 이때, Q-Learning의 장점은 환경의 모델 없이도 행동의 Reward 기댓값을 비교할 수 있다는 것입니다. 이러한 학습 방법을 Model-Free Learning이라고 하는데, Environment에 대해 몰라도 Action에 따른 Reward와 상태 변화로 Feedback을 받으면서 Exploration(탐험)하는 학습 방법을 말합니다. 따라서, 기본적으로 Trial & Error를 통해 최적의 Policy를 학습하게 됩니다. 

Q-Learinig system (출처:towardsdatascience)

 

 

Q-Learning은 아래와 같이, 이전의 Q 함숫값과 새로운 Q 함숫값의 가중합(Weighted sum)을 이용하여, 반복적으로 값을 update 하는 수식으로 나타낼 수 있습니다. 각 시간 t에 에이전트는 상태 S(t)에서 행동 a(t)를 하면서, 새로운 상태 S(t+1)로 변화하고, 이때의 보상은 R(t)만큼 발생하는 것을 표현할 수 있습니다. 이 수식을 '벨만 방정식(Bellman equation)'이라고 하는데요. 간단하게 한글로 표현하면, "현재 상태의 Q 값 = 보상 값 + 학습률 * 다음 상태에서의 최대 Q 값"이라고 할 수 있습니다. 

 

Q-Learning의 벨만 방정식( Bellman equation)

 

Q-Learning은 비교적 이해하고 구현하기 쉬운 간단한 알고리즘입니다. 따라서, 로봇 공학에서 게임, 금융에 이르기까지 광범위한 응용 분야에 사용할 수 있습니다. 또한, Q-Learning은 모델이 없는 알고리즘이므로 Markov 결정 프로세스로 모델링할 수 있는 모든 환경에서 사용할 수 있습니다. 이러한 유연성은 머신러닝의 적용 범위를 넓힐 수 있습니다. 그리고, Q-Learning은 대규모 상태 및 작업 공간과 함께 사용할 수 있으므로 복잡한 의사 결정 작업에 적합하며, Q-Learning은 최적의 정책을 실시간으로 학습할 수 있으므로 신속하게 결정을 내려야 하는 애플리케이션에 적합합니다. 

 

 

 

 

Q-Learning의 한계

 

탐색(Exploration)과 활용(Exploitation) 사이의 균형(Trade-off) : Q-Learning에는 탐색과 활용 간의 균형이 필요합니다. 에이전트는 최적의 정책을 배우기 위해 환경을 탐색해야 하지만 보상을 최대화하기 위해 현재 지식을 활용해야 합니다.

차원의 저주(Curse of Dimensionality) : Q-Learning은 대규모 상태 및 행동 공간에서 "차원의 저주"에 직면할 수 있습니다. Q-Table이 메모리에 저장하기에 너무 커져서, 업데이트 및 사용이 어려울 수 있는 상황을 말합니다. 

보상 형성(Reward Shaping) : Q-Learning은 보상 피드백에 의존하여 최적의 Policy를 학습합니다. 보상 피드백 구조를 설계하는 것은 어려울 수 있으며, 제대로 설계되지 않은 보상 체계는 최적이 아닌 Policy를 학습하게 될 수 있습니다. 

 

 

 

 

마무리하며,

Q-Learning은 마르코프 결정 과정에서 미래의 보상을 최대화하는 Policy를 학습하는 것으로, 보상 값을 예측하는 Q 함수를 통해서 학습하게 된다는 것을 알아보았습니다. 또한, Model-Free Learning이라는 특징으로 인해, Dynamic Environment에서 최적의 Policy를 학습할 수 있는 간단하고, 강력한 알고리즘이라고 할 수 있습니다. 또한, 마르코프 결정 과정이 모델링 되는 분야면, 로봇 공학부터 게임, 금융에 이르기까지 광범위한 응용 분야에서 활용할 수 있는 유연한 머신러닝 기법입니다. 

 

반응형

댓글