* 바닥부터 배우는 강화학습 도서를 읽고 정리한 글입니다
1. 강화학습이란 ?
"순차적인 의사결정 문제에서 누적 보상을 최대화하기 위해 시행착오를 통해 행동을 교정하는 학습과정"
예를 들면, 어린이 혼자 두발 자전거를 타면서 배워나가는 과정
2. 순차적 의사결정 문제
- 순차적 의사결정 문제란
행위자가 목적을 정한 후 시간 순서대로 주어진 상황에서 목적을 이루기 위해 해당상황을 근거로 목적에 부합한 행동을 하고 그 행동으로 인해 상황이 변화되면 변화된 상황을 근거로 목적에 맞게 행동을 한다. 또 그 행동으로 인해 상황이 변하면 그 변화된 상황을 근거로 목적에 맞게 행동을 하는 순차적인 일련의 문제처리 과정
- 순차적 의사결정 문제의 예
행위자가 아침에 기상해서 학교까지 등교하는 과정을 예를 들 수 있다.
(의사결정)세면 => (의사결정)아침식사 => (의사결정)교복으로 환복 => (의사결정)학교가는 길을 차례로 거쳐 도보로 이동 => 학교 교실 도착
이 과정 중에서 등교 과정 시간을 단축하기 위해서는 어떻게 하는 것이 좋을까? 라는 과제가 주어진다면
의사결정 행동에 조금씩 변화를 주면서 시도해보고 시간이 더 걸리는 행동을 피하고 시간을 단축시켰던 행동을 선택하여 전체적으로 등교 과정 시간을 단축시키게 될 것이다.
또 다른 예,
주식투자에서 포트폴리오 관리, 운전과정, 게임
- 강화학습은 위의 예와 유사한 방식으로 순차적 의사결정 문제를 잘 처리해나가기 위한 머신러닝 방법이다
3. 보상
- 보상이란 목적에 부합하여 의사결정을 잘 했을 때 그 부분을 의사결정 행위자가 인지할 수 있도록 알려주는 신호이다.
- 강화학습 목적은 순차적 의사결정 과정에서 받은 보상의 누적합이 최대가 되도록 하는 것이다.
- 보상의 특징 3가지
1) 어떻게 X, 얼마나 O
보상은 "어떻게"에 대한 정보를 가지고 있지 않다.
보상은 조금 못하고 있는지, 그저 그렇게 하고 있는지, 잘 하고 있는지, 매우 잘하고 있는지에 대한 정보를 담고 있다.
2) 스칼라
보상은 스칼라값으로 정해진다(벡터형식이 아니다) => 오직 하나의 목적만을 가지고 있는 값이어야 한다는 의미.
보상을 스칼라값 형태로 정할 수 없다면 강화학습 적용이 어렵다.
최적의 보상을 결정하는 것이 중요하다!!
보상의 예,
- 자산 포트폴리오 배분에서의 이득
- 자전거 타기에서 넘어지지 않고 나아간 거리
- 게임에서의 승리
3) 희소하고 지연된 보상
- 보상이 희소 할 수 있으며, 지연될 수 있다.
- 행동과 보상이 일대일 대응되면 강화학습은 쉬워진다.
하지만 대부분의 경우는 어떤 특정행동이 목적에 부합하게 된 것인지 판단을 지나고 나서야 알 수 있다.
따라서 보상은 여러가지 행동을 한 이후에 주어질 수 있다. 결국 보상은 지연되어 제공될 수 있다는 의미가 된다.
4. 에이전트와 환경
위 그림은 순차적 의사결정 문제를 도식화 한 것
에이전트가 액션을 하고 그에 따라 상황이 변하는 것을 하나의 루프라고 한다면 이 루프가 반복되는 것을 순차적 의사결정 문제라 할 수 있다.
(1) 에이전트란
- 강화학습의 주인공
- 학습하는 대상
- 운전하는 환경에서는 운전자가 에이전트가 되며, 게임 플레이하는 환경에서는 게임 플레이어가 에이전트
- 어떤 액션을 할지 정하는 것이 가장 주된 역할
- 에이전트 입장에서 위 그림의 루프는 3단계로 구성되어 있다
1) 현재상황 St에서 특정 액션을 결정
2) 결정된 액션을 환경으로 보냄
3) 환경으로부터 그에 따른 보상과 다음 상태의 정보를 받음
(2) 환경
- 에이전트를 제외한 모든 요소를 환경이라 한다.
- 환경의 요소들을 숫자로 표현하여 기록해 놓으면 그것을 "상태" 라고 한다.
따라서 상태는 여러 숫자들로 구성된 벡터로 볼 수 있다.
- 환경은 상태변화를 일으키는 역할을 담당한다.
- 환경 입장에서 위 그림의 루프는 4단계로 구성된다
1) 에이전트로부터 받은 액션을 통해서 상태 변화 일으킨다
2) 그 결과 상태가 St => St+1 로 바뀐다
3) 에이전트에게 줄 보상 Rt+1 도 함께 계산된다
4) 변경된 상태 St+1, 보상 Rt+1을 에이전트에게 전달
순차적 의사결정 문제에서 한 루프를 틱 혹은 타임스텝 이라고 한다.
5. 강화 학습의 위력
(1) 병렬성
(2) 자가학습
지도학습처럼 정답을 알려주지 않아도 목적에 부합하도록 스스로 행동을 개선해나가는 능력
'인공지능 > 바닥부터 배우는 강화학습' 카테고리의 다른 글
ch 3. 벨만 방정식 (0) | 2021.05.29 |
---|---|
ch 2-4. 마르코프 결정 프로세스(Markov Decision Process) - Prediction과 Control (0) | 2021.05.26 |
ch 2-3 마르코프 결정 프로세스(Markov Decision Process)-MDP (0) | 2021.05.25 |
ch2-2. 마르코프 결정 프로세스(Markov Decision Process-MDP)-마르코프 리워드 프로세스 (0) | 2021.05.23 |
ch2-1. 마르코프 결정 프로세스(Markov Decision Process-MDP)-마르코프 프로세스 (0) | 2021.05.22 |