人工智慧技術越來越廣泛的應用於各行各業,而這一切都離不開底層深度學習框架的支援。近日,百度深度學習 PaddlePaddle 正式釋出了強化學習框架 PARL,同時開源了基於該框架,在 NeurIPS 2018 強化學習賽事中奪冠的模型完整訓練程式碼,再次向業界展示了百度在深度學習領域的技術能力。
PARL 的效果如何?
PARL 是基於百度 PaddlePaddle 打造的深度強化學習框架,覆蓋了 DQN、DDQN、Dueling DQN、DDPG、PPO 等主流強化學習演算法。在 PARL 1.0 的釋出中,基於 PARL 實現的 DDPG,DQN, PPO 等演算法均有覆蓋,在一些經典測試問題中,如 Atari Game, Mujoco 等,均取得了 state-of-the-art 的成績。效能相比其他平臺也毫不示弱。
此外,PARL 框架支援百億級別資料或特徵的訓練,基於 PARL 可同時通過 8 塊 GPU 拉動近 20000 個 CPU 節點運算。在 NeurIPS 2018 賽事中將需要近 5 個小時迭代一輪的 PPO 演算法加速到不到 1 分鐘,相對單機運算加速比高達幾百倍。與現有開源強化學習工具和平臺相比,PARL 框架具有更高的可擴充套件性、可復現性和可複用性,支援大規模並行和稀疏特徵,能夠快速完成對工業級應用案例的驗證。
在 NeurIPS 2018 強化學習賽事中 PRAL 的使用脫穎而出,擊敗了 400 多支來自全球各個研究機構的參賽隊伍,獲得冠軍的最關鍵因素是,PARL 框架在演算法上採用了獨特的網路結構,特徵處理、獎勵值工程、探索策略以及學習方法。其中比較重要一點是用了課程學習(Curriculum Learning)來學習一個比較好的初始步態。而在架構方面,受到 GA3C 啟發,所設計的 DDPG 並行結構直接達到了單機效能的幾百倍,使得深度強化學習框架 PARL 的調研效率大大提升。
PARL 在哪些前沿應用發揮作用?
新聞和資訊推薦
近年來,資訊流在研究上出現兩個難點和熱點,一個是列表頁內的組合優化,另一個是列表頁間的興趣轉移。傳統推薦往往都是基於使用者和單點內容之間的喜好程度來預估。現代資訊推薦系統注重列表內的組合,以及列表頁間的轉移變化。而這兩個點,都是強化學習適合的重要場景。
列表頁內的優化主要是內容之間的組合,現代資訊流推薦系統並不是一次只推薦一個內容,而是一次推薦多個內容。由於列表多個內容之間的相互關聯會影響到使用者體驗,但對於具體如何關聯,卻沒有辦法確定。雖然大家都知道多樣性比較重要,但為什麼重要,以及多樣性到底怎麼量化,目前依舊缺乏統一的認識。而列表頁間的優化,針對的是使用者行為的序列。使用者瀏覽完一個列表,重新重新整理,再看第二個列表,這個過程中興趣有沒有發生轉移?有沒有新的興趣被激發?這兩個點都涉及到長期收益問題。也就是說,不能再僅僅用當前內容的使用者反饋來學習,而是得用比較長時間的收益來學習。
在列表頁內組合上,PARL 所提出的序列框架統一了學術界對列表頁框架認識的一些模糊。根據百度釋出的文章,多樣性一個概念遠不足以反映列表頁內的關聯關係。內容之間既有相互重疊,又有相互關聯和促進。以往的多樣性建模往往比較片面。而基於序列優化的建模方式,能夠處理內容之間所有可能關聯。強化學習在這中間,起到了關鍵的序列全域性優化的作用。而百度內部在 2017 年底就 Launch 了序列優化框架,據瞭解,這個框架至今已經取得了不少收益。而 PARL 在其中充分發揮了其在大規模訓練中效能的優勢。
而在列表頁之間的轉移方面,百度內部也早已已經開展了探索。對於資訊流推薦這類產品的列表間優化,強化學習面臨一個難題是 Variance 過大,可能導致準確率下降。學術界有不少針對這個問題的工作,但提出的方法都相對偏理想化,鮮有方法能夠真正用到線上併產生收益。開發者正在基於 PARL 創新「Credit Assignment」這類新的演算法,以更好地更接地氣地解決這些問題,據悉目前已有一些進展,不遠將來可能釋出這些成果。
自動導航和控制
PARL 框架也將強化學習用在無人機和無人車的自動導航和避障領域。控制問題是一個經典的 Delayed Reward 問題,強化學習最開始也是在控制領域應用最廣的。因為如果發生碰撞或者控制不好,一定不是當前一個時間步的問題,而是多個時間步的連續問題。傳統的強化學習研究,都不關注成本和風險,認為災害事件(如碰撞)可以無成本獲得。但真實場景,比如無人車、無人機,則不允許有那麼多的碰撞。
開發者利用很多無人車、無人機測試過程中的「安全員」這一角色,不僅為了在測試中可以保障安全,還將這些夾雜了安全員干預的、不符合傳統強化學習路徑的資料收集起來,作為訊號來學習。該演算法叫干預輔助強化學習(Intervention Aided Reinforcement Learning)(http://proceedings.mlr.press/v87/wang18a.html),它可以通過學習帶干預的路徑,來強化策略,使得干預可以直接被降低。基於這套演算法,百度成功使得一個端到端(end-to-end)的複雜神經網路模型,能夠被用於直接控制飛行器的避障,在障礙物比較密集的環境中平穩飛行。這不僅證明了強化學習被用在自動導航問題上的可能性,也為無人車的強化學習訓練探索了一種方法。該方法也會在短期內開源到 PARL 裡面,方便使用者使用。
總結
在強化學習方面,百度內早在 2012 年就將在 multi-armed bandit 問題上的研究成果部署到了推薦系統中,應用於搜尋、對話、推薦等產品,通過點選反饋結合線上訓練的方式,動態調整探索和收益的平衡點,在降低探索風險的同時最大化推薦收益。隨著 PaddlePaddle 在工業界的影響不斷深入,未來基於 PaddlePaddle 深度學習框架 PARL 將對工業界,以及學術界的深度強化學習應用和研究起到長遠的促進作用,來滿足業界日趨發展旺盛的深度強化學習應用的需求,做到真正源於產業實踐的深度學習框架。