HuggingFace Deep RL Course - 6. Advantage Actor-Critic (A2C)

jihyelee·2023년 6월 13일
0

참고 링크: https://huggingface.co/learn/deep-rl-course/unit6/introduction?fw=pt

Recap: Reinforce

  • Policy-Based method
    • value function 없이 policy를 직접적으로 최적화하는 방법
  • Policy-Gradient method
    • policy-based 방식 중 하나
    • gradient ascent를 사용해 최적의 policy weight을 측정함으로써 policy를 최적화

Reinforce

  • Reinforce는 리턴이 얼마나 높은가에 대해 비례적으로(proportionally) trajectory의 action의 확률을 증가
  • return을 계산할 때 Monte-Carlo 샘플링을 사용 (R(tau))
    • return이 높으면 (state, action) 조합의 확률을 높임
      • policy gradient estimation은 return의 증가가 가장 가파른 방향으로 진행
    • return이 낮으면 (state, action) 조합의 확률을 낮춤
  • trajectory를 수집해서 discounted return을 계산하고, 취해진 모든 행동의 확률을 높이거나 줄이는 데에 사용
    • 만약 return이 좋으면, 모든 행동들이 "강화됨(reinforced)"

Unbiased

  • return을 추정하는 것이 아니라 실제로 우리가 얻은 return을 사용하기 때문에 unbaised

Variance Problem

  • 환경과 policy에 stochasticity(확률성) 존재
  • trajectory가 다른 return을 만들 수 있기 때문에 높은 variance 존재
    • 동일한 state에서 시작했다고 하더라도 에피소드마다 다른 return을 가질 수 있음
  • 이를 완화하기 위해서는 많은 샘플(많은 trajectory)을 필요로 함
    • 샘플 효율성을 저하시킬 수 있음
    • 학습 시간이 오래 걸림

Actor-Critic

  • value-based 방식과 policy-based 방식을 결합한 방법
    • actor: 에이전트가 어떻게 행동하는가를 통제 (policy function)
    • critic: 취해진 행동이 얼마나 좋은지를 측정 (value function)

step 1. 현재 state를 actor와 critic에 전달, policy가 action을 결과로 냄

step 2. critic이 action을 input으로 받아 해당 state에서 특정 action을 취할 때의 값을 계산 (Q-value)

step 3. action을 통해 새로운 state와 reward 계산

step 4. actor가 q-value를 활용하여 policy 파라미터를 업데이트

step 5. 업데이트된 파라미터를 가진 actor가 새로운 state가 주어졌을 때 다음 action을 생성, critic이 value 파라미터를 업데이트

Advantage Function

  • action value function 대신 advantage function을 critic으로 사용함으로써 학습을 더욱 안정화할 수 있음
  • Advantage Function
    • 해당 state에서 특정 action을 취하는 것이 다른 평균값 대비 얼마나 더 좋은지 상대적인 장점을 계산
    • 다시 말해, 해당 state에서 얻을 수 있는 평균 reward 대비 특정 action을 취했을 때 얻을 수 있는 추가적인 reward를 계산하는 함수
      • A(s, a) > 0 이라면 gradient가 해당 방향으로 진행됨
      • A(s, a) < 0 이라면 gradient가 반대 방향으로 진행됨
    • Q(s, a) = r + lambda V(s')로 바꿔 쓸 수 있기 때문에, TD error의 형태로 표현 가능
profile
Graduate student at Seoul National University, majoring in Artificial Intelligence (NLP). Currently AI Researcher at LG CNS AI Lab

0개의 댓글