視頻 | NIPS 2017線上分享第一期:新型強化學習算法ACKTR

 2017-11-10 12:27:00.0

原標題:視頻 | NIPS 2017線上分享第一期:新型強化學習算法ACKTR

上週我們發佈了《攻略 | 雖然票早已被搶光,你可以從機器之心關注 NIPS 2017》,在 NIPS 2017 正式開始前,我們將選出數篇優質論文,邀請論文作者來做線上分享,聊聊理論、技術和研究方法。11 月 8 日,第一期分享已經結束。

週三晚上,多倫多大學三年級博士生 Yuhuai Wu(吳宇懷)爲大家分享了 NIPS 2017 論文《Scalable trust-region method for deep reinforcement learning using Kronecker-factored approximation》。以下是本期視頻回顧:

本期分享 PPT 下載:https://pan.baidu.com/s/1bp4hqFX

ACKTR(音同「actor」,Actor Critic using Kronecker-factored Trust Region)是由多倫多大學和紐約大學的研究者聯合開發的新算法。OpenAI 與其合作實現代碼開源。作者在論文中展示 ACKTR 算法可以學習模擬機器人(以像素作爲輸入,連續的動作空間)和 Atari 遊戲(以像素作爲輸入,離散的動作空間)的控制策略。

  • 代碼:https://github.com/openai/baselines

  • 論文:https://arxiv.org/abs/1708.05144

ACKTR 可以學習連續性控制任務。比如僅僅根據低像素的輸入,把一個機器手臂移動到目標位置(左圖)。

ACKTR 融合了三種不同的技術:以 actor-critic 算法爲基礎,加上 TRPO 來保證穩定性,同時融入了提升樣本效率和可擴展性的分佈式 Kronecker 因子分解(Kronecker factorization)。

樣本與計算複雜度

對於機器學習算法,主要需考慮兩個因素:樣本複雜度與計算複雜度。樣本複雜度指智能體學習任務所需與環境交互的次數,計算複雜度指算法每步更新必需執行操作量。

ACKTR 比一階方法如 A2C 有更好的樣本複雜度,因爲其使用自然梯度的方向而不是普通梯度方向來迭代。自然梯度給出了在參數空間中,每個網絡的輸出分佈的單位變化下,改善目標函數的最優方向。通過限制 KL 離散度,我們確保新策略的行爲與舊策略差別不大,以防止訓練的損毀。

至於 ACKTR 的計算複雜度,因爲其使用計算非常高效的 K-FAC 算法來估算自然梯度,所以 ACKTR 的每個更新步僅比標準梯度算法慢 10% 到 25%。之前的自然梯度算法,例如 TRPO(Hessian-free optimization)則需要非常昂貴的共軛梯度計算,致使其每步計算所需時間非常長。

下面兩個視頻中,你可以看到在 Q-Bert 遊戲中使用 ACKTR 訓練的智能體與使用 A2C 訓練的智能體,在不同訓練時段(timesteps)的對比。使用相同數量的訓練樣本後,ACKTR 訓練的智能體的得分比 A2C 高的多。

使用 ACKTR 訓練的智能體(右)在短時間內的得分比 A2C(左)的智能體要高。

OpenAI baselines 代碼開源,對比結果發佈:

OpenAI Baselines 發佈包含了 ACKTR 和 A2C 的代碼實現。

我們還評估了 ACKTR 在一系列任務的表現。下文中,我們展示了 ACKTR 在 49 個 Atari 遊戲中與 A2C、PPO、ACER 表現的對比。注:ACKTR 的作者只用了 Breakout 遊戲對 ACKTR 的進行了超參數的調整。

ACKTR 也適用於大規模分佈式訓練。因爲其不僅利用每個樣本來估計梯度(gradient estimate),而且使用該樣本信息去估計參數空間的局部曲率(local curvature)。

A2C 和 A3C

《Asynchronous Methods for Deep Reinforcement Learning》發表後,A3C 方法的影響力大大增強。該算法連接了多個關鍵思想:

  1. 在固定長度(比如,20 個時間步(timesteps))下執行同一個策略獲得一長段經驗,用來估計目標函數和優勢函數(advantage function)。

  2. 策略和價值函數共享基層網絡參數。

  3. 異步更新。

讀完這篇論文之後,AI 研究人員思考異步是否可以改善性能(如,「或許增加噪聲可以提供某種正則化或探索」),或者異步是否是一個允許基於 CPU 的實現的訓練過程變得更快的實現細節。

研究人員發現另一種異步實現的替代方案,即一個同步的且非隨機的實現。該實現等待每個行爲完成自己的經驗段的收集再執行更新。這個算法的一大優勢是對於大批次數據的處理,它可以更好的利用 GPU 的效率。該算法叫作 A2C(advantage actor critic 的縮寫)。

我們的同步 A2C 實現比異步實現表現要好。目前尚未看到任何證據證明異步引入的噪聲能夠提供任何性能收益。該方法的一個優勢就是當使用大型網絡時,它在單 GPU 的機器上比 CPU 爲主的 A3C 的實現更快。

我們的代碼包含了用 A2C 來訓練的 CNNs,LSTM 的實現。

論文:Scalable trust-region method for deep reinforcement learning using Kronecker-factored approximation

摘要:在該研究中,我們將近期的提出的 Kronecker 因子的近似曲率(K-FAC),和置信域優化,應用到深度強化學習中。我們將該方法命名爲「Actor Critic using Kronecker-Factored Trust Region」,(ACKTR)。就我們所知,這是首個可擴展的置信域自然梯度 actor-critic 的方法。同時它也能直接從原始像素輸入(raw pixel input)中成功學習連續和離散的控制任務。我們在 Atari 遊戲和 MuJoCo 環境中對此方法進行測試。與之前最頂尖的 on-policy actor critic 方法相比,我們提出的方法不僅能夠獲取更高的獎勵,而且平均樣本效率提高了 2 到 3 倍。

戳「閱讀原文」,查看機器之心NIPS 2017專題策劃並參與其中。

責任編輯:

文章來源:機器之心