머신러닝 3주차 (03/23) - 가치함수 : 상태/행동의 가치 계산
강화학습에서 에이전트는 보상의 크기로 행동의 좋고 나쁨을 판단하고 받을 수 있는 보상의 총합인 수익G를 최대화하는 행동을 학습한다고 하였다.
간단히 설명하면, 각 상태의 가치나 각 상태에서 가능한 행동들의 가치를 계산해두고 가치가 큰 상태나 행동을 선택하는 방법으로 학습하는 것이다.
상태가치 : 에이전트가 시행착오를 거쳐 각 상태의 값
행동가치 : 각 상태에서 가능한 4가지(예를들어) 행동 위,오른쪽, 아래, 왼쪽의 가치를 계산한 값
학습이 끝난 에이전트는 각 상태에서 행동가치가 높은 행동을 선택해서 이동하다보면 도착지점에 도착한다는 것을 알 수 있다.
V π : (상태가치 함수) 상태 s에서 얻을 수 있는 수익G(보상r의 총합)을 말한다.
강화학습에서는 가치판단이나 행동 선택은 에이전트가 가지고 있는 어떤 정책 π에 따라 계산된다
현재 상태 가치는 앞으로 얻게될 보상들의 합이다.
정책 : 에이전트가 그 행동을 할 확률
기댓값 : 각 사건이 벌어졌을 때의 이득과 그 사건이 벌어질 확률을 곱한 것을 전체 사건에 대해 합한 값으로,
어떤 확률적 사건에 대한 평균의 의미로 생각할 수 있다.
행동가치함수를 계산할 때는 액션이 여러개 일 때는 여러개의 행동가치함수를 계산하여 가장 큰 값을 선택한다.
행동가치함수 : Q π
어떤 상태 s에서 최적의 행동 a가 무엇인가?에 대한 값을 구하는 것
행동에 따른 결과는 동일하지만, 환경에 의해 상태는 변화할 수 있다
상태가치를 계산하는 상태 가치함수의 오른쪽 부분을 보면 행동가치를 계산하는 행동가치함수와 '동일'함을 알 수 있다.
따라서 상태가치 함수와 행동가치함수는 유기적으로 서로를 이용해 표현할 수 있다(굳이 서로를 이용하지 않아도 가능)
강화학습은 최적 정책 π을 찾는 것이라 하였는데,
π를 모르는데 어떻게 상태, 행동 가치를 구할까?
임의의 값 대입 후 학습을 반복하여 π를 구할 수 있다(임의의 값으로 설정해도 π를 구할 수 있음이 수학적으로 증명되었다)