0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

星際爭(zhēng)霸2頂級(jí)人工智能AlphaStar帶來(lái)哪些新思路?

DPVg_AI_era ? 來(lái)源:lq ? 2019-02-13 09:38 ? 次閱讀

AlphaStar再次展現(xiàn)了DeepMind對(duì)研究方向的精準(zhǔn)把控和卓越的工程實(shí)力。本文根據(jù)DeepMind博文及相關(guān)資料做了推演,試圖在研究論文公布前復(fù)現(xiàn)AlphaStar的訓(xùn)練過(guò)程。沿用這套方法,你也創(chuàng)建自己的星際2訓(xùn)練環(huán)境!

自AlphaGo解決圍棋問(wèn)題之后,《星際爭(zhēng)霸2》就成了DeepMind公司的新目標(biāo)。在2018年6月,DeepMind發(fā)表了一篇論文,展示如何運(yùn)用深度強(qiáng)化學(xué)習(xí),解決諸如采礦最大化這樣的小游戲。

沒(méi)想到僅6個(gè)月后,他們的AI就已經(jīng)可以和職業(yè)選手過(guò)招了。AlphaStar在Catalyst LE地圖上打神族內(nèi)戰(zhàn)(PvP),以 5:0 戰(zhàn)勝了職業(yè)選手TLO與MaNa,只是到了現(xiàn)場(chǎng)比賽時(shí),被MaNa找到了一個(gè)無(wú)法應(yīng)對(duì)棱鏡騷擾的Bug致敗。DeepMind公司那批機(jī)器學(xué)習(xí)天才們,研究方向掌握之精準(zhǔn),工程控制能力之強(qiáng)大,令人印象深刻。

這樣的表演賽是DeepMind常見(jiàn)的預(yù)熱,相信不久后它就會(huì)對(duì)Serra l 和Maru這樣的頂級(jí)職業(yè)選手提出挑戰(zhàn)。后者假如迎戰(zhàn),大概率菊花不保。

不過(guò),與圍棋不同的是,星際爭(zhēng)霸這類即時(shí)戰(zhàn)略游戲還有操作技能這一環(huán)。AlphaStar有不切屏看大地圖的功能,以及偶爾爆出超越人類極限的有效手速(eAPM),都被指責(zé)為不夠公平。相信DeepMind在正式邀戰(zhàn)時(shí)會(huì)解決這些問(wèn)題。

很多人最關(guān)心的一個(gè)問(wèn)題是,AlphaStar究竟是如何訓(xùn)練出來(lái)的呢?我們嘗試在正式論文尚未放出之前,通過(guò)DeepMind的博客文章作一些分析解讀。

玩星際爭(zhēng)霸的AI面對(duì)的問(wèn)題

星際爭(zhēng)霸2是一個(gè)困難的即時(shí)戰(zhàn)略游戲。玩家必須實(shí)時(shí)地在成百上千個(gè)可行的操作中作出決斷。

與人類相仿,AI的控制流同樣由一輪輪操作組成。在每一輪中,AI先獲取當(dāng)前游戲狀態(tài),據(jù)此衡量并選擇一次操作,然后提交給星際爭(zhēng)霸2環(huán)境。

AI經(jīng)由Blizzard和DeepMind聯(lián)合創(chuàng)建的PySC2接口,與星際爭(zhēng)霸2的游戲核心進(jìn)行交互。每一步中,AI能夠獲取的游戲信息是一個(gè)矩形網(wǎng)格,網(wǎng)格的每個(gè)位置代表地圖上的一個(gè)位置。每個(gè)位置上都有若干數(shù)值,代表此地的有效信息。

另一種理解方式是,游戲信息被組織成若干個(gè)網(wǎng)格,每份網(wǎng)格代表某一項(xiàng)特定信息(見(jiàn)上圖右側(cè))。比如說(shuō)“fog-of-war”網(wǎng)格代表是否存在戰(zhàn)爭(zhēng)迷霧;“height-map”網(wǎng)格代表地形高度;“unit-type”網(wǎng)格代表建筑或者作戰(zhàn)單位。詳細(xì)說(shuō)明可參考報(bào)告論文[1]的第3.2節(jié)。

在操作方面,AI定義了300多個(gè)“宏操作”,在每一輪中,AI從這個(gè)集合內(nèi)選取某個(gè)宏操作執(zhí)行。宏操作由一系列基本操作組成。例如,“把當(dāng)前選中的單位移到A處”,可以分成三步:1) 決定移動(dòng),2) 決定是否把操作排隊(duì),3) 點(diǎn)擊某個(gè)地圖位置。而上述操作又可以進(jìn)一步分解為“按m鍵;松開(kāi)m鍵;決定是否按shift鍵;地圖A處按下鼠標(biāo)左鍵;松開(kāi)鼠標(biāo)左鍵”。

不同粒度的操作分解,會(huì)將問(wèn)題焦點(diǎn)分配到不同抽象層面。如果操作種類特別基本,到了按鍵盤鼠標(biāo)的程度,單個(gè)操作的意義就非常小,探索有意義的策略就很難。反之,如果宏操作非常復(fù)雜,雖然意義顯著,但每一步的選擇空間又變得過(guò)于寬廣,選中合適的策略也很難。PySC2取了一個(gè)平衡點(diǎn),每個(gè)宏操作的意義,與人類邏輯層面上感知的操作接近,比如上面移動(dòng)單位的例子,它就給了一個(gè)專門的操作。

AI一旦從決策空間選定了宏操作之后,就會(huì)生成一條 (a0, a1, a2, a3, a4, ...) 形式的指令,其中“a0”指定了300多個(gè)基本操作之一,而“a1, a2…”是操作參數(shù),比如給需要移動(dòng)單位指定目的地。直觀圖示如下:

為什么都說(shuō)星際爭(zhēng)霸2問(wèn)題難?

因?yàn)樾枰剿鞯目臻g太大。

根據(jù)DeepMind的報(bào)告,考慮操作和參數(shù)的各種組合,在典型對(duì)戰(zhàn)環(huán)境中,決策空間的大小約有10^26 (簡(jiǎn)短的介紹可參見(jiàn)報(bào)告論文[1]第3.3節(jié))。如果把星際爭(zhēng)霸想像成一盤棋局,那么

棋局的狀態(tài)就是戰(zhàn)場(chǎng)的全部信息,但由于戰(zhàn)爭(zhēng)迷霧的存在,星際2中一位弈者相當(dāng)于遮擋住部分棋盤來(lái)對(duì)局;

每一步可以落子的位置對(duì)應(yīng)于此步可以進(jìn)行的操作,其可能性的數(shù)量級(jí)大致相當(dāng)于一大瓶可樂(lè)里水分子的數(shù)量。

注意以上討論的僅僅是AI決定單步操作時(shí)需要面對(duì)的挑戰(zhàn),在對(duì)戰(zhàn)中每一步對(duì)應(yīng)一個(gè)的時(shí)間節(jié)點(diǎn),如果按照職業(yè)玩家的操作頻率來(lái)計(jì)算,每分鐘需要行棋數(shù)百步,每步都在前一步的基礎(chǔ)上以乘數(shù)拓展一個(gè)狀態(tài)空間!

學(xué)習(xí)一步的操作固然困難,但尚可算入當(dāng)前最成熟的統(tǒng)計(jì)學(xué)習(xí)方法——監(jiān)督學(xué)習(xí)——可實(shí)際解決的問(wèn)題的范疇。即給機(jī)器提供大量可觀測(cè)的輸入,即學(xué)習(xí)樣本,并提供期望產(chǎn)生的輸出。AI從這些配對(duì)樣本中,學(xué)到輸入與輸出的變量應(yīng)該怎樣對(duì)應(yīng)。

監(jiān)督學(xué)習(xí)方便簡(jiǎn)單,而且從工程實(shí)現(xiàn)的意義來(lái)說(shuō),其實(shí)是我們唯一可以成熟使用的范式。但實(shí)際應(yīng)用到學(xué)習(xí)對(duì)戰(zhàn)這種任務(wù)上立即就會(huì)呈現(xiàn)出局限性 。

我們想象一個(gè)最簡(jiǎn)單例子,監(jiān)督學(xué)習(xí)范式可以方便地運(yùn)用到單個(gè)人臉識(shí)別,單個(gè)數(shù)字識(shí)別,單個(gè)物體識(shí)別這樣的任務(wù)中。但如果不是“單個(gè)”數(shù)字識(shí)別,而是識(shí)別“一串”手寫數(shù)字,那么我們應(yīng)當(dāng)如何構(gòu)建監(jiān)督學(xué)習(xí)呢?

1) 可觀測(cè)的輸入:整個(gè)圖像;期望產(chǎn)生的輸出:類似于“02971736”這樣的數(shù)字串。

假設(shè)輸出的數(shù)字有個(gè)固定的長(zhǎng)度上限,比如5位數(shù)字。那么對(duì)一副圖像就可能有高達(dá)10^5種可能的輸出。想訓(xùn)練好一個(gè)“5位數(shù)字串”識(shí)別器,就需要對(duì)每一種可能的字串,提供與其對(duì)應(yīng)的圖像例子,比如10000張不同的“01234”圖像。那么,對(duì)所有的類別,“34567”,“34555”,“23588”…都提供10,000張用于訓(xùn)練的例子,其耗費(fèi)將不可忍受。而每種類別10,000個(gè)例子的數(shù)量還是十分保守的估計(jì),在典型的數(shù)字圖像數(shù)據(jù)集,比如MNIST中,每個(gè)單個(gè)數(shù)字“0”,“1”,……的例子就有此數(shù)。

2) 可觀測(cè)的輸入:矩形圖像塊;期望產(chǎn)生的輸出:“0”,……,“9”這類單個(gè)數(shù)字

在這種情況下,我們只需要針對(duì)10個(gè)數(shù)字作訓(xùn)練,例子數(shù)量呈指數(shù)級(jí)縮減。但它并不能直接解決“從圖像中識(shí)別數(shù)字串”這個(gè)問(wèn)題,因?yàn)檫€需面對(duì)“發(fā)現(xiàn)原始輸入圖像的哪些區(qū)域包含有意義的數(shù)字并截取”的難題。我們要仔細(xì)制定規(guī)則來(lái)確認(rèn)哪些區(qū)域包含數(shù)字及其順序,這是OCR任務(wù)中常用的方法,但恰如批評(píng)所言,這屬于“人工+智能”。

3) 可觀測(cè)的輸入:整個(gè)圖像,一個(gè)初始的矩形區(qū)域;期望產(chǎn)生的輸出:矩形區(qū)域中的圖像內(nèi)容“0……9”,矩形區(qū)域在圖像上的下一步移動(dòng),是否終止檢測(cè)

這就開(kāi)始脫離監(jiān)督學(xué)習(xí)的范式了。系統(tǒng)并非一次性的完成對(duì)輸入的分析,產(chǎn)生輸出,而是試圖做一個(gè)決策流,每個(gè)步驟都要根據(jù)一個(gè)本步觀測(cè)(輸入)得到一個(gè)相應(yīng)的決策(輸出)。而一個(gè)步驟的決策又會(huì)影響下一個(gè)步驟的觀測(cè)。如下圖所示:

它更加符合人類智能解決實(shí)際問(wèn)題的方式,而游戲環(huán)境則是這類方案天然的試煉場(chǎng)。這也是通過(guò)人工智能程序玩游戲,在近年來(lái)獲得如此關(guān)注的原因之一。事實(shí)上:

把上面流程中的“數(shù)字串原始圖像”換成“星際爭(zhēng)霸2游戲環(huán)境”,

把判定和決策的輸出結(jié)果換成上面討論過(guò)的單步宏操作,

把“截取出的圖像塊”換成上面討論過(guò)的AI的對(duì)游戲的觀測(cè),

我們就基本定義好了“玩星際爭(zhēng)霸的AI”所面對(duì)的問(wèn)題。

AlphaStar面對(duì)的就是這樣一個(gè)問(wèn)題,我們從它的博客文章[2]提到的若干技術(shù)要素出發(fā),對(duì)其訓(xùn)練方法進(jìn)行解說(shuō)與猜測(cè)。它使用的這套技術(shù)分為如下三個(gè)大類:

宏觀訓(xùn)練策略

單個(gè)智能體強(qiáng)化學(xué)習(xí)策略

智能體的構(gòu)造和訓(xùn)練的具體實(shí)現(xiàn)

拆解:AlphaStar的訓(xùn)練策略

1. 宏觀的群體學(xué)習(xí)策略

簡(jiǎn)略地講,AlphaStar 的總體訓(xùn)練過(guò)程,是一組多回合的“AI聯(lián)賽”。在介紹聯(lián)賽規(guī)則之前,我們先講為什么要訓(xùn)練一群,而不是一個(gè)AI,來(lái)挑戰(zhàn)星際爭(zhēng)霸2。首先,星際爭(zhēng)霸2本質(zhì)上是一個(gè)對(duì)抗性游戲,玩家追求勝利需要考慮對(duì)手的活動(dòng),并無(wú)全局意義上的最優(yōu)策略。其次,相比于圍棋,星際爭(zhēng)霸2對(duì)戰(zhàn)場(chǎng)狀態(tài)只能作不完全觀測(cè),且其狀態(tài)空間更加龐大,導(dǎo)致一系列AI會(huì)各有偏好并相互克制。

對(duì)于一個(gè)的AI算法來(lái)說(shuō),強(qiáng)化學(xué)習(xí)任務(wù)中的諸要素,自然地分作兩類:受控變量和外界環(huán)境。在學(xué)習(xí)的每個(gè)時(shí)間點(diǎn),AI選擇好的動(dòng)作和觀測(cè)結(jié)果,是兩邊交換信息的載體。

算法設(shè)計(jì)者須將外界環(huán)境視為黑箱,不能或不會(huì)在學(xué)習(xí)過(guò)程中加以控制。比如設(shè)計(jì)一個(gè) AI 來(lái)挑戰(zhàn) Atari 主機(jī)中的某個(gè)游戲,算法設(shè)計(jì)者只能啟動(dòng)強(qiáng)化學(xué)習(xí) AI 后從旁觀察。對(duì)于星際爭(zhēng)霸這類對(duì)戰(zhàn)式的任務(wù),被AI視為“外界環(huán)境”的元素,除游戲程序之外,對(duì)手一方同樣滿足:

不在AI的控制范圍

對(duì)“本” AI 的行動(dòng)作出反饋

影響游戲狀態(tài),從而影響“本” AI 在下一個(gè)時(shí)間節(jié)點(diǎn)取得的觀測(cè)結(jié)果

因此解決方案中需要考慮對(duì)手,為此構(gòu)建的學(xué)習(xí)環(huán)境中也需要包含一個(gè)對(duì)手。

AlphaStar從一個(gè)單一的“種子選手”啟動(dòng)聯(lián)賽,每一輪挑選有潛力的互相挑戰(zhàn),對(duì)優(yōu)勝AI略微變通后令其加入擴(kuò)大聯(lián)賽隊(duì)伍。一輪接一輪地將聯(lián)賽開(kāi)展下去。啟動(dòng)的種子AI來(lái)自基礎(chǔ)的監(jiān)督學(xué)習(xí):從Blizzard戰(zhàn)網(wǎng)下載人類玩家對(duì)戰(zhàn)數(shù)據(jù),訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)每局對(duì)戰(zhàn)每個(gè)時(shí)刻的(游戲狀態(tài),玩家操作)的對(duì)應(yīng)關(guān)系。(更詳細(xì)的,我們猜測(cè)應(yīng)該是若干步的游戲狀態(tài)序列和操作流之間的對(duì)應(yīng)關(guān)系)

獲得啟動(dòng)種子后的聯(lián)賽式訓(xùn)練見(jiàn)下圖(取自Deepmind blog)

博客中詳細(xì)介紹的是第四輪訓(xùn)練Network-006的過(guò)程。首先我們注意到這個(gè)訓(xùn)練過(guò)程能夠進(jìn)行就有兩個(gè)前提條件:i) 本輪的Network-006是前一輪Network-004的兩個(gè)變異后裔之一。ii)Network-006被選中參加本輪聯(lián)賽的比賽,以綠色表示,而每一輪當(dāng)中不參加比賽的AI選手以藍(lán)色表示。無(wú)論是否參加比賽,一輪當(dāng)中所有的AI選手都會(huì)被原封不動(dòng)地拷貝到下一輪。

之后,Network-006本場(chǎng)比賽的對(duì)手選定為Network-008,設(shè)定好學(xué)習(xí)參數(shù),就可以進(jìn)行強(qiáng)化學(xué)習(xí)訓(xùn)練了。注意Network-008在這次訓(xùn)練中充當(dāng)“陪練”的角色,其本身的網(wǎng)絡(luò)參數(shù)不會(huì)獲得調(diào)整。Network-006將Network-008當(dāng)作靶子來(lái)訓(xùn)練,會(huì)習(xí)得專門對(duì)付008的方案。至于008的出場(chǎng)是根據(jù)“Matchmaking Probability”算法抽取的,大約是在隨機(jī)分布的基礎(chǔ)上,讓高等級(jí)選手出場(chǎng)的機(jī)會(huì)略多,具體計(jì)算方式必須等論文出來(lái)才能確定。

“星際爭(zhēng)霸AI大聯(lián)盟”始終保留其歷史上的所有會(huì)員,每個(gè)AI都有出場(chǎng)機(jī)會(huì)。這樣可以避免學(xué)習(xí)終局的那些高等級(jí)AI,只會(huì)針對(duì)其它高等級(jí)AI,反而不懂如何應(yīng)對(duì)菜鳥(niǎo)的事件。訓(xùn)練的時(shí)候還會(huì)給一些比較弱的人工指導(dǎo),比如“初期鼓勵(lì)出狂戰(zhàn)士”等。這類指導(dǎo)策略也是隨機(jī)選取的,為的是進(jìn)一步提升下一輪聯(lián)盟中AI選手的多樣性。

從他們博文看來(lái),聯(lián)賽舉行了800輪之多。最后一輪過(guò)后,“星際爭(zhēng)霸AI大聯(lián)盟”中存在高達(dá)877個(gè)訓(xùn)練過(guò)的AI神經(jīng)網(wǎng)絡(luò)。在測(cè)試階段出戰(zhàn)者的選擇方式,則是從這些AI選手中以Nash Distribution采樣。

2. 單個(gè) AI 的訓(xùn)練

下面我們分析特定輪比賽中AI個(gè)體的學(xué)習(xí)問(wèn)題。這是一個(gè)強(qiáng)化學(xué)習(xí)任務(wù)。

在“強(qiáng)化學(xué)習(xí)”中,AI 自行嘗試輸出不同的決策,訓(xùn)練者反饋給 AI 激勵(lì)和新的數(shù)據(jù)。這些配對(duì)數(shù)據(jù)用于后期的“監(jiān)督學(xué)習(xí)”,從機(jī)器在探索中得到的數(shù)據(jù)對(duì),來(lái)學(xué)習(xí)環(huán)境輸入與操作輸出這兩大要素之間的聯(lián)系,在星際爭(zhēng)霸2單個(gè)AI訓(xùn)練中,我們將這兩個(gè)層面稱作“強(qiáng)化學(xué)習(xí)探索”和“構(gòu)建 AI 模型本體來(lái)學(xué)習(xí)樣本數(shù)據(jù)中的關(guān)聯(lián)”。

從“種子”選手開(kāi)始,每個(gè) AI 模型就繼承了以前的模型從它們對(duì)戰(zhàn)經(jīng)驗(yàn)數(shù)據(jù)中學(xué)習(xí)到的決策策略。而首個(gè)種子選手繼承的是人類選手的經(jīng)驗(yàn)。一旦啟動(dòng)學(xué)習(xí),AI 就立即面臨強(qiáng)化學(xué)習(xí)領(lǐng)域經(jīng)典的“守成探索不能得兼”(exploitation-vs-exploration)的問(wèn)題。

根據(jù) Deepmind 的介紹,AlphaStar 強(qiáng)化學(xué)習(xí)的骨干算法選用了“實(shí)干家-批評(píng)家”方法(Actor-Critic,AC)。為了加速訓(xùn)練以及取得穩(wěn)定和可靠的效果,AlphaStar 使用了大規(guī)模并行的 AC 實(shí)現(xiàn),另外結(jié)合了若干節(jié)約和利用有效經(jīng)驗(yàn)的技巧來(lái)對(duì)付星際爭(zhēng)霸2任務(wù)中學(xué)習(xí)遠(yuǎn)期回報(bào)的挑戰(zhàn)。

AlphaStar 具體使用的 AC 算法是2018 年 DeepMind提出的 IMPALA 算法[5]。其設(shè)計(jì)目的是解決高度并行的大規(guī)模學(xué)習(xí)問(wèn)題。運(yùn)行星際爭(zhēng)霸2這樣的大型游戲環(huán)境,令 AI 與之互動(dòng)產(chǎn)生數(shù)據(jù),是一個(gè)昂貴的計(jì)算任務(wù)。由于在 AC 算法框架下對(duì)模型參數(shù)的求導(dǎo)是一個(gè)伴隨劇烈波動(dòng)的隨機(jī)性操作,用這種方法估計(jì)出來(lái)的導(dǎo)數(shù)來(lái)優(yōu)化策略模型,只能讓策略大致上變得越來(lái)越好。這個(gè)所謂“大致”的靠譜程度,就取決于我們能不能把導(dǎo)數(shù)的“劇烈波動(dòng)”處理得不是那么劇烈。

一個(gè)自然的想法是:把策略多跑幾遍,導(dǎo)數(shù)多求幾次,求平均值。并行 AC 學(xué)習(xí)算法[6]就是對(duì)上述思路的直接實(shí)現(xiàn)—— 由于在 AC 架構(gòu)中實(shí)際產(chǎn)生數(shù)據(jù),探索環(huán)境的乃是“實(shí)干家”。我們?cè)诜峙溆?jì)算資源時(shí)偏向它,多雇傭?qū)嵏杉遥ǘ喾峙湟恍┫鄳?yīng)的策略執(zhí)行進(jìn)程),同時(shí)生成多條執(zhí)行軌跡,并通過(guò)一個(gè)中心學(xué)習(xí)者從這些多線歷史中估算策略參數(shù)的導(dǎo)數(shù),結(jié)果會(huì)更準(zhǔn)確,這些實(shí)干家相當(dāng)于中心學(xué)習(xí)者的分身。IMPALA 框架則更進(jìn)一步,所有分身實(shí)干家都只是“傀儡執(zhí)行者”,既不需要優(yōu)化策略參數(shù),也不需要計(jì)算導(dǎo)數(shù),只是負(fù)責(zé)執(zhí)行生來(lái)所繼承的策略,把經(jīng)驗(yàn)數(shù)據(jù)忠實(shí)地記載下來(lái),傳回中心學(xué)習(xí)算法。

即便不考慮對(duì)穩(wěn)定導(dǎo)數(shù)計(jì)算的作用,這種做法也極大緩解了高并行復(fù)雜模型學(xué)習(xí)中的節(jié)點(diǎn)通訊問(wèn)題?!翱軋?zhí)行者”和學(xué)習(xí)核心的關(guān)系,見(jiàn)上圖,它們之間的通信頻率比起頻繁傳遞網(wǎng)絡(luò)參數(shù)要少得多(可以完成一個(gè) episode 才更新一次策略參數(shù))。而執(zhí)行策略的歷史數(shù)據(jù)往往比大型網(wǎng)絡(luò)的導(dǎo)數(shù)(大小約為整個(gè)網(wǎng)絡(luò)參數(shù)集)來(lái)得經(jīng)濟(jì)很多。

AlphaStar 還采用了幾項(xiàng)對(duì) AC算法的補(bǔ)充措施。其中重要的一項(xiàng)是,每個(gè) AI 選手在訓(xùn)練期間,都會(huì)把自己的對(duì)戰(zhàn)歷史保存下來(lái),供 AC 算法在估計(jì)參數(shù)導(dǎo)數(shù)時(shí)使用,即模仿自己的優(yōu)秀歷史。這種在學(xué)習(xí)者“腦?!崩锩嬷胤艢v史經(jīng)驗(yàn)(Experience Replay)的做法,之前在估值方法與深度神經(jīng)網(wǎng)絡(luò)結(jié)合的工作中采用過(guò)(Deep Q-Learning,DQN),并首次實(shí)現(xiàn)了AI在視頻游戲上的突破。在直接學(xué)習(xí)策略參數(shù)的方案中,一般來(lái)說(shuō),這樣做會(huì)導(dǎo)致估計(jì)偏差——因?yàn)?AC 算法“期望”它見(jiàn)到的數(shù)據(jù)是執(zhí)行“本”策略得來(lái)。單采用參考?xì)v史數(shù)據(jù)的方案算出的模型改進(jìn)方向,其出發(fā)點(diǎn)就有一點(diǎn)過(guò)時(shí)了。但由于從少量樣本估計(jì)的模型參數(shù)的導(dǎo)數(shù)往往會(huì)有巨大波動(dòng)。為更穩(wěn)定地標(biāo)定正確的學(xué)習(xí)方向,可以犧牲終點(diǎn)的最優(yōu)特性。

還有一個(gè)措施,是把學(xué)習(xí)過(guò)的 AI 的策略精髓抽取出來(lái),轉(zhuǎn)移到正在學(xué)習(xí)的 AI 模型中(Policy Distillation)[7]。這個(gè)方法可以使用更緊湊的模型(參數(shù)小一個(gè)數(shù)量級(jí))來(lái)逼近更大更復(fù)雜的模型的表現(xiàn);可以合并多個(gè)策略來(lái)形成一個(gè)比其中每個(gè)個(gè)體都更可靠的策略——注意由于優(yōu)秀策略的分布不是連續(xù)的,這不是一個(gè)簡(jiǎn)單平均的問(wèn)題。比如考慮超級(jí)瑪麗兄弟:策略A是跳起來(lái)踩扁蘑菇,策略B是發(fā)射火球然后直接前進(jìn),如何在A和B之間折衷相當(dāng)困難;還可以在策略學(xué)習(xí)這個(gè)層面形成迭代:每一輪的學(xué)習(xí)都把上一輪學(xué)習(xí)到策略的精髓轉(zhuǎn)移出來(lái),在此基礎(chǔ)上開(kāi)始。由于Deepmind語(yǔ)焉不詳,目前還不清楚這個(gè)方法是如何用于AlphaStar訓(xùn)練上的。

3. 神經(jīng)網(wǎng)絡(luò)模型和訓(xùn)練

強(qiáng)化學(xué)習(xí)AI算法。最終落實(shí)到具體的調(diào)整策略/模型的單個(gè)學(xué)習(xí)步驟上,也就是訓(xùn)練迭代的最內(nèi)層循環(huán)中,還是要回歸到監(jiān)督學(xué)習(xí)范式,變成“針對(duì)這樣的輸入,鼓勵(lì)(懲罰)模型產(chǎn)生如此的輸出”的優(yōu)化操作。在傳統(tǒng)強(qiáng)化學(xué)習(xí)研究歷史上,建立策略或者估值是理論重點(diǎn)。系統(tǒng)的狀態(tài)往往被少數(shù)幾個(gè)變量完美的描述,比如一個(gè)牛頓力學(xué)系統(tǒng)中各個(gè)剛體的位置和速度。但是在任何稍微復(fù)雜一點(diǎn)的問(wèn)題中,數(shù)據(jù)表示問(wèn)題仍然是一個(gè)挑戰(zhàn):即使強(qiáng)化學(xué)習(xí)算法非常有效,AI也必須知道當(dāng)前觀察到的狀態(tài)與之前經(jīng)歷過(guò)的狀態(tài)之間的聯(lián)系。星際爭(zhēng)霸游戲這類問(wèn)題,其觀測(cè)是十分復(fù)雜的對(duì)象(序列),于是我們也就要面對(duì)統(tǒng)計(jì)學(xué)習(xí)中的典型問(wèn)題:通過(guò)分析數(shù)據(jù),建立(輸入,輸出)之間的聯(lián)系。

目前大家的共識(shí)是,這個(gè)問(wèn)題的核心是把輸入的數(shù)據(jù)轉(zhuǎn)換成一種有效的表示,這個(gè)“有效”是從期望產(chǎn)生的輸出結(jié)果的角度來(lái)評(píng)判的。具體一點(diǎn)說(shuō),如果我們的訓(xùn)練數(shù)據(jù)中有兩個(gè)樣本(輸入A,輸出A)和(輸入B,輸出B),后來(lái)又觀測(cè)到了(輸入C)。一個(gè)好的輸入數(shù)據(jù)的表達(dá)應(yīng)當(dāng)能幫助我們估計(jì)想要的“輸出C”。比如我們做完“輸入A->表達(dá)A”,“輸入B->表達(dá)B”和“輸入C->表達(dá)C”,然后比一比相似度(表達(dá)C,表達(dá)A)和(表達(dá)C,表達(dá)B),然后從A和B當(dāng)中挑選更相似的那個(gè),用它的輸出來(lái)預(yù)估C的輸出。如果這種估計(jì)方式真的能得到對(duì)于C來(lái)說(shuō)合適的輸出,我們說(shuō)這個(gè)表達(dá)方式對(duì)于這個(gè)數(shù)據(jù)分析任務(wù)來(lái)說(shuō)是好的。如果能完美的完成這個(gè)相似度辨別的任務(wù),那么很多問(wèn)題就可以簡(jiǎn)化成“查詢一下現(xiàn)在遇到的狀況跟訓(xùn)練時(shí)碰到的哪個(gè)情況類似,照當(dāng)初的經(jīng)驗(yàn)辦理”。從另一方面說(shuō),如果能將每一個(gè)原始數(shù)據(jù)樣本變換到一個(gè)多維向量,這些向量之間可以用簡(jiǎn)單的做差算距離來(lái)衡量相似度,那么這個(gè)變換也算解決了衡量數(shù)據(jù)樣本之間的相似度的問(wèn)題。這個(gè)任務(wù)有個(gè)術(shù)語(yǔ)叫做“數(shù)據(jù)表示”。

注意從上面的討論我們可以看出,沒(méi)有絕對(duì)“好”的數(shù)據(jù)表示,我們根據(jù)對(duì)某個(gè)特定的任務(wù)是否有效來(lái)衡量一種表示方法的好壞。數(shù)據(jù)表達(dá)的質(zhì)量可不僅僅取決于輸入數(shù)據(jù)的形式,而是跟整個(gè)數(shù)據(jù)分析的任務(wù)密切相關(guān)。比方說(shuō)輸入的對(duì)象是自然人,人當(dāng)然是個(gè)十分復(fù)雜的對(duì)象,如果要量化描述之,那么對(duì)于“預(yù)估此人能否成為優(yōu)秀的籃球隊(duì)員”這個(gè)任務(wù),“身高、摸高、100米跑時(shí)間”這些量化的指標(biāo)就比較合理;而對(duì)于“預(yù)估此人會(huì)不會(huì)去觀看某部電影”的任務(wù),“票價(jià)與此人月收入的對(duì)比、前一年上映的每部電影此人是否觀看過(guò)……”這些量化指標(biāo)就顯得合適。

深度學(xué)習(xí)的興起的最大功臣是在隨這類模型而得到的有效數(shù)據(jù)表示:從輸入到輸出之間架構(gòu)好深度神經(jīng)網(wǎng)絡(luò)之后,我們就自然而然地把輸入數(shù)據(jù)的轉(zhuǎn)換,預(yù)測(cè)輸出的數(shù)據(jù)模型,模型產(chǎn)生的輸出與真實(shí)樣例之間的對(duì)比,這三者統(tǒng)一到了同一個(gè)訓(xùn)練過(guò)程中。神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)也就同時(shí)規(guī)定了“怎樣整理轉(zhuǎn)換輸入數(shù)據(jù)”和“怎樣用整理過(guò)的輸入數(shù)據(jù)預(yù)測(cè)所需的輸出”這兩個(gè)在數(shù)據(jù)分析中的關(guān)鍵步驟。

?序列轉(zhuǎn)換模型

根據(jù)Deepmind的說(shuō)法,AlphaStar 采用了基于注意力機(jī)制的序列轉(zhuǎn)換的表示模型。這種數(shù)據(jù)表達(dá)方法的起源是在自然語(yǔ)言處理領(lǐng)域,我們能夠想象,這種方法擅長(zhǎng)于表示成序列出現(xiàn)的數(shù)據(jù)樣本。具體地說(shuō),transformer模型來(lái)自于自然語(yǔ)言處理中的翻譯任務(wù),把一句話——即一串單詞和標(biāo)點(diǎn)(語(yǔ)言的基本單位,tokens)——轉(zhuǎn)換成另一種語(yǔ)言的基本單位。Deepmind同樣沒(méi)有詳述這個(gè)模型在 AlphaStar 中的具體使用方法。不過(guò)據(jù)上文提到的使用人類對(duì)戰(zhàn)數(shù)據(jù)預(yù)訓(xùn)練作為“種子AI”的做法來(lái)看,有可能預(yù)訓(xùn)練的任務(wù)被制定成了學(xué)習(xí)從輸入“游戲狀態(tài)序列”到輸出“操作指令序列”之間的聯(lián)系。

?策略模型

基于注意力機(jī)制的序列轉(zhuǎn)換目前已經(jīng)發(fā)展成為一個(gè)大的模型家族(剛剛在自然語(yǔ)言處理領(lǐng)域大放異彩的BERT也是其中一員),Deepmind 提到 AlphaStar 的輸出策略的計(jì)算模型是一種產(chǎn)生“指針”來(lái)“引用”自己的輸入序列從而構(gòu)建輸出序列的自回歸(auto-regression)模型。

?基于多智能體的批評(píng)家

AlphaStar 的強(qiáng)化學(xué)習(xí)核心是“實(shí)干家-批評(píng)者”(AC)算法族。其具體的選擇是引入一種更加適應(yīng)多個(gè)AI共同學(xué)習(xí),但每個(gè)AI的觀測(cè)受限的學(xué)習(xí)環(huán)境的估值方法。其基本原理是采用“要不然”式估值(原名為Counterfactual Multiagent,直譯為“反事實(shí)多智能體”),批評(píng)家在評(píng)判AI之前做的一項(xiàng)決策的價(jià)值時(shí),使用“要是當(dāng)時(shí)不這么做”的話平均下來(lái)會(huì)有若干回報(bào),那么當(dāng)初這么做的優(yōu)勢(shì)(劣勢(shì))也就相應(yīng)得出。

以上大致是我們從目前已有的知識(shí)所能推測(cè)的AlphaStar的詳細(xì)訓(xùn)練方案。在Deepmind正式論文發(fā)表之后,補(bǔ)足其中少量細(xì)節(jié),我們就可以沿用這套方法,創(chuàng)建自己的星際爭(zhēng)霸2訓(xùn)練環(huán)境。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 人工智能
    +關(guān)注

    關(guān)注

    1793

    文章

    47567

    瀏覽量

    239417
  • 強(qiáng)化學(xué)習(xí)

    關(guān)注

    4

    文章

    268

    瀏覽量

    11275
  • DeepMind
    +關(guān)注

    關(guān)注

    0

    文章

    131

    瀏覽量

    10901

原文標(biāo)題:《星際2》最強(qiáng)AI復(fù)現(xiàn)計(jì)劃:如何打造自己的AlphaStar

文章出處:【微信號(hào):AI_era,微信公眾號(hào):新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    嵌入式和人工智能究竟是什么關(guān)系?

    了重要作用。在未來(lái),隨著嵌入式系統(tǒng)和人工智能技術(shù)的不斷進(jìn)步,我們可以預(yù)見(jiàn)更多創(chuàng)新應(yīng)用的出現(xiàn),為社會(huì)發(fā)展和生活品質(zhì)的提升帶來(lái)更多可能性。
    發(fā)表于 11-14 16:39

    《AI for Science:人工智能驅(qū)動(dòng)科學(xué)創(chuàng)新》第6章人AI與能源科學(xué)讀后感

    幸得一好書(shū),特此來(lái)分享。感謝平臺(tái),感謝作者。受益匪淺。 在閱讀《AI for Science:人工智能驅(qū)動(dòng)科學(xué)創(chuàng)新》的第6章后,我深刻感受到人工智能在能源科學(xué)領(lǐng)域中的巨大潛力和廣泛應(yīng)用。這一章詳細(xì)
    發(fā)表于 10-14 09:27

    AI for Science:人工智能驅(qū)動(dòng)科學(xué)創(chuàng)新》第4章-AI與生命科學(xué)讀后感

    很幸運(yùn)社區(qū)給我一個(gè)閱讀此書(shū)的機(jī)會(huì),感謝平臺(tái)。 《AI for Science:人工智能驅(qū)動(dòng)科學(xué)創(chuàng)新》第4章關(guān)于AI與生命科學(xué)的部分,為我們揭示了人工智能技術(shù)在生命科學(xué)領(lǐng)域中的廣泛應(yīng)用和深遠(yuǎn)影響。在
    發(fā)表于 10-14 09:21

    《AI for Science:人工智能驅(qū)動(dòng)科學(xué)創(chuàng)新》第一章人工智能驅(qū)動(dòng)的科學(xué)創(chuàng)新學(xué)習(xí)心得

    ,無(wú)疑為讀者鋪設(shè)了一條探索人工智能(AI)如何深刻影響并推動(dòng)科學(xué)創(chuàng)新的道路。在閱讀這一章后,我深刻感受到了人工智能技術(shù)在科學(xué)領(lǐng)域的廣泛應(yīng)用潛力以及其帶來(lái)的革命性變化,以下是我個(gè)人的學(xué)習(xí)心得: 1.
    發(fā)表于 10-14 09:12

    risc-v在人工智能圖像處理應(yīng)用前景分析

    RISC-V在人工智能圖像處理領(lǐng)域的應(yīng)用前景十分廣闊,這主要得益于其開(kāi)源性、靈活性和低功耗等特點(diǎn)。以下是對(duì)RISC-V在人工智能圖像處理應(yīng)用前景的詳細(xì)分析: 一、RISC-V的基本特點(diǎn) RISC-V
    發(fā)表于 09-28 11:00

    人工智能ai 數(shù)電 模電 模擬集成電路原理 電路分析

    人工智能ai 數(shù)電 模電 模擬集成電路原理 電路分析 想問(wèn)下哪些比較容易學(xué) 不過(guò)好像都是要學(xué)的
    發(fā)表于 09-26 15:24

    人工智能ai4s試讀申請(qǐng)

    目前人工智能在繪畫(huà)對(duì)話等大模型領(lǐng)域應(yīng)用廣闊,ai4s也是方興未艾。但是如何有效利用ai4s工具助力科研是個(gè)需要研究的課題,本書(shū)對(duì)ai4s基本原理和原則,方法進(jìn)行描訴,有利于總結(jié)經(jīng)驗(yàn),擬按照要求準(zhǔn)備相關(guān)體會(huì)材料。看能否有助于入門和提高ss
    發(fā)表于 09-09 15:36

    名單公布!【書(shū)籍評(píng)測(cè)活動(dòng)NO.44】AI for Science:人工智能驅(qū)動(dòng)科學(xué)創(chuàng)新

    AI for Science的基礎(chǔ)知識(shí),梳理了產(chǎn)業(yè)地圖,并給出了相關(guān)政策啟示。 內(nèi)容提要 人工智能驅(qū)動(dòng)科學(xué)創(chuàng)新(AI for Science)帶來(lái)的產(chǎn)業(yè)變革與每個(gè)人息息相關(guān)。本書(shū)聚焦于人工智能
    發(fā)表于 09-09 13:54

    墨芯2024世界人工智能大會(huì)精彩回顧

    日前,國(guó)家級(jí)AI頂級(jí)盛會(huì)——2024世界人工智能大會(huì)(簡(jiǎn)稱“WAIC 2024”)現(xiàn)場(chǎng),墨芯人工智能展出的最新智能客服系統(tǒng)和高性能計(jì)算卡S4
    的頭像 發(fā)表于 08-28 14:58 ?572次閱讀

    報(bào)名開(kāi)啟!深圳(國(guó)際)通用人工智能大會(huì)將啟幕,國(guó)內(nèi)外大咖齊聚話AI

    呈現(xiàn)、產(chǎn)業(yè)展覽、技術(shù)交流、學(xué)術(shù)論壇于一體的世界級(jí)人工智能合作交流平臺(tái)。本次大會(huì)暨博覽會(huì)由工業(yè)和信息化部政府采購(gòu)中心、廣東省工商聯(lián)、前海合作區(qū)管理局、深圳市工信局等單位指導(dǎo),深圳市人工智能產(chǎn)業(yè)協(xié)會(huì)主辦
    發(fā)表于 08-22 15:00

    FPGA在人工智能中的應(yīng)用有哪些?

    FPGA(現(xiàn)場(chǎng)可編程門陣列)在人工智能領(lǐng)域的應(yīng)用非常廣泛,主要體現(xiàn)在以下幾個(gè)方面: 一、深度學(xué)習(xí)加速 訓(xùn)練和推理過(guò)程加速:FPGA可以用來(lái)加速深度學(xué)習(xí)的訓(xùn)練和推理過(guò)程。由于其高并行性和低延遲特性
    發(fā)表于 07-29 17:05

    5G智能物聯(lián)網(wǎng)課程之Aidlux下人工智能開(kāi)發(fā)(SC171開(kāi)發(fā)套件V2

    5G智能物聯(lián)網(wǎng)課程之Aidlux下人工智能開(kāi)發(fā)(SC171開(kāi)發(fā)套件V2) 課程類別 課程名稱 視頻課程時(shí)長(zhǎng) 視頻課程鏈接 課件鏈接 人工智能 參賽基礎(chǔ)知識(shí)指引 14分50秒 https
    發(fā)表于 05-10 16:46

    5G智能物聯(lián)網(wǎng)課程之Aidlux下人工智能開(kāi)發(fā)(SC171開(kāi)發(fā)套件V1)

    軟件使用 11分46秒 https://t.elecfans.com/v/25507.html *附件:AidLux平臺(tái)使用介紹.pdf 人工智能 AIMO模型優(yōu)化平臺(tái)介紹 2分20秒 https
    發(fā)表于 04-01 10:40

    嵌入式人工智能的就業(yè)方向有哪些?

    嵌入式人工智能的就業(yè)方向有哪些? 在新一輪科技革命與產(chǎn)業(yè)變革的時(shí)代背景下,嵌入式人工智能成為國(guó)家新型基礎(chǔ)建設(shè)與傳統(tǒng)產(chǎn)業(yè)升級(jí)的核心驅(qū)動(dòng)力。同時(shí)在此背景驅(qū)動(dòng)下,眾多名企也紛紛在嵌入式人工智能領(lǐng)域布局
    發(fā)表于 02-26 10:17

    生成式人工智能和感知式人工智能的區(qū)別

    生成式人工智能和感知式人工智能人工智能領(lǐng)域中兩種重要的研究方向。本文將探討這兩種人工智能的區(qū)別。 生成式人工智能(Generative A
    的頭像 發(fā)表于 02-19 16:43 ?1938次閱讀