경험을 통해 학습하는 점에 있어 다른 머신러닝 기법과 다르다
모델 스스로 생성한 결과를 학습에 이용한다는 점
자신의 행동에 대해
상점과 벌점을 통한 보상을 바탕으로
다음 행동을 결정하는 방식
이를 위해 시간에 따른 결과를 받을 수 있는
환경이 조성되어야만 구현할 수 있다
가볍게 설명하면 다음과 같다
아래 그림을 바탕으로 보면
이 과정을 반복하며 경험을 통해 self-learning을 하게 된다
여기서 (St, At, Rt) 각각 state, action, reward를 의미하며
이들을 묶은 튜플은 경험 experience라고 불린다
t가 0부터 끝까지 한 번 진행한 구간을 에피소드 episode라고 한다
한 에피소드 내 경험의 연속이자 누적을 궤적 trajectory는 𝝉 = ∑(St, At, Rt)
일반적으로 확률론적으로 action을 선택. 각 action에 선택될 확률를 부여.
각 state마다 reward가 지급된다
강화학습의 목표는 reward의 총합을 최대화하는 것
다른 시각에서 바라보면
해당 state에서 action이 무엇이면 좋을 지를 정하는 용도.
만약 policy가 선택한 action이 적은 reward를 가져온다면
유사한 상황에 다른 선택을 하도록 policy가 바뀔 수 있다
그 상태의 시작점에서부터 일정 시간 동안
학습자가 기대할 수 있는 reward의 총합
expected accumulative future reward
value function은
특정 state s에서 시작하고
그 이후로 policy를 따랐을 때
예상되는 reward들의 총합이다.
이는 장기적인 관점에서 무엇이 좋은지를 알려준다.
state s에서 어떤 action을 취해서
다음 state s'로 넘어가는지
policy에서 확률에 기반하여 선택하기에
정확한 값이 아닌 예상값/기대값으로 표현한다
컴퓨터 과학에서 'greedy (탐욕적)'이란,
장기적으로 더 좋은 대안을 선택할 수 있는 기회를 고려하지 않고
지엽적이거나 즉각적인 것만 고려하여 대안을 탐색하는
탐색 또는 결정 과정을 의미한다.
결과적으로, 그것은 오직 단기적인 결과만을 고려하여
action을 선택하는 policy를 말한다.
'greedy action'이란
action의 가치(value)를 추정할 수 있다면
각 단계마다 추정 가치가 최대인 action을 하나 이상 결정하는 것.
epsilon-greedy는 이 둘의 조합으로,
대부분의 시간 동안에는 greedy한 선택을 수행하고,
가끔씩 상대적 빈도수 epsilon을 작은 값으로 유지하면서
greedy한 선택이 아닌
모든 action을 대상으로 무작위 선택을 하는 것
environment가 다음에 어떻게 되는지, 무엇을 하는지 예측한다
현재 state와 그에 따른 action으로부터 next_state와 reward를 예측해준다.
next_state 경험 전에 가능성만 고려하여 action을 결정하는 방법을
planning(계획)이라고 한다.
빨간색 화살표는
각 state s에서의 policy를 의미
숫자들은
각 state s에서의 value를 의미
grid는 다음에 나오는,
transition probability 를 의미
숫자들은
즉각적인 reward를 의미
(여기서는 모든 a와 s'에 대해 같은 reward를 취함)
아래 링크에
행렬과 행렬 연산에 내용이 있으니 꼭 참고
너무 세세한 연산과 조건들까지는 중요하지 않음
예시만 참고해서 어떤 식으로 연산이 작동되고
행렬 간의 연산이 왜 선형이라고 불리는지 이해가 된다면 됐다