0
本文作者: 楊曉凡 | 2018-08-29 10:48 |
雷鋒網(wǎng) AI 科技評論按:強(qiáng)化學(xué)習(xí)的研究如此火熱,但強(qiáng)化學(xué)習(xí)的研究中又有如此之多的實踐上的困難?!腹び破涫拢叵壤淦鳌?,谷歌就推出了一個強(qiáng)化學(xué)習(xí)研究專用的框架幫自己減負(fù)、加速。雷鋒網(wǎng) AI 科技評論把谷歌的介紹博客編譯如下。
在過去的幾年中,強(qiáng)化學(xué)習(xí)研究中涌現(xiàn)了許多重大技術(shù)進(jìn)展。這些技術(shù)進(jìn)展已經(jīng)幫助智能體在游戲中發(fā)揮出超越人類的水平,著名的幾個例子包括 DeeopMind 玩 Atari 游戲的 DQN、下圍棋的 AlphaGo 和 AlphaGo Zero,還有近期連續(xù)擊敗了業(yè)余玩家和前職業(yè)選手的 DOTA2 AI OpenAI Five。
其中值得展開說明的是,DQN 中引入的記憶回放特性讓當(dāng)前智能體可以利用以前的不同智能體的經(jīng)驗進(jìn)行學(xué)習(xí),大規(guī)模分布式訓(xùn)練可以讓訓(xùn)練過程分布在多臺不同的運算計算機(jī)上同時運行,值分布方法讓智能體可以對整個反饋分布建模,而不是僅僅為單個預(yù)期值建模,從而可以對自己所處的世界有個更完整的認(rèn)識。這類技術(shù)進(jìn)展非常重要,采用了這些新技術(shù)的算法也可以在測試任務(wù)之外繼續(xù)發(fā)揮作用,比如谷歌自己就用強(qiáng)化學(xué)習(xí)算法控制機(jī)械臂運動。
大多數(shù)時候,探索更新更好的技術(shù)都需要一個從基礎(chǔ)設(shè)計開始進(jìn)行快速迭代的過程 —— 這個迭代改進(jìn)的過程不一定有什么清晰的方向 —— 而且也會打亂已有方法的結(jié)構(gòu)。然而,多數(shù)現(xiàn)有的強(qiáng)化學(xué)習(xí)框架提供的靈活性+穩(wěn)定性組合并不理想,不足以讓研究人員們高效地迭代改進(jìn)正在探索的強(qiáng)化學(xué)習(xí)方法,拖慢了他們發(fā)現(xiàn)那些收益更偏向長遠(yuǎn)的研究方向的腳步。除此之外,現(xiàn)有的框架中復(fù)現(xiàn)現(xiàn)有模型的結(jié)果也非常耗費時間,這也為后續(xù)科研活動中的可重復(fù)性要求埋下了隱患。
今天谷歌發(fā)布了一個新的基于 TensorFlow 的強(qiáng)化學(xué)習(xí)框架「多巴胺」(Dopamine)。多巴胺是人腦中「行為 - 反饋」激勵通路的主要組成部分之一,多巴胺的釋放可以給人帶來開心愉悅的感覺;它同時也反映了神經(jīng)科學(xué)研究和強(qiáng)化學(xué)習(xí)研究之間淵源流長的聯(lián)系。正如其名,它的目標(biāo)是提供一個兼顧靈活、穩(wěn)定、可重復(fù)性的強(qiáng)化學(xué)習(xí)實驗框架,讓不論資深還是新手研究人員都感受到「多巴胺」帶來的放松和愉悅,從而幫助他們更多、更快、更好地開展有可能帶來顛覆性發(fā)現(xiàn)的思辨、探索研究。
「多巴胺」框架的設(shè)計面向研究人員,它是一個簡單但魯棒的框架,適合用于強(qiáng)化學(xué)習(xí)算法設(shè)計中的快速原型設(shè)計和迭代改進(jìn)。如果算法研究人員需要一個輕量、容易理解的代碼庫,為了自由地嘗試各種不同的甚至狂野的想法,「多巴胺」就是最合適的選擇。
「多巴胺」的設(shè)計原則是
便于實驗:新用戶也可以簡單地運行 benchmark 實驗
靈活開發(fā):新用戶也可以簡單地嘗試新的研究想法
緊湊可靠:提供了幾個經(jīng)過檢驗的算法的實現(xiàn)
可重復(fù)性:幫助提高實驗結(jié)果的可重復(fù)性
遵循這些設(shè)計原則,「多巴胺」的首個版本重點關(guān)注了目前最先進(jìn)的運行在單 GPU 上的彩虹 DQN,它在 Atari-2000 游戲中有驚人的表現(xiàn)。根據(jù)論文中得到的結(jié)論,「多巴胺」中的彩虹 DQN 實現(xiàn)了以下三個最為重要的組件:
n 步 Bellman 更新(詳情參見 https://arxiv.org/abs/1602.01783)
優(yōu)先經(jīng)驗重放學(xué)習(xí)(https://arxiv.org/abs/1511.05952)
除了彩虹 DQN 之外,「多巴胺」還實現(xiàn)了另外 3 個基于數(shù)值的智能體:DQN、C51 以及上個月剛剛發(fā)表在 ICML 2018 上的隱式分位數(shù)網(wǎng)絡(luò)(Implicit Quantile Network)?!付喟桶贰鼓壳爸С?nbsp;Arcade 學(xué)習(xí)環(huán)境,這是一個成熟、已經(jīng)有了深入研究理解的環(huán)境。谷歌的開發(fā)人員們希望「多巴胺」的簡單性可以讓研究人員們輕松地理解智能體到底是如何運行的,從而得以嘗試新的想法。
便于使用的實現(xiàn)
上手快捷 清晰、簡介是框架設(shè)計、代碼編寫中的重要考量要素?!付喟桶贰固峁┑拇a緊湊,只有大約 15 個 Python 文檔,而且有完善的注釋。
可重復(fù)性 谷歌的開發(fā)人員們也對強(qiáng)化學(xué)習(xí)研究中的可重復(fù)性問題有非常深的感受。為了提供一些可重復(fù)性的保障,「多巴胺」的代碼提供了完整的測試功能;測試功能也就可以作為另一種形式的文檔。除此之外,「多巴胺」也遵循了 arxiv.org/abs/1709.06009 中提出的關(guān)于在 Arcade 學(xué)習(xí)環(huán)境中標(biāo)準(zhǔn)化經(jīng)驗評價的建議。
Benchmark 對于新手研究人員來說,能夠在 benchmark 中快速比較自己的想法和已有方法的表現(xiàn)是非常重要的。出于這個目的,「多巴胺」也提供了包含的四個智能體的全部訓(xùn)練數(shù)據(jù),其中均包含了 Arcade 學(xué)習(xí)環(huán)境支持的 60 個游戲中的數(shù)據(jù);格式有 Python 格式以及 JSON 格式。谷歌的開發(fā)人員們還額外設(shè)計了一個網(wǎng)站,可以在上面快速可視化這四個智能體在所有 60 個游戲中的訓(xùn)練過程。下圖是四個智能體在 Atari 游戲 Seaquest 中的訓(xùn)練過程。
谷歌也在「多巴胺」中打包了經(jīng)過訓(xùn)練的模型、原始統(tǒng)計記錄以及可以在 Tensorboard 中繪圖的 TensorFlow 事件記錄文件。
谷歌的開發(fā)人員們希望「多巴胺」的靈活、便于使用的特性可以幫助研究人員們嘗試新的點子,不論是逐步改進(jìn)的,還是根本性顛覆的。谷歌已經(jīng)把「多巴胺」應(yīng)用到了自己的科研中,已經(jīng)借助它的靈活性快速迭代改進(jìn)了許多想法。所以谷歌不僅希望把這個美妙的工具分享給更多研究人員,幫助整個領(lǐng)域的研究人員更快地做出進(jìn)展,也可以借助更多力量把「多巴胺」做得更好。
github 地址:https://github.com/google/dopamine
via ai.googleblog.com,雷鋒網(wǎng) AI 科技評論編譯
雷峰網(wǎng)特約稿件,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。