폴리시 기반 세션 시작
강화학습 기초 시리즈의 마지막 강의인 폴리시 기반 세션을 여는 부분이다. 앞선 밸류 기반 강의보다 다소 어려운 선택적 내용임을 안내하고, 지금까지 다룬 밸류 기반 알고리즘과 달리 이번엔 정책(폴리시)에 기반한 알고리즘을 살펴본다고 예고한다.
밸류 기반은 누적 보상 기대값이 가장 큰 액션을 그리디하게 고르기 때문에 가위바위보처럼 확률을 섞어야 최적인 문제를 풀지 못한다. 또 연속·무한 액션 공간에서 최대값 탐색이 어렵고, 기대값이 조금만 바뀌어도 정책이 요동쳐 수렴성이 나쁘다는 단점을 짚는다.
현재 상태에서 특정 액션의 확률, 즉 정책을 인공신경망으로 직접 예측·최적화하는 폴리시 기반 강화학습을 정의한다. 확률적 정책 사용, 연속 액션 지원, 업데이트 폭 조절로 수렴성 향상이라는 장점을 정리하고, 목표는 여전히 누적 보상 기대값을 최대화하는 최적 정책 탐색임을 강조한다.
목적 함수를 모델 파라미터 세타로 미분해 정책을 개선하는 그래디언트 어센트를 설명한다. 모든 상태·액션 합산이 불가능한 문제를 로그 트릭으로 우회해 미분식을 기대값 형태로 바꾸고, 에이전트가 실제 경험한 에피소드를 샘플처럼 활용해 계산할 수 있게 되는 핵심 전개를 다룬다.
정사각형 땅에서 금괴를 찾는 2차원 가우시안 정책 예시로 업데이트 직관을 설명한다. 각 샘플이 자기 방향으로 분포 중앙을 당기되, 누적 보상을 뜻하는 항의 값에 따라 당기는 힘이 달라지거나 밀어내게 되어, 보상이 높았던 방향으로 정책이 점진 개선되는 원리를 보여준다.
폴리시 그래디언트의 대표 알고리즘인 REINFORCE(몬테카를로 폴리시 그래디언트)를 소개한다. 한 에피소드를 끝까지 경험하며 보상을 기억해 두고, 누적 보상과 정책 함수의 미분값으로 파라미터를 업데이트하는 과정을 반복하는 단순한 구조를 단계별로 설명한다.
OpenAI Gym의 카트폴 게임으로 REINFORCE를 실습한다. 카트 위치·속도·막대 각도·회전율 네 상태 변수와 좌우 이동 두 액션을 정의하고, TensorFlow/Keras로 은닉층 2개짜리 폴리시 신경망을 만들어 스토리지 클래스로 보상·미분값을 기억하며 학습시킨다. 학습이 진행될수록 평균 보상이 오른다.
몬테카를로 방식인 REINFORCE의 낮은 수렴성을 개선하기 위해 TD 방식을 적용한 액터-크리틱을 소개한다. 정책을 근사하는 액터에 더해 Q밸류를 근사하는 크리틱 모델을 도입해, 예측한 Q값으로 정책을 업데이트한다. 실습 코드의 달라지는 부분과 실행 결과로 강의를 마무리한다.