1
本文作者: 岑大師 | 2017-10-19 03:57 |
AlphaGo“退役”了,但Deepmind在圍棋上的探索并沒有停止。
今年5月的烏鎮(zhèn)大會(huì)的“人機(jī)對局”中,中國棋手、世界冠軍柯潔9段以0:3不敵AlphaGo。隨后Deepmind創(chuàng)始人Hassabis宣布,AlphaGo將永久退出競技舞臺,不再進(jìn)行比賽。同時(shí)Hassbis表示:“我們計(jì)劃在今年稍晚時(shí)候發(fā)布最后一篇學(xué)術(shù)論文,詳細(xì)介紹我們在算法效率上所取得的一系列進(jìn)展,以及應(yīng)用在其他更全面領(lǐng)域中的可能性。就像第一篇 AlphaGo 論文一樣,我們希望更多的開發(fā)者能夠接過接力棒,利用這些全新的進(jìn)展開發(fā)出屬于自己的強(qiáng)大圍棋程序?!?/p>
今天,Deepmind在如約在Nature發(fā)布了這篇論文——在這篇名為《Mastering the game of Go without human knowledge》(不使用人類知識掌握圍棋)的論文中,Deepmind展示了他們更強(qiáng)大的新版本圍棋程序“AlphaGo Zero”,驗(yàn)證了即使在像圍棋這樣最具挑戰(zhàn)性的領(lǐng)域,也可以通過純強(qiáng)化學(xué)習(xí)的方法自我完善達(dá)到目的。
人工智能的一個(gè)長期目標(biāo)是通過后天的自主學(xué)習(xí)(雷鋒網(wǎng)注:tabula rasa,意為“白板”,指所有的知識都是逐漸從他們的感官和經(jīng)驗(yàn)而來),在一個(gè)具有挑戰(zhàn)性的領(lǐng)域創(chuàng)造出超越人類的精通程度學(xué)習(xí)的算法。此前,AlphaGo成為首個(gè)戰(zhàn)勝人類圍棋世界冠軍的程序,當(dāng)時(shí)的AlphaGo通過深層神經(jīng)網(wǎng)絡(luò)進(jìn)行決策,并使用人類專家下棋的數(shù)據(jù)進(jìn)行監(jiān)督學(xué)習(xí),同時(shí)也通過自我對弈進(jìn)行強(qiáng)化學(xué)習(xí)。在這篇論文中,我們將介紹一種僅基于強(qiáng)化學(xué)習(xí)的算法,而不使用人類的數(shù)據(jù)、指導(dǎo)或規(guī)則以外的領(lǐng)域知識。AlphaGo成為自己的老師,這一神經(jīng)網(wǎng)絡(luò)被訓(xùn)練用于預(yù)測AlphaGo自己的落子選擇,提高了樹搜索的強(qiáng)度,使得落子質(zhì)量更高,具有更強(qiáng)的自我對弈迭代能力。從一塊白板開始,我們的新程序AlphaGo Zero表現(xiàn)驚人,并以100:0擊敗了此前版本的AlphaGo。
雷鋒網(wǎng)發(fā)現(xiàn),這篇論文的最大亮點(diǎn),在于無需任何人類指導(dǎo),通過全新的強(qiáng)化學(xué)習(xí)方式自己成為自己的老師,在圍棋這一最具挑戰(zhàn)性的領(lǐng)域達(dá)到超過人類的精通程度。相比起之前使用人類對弈的數(shù)據(jù),這一算法訓(xùn)練時(shí)間更短,僅用3天時(shí)間就達(dá)到了擊敗李世石的AlphaGo Lee的水平,21天達(dá)到了之前擊敗柯潔的AlphaGo Master的水平。
在3天內(nèi)——也就是AlphaGo Zero在擊敗AlphaGo Lee之前,曾進(jìn)行過490萬次自我對弈練習(xí)。 相比之下,AlphaGo Lee的訓(xùn)練時(shí)間長達(dá)數(shù)月之久。AlphaGo Zero不僅發(fā)現(xiàn)了人類數(shù)千年來已有的許多圍棋策略,還設(shè)計(jì)了人類玩家以前未知的的策略。
據(jù)Deepmind博客介紹,AlphaGo Zero采用了新的強(qiáng)化學(xué)習(xí)方法,從一個(gè)不知道圍棋游戲規(guī)則的神經(jīng)網(wǎng)絡(luò)開始,然后通過將這個(gè)神經(jīng)網(wǎng)絡(luò)與強(qiáng)大的搜索算法結(jié)合,然后就可以實(shí)現(xiàn)自我對弈了。在這樣的訓(xùn)練過程中,神經(jīng)網(wǎng)絡(luò)被更新和調(diào)整,并用于預(yù)測下一步落子和最終的輸贏。
這一更新后的神經(jīng)網(wǎng)絡(luò)將再度與搜索算法組合,這一過程將不斷重復(fù),創(chuàng)建出一個(gè)新的、更強(qiáng)大版本的AlphaGo Zero。在每次迭代中,系統(tǒng)的性能和自我對弈的質(zhì)量均能夠有部分提高。“日拱一卒,功不唐捐”,最終的神經(jīng)網(wǎng)絡(luò)越來越精確,AlphaGo Zero也變得更強(qiáng)。
Alpha Zero與之前版本有如下不同:
AlphaGo Zero 只使用棋盤上的黑子和白子作為輸入,而之前版本AlphaGo的輸入均包含部分人工特征;
AlphaGo Zero使用一個(gè)神經(jīng)網(wǎng)絡(luò)而不是之前的兩個(gè)。以前版本的 AlphaGo 使用一個(gè)“策略網(wǎng)絡(luò)”來選擇落子的位置,并使用另一個(gè)“價(jià)值網(wǎng)絡(luò)”來預(yù)測游戲的輸贏結(jié)果。而在AlphaGo Zero中下一步落子的位置和輸贏評估在同一個(gè)神經(jīng)網(wǎng)絡(luò)中進(jìn)行,從而使其可以更好地進(jìn)行訓(xùn)練和評估。
AlphaGo Zero 無需進(jìn)行隨機(jī)推演(Rollout)——這是一種在其他圍棋程序中廣泛使用于勝負(fù)的快速隨機(jī)策略,從而通過比較確定每一手之后輸贏的概率選擇最佳落子位置,相反,它依賴于高質(zhì)量的神經(jīng)網(wǎng)絡(luò)來評估落子位置。
上述差異均有主于提高系統(tǒng)的性能和通用性,但使最關(guān)鍵的仍是算法上的改進(jìn),不僅使得AlphaGo Zero更加強(qiáng)大,在功耗上也更為高效。
AlphaGo不同版本所需的GPU/TPU資源,雷鋒網(wǎng)整理
新方法使用了一個(gè)具有參數(shù)θ的深層神經(jīng)網(wǎng)絡(luò)fθ。這個(gè)神經(jīng)網(wǎng)絡(luò)將棋子的位置和歷史狀態(tài)s作為輸入,并輸出下一步落子位置的概率,用, (p, v) = fθ(s)表示。落子位置概率向量p代表每一步棋(包括不應(yīng)手)的概率,數(shù)值v是一個(gè)標(biāo)量估值,代表棋手下在當(dāng)前位置s的獲勝概率。
AlphaGo Zero的神經(jīng)網(wǎng)絡(luò)通過新的自我對弈數(shù)據(jù)進(jìn)行訓(xùn)練,在每個(gè)位置s,神經(jīng)網(wǎng)絡(luò)fθ都會(huì)進(jìn)行蒙特卡洛樹(MCTS)搜索,得出每一步落子的概率π。這一落子概率通常優(yōu)于原始的落子概率向量p,在自我博弈過程中,程序通過基于蒙特卡洛樹的策略來選擇下一步,并使用獲勝者z作為價(jià)值樣本,這一過程可被視為一個(gè)強(qiáng)有力的評估策略操作。在這一過程中,神經(jīng)網(wǎng)絡(luò)參數(shù)不斷更新,落子概率和價(jià)值 (p,v)= fθ(s)也越來越接近改善后的搜索概率和自我對弈勝者 (π, z),這些新的參數(shù)也會(huì)被用于下一次的自我對弈迭代以增強(qiáng)搜索的結(jié)果,下圖即為自我訓(xùn)練的流程圖。
AlphaGo Zero 自我對弈訓(xùn)練的流程示意圖
雖然這一技術(shù)還處于早期階段,但AlphaGo Zero的突破使得我們在未來面對人類面對的一些重大挑戰(zhàn)(如蛋白質(zhì)折疊、減少能源消耗、尋找革命性的新材料等)充滿信心。眾所周知,深度學(xué)習(xí)需要大量的數(shù)據(jù),而在很多情況下,獲得大量人類數(shù)據(jù)的成本過于高昂,甚至根本難以獲得。如果將該技術(shù)應(yīng)用到其他問題上,將會(huì)有可能對我們的生活產(chǎn)生根本性的影響。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。