DeepMind 把自己的“殺手锏”開源了!
掃描二維碼
隨時(shí)隨地手機(jī)看文章
記者注:圖片來自DeepMind
眾所周知,強(qiáng)化學(xué)習(xí)(Reinforcement Learning)是一種人工智能訓(xùn)練技術(shù),無論是在棋牌游戲方面打敗人類選手的機(jī)器人,還是在訓(xùn)練自動(dòng)駕駛系統(tǒng)方面,強(qiáng)化學(xué)習(xí)都起著至關(guān)重要的作用。
近日,Alphabet 旗下的 DeepMind 發(fā)表了一篇由 27 位研究人員共同完成的論文,詳細(xì)介紹了一個(gè)名為 OpenSpiel 的針對(duì)游戲的強(qiáng)化學(xué)習(xí)框架——這正是 DeepMind 的長(zhǎng)處所在。
OpenSpiel 厲害在哪兒?這個(gè)名叫 OpenSpiel 的框架可以看作是一個(gè)強(qiáng)化學(xué)習(xí)環(huán)境和算法的集合(其中大部分環(huán)境和算法已經(jīng)進(jìn)行了全面測(cè)試),可以用于通用強(qiáng)化學(xué)習(xí)的研究和游戲的搜索/規(guī)劃研究;它還為分析學(xué)習(xí)動(dòng)態(tài)和其他常見評(píng)估指標(biāo)提供了工具。
記者在論文中發(fā)現(xiàn),OpenSpiel 旨在許多不同的游戲中促進(jìn)多智能體強(qiáng)化學(xué)習(xí),重點(diǎn)是學(xué)習(xí),而不是競(jìng)爭(zhēng);而且,該框架的建設(shè)基于兩個(gè)重要標(biāo)準(zhǔn),即簡(jiǎn)單和輕量——簡(jiǎn)單主要體現(xiàn)在編程語言方面,即便是來自不同領(lǐng)域的研究人員也能輕易理解;輕量則體現(xiàn)在 OpenSpiel 將依賴關(guān)系保持在最低限度,降低了出現(xiàn)兼容性問題的可能性。
就目前而言,OpenSpiel 框架中包含了 28 款游戲和 24 種算法。正如“Spiel(棋牌游戲)”一詞所含之意那樣,該框架支持的也都是相關(guān)的游戲;而且,這些游戲也包括多種博弈方式,比如,常和博弈、零和博弈、協(xié)調(diào)博弈和一般博弈。在編程語言方面,OpenSpiel 的游戲通過 C++ 來實(shí)現(xiàn)、算法則通過 C++ 和 Python 來實(shí)現(xiàn),代碼的一個(gè)子集也被移植到 Swift。
不過,DeepMind 的研究人員指出,OpenSpiel 只在 Linux 系統(tǒng)上進(jìn)行了測(cè)試(Debian 10 和 Ubuntu 19.04),但由于 MacOS 和 Windows 上可自由使用代碼,Openspiel 在這些平臺(tái)上編譯和運(yùn)行時(shí)應(yīng)該也不會(huì)出現(xiàn)問題。
怎么安裝 OpenSpiel?在論文中,DeepMind 也給出了 OpenSpiel 的安裝方式,他們已經(jīng)在 Debian 和 Ubuntu 兩個(gè) Linux 系統(tǒng)上測(cè)試了框架。安裝方式如下:
值得一提的是,DeepMind 目前還沒有在 Linux 以外的平臺(tái)上測(cè)試 OpenSpiel,所以,一些腳本和指令目前是假定基于 Debian 的發(fā)行版(Debian 和 Ubuntu)。如果使用的是其他 Linux 發(fā)行版本,install.sh 里安裝依賴項(xiàng)的命令依然可用,不過,安裝命令需要自行修改。
為了能夠從任何位置導(dǎo)入 Python 代碼,需要將根目錄和 open_spiel 目錄添加到 PYTHONPATH 之中。
在遵循上述步驟構(gòu)建好 OpenSpiel 之后,從 build 目錄中運(yùn)行示例。
接下來就可以看到框架里的游戲列表,并且運(yùn)行游戲了。
記者(公眾號(hào):記者)注:論文鏈接為 https://arxiv.org/pdf/1908.09453.pdf
項(xiàng)目地址為 https://github.com/deepmind/open_spiel