1. 程式人生 > >強化學習基礎

強化學習基礎

gradient ieee function 最大化 pla sea algorithm lambda 等價

概念

強化學習需要學習一個從環境狀態到智能體行動的映射,稱為智能體的一個策略,使得強化回報最大化。其環境通常采用 MDP 來定義。

馬爾可夫決策過程:$MDP = \{ S, A, P, R \} $

  • 狀態轉移的回報函數$R: S\times A\times S \to R$
  • 狀態轉移的概率$P: S\times S\times A \to [0,1],\forall s\in S, \forall a\in A \sum_{s‘\in S}P(s‘|s,a)=1$
  • 部分可觀測 MDP :MDP+O+P(O|S),O 為觀測結果集合

一個平穩策略是一個確定的、時間無關函數$\pi:S\to A$

$Q^\pi(s,a)=\sum_{s‘\in S}P(s‘|s,a)[R(s,a,s‘)+\gamma V^\pi(s‘)]$,$\gamma$為折扣因子

$V^\pi(s)=Q^\pi(s,\pi(s)),V^\pi(s)$是狀態s下的回報期望值,$Q^\pi(s,a)$是狀態s下采取行動 a的回報期望值。

最優策略*:每個狀態選擇最大回報的動作。

  • $V^*(s)=\max_aQ^*(s,a),\pi^*(s)=\arg\max_aQ^*(s,a)$

動態規劃

已知P時,強化學習為確定的動態規劃算法

  • 值叠代:從V=0值開始,得到Q,最大化$\pi$,進而得到V的新值。
  • 策略叠代:從隨機策略$\pi$和V=0值開始,解V或Q方程得到V與Q的新值,再計算新的策略。

未知 P 時,可用隨機算法估計 P ,兩個等價的逼近公式。

  • 估計值公式:$A_k = \frac{1}{k}\sum v_k=A_{k-1} +\alpha_k(v_k-A_{k-1}),\alpha_k=\frac{1}{k},TD= v_k-A_{k-1}$稱為TD誤差。
  • Robbins-Monro 隨機逼近公式:$A_k =(1-\alpha_k)A_{k-1}+\alpha_kv_k$

$Q(\lambda=0)$學習,$\lambda$為步數。重復以下步驟:

  • 選擇執行一個動作a。為了保留探索的機會,$1-\epsilon$概率選擇非最大值。
  • 觀察回報r和狀態 s‘
  • $Q(s,a)\leftarrow Q(s,a)+\alpha(r+\max_{a‘}Q(s‘,a‘)-Q(s,a))$,策略a‘被選之後不一定執行,稱為off-policy
  • 采用值叠代時,為$TD(\lambda):V(s_t)=V(s_t)+\alpha(r_{t+1}+\gamma V(s_{t+1}))$
  • $s\leftarrow s‘$

$SARSA(\lambda=0)$學習,重復以下步驟:

  • 執行一個動作a,觀察回報r和狀態 s‘
  • 利用Q 的策略選擇 a‘
  • $Q(s,a)\leftarrow Q(s,a)+\alpha(r+Q(s‘,a‘)-Q(s,a))$,策略a‘被選之後必然會執行,稱為on-policy
  • $s\leftarrow s‘, a\leftarrow a‘$

擴展模型

隨著狀態空間維數的增加,動作空間的連續,計算復雜度指數增長,因此需要 V/Q 的低代價版本,通常的解決方案是函數逼近。

策略梯度方法

連續的動作空間使得$\max_{a‘}Q(s‘,a‘)$變得不切實際,PG采用可導函數逼近$Q$和$\pi$。

  • 把策略隨機化、參數化:$\pi(s,a,\theta)=P{a_t=a|s_t=s,\theta}$
  • 長期回報函數:$\rho(\pi)=E[\sum_t\gamma^{t-1}r_t|s_0,\pi]=\sum_a\pi(s_0,a)Q^\pi(s_0,a)$
  • 梯度定理:$\frac{\partial\rho}{\partial\theta}=\sum_sd^\pi(s)\sum_a\frac{\partial\pi(s,a)}{\partial\theta}Q^\pi(s,a),d^\pi(s)=\sum_t\gamma^tP\{s_t=s|s_0,\pi\}$

找到逼近$Q^\pi$的函數:$f_w:S\times A\to R$

然後通過梯度下降法,找到長期回報函數的極值:$\lim_{k\to\infty}\frac{\partial\rho(\pi_k)}{\partial\theta}=0$

DQN

DQN采用神經網絡逼近$Q^\pi$函數,$f_w:S\to A\times R$

損失函數為:$L_i(\theta)=E_{s,a\sim\rho}[y_i-Q(s,a;\theta_i)]^2,y_i=E_{s‘\sim\epsilon}[r+\gamma\max_{a‘}Q(s‘,s‘;\theta_{i-1}]$

算法特點:在Q算法中更新Q的時候,從緩沖池中,提取小批量序列計算Q‘;並且每C步用Q‘更新Q。

AlphaGo

技術特點

  • 策略網絡的有監督學習,得到權重初值
  • 策略網絡的強化學習,只有最後一步有回報,然後強化每一步的策略
  • 基於策略網絡,通過強化學習得到估值網絡
  • 采用蒙特卡洛樹來采樣。

AlphaGo Zero

  • 放棄有監督學習,采用單一網絡估計策略與價值,采用蒙特卡洛樹來采樣。

DDPG

針對連續動作空間

  • 回報函數:$J(\pi_\theta)=\int_S\rho(s)\int_A\pi_\theta(s,a)r(s,a)dads=E_{s\sim\rho^\pi,a\sim\pi_\theta}[r(s,a)$
  • DPG定理:$J(\mu_\theta)=\int_S\rho^\mu(s)r(s,\mu_\theta(s))ds=E_{s\sim\rho^\mu}[r(s,\mu_theta(s))]$

采用了兩個可優化部件:

  • Actor函數$\mu$近似$\pi$,利用采樣梯度優化。
  • Critic 網絡近似Q,損失函數:$L=\frac{1}{N}\sum_i(y_i-Q(s_i,a_i|\theta^Q)^2,y_i=r_i+\gamma Q‘(s_{i+1},\mu‘(s_{i+1}|\theta^{\mu‘})|\theta^{Q‘})$

DDPG是采用了DQN 的訓練技術的 DPG。

參考文獻

  1. Mozer S, M C, Hasselmo M. Reinforcement Learning: An Introduction[J]. IEEE Transactions on Neural Networks, 1992, 8(3-4):225-227.
  2. Sutton R S. Policy Gradient Methods for Reinforcement Learning with Function Approximation[J]. Submitted to Advances in Neural Information Processing Systems, 1999, 12:1057-1063.
  3. Simon Haykin, Neural Networks and Learning Machines (the 3rd edition), Pearson Eduction, Inc, 2009
  4. David L. Poole and Alan K. Mackworth: Artificial Intelligence: Foundations of Computational Agents, Cambridge University Press, 2010
  5. Mnih V, Kavukcuoglu K, Silver D, et al. Playing Atari with Deep Reinforcement Learning[J]. Computer Science, 2013.
  6. Silver D, Lever G, Heess N, et al. Deterministic policy gradient algorithms[C]// International Conference on International Conference on Machine Learning. JMLR.org, 2014:387-395.
  7. Lillicrap T P, Hunt J J, Pritzel A, et al. Continuous control with deep reinforcement learning[J]. Computer Science, 2015, 8(6):A187.
  8. Mnih V, Badia A P, Mirza M, et al. Asynchronous Methods for Deep Reinforcement Learning[J]. 2016.
  9. Silver D, Huang A, Maddison C J, et al. Mastering the game of Go with deep neural networks and tree search.[J]. Nature, 2016, 529(7587):484-489.
  10. Silver D, Schrittwieser J, Simonyan K, et al. Mastering the game of Go without human knowledge[J]. Nature, 2017, 550(7676):354-359.

強化學習基礎