1889 文字
9 分
Q-learningの収束性について

はじめに#

このエントリは機械学習の数理 Advent Calendar 201812日目の記事の転載です。

今回はよく知られている強化学習のアルゴリズム: Q-learningについて説明したいと考えています。追記程度でSoft Q-learningの基礎となっているSoft Bellman方程式が縮小写像になっていることを示します。

有限マルコフ決定過程#

以下の条件を満たす5つの組P=(S,A,R,p,π)\mathcal{P} = (\mathcal{S}, \mathcal{A}, \mathcal{R},p, \pi) を有限マルコフ決定過程と呼び,そのppを特に遷移確率関数もしくは単に遷移確率と呼ぶ.そしてπ\piを方針分布または方針と呼ぶ.

  1. p(s0,a0,r0,,sT,aT,rT)=p(s0)t=0Tπ(atst)p(st+1,rtst,at)p(s_0, a_0, r_0, \cdots, s_T, a_T, r_T) = p(s_0) \prod_{t=0}^{T} \pi(a_t|s_t)p(s_{t+1}, r_{t}|s_t,a_t)
  2. 状態s,sSs, s' \in \mathcal{S}, 行動aAa \in A, 報酬rRr \in \mathcal{R}.
  3. 報酬関数r(s,a)=rrp(rs,a)r(s,a) = \sum_r r p(r|s,a)

リターン(割引付き報酬の総和)をGt=t=0γtrtG_t = \sum_{t=0}^{\infty} \gamma^t r_tとする.このときrt=r(st,at),γ[0,1]r_t = r(s_t,a_t), \gamma \in [0, 1]とする.続いて価値関数の定義をしていく.

価値関数#

期待リターンとして状態価値関数を

Vπ(s)=Eπ,p[t=0Tγtrt|s0=s], V_\pi(s) = \mathbb{E_{\pi,p}} \left[\sum_{t=0}^{T} \gamma^t r_t \middle| s_0 = s \right], 

と定義し,QQ関数(行動価値関数)を

Qπ(s,a)=Eπ,p[r0+t=1Tγtrt|s0=s,a0=a],Q_\pi(s, a) = \mathbb{E_{\pi,p}} \left[r_0 + \sum_{t=1}^{T} \gamma^t r_t \middle| s_0 = s, a_0 = a \right],

と定義する.最適状態価値関数と最適行動価値関数をそれぞれ

V(s)=maxπVπ(s) Qπ(s,a)=r(s,a)+γEsp[V(s)]V^\ast (s) = \max_{\pi} V_{\pi}(s) \\\ Q_{\pi}^\ast (s, a) = r(s,a) + \gamma \mathbb{E}_{s' \sim p} [V^\ast(s)]

とする.

Bellman方程式は縮小作用素#

最適行動価値関数Qπ(s,a)Q_{\pi}^\ast (s, a)は関数q:S×ARq:\mathcal{S} \times \mathcal{A} \to \mathbb{R}について

Tπ[q](s,a)=E_(r,s)p[r+γE_aπ[q(s,a)]],\mathcal{T}_\pi [q] (s,a) = \mathbb{E}\_{(r,s') \sim p} \left[r + \gamma \mathbb{E}\_{a' \sim \pi}[q(s', a')] \right],

として定義される縮小作用素Tπ\mathcal{T}_\piの不動点である.次のことからTπ\mathcal{T}_\piは連続であることがわかる.

Tπ[q1]Tπ[q2]=maxs,aTπ[q1]Tπ[q2] =maxs,a[E(r,s)p[r+γEaπ[q1(s,a)]]][E(r,s)p[r+γEaπ[q2(s,a)]]] =maxs,aγEsp,aπ[q1(s,a)q2(s,a)] =maxs,aγEsp,aπ[q1(s,a)q2(s,a)] maxs,aγq1(s,a)q2(s,a) =γq1q2\begin{align*} \|\mathcal{T}_\pi [q_1] - \mathcal{T}_\pi [q_2] \| & = \max_{s,a} \left| \mathcal{T}_\pi [q_1] - \mathcal{T}_\pi [q_2] \right| \\\ & = \max_{s,a} \left| \left[\mathbb{E}_{(r,s') \sim p} [r + \gamma \mathbb{E}_{a' \sim \pi}[q_1(s', a')] ] \right] - \left[\mathbb{E}_{(r,s') \sim p} [r + \gamma \mathbb{E}_{a' \sim \pi}[q_2(s', a')] ]\right] \right| \\\ & = \max_{s,a} \left| \gamma \mathbb{E}_{s' \sim p, a' \sim \pi} [q_1(s',a') - q_2(s',a')] \right| \\\ & = \leq \max_{s,a} \gamma \mathbb{E}_{s' \sim p, a' \sim \pi} \left[ \left| q_1(s',a') - q_2(s',a') \right| \right] \\\ & \leq \max_{s',a'} \gamma \left| q_1(s',a') - q_2(s',a') \right| \\\ & = \gamma \|q_1 - q_2 \|_\infty \end{align*}

すなわち,

Tπ[q1]Tπ[q2]γq1q2\| \mathcal{T}_\pi [q_1] - \mathcal{T}_\pi [q_2] \|_\infty \leq \gamma \|q_1 - q_2 \|_\infty

である.続いてQ-learningについての収束性について議論するにあたって先程のbellman方程式のπ\piの期待値から新たな方針G[q](s)=argmaxaq(s,a)\mathcal{G}[q] \, (s) = \arg\max_{a} q(s,a)に置き換える.この新たな方針は貪欲方針(greedy policy)と呼ばれるものである.

Tπ[q](s,a)=E(r,s)p[r+γmaxaq(s,a)],\mathcal{T}_\pi [q] (s,a) = \mathbb{E}_{(r,s') \sim p} \left[r + \gamma \max_{a'}q(s', a') \right],

少し議論がずれるが,なぜQ-learningがoff-policyであるのかという質問に対してサンプルを集める方針π\piとそれを活用するgreedy policy G[q]\mathcal{G}[q] が異なるからであると答えるのが適切かと思う.私自身,よくわからず悩んでいた点だったので補足させていただいた.

続いてBellman方程式の縮小写像としての性質を用いたQ-learningの定理について説明する.

Q-learning#

有限マルコフ決定過程が与えられたとき,Q-learningは次の更新則

Qt+1(st,at)=Qt(st,at)+αt(st,at)[rt+γmaxaQt(st+1,a)Qt(st,at)],(2)Q_{t+1}(s_t,a_t)=Q_{t}(s_t,a_t)+\alpha_{t}(s_t,a_t) \left[r_t + \gamma \max_{a'}Q_{t}(s_{t+1},a') - Q_{t}(s_t,a_t) \right], \tag{2} Qt+1(st,at)=Qt(st,at)+αt(st,at)[rt+γmaxaQt(st+1,a)Qt(st,at)],(2)Q_{t+1}(s_t,a_t)=Q_{t}(s_t,a_t)+\alpha_{t}(s_t,a_t) \left[r_t + \gamma \max_{a'}Q_{t}(s_{t+1},a') - Q_{t}(s_t,a_t) \right], \tag{2}

とし,そして

tαt(st,at)=,tαt2(st,at)< (3)\sum_{t} \alpha_{t}(s_t,a_t) = \infty, \hspace{10pt} \sum_{t} \alpha_{t}^{2}(s_t,a_t) < \infty \tag{3} tαt(st,at)=,tαt2(st,at)< (3)\sum_{t} \alpha_{t}(s_t,a_t) = \infty, \hspace{10pt} \sum_{t} \alpha_{t}^{2}(s_t,a_t) < \infty \tag{3}

である限り確率1で最適行動価値関数QπQ_{\pi}^\astに収束する.0αt(s,a)<10 \leq \alpha_t(s,a) < 1であるためQ-learningは全ての状態-行動の組に無限に訪れる必要があることを留意していただきたい.

次の3つの仮定のもと確率過程Δt:Δt+1(x)=(1αt(x))Δt(x)+αt(x)ot(x)\\{\Delta_t: \Delta_{t+1}(x) = (1 - \alpha_{t}(x))\Delta_{t}(x) + \alpha_{t}(x)o_t(x) \\}は確率1でゼロに収束する.

  1. 0αt1,tαt(x)=,tαt2(x)<0 \leq \alpha_t \leq 1, \sum_t \alpha_t (x) = \infty, \sum_t \alpha_t^2(x)< \infty
  2. E[ot(x)]γΔt(x)_,γ[0,1]\| \mathbb{E}[o_t(x)] \|\infty \leq \gamma \left \|\Delta{t}(x) \right \|\_{\infty}, \gamma \in [0, 1]
  3. var[ot(x)]C(1+Δt_2),C>0\text{var}[o_t(x)] \leq C(1 + \left\|\Delta_{t} \right\|\_{\infty}^{2}), C > 0

この補題を証明したかったのだが,参考した論文を理解できなかったのでこの補題の結果のみ使わせていただく(不甲斐ない)

[追記] 筆者の勉強不足で確かなことは言えないんですが、「リプシッツ条件」「線形増大度条件」がキーワードになっていると思います。勉強でき次第、また追記したいと思います

証明#

Q-learningの更新則(2)から

Qt+1(st,at)=(1αt(st,at))Qt(st,at)+αt(st,at)[rt+γmaxaQt(st+1,a)],Q_{t+1}(s_t,a_t)= (1 - \alpha_{t}(s_t,a_t))Q_{t}(s_t,a_t)+\alpha_{t}(s_t,a_t) \left[r_t + \gamma \max_{a'}Q_{t}(s_{t+1},a') \right],

と書き換え,両辺からQ(st,at)Q^\ast(s_t,a_t)を減算する.

Δt+1(st,at)=(1αt(st,at))Δt(st,at)+αt(st,at)[rt+γmaxaQt(st+1,a)Q(st,at)].\Delta_{t+1}(s_t,a_t) = (1 - \alpha_{t}(s_t,a_t))\Delta_{t}(s_t,a_t) + \alpha_{t}(s_t,a_t)\left[r_t + \gamma \max_{a'}Q_{t}(s_{t+1},a') - Q^\ast(s_t,a_t) \right].

このときΔt(st,at)=defQt(st,at)Q(st,at)\Delta_{t}(s_t,a_t) \overset{\text{def}}{=} Q_{t}(s_t,a_t) - Q^\ast(s_t,a_t).次に

ot(s,a)=r(s,a)+γmaxaQt(s,a)Q(s,a), o_t(s,a) = r(s,a) + \gamma \max_{a'}Q_{t}(s,a') - Q^\ast(s,a), 

とおいたとき関数ot(s,a)o_t(s,a)の期待値は

E[ot(s,a)]=E(r,s)p[r+γmaxaQt(s,a)Q(s,a)] =Tπ[Qt](s,a)Q(s,a),\begin{align*} \mathbb{E}[o_t(s,a)] & = \mathbb{E}_{(r,s') \sim p} \left[r + \gamma \max{a'}Q_t (s,a') - Q^\ast(s,a) \right] \\\ & = \mathcal{T}_\pi [Q_t] (s,a) - Q^\ast(s,a), \end{align*}

となる*.Bellman方程式の性質Q=Tπ[Q]Q^\ast = \mathcal{T}_*\pi [Q^\ast]と式(1)から,

E[ot(s,a)]=T_π[Qt](s,a)Tπ[Q](s,a) γQtQ =γΔt(st,at).\begin{align*} \| \mathbb{E}[o_t(s,a)] \|_\infty & = \left\| \mathcal{T}\_{\pi} [Q_t] (s,a) - \mathcal{T}_\pi [Q^\ast] (s,a) \right\|_\infty \\\ & \leq \gamma \left \|Q_t - Q^\ast \right \|_\infty \\\ & = \gamma \left \|\Delta_t (s_t,a_t) \right\|_{\infty}. \end{align*}

続いてot(x)o_t(x)が有界であることを示す.

var[ot(x)]=E(r,s)p[(r+γmaxaQt(s,a)Q(s,a)Tπ[Qt](s,a)+Q(s,a))2] =E(r,s)p[(r+γmaxaQt(s,a)Tπ[Qt](s,a))2] =var[r+γmaxaQt(s,a)].\begin{align*} \text{var}[o_t(x)] & = \mathbb{E}_{(r,s') \sim p} \left[\left( r + \gamma \max_{a'}Q_{t}(s,a') - Q^\ast(s,a) - \mathcal{T}_{\pi} [Q_t] (s,a) + Q^\ast(s,a) \right)^2 \right] \\\ & = \mathbb{E}_{(r,s') \sim p} \left[\left( r + \gamma \max_{a'}Q_{t}(s,a') - \mathcal{T}_\pi [Q_t] (s,a) \right)^2 \right] \\\ & = \text{var} [ r + \gamma \max_{a'}Q_{t}(s,a')]. \end{align*}

報酬rrは有界なため,

var[ot(x)]C(1+Δt_2),C>0\text{var}[o_t(x)] \leq C(1 + \left \|\Delta_{t} \right \|\_{\infty}^{2}), \hspace{10pt} C > 0

であることが確認できた.さきほどの補題によりΔt\Delta_t は確率1でゼロに収束する.すなわち,QtQ_tは最適行動価値関数QQ^\astに確率1で収束する.

\blacksquare

Soft Bellman方程式は縮小作用素#

エントロピー正則化強化学習は筆者の中で話題になっています.この部分は追記程度に載せたいと思います.(追記なので口調を変えます)

一般的な強化学習ではリターンをGt=t=0γtrtG_t = \sum_{t=0}^{\infty} \gamma^t r_tとするのに対して、エントロピー正則化強化学習ではリターンをRt=t=0γtrt+τH(π(st))R_t = \sum_{t=0}^{\infty} \gamma^t r_t + \tau \mathcal{H}(\pi(\cdot|s_t))とします.このときτ\tauは温度(係数)であり、H(π(st))=aπ(ast)logπ(ast)\mathcal{H}(\pi(\cdot|s_t)) = -\sum_{a}\pi(a|s_t) \log \pi(a|s_t)です。後者はエントロピーとも呼ばれています.

特にどこかで言及されていたわけではないんですが,筆者はこの式を見て「ギブスの自由エネルギー」に似ているなと考えています.熱力学に詳しい方,教えてください.

続いて価値関数とsoft bellman作用素の定義をします(なぜこうなるかは,需要があれば別の記事で書きます)

Qπsoft(s,a)=Eπ,p[r0+t=1Tγt(rt+τH(π(st)))|s0=s,a0=a], Tπsoft[q](s,a)=E(r,s)p[r+γlogE_aπ[expq(s,a)]].\begin{align*} Q_\pi^{\text{soft}}(s, a) & = \mathbb{E_{\pi,p}} \left[r_0 + \sum_{t=1}^{T} \gamma^t (r_t + \tau \mathcal{H}(\pi(\cdot|s_t))) \middle| s_0 = s, a_0 = a \right], \\\ \mathcal{T}_{\pi}^{\text{soft}} [q] (s,a) & = \mathbb{E}_{(r,s') \sim p} \left[r + \gamma \log \mathbb{E}\_{a' \sim \pi}[\exp q(s', a')] \right]. \end{align*}

このsoft bellman作用素が縮小写像であることを証明します.

任意のq1,q2q_1, q_2に対してϵ=q1q2_\epsilon = \\| q_1 - q_2 \\|\_\inftyとする.exp\explog\logの単調性から次の不等式がわかる.

logEaπ[expq1(s,a)]logEaπ[exp(q2(s,a)+ϵ] =log(exp(ϵ)E_aπ[exp(q2(s,a)]) =ϵ+logE_aπ[exp(q2(s,a)]\begin{align*} \log \mathbb{E}_{a' \sim \pi}[\exp q_1(s', a')] & \leq \log \mathbb{E}_{a' \sim \pi}[\exp (q_2(s', a') + \epsilon] \\\ & = \log \left( \exp(\epsilon) \mathbb{E}\_{a' \sim \pi}[\exp (q_2(s', a')] \right) \\\ & = \epsilon + \log \mathbb{E}\_{a' \sim \pi}[\exp (q_2(s', a')] \end{align*}

T_πsoft[q1]T_πsoft[q2]\mathcal{T}\_{\pi}^{\text{soft}} [q_1] - \mathcal{T}\_{\pi}^{\text{soft}} [q_2](s,a)(s,a)に依らずγϵ\gamma \epsilonで押さえることができるので,左辺のmax\maxを取って

Tπsoft[q1]Tπsoft[q2]γq1q2\| \mathcal{T}_{\pi}^{\text{soft}} [q_1] - \mathcal{T}_{\pi}^{\text{soft}} [q_2] \|_\infty \leq \gamma \|q_1 - q_2 \|_\infty

となる.よって,Soft Bellman方程式は無限ノルムに対して縮小写像といえる.

\blacksquare
Q-learningの収束性について
https://fuwari.vercel.app/posts/2018-12-15-q-learning/
作者
1eon
公開日
2018-12-15
ライセンス
CC BY-NC-SA 4.0