Value Prediction with Function Approximation
parameterized
기대값을 테이블이 아닌 여러 가중치(weight) 로 이루어진 로 점진적으로 추정해 간다.
이 가중치 들은 neural network 등의 방법으로 시간에 따라서 갱신 된다.
|| < |states|
일반적을 가중치 개수는 상태 개수 보다 작다. 그래서 하나의 가중치를 변경하면, 여러 상태에 영향을 미친다.
하나의 상태에 대해 백업하면, 여러 상태에 영향을 미치게 되어 '일반화' 된다.
prediction 과정의 (상태, 기대값) 을 함수 추정( approximation ) 의 입려과 출력으로 사용 한다.
approximation function requirement
on-line
- 바로바로 반응해야 하는 실시간 환경에서 학습이 느리면 사용 할 수 없다.
nonstationary target function
- approximation 에 사용되는 입력에 대한 출력이 변한다는 의미로 보임
- bootstrapping ( TD, DP ) 는 입출력 같이 계속 변경된다. ( 하지만, 입출력이 변경 되도 마지막 학습된 것 만 출력해 주면 상관 없을 것 같다. )
MSE ( mean squared error ) ( loss function )
supervised learning 에서는 다음 함수가 loss function 으로 사용된다.
- 실제 기대값
- approximation 의 출력 값
- P(s) 가중치를 부여하는 확률 분포
- 모든 error (실제 기대값과 출력값 차이) 를 0으로 줄일 수 없기 때문에 사용 한다고 한다.
- 어떤 상태들의 추정이 나쁘게 되더라도 다른 상태들의 추정을 좋게 한다.
- 현재 어떤 의미로 사용되는지 아직 모름, 다음 장(챕터)에서 나올 것 같음
on-policy distribution (?)
- on-policy control 에 사용 되는 P(s) 로 예측됨
- 정책을 수행해서 만나는 상태의 에러만을 최소화시킴
- 정책을 수행시 방문하지 않는 상태의 에러는 무시하는 듯 보임
- MC 와 TD 에서 주로 사용 되는 것으로 보임
- 두번째 판에는 정확한 수식이 있는 듯 함
more than MSE
최적 정책 찾기와 MSE 와 관련성이 명확하지 않다.
최적 정책을 찾기 위해 prediction 과정을 사용하지만,
prediction 을 좋게 하기 위해 MSE 를 최소화 하는 것이 꼭 필요한 것 같지 않다.
더 좋은 정책을 찾기 위한 다른 방법이 아직 발견되지 않은 듯 하다.
Nonlinear Neural Net 비 수렴성
간단한 linear approximator 가 아니면 복잡한 neural net 으로 최적 MSE 를 찾는 것 쉽지 않다.
복잡한 비선형 neural net 으로 할 수 있는 최선은 local optimal 에 수렴하는 것이다.
중요한(?) 강화학습에서 최적 수렴은 잘 되지 않는다.
어떤 경우에서는 mse 가 무한대로 커진다 (발산한다.)