【文獻閱讀】ES as a Scalable Alternative to RL(OpenAI 17)

wxmcp3發表於2020-09-23

Evolution Strategies as a Scalable Alternative to Reinforcement Learning

brief

文章連結
該文章是 Open AI 17年釋出的,目前有300+的引用量。

Abstract

【開篇明意】We explore the use of Evolution Strategies (ES), a class of black box optimization algorithms, as an alternative to popular MDP-based RL techniques such as Qlearning and Policy Gradients. 我們探索使用進化策略(ES),一類黑盒優化演算法,作為流行的基於MDP的RL技術(如Qlearning和Policy Gradients)的替代品。【卓越效能】Experiments on MuJoCo and Atari show that ES is a viable solution strategy that scales extremely well with the number of CPUs available: By using a novel communication strategy based on common random numbers, our ES implementation only needs to communicate scalars, making it possible to scale to over a thousand parallel workers. This allows us to solve 3D humanoid walking in 10 minutes and obtain competitive results on most Atari games after one hour of training.在MuJoCo和Atari上的實驗表明,ES是一種可行的解決策略,隨著可用CPU數量的增加,它的擴充套件性極好。通過使用基於公共隨機數的新型通訊策略,我們的ES實現只需要通訊標量,使得它有可能擴充套件到超過1000個並行workers。這使得我們可以在10分鐘內解決3D人形行走的問題,並在訓練一小時後獲得大多數Atari遊戲的競爭結果。【更多優點】 In addition, we highlight several advantages of ES as a black box optimization technique: it is invariant to action frequency and delayed rewards, tolerant of extremely long horizons, and does not need temporal discounting or value function approximation. 此外,我們還強調了ES作為一種黑盒優化技術的幾個優點:它對動作頻率和延遲獎勵不變,對極長的horizons有容忍度,並且不需要時空折現或價值函式逼近。

1 Introduction

第一段

【點明問題】開發能夠在複雜、不確定的環境中完成具有挑戰性任務的智慧體 agents 是人工智慧的一個關鍵目標。【最流行的方法RL】近年來,分析這類問題最流行的正規化是基於馬爾可夫決策過程(MDP)形式和價值函式概念的一類強化學習(RL)演算法。這種方法的成功包括從畫素點學習使用Atari的系統learn to play Atari from pixels【Mnih等人,2015年】、執行直升機特技飛行等perform helicopter aerobatics。[2006],或玩專家級圍棋 play expert-level Go [Silver等人,2016]。

第二段

【替代方法:黑盒優化】一種解決RL問題的方法是使用黑盒優化black-box optimization。這種方法被稱為直接策略搜尋 direct policy search [Schmidhuber and Zhao,1998],或神經進化 neuro-evolution [Risi和Togelius,2015],當應用於神經網路時。【本文】在本文中,我們研究進化策略(ES)[Rechenberg and Eigen,1973],這類演算法中的一組特殊的優化演算法。我們表明,ES可以reliably 可靠地訓練神經網路策略,in a fashion 其方式非常適合擴充套件 scaled to 到現代分散式計算機系統,用於控制MuJoCo物理模擬器中的機器人[Todorov等人,2012]和使用畫素輸入玩Atari遊戲[Mnih等人,2015]。

我們的主要發現如下:

  • 我們發現,使用虛擬批處理規範化 virtual batch normalization [Salimans等人,2016]和神經網路策略的其他重新引數化 reparameterizations of the nn policy(第2.2節)極大地提高了進化策略的可靠性reliability。在我們的實驗中,沒有這些方法ES被證明是脆弱的brittle,但是通過這些重新引數化,我們在各種各樣的環境中取得了很好的結果。
  • 我們發現進化策略方法具有高度的可並行性 highly parallelizable:通過引入一種新的基於公共隨機數common random numbers 的通訊策略 communication strategy,即使使用一千多個workers,我們也能夠在執行時實現線性加速 achieve linear speedups in run time。特別是in particular,使用1440名工人,我們已經能夠在不到10分鐘內解決MuJoCo 3D人形任務。
  • 進化策略的資料效率出人意料地好 the data efficiency of ES was surprisingly good:我們能夠在大多數Atari環境下匹配 match A3C的最終效能[Mnih等人,2016],同時使用了3到10倍的資料。由於不執行反向傳播和沒有值函式,所需計算量減少了大約3倍,這部分抵消了資料效率的輕微下降。The slight decrease in data efficiency is partly offset by a reduction in required computation of roughly 3x due to not performing backpropagation and not having a value function.我們1小時的ES結果所需的計算量與A3C釋出的1天結果大致相同,而在測試的23個遊戲中表現更好,在28個遊戲中表現更差。在MuJoCo任務中,我們能夠使用不超過10倍的資料來匹配 match 信任區域策略優化的學習策略效能[TRPO;Schulman et al.,2015]。
  • 我們發現ES比TRPO等策略梯度方法表現出更好的探索行為:在MuJoCo類人任務中,ES能夠學習非常廣泛的步態 gaits(例如側身行走或向後行走)。這些不尋常的步態從來沒有用TRPO觀測到,這表明了一種性質不同的勘探行為 whcih suggests a qualitatively different exploration behavior。
  • 我們發現進化策略方法是穩健的 robust:我們在所有的Atari環境中使用了固定的超引數 fixed hyperparameters,並且在所有的MuJoCo環境中使用了一組不同的固定超引數(除了一個二進位制超引數,在不同的MuJoCo環境中,這一點並不是恆定不變的)。

第三段

黑盒優化方法有幾個非常吸引人的特性:

  • 對報酬的分佈(稀疏或密集)無所謂,indifference to the distribution of rewards (sparse or dense)
  • 不需要反向傳播梯度, no need for backpropagating gradients
  • 以及對可能任意長時間範圍的容忍。tolerance of potentially arbitrarily long time horizons.

然而,與Q學習和策略梯度等技術相比,它們在解決棘手的RL問題方面的效率較低。這項工作的貢獻,我們希望這將重新引起人們對這類方法的興趣,並帶來新的有用的應用,它證明了進化策略可以在當今最困難的環境中與競爭的RL演算法競爭,而且這種方法可以擴充套件到更多的並行工作者。The contribution of this work, which we hope will renew interest in this class of methods and lead to new useful applications, is a demonstration that evolution strategies can be competitive with competing RL algorithms on the hardest environments studied by the deep RL community today, and that this approach can scale to many more parallel workers.

2 Evolution Strategies

進化策略(Evolution Strategies,ES)是一類受自然進化啟發的啟發式搜尋演算法:在每一次迭代(“生成”)中,一組引數向量(“基因型”)都會受到擾動(“變異”)並評估其目標函式值(“適應度”)。At every iteration (“generation”), a population of parameter vectors (“genotypes”) is perturbed (“mutated”) and their objective function value (“fitness”) is evaluated. 然後對得分最高的引數向量進行重組,以形成下一代的總體,然後迭代該過程,直到目標完全優化。這類演算法的不同之處在於它們如何表示種群以及如何執行變異和重組 mutation and recombination 。ES類中最廣為人知的成員是協方差矩陣自適應進化策略covariance matrix adaptation evolution strategy[CMA-ES;Hansen and Ostermeier,2001],它用全協方差多元高斯函式full-covariance multivariate Gaussian表示總體。CMA-ES在解決中低維的優化問題方面已經非常成功。
我們在這項工作中使用的ES版本屬於自然進化策略的一類,與Sehnke等人的工作密切相關。[2010年]。設F表示作用於引數 θ \theta θ 的目標函式。NES演算法用引數 p ψ ( θ ) p_{\psi}(\theta) pψ(θ) 上的分佈來表示種群–它本身的引數為 ψ \psi ψ–並通過隨機梯度上升搜尋 ψ \psi ψ來繼續最大化種群上的平均目標值 E θ ∼ p ψ F ( θ ) \mathbb E_{\theta\sim p_\psi}F(\theta) EθpψF(θ) 。具體地說specifically,以與REINFORCE相似的方式使用 ▽ ψ E θ ∼ p ψ F ( θ ) \bigtriangledown_\psi\mathbb E_{\theta\sim p_\psi}F(\theta) ψEθpψF(θ) 的得分函式估計器[Williams,1992],NES演算法對以下估計器採取梯度步驟:
梯度
For the special case where p ψ p_{\psi} pψ is factored Gaussian 對於 p ψ p_{\psi} pψ is factored Gaussian 的特殊情況(如本文所述),得到的梯度估計量也被稱為同步擾動隨機逼近simultaneous perturbation stochastic approximation[Spall,1992]、引數化策略梯度parameterexploring
policy gradients [Sehnke等人,2010]或零階梯度估計zero-order gradient estimation [Nesterov and Spokoiny,2011]。
在這項工作中,我們關注RL問題,因此 F ( . ) F(.) F(.)將是環境提供的隨機回報, θ \theta θ 將是一個確定性或隨機策略的引數 π θ \pi_\theta πθ,該策略描述了一個在該環境中活動的agent,由離散或連續的行為控制。RL演算法的許多創新都集中在解決環境或政策的衍生工具的缺乏或存在的問題上。這種非光滑性可以用ES解決,如下所示。我們將總體分佈 p ψ p_{\psi} pψ 例項化為具有均值 mean ψ \psi ψ 和固定協方差 σ 2 I \sigma^2I σ2I 的各向同性多元高斯分佈 isotropic multivariate Gaussian,允許我們直接根據均值 mean 引數向量 θ \theta θ 寫出 E θ ∼ p ψ F ( θ ) \mathbb E_{\theta\sim p_\psi}F(\theta) EθpψF(θ) :we set 設定
通過這種設定with this setup,我們的隨機目標stochastic objective 可以看作是原始目標F的高斯模糊版本 Gaussian-blurred version,free of non-smoothness introduced by the environment or potentially discrete actions taken by the policy不受環境或策略所採取的潛在離散行動影響的非平穩性。關於ES和策略梯度方法如何處理非光滑性的進一步討論可以在第3節中找到。
在我們的目標定義為 θ \theta θ 的情況下,我們直接使用隨機梯度上升和分數函式估計來優化 θ \theta θ
梯度計算
which can be approximated with samples 可以用樣本來近似。得到的演算法(1)重複執行兩個階段:1)隨機擾動策略的引數並通過在環境中執行一個 episode 來評估得到的引數;2)將這些 episodes 的結果合併,計算隨機梯度估計,並更新引數。The resulting algorithm (1) repeatedly executes two phases: 1) Stochastically perturbing the parameters of the policy and evaluating the resulting parameters by running an episode in the environment, and 2) Combining the results of these episodes, calculating a stochastic gradient estimate, and updating the parameters.
algorithm1

2.1 Scaling and parallelizing ES

ES很適合擴充套件到許多並行工人parallel workers。1)它對完整的 episodes 進行操作,thereby 因此只需要workers 之間進行不頻繁infrequent communication 的通訊。2)每個worker獲得的唯一資訊是一個episode 的標量返回 scalar return :如果我們在優化前同步synchronize worker之間的隨機種子random seeds,每個worker都知道其他worker使用了什麼擾動,因此每個worker只需要與其他worker之間通訊一個標量就可以達成引數更新。因此,ES需要極低的頻寬 extremely low bandwidth,與策略梯度方法形成鮮明對比 in sharp contrast to,後者需要工友溝通整個梯度 which require workers to communicate entire gradients。3)它不需要價值函式逼近。帶有價值函式估計的RL本質上是連續的 inherently sequential 。為了改進給定的策略,通常需要對價值函式進行多次更新,以獲得足夠的訊號。每當策略發生重大變化時,價值函式估計需要多次迭代才能趕上。
演算法2中給出了ES的一個簡單的並行版本。這裡的主要創新之處在於,該演算法使用了共享的隨機種子 shared random seeds,這大大降低了工人之間通訊所需的頻寬 which drastically reduces the bandwidth required for communication between the workers。
algorithm 2
在實踐中,我們通過讓每個工人在訓練開始時例項化 instantiate 一大塊高斯噪聲來實現取樣,然後通過在每次迭代中新增這些噪聲變數的隨機索引子集來擾動其引數。儘管這意味著擾動在迭代中並不是嚴格獨立的,但我們在實踐中並沒有發現這是一個問題。使用這種策略,我們發現演算法2的第二部分(第9-12行)只佔我們所有實驗總時間的一小部分,即使使用多達1440個並行工作器。當使用更多的workers ,或者使用非常大的神經網路時,我們可以通過讓 workers 只擾動引數 θ \theta θ 的一個子集,而不是所有的引數,來減少這部分演算法所需的計算量。在這種情況下,擾動分佈 p ψ p_\psi pψ 對應於高斯的混合物,對其更新方程保持不變。在最極端的情況下 at the very extreme,每個worker 只擾動引數向量的一個座標,這意味著我們將使用純有限差分 which means that we could be using pure finite differences.
為了減少方差,我們使用反抽樣 antithetic sampling Geweke[1988],也就是ES文獻中的映象抽樣Brockhoff等[2010]:即我們總是對高斯噪聲向量 ϵ \epsilon ϵ 評估一對擾動 ϵ \epsilon ϵ , − ϵ -\epsilon ϵ 。我們還發現,在計算每個引數更新之前,通過對返回值進行秩位變換 rank transformation,執行fitness shaping 適應度值調整 Wierstra等人[2014]是有用的。這樣做可以消除每個種群中離群個體 outlier individuals 的影響,並降低 ES 在訓練早期陷入區域性最優值的傾向。此外,我們對政策網路的引數應用了權重衰減 weight decay:與擾動相比,這可以防止引數變得非常大。this prevents the parameters from growing very large compared to the perturbations.。
不像Wierstra等人。[2014]我們沒有看到在訓練期間適應 σ \sigma σ 的好處,因此我們將其視為一個固定的超引數 fixed hyperparameter。我們直接在引數空間中進行優化;探索間接編碼 indirect encodings Stanley等人。[2009年],van Steenkiste等人。[2016]將留待未來工作。
如上所述,進化策略適用於 full-length episodes 。在一些罕見的情況下,這可能導致低CPU利用率,因為某些 episodes 比其他事件執行更多的步驟。基於這個原因,我們將所有工人的事件長度限制在一個恆定的m步數上,隨著培訓的進行,我們會動態調整。例如,通過將m設定為每集平均步驟數的兩倍,我們可以保證在最壞的情況下CPU利用率保持在50%以上。

2.2 The impact of network parameterization

第一段:引數擾動——better return

然而,像 Q-learning 和策略梯度這樣的RL演算法是通過隨機策略的抽樣行為來探索的,而進化策略則是從策略引數的抽樣例項化中獲得學習訊號。因此,在ES中的探索是由引數攝動驅動的。為了使ES改進引數 θ \theta θ ,種群中的某些成員必須獲得比其他成員更好的回報:即高斯擾動向量 ϵ \epsilon ϵ 偶爾會導致新的個體 θ + σ ϵ \theta+\sigma\epsilon θ+σϵ 具有更好的回報。

第二段:虛擬批處理規範化 virtual batch normalization

對於Atari環境,我們發現 DeepMind 卷積架構上convolutional architectures的高斯引數擾動 Gaussian parameter perturbations【Mnih等人,2015年】並不總是導致充分的探索:對於某些環境,隨機擾動引數傾向於編碼策略,這些策略總是採取一種特定的行動,而不管作為輸入的狀態是什麼。然而,我們發現,通過在策略規範中使用虛擬批處理規範化[Salimans等人,2016],我們可以匹配大多數遊戲的策略梯度方法的效能。然而,我們發現,通過在策略規範中使用虛擬批處理規範化[Salimans等人,2016],我們可以匹配大多數遊戲的策略梯度方法的效能。虛擬批次標準化與批次標準化完全等價[Ioffe and Szegedy,2015],其中用於計算規範化統計資料的小批量在培訓開始時選擇並固定。引數化的這種變化使得策略在訓練的早期階段對輸入影像中的非常小的變化更加敏感,而此時策略的權重是隨機的,從而確保策略採取足夠多的動作來獲得偶爾的獎勵 gather occasional rewards。對於大多數應用,虛擬批處理規範化的一個缺點是它使培訓成本更高 a downside of virtual batch normalization is that it makes training more expensive。然而,對於我們的應用,用於計算規範化統計資訊的 minibatch 比在一個典型 episode 中採取的步驟數要小得多,這意味著開銷可以忽略不計 meaning that the overhead is negligible。

第三段:動作離散化——more exploration

對於MuJoCo任務,通過標準多層感知器對映到連續動作,我們在幾乎所有的環境中都取得了良好的效能。然而,我們觀察到,對於某些環境,我們可以通過將操作離散化來鼓勵更多的探索。這就迫使動作在輸入觀察值和引數擾動方面變得不平滑 non-smooth,從而鼓勵在 rollouts 過程中執行各種各樣的行為。

3 Smoothing in parameter space versus smoothing in action space 引數空間中的平滑與動作空間中的平滑

如第2節所述,RL中的一個很大的困難源於缺乏策略效能的資訊梯度:由於環境或策略的非平穩性 non-smoothness,這種梯度可能不存在,或者可能僅作為高方差估計值 high-variance estimates 可用,因為環境通常只能通過取樣獲得because the environment usually can only be accessed via sampling。顯式地 Explicitly,假設我們希望解決一般的決策問題,在我們採取一系列動作actions a = { a 1 , . . . , a T } a= \{a_1, ...,a_T\} a={a1,...,aT} 後給出一個回報 R ( a ) R(a) R(a),其中 actions 由一個確定的或隨機的策略函式 a t = π ( s , θ ) a_t=\pi(s, \theta) at=π(s,θ) 決定 。我們要優化的目標是
F ( θ ) = R ( a ( θ ) ) F(\theta)=R(a(\theta)) F(θ)=R(a(θ))
由於允許動作 actions 是離散的,策略是確定性的,所以 F ( θ ) F(\theta) F(θ) θ \theta θ 上可以是非光滑的 non-smooth。 更重要的是,由於我們沒有明確地訪問決策問題的底層狀態轉換函式,所以不能用類似反向傳播的演算法來計算梯度。這意味著我們不能直接使用標準的基於梯度的優化方法來為 θ \theta θ找到一個好的解決方案。

在動作空間加噪聲

為了使問題變得平滑 smooth,並有一種估計其梯度的方法,我們需要新增噪聲 add noise。策略梯度法在行動空間中 action space 加入了噪聲,它是通過從一個適當的分佈中取樣行動來完成的 which is done by sampling the actions from an appropriate distribution。例如,如果動作是離散的, π ( s ; θ ) \pi(s;\theta) π(s;θ) 在選擇最佳動作之前計算每個動作的得分,那麼我們將從每個時間段動作的類別分佈中取樣sample 動作 a ( ϵ , θ ) a(\epsilon, \theta) a(ϵ,θ)(這裡 ϵ \epsilon ϵ是噪聲源),對每個動作的得分應用softmax applying a softmax to the scores of each action。Doing so yields the objective F P G ( θ ) = E ϵ R ( a ( ϵ , θ ) ) F_{PG}(\theta)=\mathbb{E_\epsilon}R(a(\epsilon,\theta)) FPG(θ)=EϵR(a(ϵ,θ)), with gradients
tidu

在引數空間加噪聲

另一方面,進化策略在引數空間parameter space 中增加了噪聲。That is, they perturb the parameters as θ ~ = θ + ξ \tilde{\theta}=\theta+\xi θ~=θ+ξ,with ξ \xi ξ from a multivariate Gaussian distribution 其中 ζ \zeta ζ 來自多維高斯分佈,and then pick actions as a t = a ( ξ , θ ) = π ( s ; θ ~ ) a_t=a(\xi, \theta)=\pi(s; \tilde{\theta}) at=a(ξ,θ)=π(s;θ~)。它可以解釋為在原始目標上新增高斯模糊,從而導致平滑的、可微的代價It can be interpreted as adding a Gaussian blur to the original objective, which results in a smooth, differentiable cost F E S ( θ ) = E ξ R ( a ( ξ , θ ) ) F_{ES}(\theta)=\mathbb{E_\xi}R(a(\xi,\theta)) FES(θ)=EξR(a(ξ,θ)), this time with gradients
tidu2
The two methods for smoothing the decision problem are thus quite similar, and can be made even more so by adding noise to both the parameters and the actions. 因此,這兩種平滑決策問題的方法頗為相似,可以通過在引數和動作中加入噪聲使之更加平滑。

3.1 When is ES better than policy gradients?

Given these two methods of smoothing the decision problem, which should we use? The answer depends strongly on the structure of the decision problem and on which type of Monte Carlo estimator is used to estimate the gradients
考慮到這兩種平滑決策問題的方法,我們應該使用哪種方法?答案很大程度上取決於決策問題的結構以及使用哪種蒙特卡羅估計量來估計梯度 ▽ θ F P G ( θ ) \bigtriangledown_{\theta}F_{PG}(\theta) θFPG(θ) ▽ θ F E S ( θ ) \bigtriangledown_{\theta}F_{ES}(\theta) θFES(θ) 。 假設收益率和個體行為之間的相關性很低correlation between the return and the individual actions is low(對於任何困難的RL問題都是如此)。假設我們使用簡單的蒙特卡羅simple Monte Carlo(REINFORCE)近似這些梯度,並且在返回時有一個良好的基線with a good baseline on the return,我們有
方差
如果兩種方法執行的探索量相似,則兩個表示式的 V a r [ R ( a ) ] Var[R(a)] Var[R(a)] 將相似。因此,the difference will thus be in the second term。Here we have that ▽ θ l o g p ( a ; θ ) = ∑ t = 1 T ▽ θ l o g p ( a t ; θ ) \bigtriangledown_{\theta}logp(a;\theta)=\sum_{t=1}^T\bigtriangledown_{\theta}logp(a_t;\theta) θlogp(a;θ)=t=1Tθlogp(at;θ) is a sum of T uncorrelated terms 是T個不相關項的總和, so that the variance of the policy gradient estimator will grow nearly linearly with T.因此,策略梯度估計的方差將與T近似線性增長。The corresponding term for evolution strategies ▽ θ l o g p ( θ ~ ; θ ) \bigtriangledown_{\theta}logp(\tilde{\theta};\theta) θlogp(θ~;θ), is independent of T. 進化策略的對應項 ▽ θ l o g p ( θ ~ ; θ ) \bigtriangledown_{\theta}logp(\tilde{\theta};\theta) θlogp(θ~;θ) 與T無關。因此,與具有非常多時間步的長事件long episode 的策略梯度相比,進化策略將具有優勢。【方法一】在實際應用中,策略梯度法通常通過對獎勵進行折現來減少有效步驟T。In practice, the effective number of steps T is often reduced in policy gradient methods by discounting rewards.如果動作的效果是短暫的,這就允許我們顯著地減少梯度估計中的方差,這對Atari遊戲等應用的成功至關重要。If the effects of actions are short-lasting, this allows us to dramatically reduce the variance in our gradient estimate, and this has been critical to the success of applications such as Atari games。然而,如果行動有長期的影響,這種折扣會使我們的梯度估計產生偏差。【方法二】另一種降低有效T值的策略是使用值函式逼近value function approximation。這也是有效的,但再次冒著使我們的梯度估計產生偏差的風險runs the risk of biasing our gradient estimates。【結論】因此,如果有效的時間步數T很長,行為具有長期的影響,並且沒有好的價值函式估計,進化策略是一個有吸引力的選擇。

3.2 Problem dimensionality

ES的梯度估計可以解釋為高維空間中隨機有限差分的一種方法。事實上,利用以下事實 E ϵ ∼ N ( 0 , I ) { F ( θ ) ϵ / σ } = 0 \mathbb{E}_{\epsilon\sim N(0,I)}\{F(\theta)\epsilon/\sigma\}=0 EϵN(0,I){F(θ)ϵ/σ}=0, we get 我們可以得到
tidu3
現在很明顯,ES 可以看作是在隨機選擇的方向上計算有限差分導數估計,特別是當 σ \sigma σ 變小時。ES與有限差分法的相似性表明,該方法在引數 θ \theta θ 的維數下伸縮性較差。The resemblance of ES to finite differences suggests the method will scale poorly with the dimension of the parameters θ \theta θ . 理論分析表明,對於一般的非光滑優化問題,所需的優化步數與維數成線性關係 Theoretical analysis indeed shows that for general non-smooth optimization problems, the required number of optimization steps scales linearly with the dimension [Nesterov and Spokoiny, 2011]. 然而,需要注意的是,這並不意味著在使用ES進行優化時,較大的神經網路會比較小的網路表現更差:重要的是優化問題的難度,或者說內在維度。為了看到我們模型的維度可以與優化問題的有效維度完全分開,考慮一個迴歸問題,我們用線性模型 y ^ = x ⋅ w \hat{y}=x\cdot{w} y^=xw 來逼近一個單變數y:如果我們通過將x與自身連在一起(即使用特徵 x ′ = ( x , x ) x'=(x, x) x=(x,x),將這個模型中的特徵和引數數量增加一倍,問題並不會變得更加困難。The ES algorithm will do exactly the same thing when applied to this higher dimensional problem, as long as we divide the standard deviation of the noise by two, as well as the learning rate.ES演算法在應用於這種高維問題時,只要我們將噪聲的標準差除以二,以及學習率,就能做到完全一樣。
In practice, we observe slightly better results when using larger networks with ES. For example, we tried both the larger network and smaller network used in A3C [Mnih et al., 2016] for learning Atari 2600 games, and on average obtained better results using the larger network. We hypothesize that this is due to the same effect that makes standard gradient-based optimization of large neural networks easier than for small ones: large networks have fewer local minima [Kawaguchi, 2016].在實踐中,我們觀察到當使用更大的網路和ES時,效果稍好一些。例如,我們嘗試了A3C[Mnih et al.,2016]中使用的較大網路和較小網路來學習Atari 2600遊戲,平均而言,使用較大的網路取得了更好的效果。我們假設這是由於同樣的影響,使得基於梯度的標準優化大型神經網路比小型神經網路更容易:大型網路具有更少的區域性極小值【Kawaguchi,2016年】。

3.3 Advantages of not calculating gradients

第一段

除了易於並行化,以及在具有長動作序列和延遲獎勵的情況下具有優勢外,像ES這樣的黑盒優化演算法比計算梯度的RL技術還有其他優勢。在分散式環境中實現ES的通訊開銷比策略梯度和Q-learning等競爭RL方法要低,因為需要在各程式間通訊的唯一資訊是標量返回和用於生成擾動 ϵ \epsilon ϵ 的隨機種子,而不是完整的梯度。另外,ES可以處理最大限度的稀疏和延遲獎勵;只使用一個情節的總回報,而其他方法則使用單個獎勵及其確切的時間。
In addition to being easy to parallelize, and to having an advantage in cases with long action sequences and delayed rewards, black box optimization algorithms like ES have other advantages over RL techniques that calculate gradients. The communication overhead of implementing ES in a distributed setting is lower than for competing RL methods such as policy gradients and Q-learning, as the only information that needs to be communicated across processes are the scalar return and the random seed that was used to generate the perturbations ϵ \epsilon ϵ, rather than a full gradient. Also, ES can deal with maximally sparse and delayed rewards; only the total return of an episode is used, whereas other methods use individual rewards and their exact timing.

第二段

由於不需要反向傳播,黑盒優化器將每集的計算量減少了大約三分之二,記憶體則可能減少更多。此外,not explicitly 不顯式地計算分析梯度analytical gradient可以防止使用遞迴神經網路recurrent neural networks時常見的爆炸梯度exploding gradients問題。通過在引數空間中平滑成本函式,我們減少了導致這些問題的病態曲率:足夠平滑的有界成本函式不可能有爆炸性的梯度。By smoothing the cost function in parameter space, we reduce the pathological curvature that causes these problems: bounded cost functions that are smooth enough can’t have exploding gradients. 在極端情況下At the extreme,ES允許我們將不可微分的元素融入到我們的架構中,比如使用硬關注的模組。 ES allows us to incorporate non-differentiable elements into our architecture, such as modules that use hard attention [Xu et al., 2015].

第三段

黑盒優化方法獨特地適用於深度學習的低精度硬體。低精度的算術Low precision arithmetic,如二進位制神經網路中,可以比高精度的算術便宜得多。在優化這種低精度架構時,使用基於梯度的方法時,有偏差的低精度梯度估計可能是一個問題。同樣,在使用ES進行優化時,可以直接使用神經網路推理的專用硬體,如TPU[Jouppi等人,2017],而其有限的記憶體通常使得backpropagation 反向傳播不可能實現。

第四段

通過在引數空間而不是行動空間中進行擾動,黑盒優化器對我們的代理在環境中的行動頻率自然是不變的 black box optimizers are naturally invariant to the frequency at which our agent acts in the environment。另一方面,對於基於MDP的強化學習演算法來說,眾所周知,frameskip是優化成功的關鍵引數,要搞好這個引數[Braylan等,2005]。While this is usually a solvable problem for games that only require short-term planning and action, it is a problem for learning longer term strategic behavior.雖然這對於只需要短期計劃和行動的遊戲來說,通常是一個可以解決的問題,但對於學習長期的戰略行為來說,卻是一個問題。對於這些問題,RL需要層次結構 hierarchy才能成功[Parr和Russell,1998],而在使用黑盒優化時,就沒有那麼必要了。

4 Experiments

4.1 MuJoCo

第一段:平臺,要對比的演算法

我們在OpenAI Gym的連續機器人控制問題的基準上對ES進行了評估,並與高度調整的信任區域策略優化(Trust Region Policy Optimization)的實現進行了對比,信任區域策略優化是一種旨在高效優化神經網路策略的策略梯度演算法。我們在經典問題上進行了測試,比如平衡一個倒立的鐘擺,以及最近文獻中發現的更困難的問題,比如學習二維跳動和行走步態。這些環境都是由MuJoCo模擬的。We evaluated ES on a benchmark of continuous robotic control problems in the OpenAI Gym against a highly tuned implementation of Trust Region Policy Optimization, a policy gradient algorithm designed to efficiently optimize neural network policies. We tested on both classic problems, like balancing an inverted pendulum, and more difficult ones found in recent literature, like learning 2D hopping and walking gaits. The environments were simulated by MuJoCo .

第二段:網路結構和任務

We used both ES and TRPO to train policies with identical architectures: multilayer perceptrons with two 64-unit hidden layers separated by tanh nonlinearities. We found that ES occasionally benefited from discrete actions, since continuous actions could be too smooth with respect to parameter perturbation and could hamper exploration (see section 2.2). For the hopping and swimming tasks, we discretized the actions for ES into 10 bins for each action component.我們使用ES和TRPO來訓練具有相同架構的策略:具有兩個64個單元隱藏層的多層感知器,由tanh非線性分隔。我們發現,ES偶爾會從離散動作中受益,因為連續動作對於引數擾動可能過於平滑,可能會阻礙探索(見2.2節)。對於跳躍hopping 和游泳swimming 任務,我們將ES的動作分解為10個動作單元。
我們發現,ES在經過500萬次的環境互動後,能夠解決這些任務,達到TRPO的最終效能。為了得到這個結果,我們在6個隨機種子上執行ES,並將平均學習曲線與TRPO類似計算的曲線進行比較。To obtain this result, we ran ES over 6 random seeds and compared the mean learning curves to similarly computed curves for TRPO. 學習過程中具體的樣本複雜度權衡exact sample complexity tradeoffs 見表1,詳細結果見附錄表3。一般來說,在硬環境(Hopper和Walker2d)上,與TRPO相比,我們能夠在樣本複雜度上以小於10倍的懲罰來解決環境。在簡單環境上,我們取得了比TRPO高3倍的樣本複雜度。
Table1:MuJoCo tasks: Ratio of ES timesteps to TRPO timesteps needed to reach various percentages of TRPO’s learning progress at 5 million timesteps. MuJoCo任務:為達到500萬次TRPO學習進度的不同百分比所需的ES次數與TRPO次數之比。
表1

4.2 Atari

我們在OpenAI Gym中提供的51個Atari 2600遊戲上執行了演算法2中描述的進化策略的並行實現。我們使用了Mnih等[2016]使用的相同的預處理和前饋CNN架構。所有的遊戲都進行了10億幀的訓練,這與A3C公佈的1天結果使用3.2億幀的神經網路計算量差不多。不同的是由於ES不進行反向傳播,不使用值函式。通過在亞馬遜EC2上的720個CPU上並行評估擾動引數,我們可以將每場比賽的訓練過程所需的時間降低到1小時左右。訓練結束後,我們將最終效能與已公佈的A3C結果進行了對比,發現ES在測試的23款遊戲中表現較好,而在28款遊戲中表現較差。完整的結果見補充材料中的表2。

4.3 Parallelization

由於ES對通訊頻寬的要求較低,因此它特別適合於並行化(2.1節)。我們實現了演算法2的分散式版本,以研究ES如何隨著工人數量的增加而伸縮。我們的分散式實現不依賴於特殊的網路設定,並在公共雲端計算服務Amazon EC2上進行了測試。ES is particularly amenable to parallelization because of its low communication bandwidth requirement (Section 2.1). We implemented a distributed version of Algorithm 2 to investigate how ES scales with the number of workers. Our distributed implementation did not rely on special networking setup and was tested on public cloud computing service Amazon EC2.
我們從OpenAI Gym [Brockman等人,2016]中選取了3D Humanoid行走任務作為我們縮放實驗 scaling experiment 的測試問題,因為它是用最先進的RL技術 state-of-the-art RL techniques 解決的最具挑戰性的連續控制問題之一,which require about a day to learn on modern hardware在現代硬體上需要大約一天的時間來學習[Schulman等人,2015,Duan等人,2016a]。在一臺18核機上用ES解決3D Humanoid需要約11小時,與RL相當。Solving 3D Humanoid with ES on one 18- core machine takes about 11 hours, which is on par with RL. 然而,當分佈在80臺機器和1440個CPU核時,ES僅需10分鐘就能解決3D Humanoid,將實驗週轉時間縮短了兩個數量級。圖1顯示,對於這個任務,ES能夠實現CPU核數的線性加速。However, when distributed across 80 machines and 1, 440 CPU cores, ES can solve 3D Humanoid in just 10 minutes, reducing experiment turnaround time by two orders of magnitude. Figure 1 shows that, for this task, ES is able to achieve linear speedup in the number of CPU cores.
圖1和圖2
Figure1:在不同CPU核數的情況下,在3D Humanoid上達到6000分的時間。實驗重複7次,報告中位時間。
Figure2:使用不同的跳幀引數,Pong的學習曲線。雖然效能是隨機的,但每個設定都會導致大約同樣快速的學習,每次執行在大約100個權重更新中收斂。

4.4 Invariance to temporal resolution

在RL中,通常的做法是讓代理以比執行環境的模擬器更低的頻率來決定其動作。這個動作頻率,或稱跳幀 This action frequency, or frame-skip, is a crucial parameter in many RL algorithms,是許多RL演算法中的一個關鍵引數。如果幀跳轉設定得過高,代理就無法在足夠細的時間框架內做出決策,無法在環境中很好地發揮作用。另一方面,如果幀跳 frameskip 轉設定得過低,則會使episode 的有效時間長度增加太多,從而惡化優化效能deteriorates optimization performance,這在3.1節中已經分析過。ES的一個優點是它的梯度估計對 episode 的長度是不變的 invariant to the length of the episode,,這使得它對動作頻率更加穩健 which makes it much more robust to the action frequency。我們通過在{1,2,3,4}中使用跳幀引數執行Atari遊戲Pong來證明這一點。從圖2中可以看出,每種設定的學習曲線確實看起來非常相似。

5 Related work

已經有很多人嘗試應用ES的相關方法來訓練神經網路Risi和Togelius[2015]。對於Atari,Hausknecht等人[2014]獲得了令人印象深刻的結果。Sehnke等人[2010]提出了一種與我們工作中研究的方法密切相關的方法。Koutník等人[2013,2010]和Srivastava等人[2012]也同樣將一種ES方法應用於具有視覺輸入的RL問題,但其中策略被以多種不同的方式壓縮。自然演化策略已經成功地應用於黑盒優化Wierstra等[2008,2014],以及迴圈神經網路中迴圈權重的訓練Schmidhuber等[2007]。Stulp和Sigaud[2012]探討了類似的黑盒優化方法。最近Usunier等人[2016]探索了一種有趣的黑盒優化和策略梯度方法的混合體。Hyper-Neat Stanley等人[2009]是一種同時演化神經網路的權重和引數的替代方法。Duchi等[2015]、Nesterov[2012]也分析了在convex setting 凸性環境下的無導數 derivative free optimization methods 優化方法。
Natural evolution strategies has been successfully applied to black box optimization Wierstra et al. [2008, 2014], as well as for the training of the recurrent weights in recurrent neural networks Schmidhuber et al. [2007]. Stulp and Sigaud [2012] explored similar approaches to black box optimization.
An interesting hybrid of black-box optimization and policy gradient methods was recently explored by Usunier et al. [2016].
Hyper-Neat Stanley et al. [2009] is an alternative approach to evolving both the weights of the neural networks and their parameters. Derivative free optimization methods have also been analyzed in the convex setting Duchi et al. [2015], Nesterov [2012].
我們工作中的主要貢獻在於表明這一類演算法在分散式硬體上的使用具有極高的可擴充套件性和效率。我們已經證明,ES在精心實現後,在當今最難解決的問題上,在效能上與競爭的RL演算法具有競爭力,在資料效率上也令人驚訝地接近,同時需要更少的掛鐘時間wallclock time來訓練。

6 Conclusion

【和摘要一樣】我們已經探索了進化策略,這是一類黑盒優化演算法,作為流行的基於MDP的RL技術(如Q-learning和政策梯度)的替代方案。在Atari和MuJoCo上的實驗表明,它是一個可行的選擇,具有一些吸引人的特點:它對行動頻率和延遲獎勵不變,而且它不需要時間折扣或價值函式逼近。最重要的是,ES是高度可並行的,這使得我們可以通過擴充套件到更多的並行工作者來彌補資料效率的降低。
【未來的研究方向展望】在未來的工作中,我們計劃將進化策略應用於那些基於MDP的強化學習不太適合的問題:時間跨度長、獎勵結構複雜的問題long time horizons and complicated reward structure。我們對元學習(meta-learning)或學習到學習(learning-to-learn)特別感興趣。Duan等人[2016b]給出了RL環境下元學習的概念證明。使用黑盒優化,我們希望能夠擴充套件這些結果。我們還計劃研究將ES與快速的低精度神經網路實現相結合,以充分利用ES的無梯度特性。We also plan to examine combining ES with fast low precision neural network implementations to fully make use of the gradient-free nature of ES.

詞彙

in sharp contrast to 與……形成鮮明對比
In practice, we implement sampling by having each worker instantiate a large block of Gaussian noise at the start of training, and then perturbing its parameters by adding a randomly indexed subset of these noise variables at each iteration. 在實踐中,我們通過讓每個worker在訓練開始時例項化一大塊高斯噪聲來實現取樣,然後在每次迭代時通過新增這些噪聲變數的隨機索引子集來擾動其引數。
antithetic sampling 對偶抽樣,also known as mirrored sampling 映象取樣
a downside of virtual batch normalization is that it makes training more expensive 虛擬批處理規範化的一個缺點是它使培訓成本更高
More importantly, because we do not have explicit access to the underlying state transition function of our decision problems, the gradients cannot be computed with a backpropagation-like algorithm. This means we cannot directly use standard gradient-based optimization methods to find a good solution for θ \theta θ. 更重要的是,由於我們沒有明確地訪問決策問題的底層狀態轉換函式,所以不能用類似反向傳播的演算法來計算梯度。這意味著我們不能直接使用標準的基於梯度的優化方法來為 θ \theta θ找到一個好的解決方案。

相關文章