0
本文作者: 岑大師 | 2017-10-21 11:40 |
雷鋒網(wǎng)消息,今天,英特爾發(fā)布了一個(gè)新的開源增強(qiáng)學(xué)習(xí)框架Coach。該框架利用多核CPU處理能力,用于訓(xùn)練和評(píng)估增強(qiáng)學(xué)習(xí)Agent。Coach包含一些領(lǐng)先的增強(qiáng)學(xué)習(xí)算法的多線程實(shí)現(xiàn),適用于各種游戲和機(jī)器人環(huán)境。它能夠在臺(tái)式計(jì)算機(jī)上高效地訓(xùn)練強(qiáng)化學(xué)習(xí)Agent,而無(wú)需任何額外的硬件。
自從2016年推出用于深層加強(qiáng)學(xué)習(xí)的異步方法以來(lái),許多算法通過(guò)在許多CPU內(nèi)核中并行運(yùn)行多個(gè)實(shí)例,能夠更快地實(shí)現(xiàn)更好的策略。到目前為止,這些算法包括A3C 、DDPG、PPO、DFP和NAF,而Coach不僅包括上述等最新算法的實(shí)現(xiàn),更可以幫助用戶現(xiàn)場(chǎng)搭建使用。
要使用Coach首先需要定義想要解決的問題,或選擇一個(gè)現(xiàn)有問題,然后選擇一套強(qiáng)化學(xué)習(xí)算法來(lái)解決問題。Coazh可以使用現(xiàn)有算法進(jìn)行簡(jiǎn)單的實(shí)驗(yàn),并用作沙盒(雷鋒網(wǎng)注:沙盒是在受限的安全環(huán)境中運(yùn)行應(yīng)用程序的一種做法,這種做法是要限制授予應(yīng)用程序的代碼訪問權(quán)限,便于在開發(fā)測(cè)試中的調(diào)試)以簡(jiǎn)化新算法的開發(fā)??蚣芏x了一組用于強(qiáng)化學(xué)習(xí)的API和關(guān)鍵組件,使用戶能夠輕松地重用組件,并在現(xiàn)有的組件之上構(gòu)建新的算法。
Coach可與如OpenAI Gym、Roboschool和ViZDoom等頂級(jí)環(huán)境進(jìn)行集成,同時(shí)它還提供了可視化培訓(xùn)過(guò)程和了解代理的基本機(jī)制的各種技術(shù),所有的算法都是使用英特爾優(yōu)化的TensorFlow來(lái)實(shí)現(xiàn)的,也可以通過(guò)Intel的neon?框架來(lái)實(shí)現(xiàn)。
Coach包含許多Agent類型的實(shí)現(xiàn),包括從單線程實(shí)現(xiàn)到多線程實(shí)現(xiàn)的無(wú)縫轉(zhuǎn)換。Agent以模塊化方式實(shí)現(xiàn),以允許重用不同的構(gòu)建塊來(lái)構(gòu)建新的和更復(fù)雜的代理。此外,Coach可以在單個(gè)任務(wù)的基礎(chǔ)上編寫新的Agent,并切換到同步或異步的多任務(wù)實(shí)現(xiàn),并進(jìn)行最少的更改。
在Coach中集成了過(guò)去幾年引入的各種Agent類型的實(shí)現(xiàn)方式,這讓用戶解決具有不同需求和與代理交互的方式的環(huán)境,例如連續(xù)和離散的動(dòng)作空間,視覺觀察空間或僅包括原始測(cè)量的觀察空間。
環(huán)境
Coach使用OpenAI Gym作為與不同環(huán)境進(jìn)行交互的主要工具。它還支持Gym的外部擴(kuò)展,包括Roboschool, gym-extensions和PyBullet, 其環(huán)境封裝器可以添加更多的自定義環(huán)境,以解決更廣泛的學(xué)習(xí)問題。
Intel還發(fā)布了Coach Dashboard作為可視化和調(diào)試的補(bǔ)充工具。Dashboard是Coach的一個(gè)圖形用戶界面,通過(guò)展示訓(xùn)練過(guò)程中的不同信號(hào),可以讓用戶以簡(jiǎn)單易懂的方式比較不同方式運(yùn)行的訓(xùn)練質(zhì)量。在訓(xùn)練期間,Coach可跟蹤任何有意義的內(nèi)部信息并存儲(chǔ),以便在執(zhí)行期間和完成后可視化進(jìn)度。
Coach還支持其他調(diào)試和可視化方法,例如存儲(chǔ)最佳場(chǎng)景的GIF動(dòng)畫,在游戲過(guò)程中顯示動(dòng)作值,等等。
為方便用戶使用Coach,Intel已經(jīng)開放了GitHub信息庫(kù),然后按照的機(jī)器上安裝Coach的說(shuō)明進(jìn)行操作即可。Intel還提供了友好的幫助文件,在GitHub存儲(chǔ)庫(kù)README文檔中有幾個(gè)簡(jiǎn)單的例子,同時(shí)在官網(wǎng)還有一個(gè)更全面的使用和實(shí)現(xiàn)文檔。
Coach已經(jīng)準(zhǔn)備了超過(guò)60個(gè)預(yù)定義的預(yù)設(shè)、不同的代理和可用的環(huán)境。這些預(yù)設(shè)已經(jīng)用于訓(xùn)練數(shù)百名Agent,并經(jīng)過(guò)驗(yàn)證以獲得良好的業(yè)績(jī)。但是,使用這些預(yù)設(shè)并不是強(qiáng)制性的,并且創(chuàng)建新的預(yù)設(shè)與選擇現(xiàn)有代理和現(xiàn)有環(huán)境一樣容易。
下一步,Intel計(jì)劃在未來(lái)的版本中增加更多算法和環(huán)境,如果你有任何建議和評(píng)論,可以在Github上進(jìn)行互動(dòng)。
雷鋒網(wǎng)發(fā)現(xiàn),目前不少巨頭均推出了自己的深度學(xué)習(xí)框架,如Google 的TensorFlow、Amazon 的MxNet、Facebook的Caffe 2等。這些深度學(xué)習(xí)框架的流行降低了深度學(xué)習(xí)的門檻,讓越來(lái)越多人開始參與到深度學(xué)習(xí)當(dāng)中,但在降低門檻后如何提高訓(xùn)練的效率也成為了差異化的關(guān)鍵因素,這也是是多線程并行計(jì)算、多機(jī)器上的水平擴(kuò)展甚至定制硬件最近開始得勢(shì)的原因。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。