SlideShare a Scribd company logo
이웅원
2017.02.03
가깝고도 먼
TRPO
흐름보기
Part 2 Lower bound of performance
Part 3 Trust Region Policy Optimization
Part 4 Code review of TRPO
Part 1 Problem of stochastic policy gradient
간단정리
1. Stochastic policy gradient는 parameter space에서의 update
• 실제 policy는 급변 가능  collapse of performance
2. 따라서 Performance의 improvement를 보장하면서 학습하고 싶다
• Policy space에서 조금씩 움직이겠다
3. Policy가 변할 때 performance의 차이를 정의 : lower bound
• 이제부터는 lower bound를 optimize
4. Penalty 문제를 constraint 문제로 바꿈  Trust Region method
• KL-divergence constraint
1. Problem of stochastic policy gradient
가깝고도 먼
TRPO
강화학습 문제의 정의
• MDP : Tuple (𝑆, 𝐴, 𝑃, 𝑟, 𝜌0, 𝛾)
• 𝑃 : state transition probability
• 𝜌0: distribution of initial state 𝑠0
• 𝑟 : reward function
• 𝛾 : discount factor
• 𝜋 ∶ 𝑆 × 𝐴 → 0, 1 : stochastic policy
• 강화학습은 에이전트가 받을 보상을 최대화하는 policy를 구하는 문제
• 환경과의 상호작용을 통해 학습
• 환경의 모델과 보상을 미리 알지 못하는 상태에서 학습
강화학습의 분류
1. Value-based RL
• Q-function을 통해 action을 선택(ex. 𝜀 − 𝑔𝑟𝑒𝑒𝑑𝑦)
• SARSA, Q-Learning, DQN, Dueling Network, PER, etc..
2. Policy-based RL
• Explicit한 policy를 가지며 대부분 policy는 parameterized
• REINFORCE, Actor-Critic, A3C, TRPO, PPO, etc..
Policy Gradient
• Optimize할 목표를 정의 : objective function
• Objective function : 𝐽(𝜋 𝜃)  policy parameter 𝜃의 함수
• Optimization problem : max
𝜃
𝐽(𝜋 𝜃) 를 구하자
• Policy gradient : iteration마다 objective function의 gradient를 따라 parameter update
𝜃′ = 𝜃 + 𝛼𝛻𝜃 𝐽(𝜃)
https://www.linkedin.com/pulse/logistic-regression-gradient-descent-hands-on-marinho-de-oliveira
Policy Gradient
• Objective function  보통 첫 상태의 value function
• Objective function은 policy의 함수여야 함
• PG의 목표는 objective function을 최대화하는 policy를 구하기
• 𝜏 = 𝑠0, 𝑎0, 𝑟1, 𝑠1, 𝑎1, 𝑟2, ⋯
𝐽 𝜋 = 𝐸𝜏~𝜋 ෍
𝑡=0
∞
𝛾 𝑡 𝑟(𝑠𝑡)
= 𝐸𝑠0~𝜌0
𝑣 𝜋 𝑠0
Policy Gradient
• Q-function, Value function, Advantage function의 정의
𝑄 𝜋 𝑠𝑡, 𝑎 𝑡 = 𝐸𝑠 𝑡+1,𝑎 𝑡+1,⋯ ෍
𝑙=0
∞
𝛾 𝑙 𝑟(𝑠𝑡+𝑙)
𝑉𝜋 𝑠𝑡 = 𝐸 𝑎 𝑡, 𝑠 𝑡+1,𝑎 𝑡+1,⋯ ෍
𝑙=0
∞
𝛾 𝑙 𝑟(𝑠𝑡+𝑙)
𝑎 𝑡~𝜋 𝑎 𝑡 𝑠𝑡 , 𝑠𝑡+1~𝑃(𝑠𝑡+1|𝑠𝑡, 𝑎 𝑡)
𝐴 𝜋 𝑠, 𝑎 = 𝑄 𝜋 𝑠, 𝑎 − 𝑉𝜋(𝑠)
Policy Gradient
• Parameterized policy 𝜋 𝜃, objective function 𝐽 𝜋 𝜃
• Policy gradient equation
1. Policy gradient of REINFORCE
𝛻𝜃 𝐽 𝜃 = 𝐸𝜏~𝜋 𝜃
෍
𝑡=0
∞
𝐺𝑡 𝛻𝜃 𝑙𝑜𝑔𝜋 𝜃 𝑎 𝑡 𝑠𝑡
2. Policy gradient of Actor-Critic
𝛻𝜃 𝐽 𝜃 = 𝐸𝑠 𝑡~𝜌 𝜃, 𝑎 𝑡~𝜋 𝜃
𝐴 𝜋 𝜃
(𝑠𝑡, 𝑎 𝑡)𝛻𝜃 𝑙𝑜𝑔𝜋 𝜃 𝑎 𝑡 𝑠𝑡
Stochastic Policy Gradient
• Stochastic PG : Expectation을 계산하지 않고 sampling으로 대체
• 매 episode 혹은 timestep 마다 policy gradient를 estimate
1. Policy gradient of REINFORCE
𝛻𝜃 𝐽 𝜃 ≅
1
𝑇
෍
𝑡=0
𝑇
෠𝐺𝑡 𝛻𝜃 𝑙𝑜𝑔𝜋 𝜃 𝑎 𝑡 𝑠𝑡
2. Policy gradient of Actor-Critic
𝛻𝜃 𝐽 𝜃 ≅ መ𝐴(𝑠𝑡, 𝑎 𝑡)𝛻𝜃 𝑙𝑜𝑔𝜋 𝜃 𝑎 𝑡 𝑠𝑡
Policy Gradient의 문제
1. Sample efficiency is poor
• Policy gradient가 현재 policy에 대한 estimate
• Estimate한 policy gradient로 한 번만 update
• 이전 policy로 얻은 data를 사용하기 어려움
2. Distance in parameter space ≠ distance in policy space
• Policy gradient는 parameter에서 step
• 따라서 parameter에서의 small step이 policy를 크게 변화시킬 수 있음
• Policy가 조금씩 변하게 하는 parameter space에서의 step size를 찾자!
PG with Importance sampling
1. PG에서 이전 policy의 sample을 사용하기 위해 importance sampling 사용할 수 있음
𝛻𝜃 𝐽 𝜃 = 𝐸𝑠 𝑡~𝜌 𝜃, 𝑎 𝑡~𝜋 𝜃
𝐴 𝜋 𝜃
(𝑠𝑡, 𝑎 𝑡)𝛻𝜃 𝑙𝑜𝑔𝜋 𝜃 𝑎 𝑡 𝑠𝑡
= 𝐸𝑠 𝑡~𝜌 𝜃 𝑜𝑙𝑑
, 𝑎 𝑡~𝜋 𝜃 𝑜𝑙𝑑
𝜋 𝜃(𝑎 𝑡|𝑠𝑡)
𝜋 𝜃 𝑜𝑙𝑑
(𝑎 𝑡|𝑠𝑡)
𝐴 𝜋 𝜃
(𝑠𝑡, 𝑎 𝑡)𝛻𝜃 𝑙𝑜𝑔𝜋 𝜃 𝑎 𝑡 𝑠𝑡
2. Importance weight는 unbound  학습에 잘 안되게 함
• 관련 논문 ACER(Sample Efficient Actor-Critic with Experience Replay)
Step in policy space
• Parameter space가 아닌 policy space에서 조금씩 update 할 수 있나?
• KL-divergence of two policy (old policy & new policy)를 constraint로 (trust region!)
• Update 할 때 monotonic improvement를 보장할 수 있나?
• Performance의 lower bound를 정의하고 lower bound를 최적화
 TRPO (Trust Region Policy Optimization)
2. Lower bound of performance
TRPO
Relative policy performance identity
• Policy 𝜋 𝑜𝑙𝑑의 objective function : 𝐽 𝜋 𝑜𝑙𝑑 = 𝐸𝑠0,𝑎0,⋯~𝜋 𝑜𝑙𝑑
σ 𝑡=0
∞
𝛾 𝑡 𝑟(𝑠𝑡)
• Policy 𝜋의 objective function : 𝐽 𝜋 = 𝐸𝑠0,𝑎0,⋯~𝜋 σ 𝑡=0
∞
𝛾 𝑡 𝑟(𝑠𝑡)
• Bellman Equation 처럼 objective function 사이의 관계식을 만들어보자
𝐽 𝜋 = 𝐽 𝜋 𝑜𝑙𝑑 + 𝐸𝑠0,𝑎0,⋯~𝜋 ෍
𝑡=0
∞
𝛾 𝑡 𝐴 𝜋 𝑜𝑙𝑑
(𝑠𝑡, 𝑎 𝑡)
𝐽 𝜋 = 𝐽 𝜋 𝑜𝑙𝑑 + ෍
𝑠
𝜌 𝜋(𝑠) ෍
𝑎
𝜋(𝑎|𝑠)𝐴 𝜋 𝑜𝑙𝑑
(𝑠, 𝑎)
Kakade & Langford “Approximately optimal approximate reinforcement learning”, 2002
Proof of Relative policy performance identity (참고)
Policy Iteration & objective function
𝐽 𝜋 = 𝐽 𝜋 𝑜𝑙𝑑 + ෍
𝑠
𝜌 𝜋(𝑠) ෍
𝑎
𝜋(𝑎|𝑠)𝐴 𝜋 𝑜𝑙𝑑
(𝑠, 𝑎)
• Policy improvement  greedy policy improvement
• 어떤 한 행동 상태가 positive advantage를 가지면 policy를 improve
𝜋 = 𝑎𝑟𝑔𝑚𝑎𝑥 𝑎 𝐴 𝜋 𝑜𝑙𝑑
(𝑠, 𝑎)
• Approximation error  𝐴 𝜋 𝑜𝑙𝑑
𝑠, 𝑎 < 0 가능, 𝜌 𝜋(𝑠) 구하기 어려움
• 𝐽 𝜋  local approximation
𝐿 𝜋 𝑜𝑙𝑑
(𝜋) = 𝐽 𝜋 𝑜𝑙𝑑 + ෍
𝑠
𝜌 𝜋 𝑜𝑙𝑑
(𝑠) ෍
𝑎
𝜋(𝑎|𝑠)𝐴 𝜋 𝑜𝑙𝑑
(𝑠, 𝑎)
Local Approximation
𝐽 𝜋 = 𝐽 𝜋 𝑜𝑙𝑑 + ෍
𝑠
𝜌 𝜋(𝑠) ෍
𝑎
𝜋(𝑎|𝑠)𝐴 𝜋 𝑜𝑙𝑑
(𝑠, 𝑎)
𝐿 𝜋 𝑜𝑙𝑑
(𝜋) = 𝐽 𝜋 𝑜𝑙𝑑 + ෍
𝑠
𝜌 𝜋 𝑜𝑙𝑑
(𝑠) ෍
𝑎
𝜋(𝑎|𝑠)𝐴 𝜋 𝑜𝑙𝑑
(𝑠, 𝑎)
Approximation을 통한 error가 얼마나 될까?
 Lower bound
Policy의 변화가 적다면 steady state
distribution의 변화도 무시할 수 있을 것이다
Local Approximation with parameterized policy
𝐿 𝜋 𝑜𝑙𝑑
(𝜋) = 𝐽 𝜋 𝑜𝑙𝑑 + ෍
𝑠
𝜌 𝜋 𝑜𝑙𝑑
(𝑠) ෍
𝑎
𝜋(𝑎|𝑠)𝐴 𝜋 𝑜𝑙𝑑
(𝑠, 𝑎)
 𝐿 𝜋 𝜃0
𝜋 𝜃0
= 𝐽 𝜋 𝜃0
∇ 𝜃 𝐿 𝜋 𝜃0
𝜋 𝜃 ቚ
𝜃=𝜃0
= ∇ 𝜃 𝐽 𝜋 𝜃 ቚ
𝜃=𝜃0
Kakade & Langford (2002)가 증명
즉, 𝜋 𝜃0
에서 policy를 조금만 변화시켰을 때
local approximation을 improve  objective function도 improve
Conservative Policy Iteration
• 어느정도 변해야 objective function의 improve를 보장하는지 알 수 없음
• “Conservative Policy Iteration” : explicit한 𝐽 의 lower bound를 제시
1. Policy improvement(mixture policy 가정)
• 현재 policy : 𝜋 𝑜𝑙𝑑, 새로운 policy : 𝜋 𝑛𝑒𝑤
1 𝜋′ = 𝑎𝑟𝑔𝑚𝑎𝑥 𝜋′ 𝐿 𝜋 𝑜𝑙𝑑
𝜋′
2 𝜋 𝑛𝑒𝑤 a s = (1 − 𝛼)𝜋 𝑜𝑙𝑑 a s + 𝛼𝜋′(𝑎|𝑠)
Conservative Policy Iteration
2. Lower bound of 𝐽
𝐽 𝜋 𝑛𝑒𝑤 ≥ 𝐿 𝜋 𝑜𝑙𝑑
𝜋 𝑛𝑒𝑤 −
2𝜀𝛾
1 − 𝛾 2
𝛼2
𝑤ℎ𝑒𝑟𝑒 𝜀 = max
𝑠
𝐸 𝑎~𝜋′ 𝑎 𝑠 𝐴 𝜋(𝑠, 𝑎)
 이제는 lower bound를 최적화하면 된다
 Parameterized policy에 대해서 mixture policy를 구할 수 없음
Lower bound
Conservative Policy Iteration의 변형
1. Mixture policy를 통해 policy 사이의 거리를 나타내지 않고 KL-div를 사용
𝛼2
→ 𝐷 𝐾𝐿
𝑚𝑎𝑥
𝜋 𝑜𝑙𝑑, 𝜋 𝑛𝑒𝑤
2. 변형된 lower bound 식
𝜂 𝜋 𝑛𝑒𝑤 ≥ 𝐿 𝜋 𝑜𝑙𝑑
𝜋 𝑛𝑒𝑤 − 𝐶𝐷 𝐾𝐿
𝑚𝑎𝑥
𝜋 𝑜𝑙𝑑, 𝜋 𝑛𝑒𝑤
𝑤ℎ𝑒𝑟𝑒 𝐶 =
4𝜀𝛾
1 − 𝛾 2
, 𝜀 = max
𝑠
𝐸 𝑎~𝜋′ 𝑎 𝑠 𝐴 𝜋(𝑠, 𝑎)
Lower bound of objective function
𝐽 𝜋 𝑛𝑒𝑤 ≥ 𝐿 𝜋 𝑜𝑙𝑑
𝜋 𝑛𝑒𝑤 − 𝐶𝐷 𝐾𝐿
𝑚𝑎𝑥
𝜋 𝑜𝑙𝑑, 𝜋 𝑛𝑒𝑤
현재 𝜃에서는 값이 모두 같음
3. Trust Region Policy Optimization
TRPO
Conservative Policy Iteration의 변형
Policy improvement
Policy evaluation
KL-constraint optimization
1. Parameterized policy를 lower bound 식에 적용
𝐽 𝜃 ≥ 𝐿 𝜃 𝑜𝑙𝑑
𝜃 − 𝐶𝐷 𝐾𝐿
𝑚𝑎𝑥
𝜃 𝑜𝑙𝑑, 𝜃
2. Lower bound의 optimization : C가 너무 커서 step이 작다
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐿 𝜃 𝑜𝑙𝑑
𝜃 − 𝐶𝐷 𝐾𝐿
𝑚𝑎𝑥
𝜃 𝑜𝑙𝑑, 𝜃
3. Large and robust step : KL-penalty  KL-constraint
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐿 𝜃 𝑜𝑙𝑑
𝜃
𝑠. 𝑡. 𝐷 𝐾𝐿
𝑚𝑎𝑥
𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿
KL-constraint optimization
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐿 𝜃 𝑜𝑙𝑑
𝜃
𝑠. 𝑡. 𝐷 𝐾𝐿
𝑚𝑎𝑥
𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿
Trust region
small step in policy space
Approximation of KL-divergence
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐿 𝜃 𝑜𝑙𝑑
𝜃 𝑠. 𝑡. 𝐷 𝐾𝐿
𝑚𝑎𝑥
𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿
• 이 때, 𝐷 𝐾𝐿
𝑚𝑎𝑥
𝜃 𝑜𝑙𝑑, 𝜃 은 모든 상태에 대해서 max이기 때문에 practical X
• Approximation!
𝐷 𝐾𝐿
𝑚𝑎𝑥
𝜃 𝑜𝑙𝑑, 𝜃 ~𝐷 𝐾𝐿
𝜌
𝜃 𝑜𝑙𝑑, 𝜃 ≔ 𝐸𝑠~𝜌 𝑜𝑙𝑑
𝐷 𝐾𝐿 𝜋 𝜃 𝑜𝑙𝑑
∙ 𝑠 || 𝜋 𝜃 ∙ 𝑠
• 새로운 sub-problem 식
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐿 𝜃 𝑜𝑙𝑑
𝜃 𝑠. 𝑡. 𝐷 𝐾𝐿
𝜌 𝑜𝑙𝑑
𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿
Surrogate advantage function
𝐿 𝜃 𝑜𝑙𝑑
𝜃 = 𝐽 𝜃 𝑜𝑙𝑑 + ෍
𝑠
𝜌 𝜋 𝜃 𝑜𝑙𝑑
(𝑠) ෍
𝑎
𝜋 𝜃(𝑎|𝑠)𝐴 𝜋 𝜃 𝑜𝑙𝑑
(𝑠, 𝑎)
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐿 𝜃 𝑜𝑙𝑑
𝜃 → 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 ෍
𝑠
𝜌 𝜋 𝜃 𝑜𝑙𝑑
(𝑠) ෍
𝑎
𝜋 𝜃(𝑎|𝑠)𝐴 𝜋 𝜃 𝑜𝑙𝑑
(𝑠, 𝑎)
σ 𝑠 𝜌 𝜋 𝜃 𝑜𝑙𝑑
(𝑠) σ 𝑎 𝜋 𝜃(𝑎|𝑠)𝐴 𝜋 𝜃 𝑜𝑙𝑑
(𝑠, 𝑎)를 어떻게 구하지  approximation
Surrogate advantage function
෍
𝑠
𝜌 𝜋 𝜃 𝑜𝑙𝑑
(𝑠) ෍
𝑎
𝜋 𝜃(𝑎|𝑠)𝐴 𝜋 𝜃 𝑜𝑙𝑑
(𝑠, 𝑎) = 𝐸𝑠~𝜋 𝜃 𝑜𝑙𝑑
,𝑎~𝜋 𝜃
𝐴 𝜋 𝜃 𝑜𝑙𝑑
(𝑠, 𝑎)
= 𝐸𝑠~𝜋 𝜃 𝑜𝑙𝑑
,𝑎~𝜋 𝜃 𝑜𝑙𝑑
𝜋 𝜃(𝑎|𝑠)
𝜋 𝜃 𝑜𝑙𝑑
(𝑎|𝑠)
𝐴 𝜋 𝜃 𝑜𝑙𝑑
(𝑠, 𝑎)
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐸𝑠~𝜋 𝜃 𝑜𝑙𝑑
,𝑎~𝜋 𝜃 𝑜𝑙𝑑
𝜋 𝜃(𝑎|𝑠)
𝜋 𝜃 𝑜𝑙𝑑
(𝑎|𝑠)
𝐴 𝜋 𝜃 𝑜𝑙𝑑
(𝑠, 𝑎) 𝑠. 𝑡. 𝐷 𝐾𝐿
𝜌 𝑜𝑙𝑑
𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿
Importance
sampling
Surrogate advantage function
Natural Policy Gradient
• How to solve this problem? 𝐿 𝜃 𝑜𝑙𝑑
𝜃 = 𝐸𝑠~𝜋 𝜃 𝑜𝑙𝑑
,𝑎~𝜋 𝜃 𝑜𝑙𝑑
𝜋 𝜃(𝑎|𝑠)
𝜋 𝜃 𝑜𝑙𝑑
(𝑎|𝑠)
𝐴 𝜋 𝜃 𝑜𝑙𝑑
(𝑠, 𝑎)
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐿 𝜃 𝑜𝑙𝑑
𝜃 𝑠. 𝑡. 𝐷 𝐾𝐿
𝜌 𝑜𝑙𝑑
𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿
1. 1st order approximation to surrogate advantage function
𝐿 𝜃 𝑜𝑙𝑑
𝜃 ≈ 𝐿 𝜃 𝑜𝑙𝑑
𝜃 𝑜𝑙𝑑 + 𝑔 𝑇
𝜃 − 𝜃 𝑜𝑙𝑑 , 𝑔 = ∇ 𝜃 𝐿 𝜃 𝑜𝑙𝑑
𝜃 ቚ
𝜃 𝑜𝑙𝑑
2. 2nd order approximation to KL-divergence
𝐷 𝐾𝐿
𝜌 𝑜𝑙𝑑
𝜃 𝑜𝑙𝑑, 𝜃 ≈
1
2
𝜃 − 𝜃 𝑜𝑙𝑑
𝑇
𝐻 𝜃 − 𝜃 𝑜𝑙𝑑 , 𝐻 = ∇ 𝜃
2
𝐷 𝐾𝐿
𝜌 𝑜𝑙𝑑
𝜃 𝑜𝑙𝑑, 𝜃 ቚ
𝜃 𝑜𝑙𝑑
Fisher Information Matrix
Natural Policy Gradient
• Change constraint problem
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝑔 𝑇
𝜃 − 𝜃 𝑜𝑙𝑑
𝑠. 𝑡.
1
2
𝜃 − 𝜃 𝑜𝑙𝑑
𝑇
𝐻 𝜃 − 𝜃 𝑜𝑙𝑑 ≤ 𝛿
• Langrange Multiplier method
• 위 식의 해는 𝑔 𝑇
𝜃 − 𝜃 𝑜𝑙𝑑 − 𝛽
1
2
𝜃 − 𝜃 𝑜𝑙𝑑
𝑇
𝐻 𝜃 − 𝜃 𝑜𝑙𝑑 의 미분이 0되는 지점
• 𝛽 = 1 일 때, s = 𝜃 − 𝜃 𝑜𝑙𝑑direction 𝑠 을 먼저 구함
𝑔 − 𝐻𝑠 = 0
𝑠 = 𝐻−1 𝑔
Natural Policy Gradient
• KL-divergence constraint를 통해 𝑠𝑡𝑒𝑝 − 𝑠𝑖𝑧𝑒 𝛼를 구함
• Lagrange multiplier를 통해 구한 direction은 boundary에서의 direction
𝜃 − 𝜃 𝑜𝑙𝑑 = 𝛼𝑠
1
2
𝜃 − 𝜃 𝑜𝑙𝑑
𝑇
𝐻 𝜃 − 𝜃 𝑜𝑙𝑑 = 𝛿
→
1
2
𝛼𝑠 𝑇
𝐻 𝛼𝑠 = 𝛿
→ 𝛼 =
2𝛿
𝑠 𝑇 𝐻𝑠
=
2𝛿
𝑔 𝑇 𝐻−1 𝑔
(𝑠 = 𝐻−1
𝑔)
Natural Policy Gradient
• problem
𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝑔 𝑇
𝜃 − 𝜃 𝑜𝑙𝑑
𝑠. 𝑡.
1
2
𝜃 − 𝜃 𝑜𝑙𝑑
𝑇
𝐻 𝜃 − 𝜃 𝑜𝑙𝑑 ≤ 𝛿
• Solution
𝜃 𝑛𝑒𝑤 = 𝜃 𝑜𝑙𝑑 +
2𝛿
𝑔 𝑇 𝐻−1 𝑔
𝐻−1 𝑔
Truncated Natural Policy Gradient
• NPG에서 Neural Network와 같이 parameter가 많은 경우 𝐻−1
𝑔 계산이 어려움
• Parameter 개수가 𝑁개이면 𝐻의 크기는 𝑁2
, 𝐻−1
계산은 𝑂(𝑁3
)
 Conjugate gradient method를 통해서 𝐻−1을 계산하지 않고 𝐻−1 𝑔 구하기
 Truncated Natural Policy Gradient
• CG(conjugate gradient method)는 𝐴𝑥 = 𝑏의 선형시스템 문제를 푸는 방법
• Analytic하게 구하지 않고 iterative하게 𝑥를 구해내는 방법
• 임의의 벡터 𝑣에 대해 hessian-vector product 𝐻𝑣로 시작해서 𝐻𝑣 = 𝑔가 되도록 𝑣를 조정
Truncated Natural Policy Gradient
• Truncated Natural Policy Gradient의 문제
1. Might not be robust to trust region size ; at some iterations may be too large and
performance can degrade
2. Because of quadratic approximation, KL-divergence constraint may be violated
Trust Region method
Trust Region method
Approximation
Sub-problem
Trust-region
Trust Region method
Trust Region Policy Optimization
• 전체 문제를 sub-problem으로 나누고 각 sub-problem을 두 step으로 품
1. Finding search direction
2. Do line search on that direction inside trust region
• Trust Region Policy Optimization
1. Search direction ∆=
2𝛿
𝑔 𝑇 𝐻−1 𝑔
𝐻−1 𝑔
2. Backtracking line search 𝜃 𝑛𝑒𝑤 = 𝜃 𝑜𝑙𝑑 + 𝛼 𝑗∆ (𝐿 𝜃 𝑜𝑙𝑑
𝜃 > 0 𝑎𝑛𝑑 𝐷 𝐾𝐿
𝜌 𝑜𝑙𝑑
𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿일 때, stop)
4. Code review of TRPO
TRPO
OpenAI baselines
https://github.com/openai/baselines
TRPO 코드 개요
1. 현재 policy로 sample 모으기
2. 모은 sample로 GAE 계산하기
3. Surrogate advantage function 계산하기
4. Surrogate의 gradient와 KL-divergence의 hessian을 구하기
5. g와 H를 통해 (CG) search direction 계산
6. Search direction에 대해 backtracking line search
TRPO baseline 코드 구조
1. run_atari.py : atari 환경에서 학습하는 main loop
2. nosharing_cnn_policy.py : actor-critic network (actor와 critic은 네트워크 공유 X)
3. trpo_mpi.py : cnn_policy를 통해 실제로 학습을 하는 코드
run_atari.py
noshaing_cnn_policy.py trpo_mpi.py
현재 policy로 sample 모으기
def traj_segment_generator(pi, env, horizon, stochastic)
모은 sample로 GAE 계산하기
Surrogate advantage function 계산하기
𝐿 𝜃 𝑜𝑙𝑑
𝜃 = 𝐸𝑠~𝜋 𝜃 𝑜𝑙𝑑
,𝑎~𝜋 𝜃 𝑜𝑙𝑑
𝜋 𝜃(𝑎|𝑠)
𝜋 𝜃 𝑜𝑙𝑑
(𝑎|𝑠)
𝐴 𝜋 𝜃 𝑜𝑙𝑑
(𝑠, 𝑎)
Surrogate의 gradient와 KL-divergence의 hessian을 구하기
1. Surrogate의 gradient
• State, action, GAE로 policy gradient 계산
2. KL-divergence의 hessian matrix(2차 미분) : FIM 구하기
• KL-div :
• KL-div 1차 미분 :
Surrogate의 gradient와 KL-divergence의 hessian을 구하기
2. KL-divergence의 hessian matrix(2차 미분) : FIM 구하기
• FIM 계산 :
g와 H를 통해 (CG) search direction 계산
1. 𝐻−1
𝑔 계산
2. Search direction ∆=
2𝛿
𝑔 𝑇 𝐻−1 𝑔
𝐻−1
𝑔 계산
Search direction에 대해 backtracking line search
• 𝜃 𝑛𝑒𝑤 = 𝜃 𝑜𝑙𝑑 + 𝛼 𝑗∆ (𝐿 𝜃 𝑜𝑙𝑑
𝜃 > 0 𝑎𝑛𝑑 𝐷 𝐾𝐿
𝜌 𝑜𝑙𝑑
𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿일 때, stop)
Thank you
TRPO

More Related Content

What's hot

Control as Inference.pptx
Control as Inference.pptxControl as Inference.pptx
Control as Inference.pptx
ssuserbd1647
 
강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introduction강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introduction
Taehoon Kim
 
Reinforcement Learning with Deep Energy-Based Policies
Reinforcement Learning with Deep Energy-Based PoliciesReinforcement Learning with Deep Energy-Based Policies
Reinforcement Learning with Deep Energy-Based Policies
Sangwoo Mo
 
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
Curt Park
 
머신러닝 + 주식 삽질기
머신러닝 + 주식 삽질기머신러닝 + 주식 삽질기
머신러닝 + 주식 삽질기
HoChul Shin
 
Wasserstein GAN 수학 이해하기 I
Wasserstein GAN 수학 이해하기 IWasserstein GAN 수학 이해하기 I
Wasserstein GAN 수학 이해하기 I
Sungbin Lim
 
Maximum Entropy Reinforcement Learning (Stochastic Control)
Maximum Entropy Reinforcement Learning (Stochastic Control)Maximum Entropy Reinforcement Learning (Stochastic Control)
Maximum Entropy Reinforcement Learning (Stochastic Control)
Dongmin Lee
 
ddpg seminar
ddpg seminarddpg seminar
ddpg seminar
민재 정
 
Proximal Policy Optimization Algorithms, Schulman et al, 2017
Proximal Policy Optimization Algorithms, Schulman et al, 2017Proximal Policy Optimization Algorithms, Schulman et al, 2017
Proximal Policy Optimization Algorithms, Schulman et al, 2017
Chris Ohk
 
파이썬과 케라스로 배우는 강화학습 저자특강
파이썬과 케라스로 배우는 강화학습 저자특강파이썬과 케라스로 배우는 강화학습 저자특강
파이썬과 케라스로 배우는 강화학습 저자특강
Woong won Lee
 
Proximal Policy Optimization (Reinforcement Learning)
Proximal Policy Optimization (Reinforcement Learning)Proximal Policy Optimization (Reinforcement Learning)
Proximal Policy Optimization (Reinforcement Learning)
Thom Lane
 
강화학습의 개요
강화학습의 개요강화학습의 개요
강화학습의 개요
Dongmin Lee
 
분산 강화학습 논문(DeepMind IMPALA) 구현
분산 강화학습 논문(DeepMind IMPALA) 구현분산 강화학습 논문(DeepMind IMPALA) 구현
분산 강화학습 논문(DeepMind IMPALA) 구현
정주 김
 
Introduction to SAC(Soft Actor-Critic)
Introduction to SAC(Soft Actor-Critic)Introduction to SAC(Soft Actor-Critic)
Introduction to SAC(Soft Actor-Critic)
Suhyun Cho
 
1시간만에 GAN(Generative Adversarial Network) 완전 정복하기
1시간만에 GAN(Generative Adversarial Network) 완전 정복하기1시간만에 GAN(Generative Adversarial Network) 완전 정복하기
1시간만에 GAN(Generative Adversarial Network) 완전 정복하기
NAVER Engineering
 
「これからの強化学習」勉強会#1
「これからの強化学習」勉強会#1「これからの強化学習」勉強会#1
「これからの強化学習」勉強会#1
Chihiro Kusunoki
 
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
Euijin Jeong
 
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016
Taehoon Kim
 
Policy Gradient Theorem
Policy Gradient TheoremPolicy Gradient Theorem
Policy Gradient Theorem
Ashwin Rao
 
[머가]Chap11 강화학습
[머가]Chap11 강화학습[머가]Chap11 강화학습
[머가]Chap11 강화학습
종현 최
 

What's hot (20)

Control as Inference.pptx
Control as Inference.pptxControl as Inference.pptx
Control as Inference.pptx
 
강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introduction강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introduction
 
Reinforcement Learning with Deep Energy-Based Policies
Reinforcement Learning with Deep Energy-Based PoliciesReinforcement Learning with Deep Energy-Based Policies
Reinforcement Learning with Deep Energy-Based Policies
 
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
강화학습 기초부터 DQN까지 (Reinforcement Learning from Basics to DQN)
 
머신러닝 + 주식 삽질기
머신러닝 + 주식 삽질기머신러닝 + 주식 삽질기
머신러닝 + 주식 삽질기
 
Wasserstein GAN 수학 이해하기 I
Wasserstein GAN 수학 이해하기 IWasserstein GAN 수학 이해하기 I
Wasserstein GAN 수학 이해하기 I
 
Maximum Entropy Reinforcement Learning (Stochastic Control)
Maximum Entropy Reinforcement Learning (Stochastic Control)Maximum Entropy Reinforcement Learning (Stochastic Control)
Maximum Entropy Reinforcement Learning (Stochastic Control)
 
ddpg seminar
ddpg seminarddpg seminar
ddpg seminar
 
Proximal Policy Optimization Algorithms, Schulman et al, 2017
Proximal Policy Optimization Algorithms, Schulman et al, 2017Proximal Policy Optimization Algorithms, Schulman et al, 2017
Proximal Policy Optimization Algorithms, Schulman et al, 2017
 
파이썬과 케라스로 배우는 강화학습 저자특강
파이썬과 케라스로 배우는 강화학습 저자특강파이썬과 케라스로 배우는 강화학습 저자특강
파이썬과 케라스로 배우는 강화학습 저자특강
 
Proximal Policy Optimization (Reinforcement Learning)
Proximal Policy Optimization (Reinforcement Learning)Proximal Policy Optimization (Reinforcement Learning)
Proximal Policy Optimization (Reinforcement Learning)
 
강화학습의 개요
강화학습의 개요강화학습의 개요
강화학습의 개요
 
분산 강화학습 논문(DeepMind IMPALA) 구현
분산 강화학습 논문(DeepMind IMPALA) 구현분산 강화학습 논문(DeepMind IMPALA) 구현
분산 강화학습 논문(DeepMind IMPALA) 구현
 
Introduction to SAC(Soft Actor-Critic)
Introduction to SAC(Soft Actor-Critic)Introduction to SAC(Soft Actor-Critic)
Introduction to SAC(Soft Actor-Critic)
 
1시간만에 GAN(Generative Adversarial Network) 완전 정복하기
1시간만에 GAN(Generative Adversarial Network) 완전 정복하기1시간만에 GAN(Generative Adversarial Network) 완전 정복하기
1시간만에 GAN(Generative Adversarial Network) 완전 정복하기
 
「これからの強化学習」勉強会#1
「これからの強化学習」勉強会#1「これからの強化学習」勉強会#1
「これからの強化学習」勉強会#1
 
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
강화학습 기초_2(Deep sarsa, Deep Q-learning, DQN)
 
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016
딥러닝과 강화 학습으로 나보다 잘하는 쿠키런 AI 구현하기 DEVIEW 2016
 
Policy Gradient Theorem
Policy Gradient TheoremPolicy Gradient Theorem
Policy Gradient Theorem
 
[머가]Chap11 강화학습
[머가]Chap11 강화학습[머가]Chap11 강화학습
[머가]Chap11 강화학습
 

Similar to 가깝고도 먼 Trpo

Vector Optimization
Vector Optimization Vector Optimization
Vector Optimization
SEMINARGROOT
 
[한글] Tutorial: Sparse variational dropout
[한글] Tutorial: Sparse variational dropout[한글] Tutorial: Sparse variational dropout
[한글] Tutorial: Sparse variational dropout
Wuhyun Rico Shin
 
Lecture 3: Unsupervised Learning
Lecture 3: Unsupervised LearningLecture 3: Unsupervised Learning
Lecture 3: Unsupervised Learning
Sang Jun Lee
 
Policy Gradient 부터 Actor-Critic 까지
Policy Gradient 부터 Actor-Critic 까지Policy Gradient 부터 Actor-Critic 까지
Policy Gradient 부터 Actor-Critic 까지
Curt Park
 
한국인공지능연구소 강화학습랩 결과보고서
한국인공지능연구소 강화학습랩 결과보고서한국인공지능연구소 강화학습랩 결과보고서
한국인공지능연구소 강화학습랩 결과보고서
Euijin Jeong
 
Multinomial classification and application of ML
Multinomial classification and application of MLMultinomial classification and application of ML
Multinomial classification and application of ML
희수 박
 
SVM
SVMSVM
Guided policy search
Guided policy searchGuided policy search
Guided policy search
Jaehyeon Park
 
Lecture 2: Supervised Learning
Lecture 2: Supervised LearningLecture 2: Supervised Learning
Lecture 2: Supervised Learning
Sang Jun Lee
 
Eigendecomposition and pca
Eigendecomposition and pcaEigendecomposition and pca
Eigendecomposition and pca
Jinhwan Suk
 
04. logistic regression ( 로지스틱 회귀 )
04. logistic regression ( 로지스틱 회귀 )04. logistic regression ( 로지스틱 회귀 )
04. logistic regression ( 로지스틱 회귀 )
Jeonghun Yoon
 
ProximalPolicyOptimization
ProximalPolicyOptimizationProximalPolicyOptimization
ProximalPolicyOptimization
taeseon ryu
 
ESM Mid term Review
ESM Mid term ReviewESM Mid term Review
ESM Mid term Review
Mario Cho
 
내가 이해하는 SVM(왜, 어떻게를 중심으로)
내가 이해하는 SVM(왜, 어떻게를 중심으로)내가 이해하는 SVM(왜, 어떻게를 중심으로)
내가 이해하는 SVM(왜, 어떻게를 중심으로)
SANG WON PARK
 
Neural network (perceptron)
Neural network (perceptron)Neural network (perceptron)
Neural network (perceptron)
Jeonghun Yoon
 
Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리
SANG WON PARK
 
Dsh data sensitive hashing for high dimensional k-nn search
Dsh  data sensitive hashing for high dimensional k-nn searchDsh  data sensitive hashing for high dimensional k-nn search
Dsh data sensitive hashing for high dimensional k-nn search
WooSung Choi
 
Optimization algorithms in machine learning
Optimization algorithms in machine learningOptimization algorithms in machine learning
Optimization algorithms in machine learning
Yonsei University
 
Supervised Constrastive Learning
Supervised Constrastive LearningSupervised Constrastive Learning
Supervised Constrastive Learning
Sungchul Kim
 
03. linear regression
03. linear regression03. linear regression
03. linear regression
Jeonghun Yoon
 

Similar to 가깝고도 먼 Trpo (20)

Vector Optimization
Vector Optimization Vector Optimization
Vector Optimization
 
[한글] Tutorial: Sparse variational dropout
[한글] Tutorial: Sparse variational dropout[한글] Tutorial: Sparse variational dropout
[한글] Tutorial: Sparse variational dropout
 
Lecture 3: Unsupervised Learning
Lecture 3: Unsupervised LearningLecture 3: Unsupervised Learning
Lecture 3: Unsupervised Learning
 
Policy Gradient 부터 Actor-Critic 까지
Policy Gradient 부터 Actor-Critic 까지Policy Gradient 부터 Actor-Critic 까지
Policy Gradient 부터 Actor-Critic 까지
 
한국인공지능연구소 강화학습랩 결과보고서
한국인공지능연구소 강화학습랩 결과보고서한국인공지능연구소 강화학습랩 결과보고서
한국인공지능연구소 강화학습랩 결과보고서
 
Multinomial classification and application of ML
Multinomial classification and application of MLMultinomial classification and application of ML
Multinomial classification and application of ML
 
SVM
SVMSVM
SVM
 
Guided policy search
Guided policy searchGuided policy search
Guided policy search
 
Lecture 2: Supervised Learning
Lecture 2: Supervised LearningLecture 2: Supervised Learning
Lecture 2: Supervised Learning
 
Eigendecomposition and pca
Eigendecomposition and pcaEigendecomposition and pca
Eigendecomposition and pca
 
04. logistic regression ( 로지스틱 회귀 )
04. logistic regression ( 로지스틱 회귀 )04. logistic regression ( 로지스틱 회귀 )
04. logistic regression ( 로지스틱 회귀 )
 
ProximalPolicyOptimization
ProximalPolicyOptimizationProximalPolicyOptimization
ProximalPolicyOptimization
 
ESM Mid term Review
ESM Mid term ReviewESM Mid term Review
ESM Mid term Review
 
내가 이해하는 SVM(왜, 어떻게를 중심으로)
내가 이해하는 SVM(왜, 어떻게를 중심으로)내가 이해하는 SVM(왜, 어떻게를 중심으로)
내가 이해하는 SVM(왜, 어떻게를 중심으로)
 
Neural network (perceptron)
Neural network (perceptron)Neural network (perceptron)
Neural network (perceptron)
 
Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리Coursera Machine Learning (by Andrew Ng)_강의정리
Coursera Machine Learning (by Andrew Ng)_강의정리
 
Dsh data sensitive hashing for high dimensional k-nn search
Dsh  data sensitive hashing for high dimensional k-nn searchDsh  data sensitive hashing for high dimensional k-nn search
Dsh data sensitive hashing for high dimensional k-nn search
 
Optimization algorithms in machine learning
Optimization algorithms in machine learningOptimization algorithms in machine learning
Optimization algorithms in machine learning
 
Supervised Constrastive Learning
Supervised Constrastive LearningSupervised Constrastive Learning
Supervised Constrastive Learning
 
03. linear regression
03. linear regression03. linear regression
03. linear regression
 

가깝고도 먼 Trpo

  • 2. 흐름보기 Part 2 Lower bound of performance Part 3 Trust Region Policy Optimization Part 4 Code review of TRPO Part 1 Problem of stochastic policy gradient
  • 3. 간단정리 1. Stochastic policy gradient는 parameter space에서의 update • 실제 policy는 급변 가능  collapse of performance 2. 따라서 Performance의 improvement를 보장하면서 학습하고 싶다 • Policy space에서 조금씩 움직이겠다 3. Policy가 변할 때 performance의 차이를 정의 : lower bound • 이제부터는 lower bound를 optimize 4. Penalty 문제를 constraint 문제로 바꿈  Trust Region method • KL-divergence constraint
  • 4. 1. Problem of stochastic policy gradient 가깝고도 먼 TRPO
  • 5. 강화학습 문제의 정의 • MDP : Tuple (𝑆, 𝐴, 𝑃, 𝑟, 𝜌0, 𝛾) • 𝑃 : state transition probability • 𝜌0: distribution of initial state 𝑠0 • 𝑟 : reward function • 𝛾 : discount factor • 𝜋 ∶ 𝑆 × 𝐴 → 0, 1 : stochastic policy • 강화학습은 에이전트가 받을 보상을 최대화하는 policy를 구하는 문제 • 환경과의 상호작용을 통해 학습 • 환경의 모델과 보상을 미리 알지 못하는 상태에서 학습
  • 6. 강화학습의 분류 1. Value-based RL • Q-function을 통해 action을 선택(ex. 𝜀 − 𝑔𝑟𝑒𝑒𝑑𝑦) • SARSA, Q-Learning, DQN, Dueling Network, PER, etc.. 2. Policy-based RL • Explicit한 policy를 가지며 대부분 policy는 parameterized • REINFORCE, Actor-Critic, A3C, TRPO, PPO, etc..
  • 7. Policy Gradient • Optimize할 목표를 정의 : objective function • Objective function : 𝐽(𝜋 𝜃)  policy parameter 𝜃의 함수 • Optimization problem : max 𝜃 𝐽(𝜋 𝜃) 를 구하자 • Policy gradient : iteration마다 objective function의 gradient를 따라 parameter update 𝜃′ = 𝜃 + 𝛼𝛻𝜃 𝐽(𝜃) https://www.linkedin.com/pulse/logistic-regression-gradient-descent-hands-on-marinho-de-oliveira
  • 8. Policy Gradient • Objective function  보통 첫 상태의 value function • Objective function은 policy의 함수여야 함 • PG의 목표는 objective function을 최대화하는 policy를 구하기 • 𝜏 = 𝑠0, 𝑎0, 𝑟1, 𝑠1, 𝑎1, 𝑟2, ⋯ 𝐽 𝜋 = 𝐸𝜏~𝜋 ෍ 𝑡=0 ∞ 𝛾 𝑡 𝑟(𝑠𝑡) = 𝐸𝑠0~𝜌0 𝑣 𝜋 𝑠0
  • 9. Policy Gradient • Q-function, Value function, Advantage function의 정의 𝑄 𝜋 𝑠𝑡, 𝑎 𝑡 = 𝐸𝑠 𝑡+1,𝑎 𝑡+1,⋯ ෍ 𝑙=0 ∞ 𝛾 𝑙 𝑟(𝑠𝑡+𝑙) 𝑉𝜋 𝑠𝑡 = 𝐸 𝑎 𝑡, 𝑠 𝑡+1,𝑎 𝑡+1,⋯ ෍ 𝑙=0 ∞ 𝛾 𝑙 𝑟(𝑠𝑡+𝑙) 𝑎 𝑡~𝜋 𝑎 𝑡 𝑠𝑡 , 𝑠𝑡+1~𝑃(𝑠𝑡+1|𝑠𝑡, 𝑎 𝑡) 𝐴 𝜋 𝑠, 𝑎 = 𝑄 𝜋 𝑠, 𝑎 − 𝑉𝜋(𝑠)
  • 10. Policy Gradient • Parameterized policy 𝜋 𝜃, objective function 𝐽 𝜋 𝜃 • Policy gradient equation 1. Policy gradient of REINFORCE 𝛻𝜃 𝐽 𝜃 = 𝐸𝜏~𝜋 𝜃 ෍ 𝑡=0 ∞ 𝐺𝑡 𝛻𝜃 𝑙𝑜𝑔𝜋 𝜃 𝑎 𝑡 𝑠𝑡 2. Policy gradient of Actor-Critic 𝛻𝜃 𝐽 𝜃 = 𝐸𝑠 𝑡~𝜌 𝜃, 𝑎 𝑡~𝜋 𝜃 𝐴 𝜋 𝜃 (𝑠𝑡, 𝑎 𝑡)𝛻𝜃 𝑙𝑜𝑔𝜋 𝜃 𝑎 𝑡 𝑠𝑡
  • 11. Stochastic Policy Gradient • Stochastic PG : Expectation을 계산하지 않고 sampling으로 대체 • 매 episode 혹은 timestep 마다 policy gradient를 estimate 1. Policy gradient of REINFORCE 𝛻𝜃 𝐽 𝜃 ≅ 1 𝑇 ෍ 𝑡=0 𝑇 ෠𝐺𝑡 𝛻𝜃 𝑙𝑜𝑔𝜋 𝜃 𝑎 𝑡 𝑠𝑡 2. Policy gradient of Actor-Critic 𝛻𝜃 𝐽 𝜃 ≅ መ𝐴(𝑠𝑡, 𝑎 𝑡)𝛻𝜃 𝑙𝑜𝑔𝜋 𝜃 𝑎 𝑡 𝑠𝑡
  • 12. Policy Gradient의 문제 1. Sample efficiency is poor • Policy gradient가 현재 policy에 대한 estimate • Estimate한 policy gradient로 한 번만 update • 이전 policy로 얻은 data를 사용하기 어려움 2. Distance in parameter space ≠ distance in policy space • Policy gradient는 parameter에서 step • 따라서 parameter에서의 small step이 policy를 크게 변화시킬 수 있음 • Policy가 조금씩 변하게 하는 parameter space에서의 step size를 찾자!
  • 13. PG with Importance sampling 1. PG에서 이전 policy의 sample을 사용하기 위해 importance sampling 사용할 수 있음 𝛻𝜃 𝐽 𝜃 = 𝐸𝑠 𝑡~𝜌 𝜃, 𝑎 𝑡~𝜋 𝜃 𝐴 𝜋 𝜃 (𝑠𝑡, 𝑎 𝑡)𝛻𝜃 𝑙𝑜𝑔𝜋 𝜃 𝑎 𝑡 𝑠𝑡 = 𝐸𝑠 𝑡~𝜌 𝜃 𝑜𝑙𝑑 , 𝑎 𝑡~𝜋 𝜃 𝑜𝑙𝑑 𝜋 𝜃(𝑎 𝑡|𝑠𝑡) 𝜋 𝜃 𝑜𝑙𝑑 (𝑎 𝑡|𝑠𝑡) 𝐴 𝜋 𝜃 (𝑠𝑡, 𝑎 𝑡)𝛻𝜃 𝑙𝑜𝑔𝜋 𝜃 𝑎 𝑡 𝑠𝑡 2. Importance weight는 unbound  학습에 잘 안되게 함 • 관련 논문 ACER(Sample Efficient Actor-Critic with Experience Replay)
  • 14. Step in policy space • Parameter space가 아닌 policy space에서 조금씩 update 할 수 있나? • KL-divergence of two policy (old policy & new policy)를 constraint로 (trust region!) • Update 할 때 monotonic improvement를 보장할 수 있나? • Performance의 lower bound를 정의하고 lower bound를 최적화  TRPO (Trust Region Policy Optimization)
  • 15. 2. Lower bound of performance TRPO
  • 16. Relative policy performance identity • Policy 𝜋 𝑜𝑙𝑑의 objective function : 𝐽 𝜋 𝑜𝑙𝑑 = 𝐸𝑠0,𝑎0,⋯~𝜋 𝑜𝑙𝑑 σ 𝑡=0 ∞ 𝛾 𝑡 𝑟(𝑠𝑡) • Policy 𝜋의 objective function : 𝐽 𝜋 = 𝐸𝑠0,𝑎0,⋯~𝜋 σ 𝑡=0 ∞ 𝛾 𝑡 𝑟(𝑠𝑡) • Bellman Equation 처럼 objective function 사이의 관계식을 만들어보자 𝐽 𝜋 = 𝐽 𝜋 𝑜𝑙𝑑 + 𝐸𝑠0,𝑎0,⋯~𝜋 ෍ 𝑡=0 ∞ 𝛾 𝑡 𝐴 𝜋 𝑜𝑙𝑑 (𝑠𝑡, 𝑎 𝑡) 𝐽 𝜋 = 𝐽 𝜋 𝑜𝑙𝑑 + ෍ 𝑠 𝜌 𝜋(𝑠) ෍ 𝑎 𝜋(𝑎|𝑠)𝐴 𝜋 𝑜𝑙𝑑 (𝑠, 𝑎) Kakade & Langford “Approximately optimal approximate reinforcement learning”, 2002
  • 17. Proof of Relative policy performance identity (참고)
  • 18. Policy Iteration & objective function 𝐽 𝜋 = 𝐽 𝜋 𝑜𝑙𝑑 + ෍ 𝑠 𝜌 𝜋(𝑠) ෍ 𝑎 𝜋(𝑎|𝑠)𝐴 𝜋 𝑜𝑙𝑑 (𝑠, 𝑎) • Policy improvement  greedy policy improvement • 어떤 한 행동 상태가 positive advantage를 가지면 policy를 improve 𝜋 = 𝑎𝑟𝑔𝑚𝑎𝑥 𝑎 𝐴 𝜋 𝑜𝑙𝑑 (𝑠, 𝑎) • Approximation error  𝐴 𝜋 𝑜𝑙𝑑 𝑠, 𝑎 < 0 가능, 𝜌 𝜋(𝑠) 구하기 어려움 • 𝐽 𝜋  local approximation 𝐿 𝜋 𝑜𝑙𝑑 (𝜋) = 𝐽 𝜋 𝑜𝑙𝑑 + ෍ 𝑠 𝜌 𝜋 𝑜𝑙𝑑 (𝑠) ෍ 𝑎 𝜋(𝑎|𝑠)𝐴 𝜋 𝑜𝑙𝑑 (𝑠, 𝑎)
  • 19. Local Approximation 𝐽 𝜋 = 𝐽 𝜋 𝑜𝑙𝑑 + ෍ 𝑠 𝜌 𝜋(𝑠) ෍ 𝑎 𝜋(𝑎|𝑠)𝐴 𝜋 𝑜𝑙𝑑 (𝑠, 𝑎) 𝐿 𝜋 𝑜𝑙𝑑 (𝜋) = 𝐽 𝜋 𝑜𝑙𝑑 + ෍ 𝑠 𝜌 𝜋 𝑜𝑙𝑑 (𝑠) ෍ 𝑎 𝜋(𝑎|𝑠)𝐴 𝜋 𝑜𝑙𝑑 (𝑠, 𝑎) Approximation을 통한 error가 얼마나 될까?  Lower bound Policy의 변화가 적다면 steady state distribution의 변화도 무시할 수 있을 것이다
  • 20. Local Approximation with parameterized policy 𝐿 𝜋 𝑜𝑙𝑑 (𝜋) = 𝐽 𝜋 𝑜𝑙𝑑 + ෍ 𝑠 𝜌 𝜋 𝑜𝑙𝑑 (𝑠) ෍ 𝑎 𝜋(𝑎|𝑠)𝐴 𝜋 𝑜𝑙𝑑 (𝑠, 𝑎)  𝐿 𝜋 𝜃0 𝜋 𝜃0 = 𝐽 𝜋 𝜃0 ∇ 𝜃 𝐿 𝜋 𝜃0 𝜋 𝜃 ቚ 𝜃=𝜃0 = ∇ 𝜃 𝐽 𝜋 𝜃 ቚ 𝜃=𝜃0 Kakade & Langford (2002)가 증명 즉, 𝜋 𝜃0 에서 policy를 조금만 변화시켰을 때 local approximation을 improve  objective function도 improve
  • 21. Conservative Policy Iteration • 어느정도 변해야 objective function의 improve를 보장하는지 알 수 없음 • “Conservative Policy Iteration” : explicit한 𝐽 의 lower bound를 제시 1. Policy improvement(mixture policy 가정) • 현재 policy : 𝜋 𝑜𝑙𝑑, 새로운 policy : 𝜋 𝑛𝑒𝑤 1 𝜋′ = 𝑎𝑟𝑔𝑚𝑎𝑥 𝜋′ 𝐿 𝜋 𝑜𝑙𝑑 𝜋′ 2 𝜋 𝑛𝑒𝑤 a s = (1 − 𝛼)𝜋 𝑜𝑙𝑑 a s + 𝛼𝜋′(𝑎|𝑠)
  • 22. Conservative Policy Iteration 2. Lower bound of 𝐽 𝐽 𝜋 𝑛𝑒𝑤 ≥ 𝐿 𝜋 𝑜𝑙𝑑 𝜋 𝑛𝑒𝑤 − 2𝜀𝛾 1 − 𝛾 2 𝛼2 𝑤ℎ𝑒𝑟𝑒 𝜀 = max 𝑠 𝐸 𝑎~𝜋′ 𝑎 𝑠 𝐴 𝜋(𝑠, 𝑎)  이제는 lower bound를 최적화하면 된다  Parameterized policy에 대해서 mixture policy를 구할 수 없음 Lower bound
  • 23. Conservative Policy Iteration의 변형 1. Mixture policy를 통해 policy 사이의 거리를 나타내지 않고 KL-div를 사용 𝛼2 → 𝐷 𝐾𝐿 𝑚𝑎𝑥 𝜋 𝑜𝑙𝑑, 𝜋 𝑛𝑒𝑤 2. 변형된 lower bound 식 𝜂 𝜋 𝑛𝑒𝑤 ≥ 𝐿 𝜋 𝑜𝑙𝑑 𝜋 𝑛𝑒𝑤 − 𝐶𝐷 𝐾𝐿 𝑚𝑎𝑥 𝜋 𝑜𝑙𝑑, 𝜋 𝑛𝑒𝑤 𝑤ℎ𝑒𝑟𝑒 𝐶 = 4𝜀𝛾 1 − 𝛾 2 , 𝜀 = max 𝑠 𝐸 𝑎~𝜋′ 𝑎 𝑠 𝐴 𝜋(𝑠, 𝑎)
  • 24. Lower bound of objective function 𝐽 𝜋 𝑛𝑒𝑤 ≥ 𝐿 𝜋 𝑜𝑙𝑑 𝜋 𝑛𝑒𝑤 − 𝐶𝐷 𝐾𝐿 𝑚𝑎𝑥 𝜋 𝑜𝑙𝑑, 𝜋 𝑛𝑒𝑤 현재 𝜃에서는 값이 모두 같음
  • 25. 3. Trust Region Policy Optimization TRPO
  • 26. Conservative Policy Iteration의 변형 Policy improvement Policy evaluation
  • 27. KL-constraint optimization 1. Parameterized policy를 lower bound 식에 적용 𝐽 𝜃 ≥ 𝐿 𝜃 𝑜𝑙𝑑 𝜃 − 𝐶𝐷 𝐾𝐿 𝑚𝑎𝑥 𝜃 𝑜𝑙𝑑, 𝜃 2. Lower bound의 optimization : C가 너무 커서 step이 작다 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐿 𝜃 𝑜𝑙𝑑 𝜃 − 𝐶𝐷 𝐾𝐿 𝑚𝑎𝑥 𝜃 𝑜𝑙𝑑, 𝜃 3. Large and robust step : KL-penalty  KL-constraint 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐿 𝜃 𝑜𝑙𝑑 𝜃 𝑠. 𝑡. 𝐷 𝐾𝐿 𝑚𝑎𝑥 𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿
  • 28. KL-constraint optimization 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐿 𝜃 𝑜𝑙𝑑 𝜃 𝑠. 𝑡. 𝐷 𝐾𝐿 𝑚𝑎𝑥 𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿 Trust region small step in policy space
  • 29. Approximation of KL-divergence 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐿 𝜃 𝑜𝑙𝑑 𝜃 𝑠. 𝑡. 𝐷 𝐾𝐿 𝑚𝑎𝑥 𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿 • 이 때, 𝐷 𝐾𝐿 𝑚𝑎𝑥 𝜃 𝑜𝑙𝑑, 𝜃 은 모든 상태에 대해서 max이기 때문에 practical X • Approximation! 𝐷 𝐾𝐿 𝑚𝑎𝑥 𝜃 𝑜𝑙𝑑, 𝜃 ~𝐷 𝐾𝐿 𝜌 𝜃 𝑜𝑙𝑑, 𝜃 ≔ 𝐸𝑠~𝜌 𝑜𝑙𝑑 𝐷 𝐾𝐿 𝜋 𝜃 𝑜𝑙𝑑 ∙ 𝑠 || 𝜋 𝜃 ∙ 𝑠 • 새로운 sub-problem 식 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐿 𝜃 𝑜𝑙𝑑 𝜃 𝑠. 𝑡. 𝐷 𝐾𝐿 𝜌 𝑜𝑙𝑑 𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿
  • 30. Surrogate advantage function 𝐿 𝜃 𝑜𝑙𝑑 𝜃 = 𝐽 𝜃 𝑜𝑙𝑑 + ෍ 𝑠 𝜌 𝜋 𝜃 𝑜𝑙𝑑 (𝑠) ෍ 𝑎 𝜋 𝜃(𝑎|𝑠)𝐴 𝜋 𝜃 𝑜𝑙𝑑 (𝑠, 𝑎) 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐿 𝜃 𝑜𝑙𝑑 𝜃 → 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 ෍ 𝑠 𝜌 𝜋 𝜃 𝑜𝑙𝑑 (𝑠) ෍ 𝑎 𝜋 𝜃(𝑎|𝑠)𝐴 𝜋 𝜃 𝑜𝑙𝑑 (𝑠, 𝑎) σ 𝑠 𝜌 𝜋 𝜃 𝑜𝑙𝑑 (𝑠) σ 𝑎 𝜋 𝜃(𝑎|𝑠)𝐴 𝜋 𝜃 𝑜𝑙𝑑 (𝑠, 𝑎)를 어떻게 구하지  approximation
  • 31. Surrogate advantage function ෍ 𝑠 𝜌 𝜋 𝜃 𝑜𝑙𝑑 (𝑠) ෍ 𝑎 𝜋 𝜃(𝑎|𝑠)𝐴 𝜋 𝜃 𝑜𝑙𝑑 (𝑠, 𝑎) = 𝐸𝑠~𝜋 𝜃 𝑜𝑙𝑑 ,𝑎~𝜋 𝜃 𝐴 𝜋 𝜃 𝑜𝑙𝑑 (𝑠, 𝑎) = 𝐸𝑠~𝜋 𝜃 𝑜𝑙𝑑 ,𝑎~𝜋 𝜃 𝑜𝑙𝑑 𝜋 𝜃(𝑎|𝑠) 𝜋 𝜃 𝑜𝑙𝑑 (𝑎|𝑠) 𝐴 𝜋 𝜃 𝑜𝑙𝑑 (𝑠, 𝑎) 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐸𝑠~𝜋 𝜃 𝑜𝑙𝑑 ,𝑎~𝜋 𝜃 𝑜𝑙𝑑 𝜋 𝜃(𝑎|𝑠) 𝜋 𝜃 𝑜𝑙𝑑 (𝑎|𝑠) 𝐴 𝜋 𝜃 𝑜𝑙𝑑 (𝑠, 𝑎) 𝑠. 𝑡. 𝐷 𝐾𝐿 𝜌 𝑜𝑙𝑑 𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿 Importance sampling Surrogate advantage function
  • 32. Natural Policy Gradient • How to solve this problem? 𝐿 𝜃 𝑜𝑙𝑑 𝜃 = 𝐸𝑠~𝜋 𝜃 𝑜𝑙𝑑 ,𝑎~𝜋 𝜃 𝑜𝑙𝑑 𝜋 𝜃(𝑎|𝑠) 𝜋 𝜃 𝑜𝑙𝑑 (𝑎|𝑠) 𝐴 𝜋 𝜃 𝑜𝑙𝑑 (𝑠, 𝑎) 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝐿 𝜃 𝑜𝑙𝑑 𝜃 𝑠. 𝑡. 𝐷 𝐾𝐿 𝜌 𝑜𝑙𝑑 𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿 1. 1st order approximation to surrogate advantage function 𝐿 𝜃 𝑜𝑙𝑑 𝜃 ≈ 𝐿 𝜃 𝑜𝑙𝑑 𝜃 𝑜𝑙𝑑 + 𝑔 𝑇 𝜃 − 𝜃 𝑜𝑙𝑑 , 𝑔 = ∇ 𝜃 𝐿 𝜃 𝑜𝑙𝑑 𝜃 ቚ 𝜃 𝑜𝑙𝑑 2. 2nd order approximation to KL-divergence 𝐷 𝐾𝐿 𝜌 𝑜𝑙𝑑 𝜃 𝑜𝑙𝑑, 𝜃 ≈ 1 2 𝜃 − 𝜃 𝑜𝑙𝑑 𝑇 𝐻 𝜃 − 𝜃 𝑜𝑙𝑑 , 𝐻 = ∇ 𝜃 2 𝐷 𝐾𝐿 𝜌 𝑜𝑙𝑑 𝜃 𝑜𝑙𝑑, 𝜃 ቚ 𝜃 𝑜𝑙𝑑 Fisher Information Matrix
  • 33. Natural Policy Gradient • Change constraint problem 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝑔 𝑇 𝜃 − 𝜃 𝑜𝑙𝑑 𝑠. 𝑡. 1 2 𝜃 − 𝜃 𝑜𝑙𝑑 𝑇 𝐻 𝜃 − 𝜃 𝑜𝑙𝑑 ≤ 𝛿 • Langrange Multiplier method • 위 식의 해는 𝑔 𝑇 𝜃 − 𝜃 𝑜𝑙𝑑 − 𝛽 1 2 𝜃 − 𝜃 𝑜𝑙𝑑 𝑇 𝐻 𝜃 − 𝜃 𝑜𝑙𝑑 의 미분이 0되는 지점 • 𝛽 = 1 일 때, s = 𝜃 − 𝜃 𝑜𝑙𝑑direction 𝑠 을 먼저 구함 𝑔 − 𝐻𝑠 = 0 𝑠 = 𝐻−1 𝑔
  • 34. Natural Policy Gradient • KL-divergence constraint를 통해 𝑠𝑡𝑒𝑝 − 𝑠𝑖𝑧𝑒 𝛼를 구함 • Lagrange multiplier를 통해 구한 direction은 boundary에서의 direction 𝜃 − 𝜃 𝑜𝑙𝑑 = 𝛼𝑠 1 2 𝜃 − 𝜃 𝑜𝑙𝑑 𝑇 𝐻 𝜃 − 𝜃 𝑜𝑙𝑑 = 𝛿 → 1 2 𝛼𝑠 𝑇 𝐻 𝛼𝑠 = 𝛿 → 𝛼 = 2𝛿 𝑠 𝑇 𝐻𝑠 = 2𝛿 𝑔 𝑇 𝐻−1 𝑔 (𝑠 = 𝐻−1 𝑔)
  • 35. Natural Policy Gradient • problem 𝑚𝑎𝑥𝑖𝑚𝑖𝑧𝑒 𝜃 𝑔 𝑇 𝜃 − 𝜃 𝑜𝑙𝑑 𝑠. 𝑡. 1 2 𝜃 − 𝜃 𝑜𝑙𝑑 𝑇 𝐻 𝜃 − 𝜃 𝑜𝑙𝑑 ≤ 𝛿 • Solution 𝜃 𝑛𝑒𝑤 = 𝜃 𝑜𝑙𝑑 + 2𝛿 𝑔 𝑇 𝐻−1 𝑔 𝐻−1 𝑔
  • 36. Truncated Natural Policy Gradient • NPG에서 Neural Network와 같이 parameter가 많은 경우 𝐻−1 𝑔 계산이 어려움 • Parameter 개수가 𝑁개이면 𝐻의 크기는 𝑁2 , 𝐻−1 계산은 𝑂(𝑁3 )  Conjugate gradient method를 통해서 𝐻−1을 계산하지 않고 𝐻−1 𝑔 구하기  Truncated Natural Policy Gradient • CG(conjugate gradient method)는 𝐴𝑥 = 𝑏의 선형시스템 문제를 푸는 방법 • Analytic하게 구하지 않고 iterative하게 𝑥를 구해내는 방법 • 임의의 벡터 𝑣에 대해 hessian-vector product 𝐻𝑣로 시작해서 𝐻𝑣 = 𝑔가 되도록 𝑣를 조정
  • 37. Truncated Natural Policy Gradient • Truncated Natural Policy Gradient의 문제 1. Might not be robust to trust region size ; at some iterations may be too large and performance can degrade 2. Because of quadratic approximation, KL-divergence constraint may be violated
  • 41. Trust Region Policy Optimization • 전체 문제를 sub-problem으로 나누고 각 sub-problem을 두 step으로 품 1. Finding search direction 2. Do line search on that direction inside trust region • Trust Region Policy Optimization 1. Search direction ∆= 2𝛿 𝑔 𝑇 𝐻−1 𝑔 𝐻−1 𝑔 2. Backtracking line search 𝜃 𝑛𝑒𝑤 = 𝜃 𝑜𝑙𝑑 + 𝛼 𝑗∆ (𝐿 𝜃 𝑜𝑙𝑑 𝜃 > 0 𝑎𝑛𝑑 𝐷 𝐾𝐿 𝜌 𝑜𝑙𝑑 𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿일 때, stop)
  • 42. 4. Code review of TRPO TRPO
  • 44. TRPO 코드 개요 1. 현재 policy로 sample 모으기 2. 모은 sample로 GAE 계산하기 3. Surrogate advantage function 계산하기 4. Surrogate의 gradient와 KL-divergence의 hessian을 구하기 5. g와 H를 통해 (CG) search direction 계산 6. Search direction에 대해 backtracking line search
  • 45. TRPO baseline 코드 구조 1. run_atari.py : atari 환경에서 학습하는 main loop 2. nosharing_cnn_policy.py : actor-critic network (actor와 critic은 네트워크 공유 X) 3. trpo_mpi.py : cnn_policy를 통해 실제로 학습을 하는 코드 run_atari.py noshaing_cnn_policy.py trpo_mpi.py
  • 46. 현재 policy로 sample 모으기 def traj_segment_generator(pi, env, horizon, stochastic)
  • 47. 모은 sample로 GAE 계산하기
  • 48. Surrogate advantage function 계산하기 𝐿 𝜃 𝑜𝑙𝑑 𝜃 = 𝐸𝑠~𝜋 𝜃 𝑜𝑙𝑑 ,𝑎~𝜋 𝜃 𝑜𝑙𝑑 𝜋 𝜃(𝑎|𝑠) 𝜋 𝜃 𝑜𝑙𝑑 (𝑎|𝑠) 𝐴 𝜋 𝜃 𝑜𝑙𝑑 (𝑠, 𝑎)
  • 49. Surrogate의 gradient와 KL-divergence의 hessian을 구하기 1. Surrogate의 gradient • State, action, GAE로 policy gradient 계산 2. KL-divergence의 hessian matrix(2차 미분) : FIM 구하기 • KL-div : • KL-div 1차 미분 :
  • 50. Surrogate의 gradient와 KL-divergence의 hessian을 구하기 2. KL-divergence의 hessian matrix(2차 미분) : FIM 구하기 • FIM 계산 :
  • 51. g와 H를 통해 (CG) search direction 계산 1. 𝐻−1 𝑔 계산 2. Search direction ∆= 2𝛿 𝑔 𝑇 𝐻−1 𝑔 𝐻−1 𝑔 계산
  • 52. Search direction에 대해 backtracking line search • 𝜃 𝑛𝑒𝑤 = 𝜃 𝑜𝑙𝑑 + 𝛼 𝑗∆ (𝐿 𝜃 𝑜𝑙𝑑 𝜃 > 0 𝑎𝑛𝑑 𝐷 𝐾𝐿 𝜌 𝑜𝑙𝑑 𝜃 𝑜𝑙𝑑, 𝜃 ≤ 𝛿일 때, stop)