當前位置:
首頁 > 新聞 > DeepMind 開源TRFL,又一個強化學習復現、創新好幫手

DeepMind 開源TRFL,又一個強化學習復現、創新好幫手

雷鋒網 AI 科技評論按:繼今年 8 月谷歌開源發布了專為學術研究人員設計的簡單但魯棒的強化學習框架「多巴胺」(Dopamine)之後,早已被谷歌母公司收購但保持獨立運營的 DeepMind 也把自己日常使用的代碼庫拿出來開源,繼續為領域內的研究人員們提供功能豐富、高可復現性及高可拓展性的實驗工具。雷鋒網 AI 科技評論介紹如下。

DeepMind 開源TRFL,又一個強化學習復現、創新好幫手

今天 DeepMind 宣布開源一個用於在 TensorFlow 環境中開發強化學習智能體的代碼庫,打包了許多有用的基礎組件。它的名字是 TRFL(讀作「truffle」),地址是 https://github.com/deepmind/trfl/。DeepMind 自己用來開發 DQN、DDPG 以及 IMPALA(重要性加權行動者-學習者架構)等知名強化學習技術的許多關鍵演算法組件都包含在其中。

另一種開源路線

一個典型的深度強化學習智能體需要包含一組數目眾多的互動組件:首先起碼需要包括一個環境以及某種能表示值或者策略的深度神經網路,然後很多時候還會包含學習到的環境的模型、偽反饋函數甚至一個回放系統等等。

這些組件互相之間的影響很微妙(而且如 Henderson 和他的同事在 https://arxiv.org/pdf/1709.06560.pdf中指出,論文中常常並不會詳細說明這些影響是怎麼樣的),從而當計算圖變得很大的時候一旦出現 bug 就很難進行定位並解決。OpenAI 近期的一篇博客也著重研究了這個問題,他們分析了某些最熱門的強化學習智能體的開源實現,發現 10 個中的 6 個都「由社區成員發現了微小的 bug 並得到了作者本人的確認」。

要解決這種問題,並幫助整個研究社區中的人順利復現論文中的結果,其中一種方法就是開源智能體的全套完整實現。比如,DeepMind 最近就開源了基於 IMPALA 的 v-trace 智能體的可拓展分散式實現。這種大規模的代碼庫對於研究結果的復現固然有幫助,但同時也難以修改並拓展。

另一種有所不同並且能起到補充作用的方法是提供可靠的、經過充分測試的通用基礎組件的實現,同一個構件也就可以在許多不同的強化學習智能體中反覆使用。另一方面,在單個代碼庫中囊括了所有這些組件的抽象,然後可以用統一的 API 調用,也就讓研究人員可以更方便地組合不同文獻中閱讀到的不同的想法。

全功能的基礎組件

TRFL 庫包含了許多功能,可以實現經典強化學習演算法以及更現代的演算法。其中的損失函數以及許多其他操作都是完全在 TensorFlow 中實現的。它們並不是完整的演算法,而是構建具有完整功能的強化學習智能體時必要的、也是強化學習專用的數學操作的代碼實現。

對於基於值的強化學習,DeepMind 的研究人員們也在 TRFL 庫中提供了各種 TensorFlow 操作,便於在離散的行動空間中學習,比如 TD 學習、Sarsa、Q-learning 以及它們的變體;當然也包括了用於實現 DPG 之類的連續控制演算法的操作。TRFL 庫中還包括了學習值分布函數的操作。這些操作支持批量計算,並且返回的損失值可以送入 TensorFlow 優化器進行最小化。有一些損失值是針對不同的批之間的變化進行計算的(比如 Sarsa 和 Q-learning 等),也有一些損失是針對成批的軌跡的(比如 Q-lambda、Retace 等)。

對於基於策略的方法,TRFL 庫中也同時提供了可以簡易實現 A2C 等在線學習方法以及 v-trace 等離線策略校正方法的工具。TRFL 也支持連續動作空間中的策略梯度的計算。最後,TRFL 還提供了一個 Unreal 引擎中使用的輔助偽反饋函數的實現,DeepMind 的研究人員發現它能在許多不同的任務中提高數據效率。

宣告開源顯然並不是這個項目的終點。由於這個庫在 DeepMind 內部有著廣泛的應用,他們也會持續不斷地對它進行維護,並逐步增加新的功能。DeepMind 也非常期待強化學習社區中的更多人也參與到這個項目的貢獻中來。

via deepmind.com,雷鋒網 AI 科技評論編譯

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 雷鋒網 的精彩文章:

透過智能化變革看聯想 下一個新增長引擎在哪?
華為ALL in Al:全面公布AI戰略及全棧全場景解決方案,AI晶元將不單獨對外銷售

TAG:雷鋒網 |