어떻게 지능형 시스템을 설계할까?
지능형 시스템은 불확실성에 대비해야 함. 강화학습은 불확실성이 있을 수 있는 환경에서 환경과 의사소통하는 에이전트로 이루어져 있음.
강화학습의 뿌리
강화학습은 Optimal Control 과 Psychology (trial-and-error learning) 에 기반하고 있음. Optimacl Control 은 시간에 따라 동적으로 변화하는 성능을 최대화하는 컨트롤러를 설계하는 것임. Psychology 는 만족감을 느끼는 상황에 대해서는 재발하려고 만드려고 하고, 불편함을 느끼는 상황에서는 다시 느끼지 않도록 하는 경향이 있다는 것에 기반하는 방식임.
강화학습?
Optimal Control 을 위해서 Trial-and-error learning 을 하는 것. Supervisor 가 없고 리워드 기반으로 동작함. 피드백은 즉각적으로 오지 않음. 에이전트는 시퀀스 데이터에 대해서 행동해야 함. Exploration 은 정보를 알기 위한 탐색이고 Exploitation 은 알고 있는 정보로 최적의 판단을 하는 것인데 이에 대한 trade off 를 잘 고려해야 함.
강화학습의 구성요소
State, Action, Reward 로 나누어져 있음. 에이전트의 궁극적인 목표는 누적 reward 의 기댓값을 maximize 하는 것임. Sequential Decision Making 에서는 지속적으로 action 을 취해주어여 함. 결과적으로 학습하는 것은 Policy 로 state 에 따른 action 임.
전통적인 강화학습
Q-Learning 은 데이터를 이용해서 최적의 Q-function 을 근사하는 것이며 데이터를 통해 Bellman equation 을 품으로써 이를 근사할 수 있음. Policy Gradient 는 policy 자체를 parameterize 한 다음에 gradient ascent 를 이용해 optimal 한 parameter 를 찾는 방법임. Actor-Critic 은 Q-Learning 과 Policy Gradient 를 합친 방법론으로 Actor 가 Policy Gradient 로 parameter 를 업데이트하고 Critic 은 Q-Learning 으로 parameter 를 업데이트 함.
Deep RL
강화학습에 딥러닝을 접목하여 학습하는 방법. 강화학습의 암흑기를 끝내고 많은 연구들이 이루어지기 시작했음.그럼에도 Sample Efficiency 가 좋지 못하고 Speed 와 Stability 가 떨어지는 것을 해결하려는 시도나 하나의 상황이 아니라 여러 상황에서 동작하게 만드려는 시도 등이 있음.