DDN's Library

強化学習に関する論文まとめやちょっとしたシステム開発について

論文紹介: Bridging the Gap Between Value and Policy Based Reinforcement Learning

紹介する論文

Bridging the Gap Between Value and Policy Based Reinforcement Learning

概要

  • on-policyの学習の安定性とoff-policyのサンプル効率の高さを備えた手法

  • エントロピー正則化強化学習の考え方に基づいた時に導き出される,価値関数と政策関数の関係式に基づいて両者を最適化

  • 離散行動空間タスクでA3CやDQNと比べて良い成果をあげた

f:id:ddnpaa:20191103142120p:plain

1. モチベーション

on-policy,off-policy手法の特徴

  • on-policyによる学習

 →学習の安定性は高いが,サンプル効率が悪い

  • off-policyによる学習

 →サンプル効率は高いが,学習の安定性は低い

on-policyの安定性とoff-policyのサンプル効率を兼ね備えた手法が理想!!

2.手法

結論から言うと,以下のように表される誤差関数を通して,政策,価値関数を最適化する

{\begin{align}
O_{\mathrm{PCL}}(\theta, \phi)=\sum_{s_{i: i+d} \in E} \frac{1}{2} C\left(s_{i: i+d}, \theta, \phi\right)^{2}
\end{align}}

 {\begin{aligned} C\left(s_{i: i+d}, \theta, \phi\right)=-V_{\phi}\left(s_{i}\right)+\gamma^{d} V_{\phi}\left(s_{i+d}\right) +\sum_{j=0}^{d-1} \gamma^{j} \biggl[r\left(s_{i+j}, a_{i+j}\right)-\tau \log \pi_{\theta}(a_{i+j} | s_{i+j})\biggl]    \end{aligned}}

学習には,ある部分軌跡 {\boldsymbol{s}_{i: i+d} \equiv\left(s_{i}, a_{i}, \cdots, \boldsymbol{s}_{i+d-1}, a_{i+d-1}, \boldsymbol{s}_{i+d}\right)} を用いる.

これにより,

  1. 過去のサンプルの利用によるサンプル効率化
  2. 確率的な政策の利用による学習の安定化

の2点を実現できる.

1. エントロピー正則化付き強化学習

以下の関数{O_{ENT}(s,\pi)}を考える.

 {\begin{align}
O_{\mathrm{ENT}}(s, \pi)=O_{\mathrm{ER}}(s, \pi)+\tau \mathbb{H}(s, \pi)
\end{align}}

ただし,{O_{\mathrm{ER}}(s, \pi)}{\mathbb{H}(s, \pi)}

{\begin{align}
O_{\mathrm{ER}}(s, \pi)=\sum \pi(a | s)\left[r(s, a)+\gamma O_{\mathrm{ER}}\left(s^{\prime}, \pi\right)\right], \quad \text { where } s^{\prime}=f(s, a)
\end{align}}

{\begin{align}
\mathbb{H}(s, \pi)=\sum_{a} \pi(a | s)\left[-\log \pi(a | s)+\gamma \mathbb{H}\left(s^{\prime}, \pi\right)\right]
\end{align}}

である.

ここで,{O_{ENT}(s,\pi)}は以下のように再帰的に表すことができる.

{\begin{align}
O_{\mathrm{ENT}}(s, \pi)=\sum_{a} \pi(a | s)\left[r(s, a)-\tau \log \pi(a | s)+\gamma O_{\mathrm{ENT}}\left(s^{\prime}, \pi\right)\right]
\end{align}}

2. 政策と価値関数の関係性

次に最適な状態価値{V^{\ast}(s)}と政策{\pi^{\ast}}の関係について考える.

まず,政策をボルツマン分布で表現すると

{\begin{align}
\pi^{*}(a | s)=\frac{\exp (r(s, a)+\gamma V^{\ast}(s^{\prime})) / \tau}{\sum_{a} \exp {(r(s, a)+\gamma V^{\ast}(s^{\prime})) / \tau}}
\end{align}}

となる.

ここでこれを,「1. エントロピー正則化付き強化学習」で導き出した{
O_{\mathrm{ENT}}(s, \pi)=\sum_{a} \pi(a | s)\left[r(s, a)-\tau \log \pi(a | s)+\gamma O_{\mathrm{ENT}}\left(s^{\prime}, \pi\right)\right]
}に代入すると

{\begin{align}
V {\ast}(s)=O_{\mathrm{ENT}}(s, \pi^{\ast})=\tau \log \sum_{a} \exp {(r(s, a)+\gamma V^{\ast}(s^{\prime})) / \tau}
\end{align}}

となる.

さらにこれを変形すると,

{\begin{align}
\exp (V^{\ast}(s) / \tau)=\sum_{a} \exp \{(r(s, a)+\gamma V^{*}(s^{\prime})) / \tau\}
\end{align}}

最後に,この式を{\pi^{\ast}}の分母に代入すると

{\begin{align}
\pi^{*}(a | s)=\frac{\exp (r(s, a)+\gamma V^{\ast}(s^{\prime})) / \tau}{\exp V^{\ast}(s) / \tau}
\end{align}}

となる.

3. 誤差関数の導出

先ほどの{\pi^{\ast}}の式に対して,両辺に対数をとって変形すると

{\begin{align}
V^{\ast}(s)-\gamma V^{\ast}(s^{\prime})=r(s, a)-\tau \log \pi^{\ast}(a | s)
\end{align}}

の方程式が得られる.

さらに,{V^{\ast}(s’)}に関して,tステップ目まで展開すると以下のようになる.

{\begin{align}
V^{\ast}(s_{1})-\gamma^{t-1} V^{\ast}(s_{t})= \sum_{i=1}^{t-1} \gamma^{i-1}[r(s_{i}, a_{i})-\tau \log \pi^{\ast}(a_{i} | s_{i})]
\end{align}}

ここで,この方程式が成立する状態価値関数,政策が最適であるため,この方程式の左辺と右辺の2乗誤差を誤差関数とする! (両辺が等しい→両辺の差が0→両辺の二乗誤差を誤差関数として最小化を目指す!)

{\begin{align}
O_{\mathrm{PCL}}(\theta, \phi)=\sum_{s_{i: i+d} \in E} \frac{1}{2} C\left(s_{i: i+d}, \theta, \phi\right)^{2}
\end{align}}

 {\begin{aligned} C\left(s_{i: i+d}, \theta, \phi\right)=-V_{\phi}\left(s_{i}\right)+\gamma^{d} V_{\phi}\left(s_{i+d}\right) +\sum_{j=0}^{d-1} \gamma^{j} \biggl[r\left(s_{i+j}, a_{i+j}\right)-\tau \log \pi_{\theta}(a_{i+j} | s_{i+j})\biggl]    \end{aligned}}

3.メリット

1. サンプル効率が高い

誤差関数が全ての部分軌跡で成立するように学習を行う →リプレイバッファで格納した過去の軌跡を利用することができる(サンプル効率の向上)

2.政策の学習の安定性が高い

従来のoff-policy手法・・・Q学習をベースとしていたため,行動評価が決定的で不安定

本手法・・・行動評価が決定的でなく,かつエントロピー正則化により探索不足による収束の不安定性も緩和!

4.まとめ

エントロピー正則化付き強化学習の考え方により,on-policyとoff-policyのメリットを共存させたアルゴリズムを開発した