본문 바로가기
공부 정리/강화 학습

[강화학습1]강화학습의 기본개념 이해

by 블로그별명 2023. 9. 1.

이 포스팅 시리즈는 강화학습에 대해 깊이 있게 이해하고자 하는 여정의 일환으로 작성되었습니다. "바닥부터 배우는 강화학습"과 "심층 강화학습 인 액션" 두 권의 책을 베이스로 공부했으며, 학습중에 생기는 추가적인 궁금증은 chatgpt나 구글링으로 해소하고자 노력했습니다. 만약 내용 중 오류를 발견하시면, 댓글로 알려주시면 매우 감사하겠습니다.


강화학습은 한계가 없다

강화학습과 지도학습의 차이를 생각해 보면, 지도학습은 마치 부모님으로부터 자전거 타는 방법을 배우는 것과 유사하다고 볼 수 있다. 지도학습의 경우, 최적의 결과는 부모님이 보여주는 수준의 자전거 타기 능력에 불과할 수 있다.

반면에 강화학습은 스스로 시행착오를 겪으며 자전거 타기를 배우는 과정과 같다. 강화학습은 이러한 학습 방식으로 인해, 이론적으로는 부모님의 수준을 뛰어넘어서, 더 높은 수준의 자전거 타기 능력을 획득할 수 있다. 

강화학습의 기본 개념

강화학습의 기본개념을 처음 접하시는 분들의 이해를 돕기 위해, 최대한 수학수식 없이 자전거 타기를 예로 들어 강화학습의 기본 개념을 설명하겠습니다.

  • 에이전트(Agent)
    자전거를 타는 사람, 즉 학습자이다. 
  • 상태(State)
    환경으로부터 에이전트가 제공받는 모든 정보이다(실제환경과 상태는 종종 다를 수 있다). 예를 들어, 자전거의 속도, 바퀴의 회전수, 주변의 도로 상황 등이 상태에 포함될 수 있다.
  • 행동(Action)
    에이전트가 취할 수 있는 모든 동작이다. 예를 들어, 핸들을 좌우로 움직이거나, 페달을 밟는 힘을 조절하는 것이 행동에 해당한다
  • 보상(Reward)
    에이전트가 자전거를 균형을 잘 잡아 자전거를 탈 경우 얻는 긍정적인 피드백이라고 할 수 있다. 반면, 자전거를 타다 넘어지거나, 경로를 벗어날 경우, 에이전트는 음의 보상을 받을 수 있다
  • 에피소드(Episode)
    넘어지지 않고 자전거를 탄 과정이 하나의 에피소드가 될 수 있다. 여러 에피소드를 경험할수록 에이전트는 자전거를 넘어지지 않고 더 오래 탈 수 있게 된다
  • 정책(Policy)
    에이전트가 현재의 상태를 기반으로 어떤 행동(페달을 밟는 속도, 핸들의 방향)을 취할 것인지를 결정하는 규칙이나 전략을 의미한다. 정확하게 말하면 정책은 상태를 입력으로 받아, 행동을 출력으로 내놓는 함수로 볼 수 있다. 

에이전트와 환경의 상호작용

  1. 에이전트는 상태 $s_t$에서 정책$\pi$에 기반하여 행동$a_t$을 결정한다
  2. 에이전트는 선택한 행동을 수행한다
  3. 환경은 에이전트의 행동에 반응하여 다음 상태 $s_{t+1}$와 보상$r_{t+1}$을 반환한다
  4. 처음부터 반복

댓글