0
本文作者: 叢末 | 2019-02-15 09:54 |
雷鋒網(wǎng) AI 科技評(píng)論按: Facebook 人工智能研究院(FAIR)于去年開(kāi)源的 ELF OpenGo 日前再度迎來(lái)更新,本次 FAIR 不僅發(fā)布了該系統(tǒng)新的功能和研究成果,還發(fā)布了可在 Windows 上運(yùn)行的 AI 版本,讓圍棋棋手能更易于使用該系統(tǒng)來(lái)幫助自己訓(xùn)練。以下是田淵棟等人對(duì)該開(kāi)源項(xiàng)目的詳細(xì)解讀,原文發(fā)布在 FAIR 的官方博客上。
自去年 Facebook 人工智能研究院(FAIR)發(fā)布了 ELF OpenGo,AI 研究人員就利用該圍棋 AI 來(lái)更好地理解 AI 系統(tǒng)是如何學(xué)習(xí)的,同時(shí)圍棋愛(ài)好者也將它作為一位最先進(jìn)的 AI 對(duì)手進(jìn)行對(duì)戰(zhàn)來(lái)測(cè)試自己的水平。這個(gè)開(kāi)源 AI 在與人類(lèi)的對(duì)戰(zhàn)中表現(xiàn)非常出色,其中就包括以 20:0 的戰(zhàn)績(jī)擊敗了圍棋職業(yè)棋手,同時(shí),它也已被 AI 研究界廣泛應(yīng)用于執(zhí)行圍棋實(shí)驗(yàn),并重新產(chǎn)生了其他結(jié)果。ELF OpenGo 在基于 AI 的圍棋比賽中也已經(jīng)對(duì)戰(zhàn)了從它自身修改而來(lái)的多個(gè)版本。同時(shí),它也作為人類(lèi)的隊(duì)友參加了圍棋比賽,包括參加美國(guó)圍棋大會(huì)混雙賽,在這個(gè)比賽中,每個(gè)隊(duì)由一位人類(lèi)選手和一個(gè) ELF OpenGo 系統(tǒng)組成,他們共同對(duì)戰(zhàn)另一個(gè)人類(lèi)與 AI 聯(lián)合組成的戰(zhàn)隊(duì)。
日前,我們對(duì) ELF OpenGo 進(jìn)行了更新,并發(fā)布了其新的功能和研究成果,包括從頭開(kāi)始重新訓(xùn)練的經(jīng)過(guò)更新的模型。同時(shí),我們還發(fā)布了可在 Windows 上運(yùn)行的 AI 版本,讓圍棋棋手能更易于使用該系統(tǒng)來(lái)幫助自己訓(xùn)練,另外,系統(tǒng)對(duì)于這些棋手來(lái)說(shuō)也是一個(gè)獨(dú)一無(wú)二的「檔案館」,里面展現(xiàn)了 ELF OpenGo 對(duì) 87,000 場(chǎng)圍棋職業(yè)比賽的分析?,F(xiàn)在,棋手們可以也看到系統(tǒng)是如何排出 18 世紀(jì)的最佳職業(yè)棋手,如何對(duì)這些棋手的表現(xiàn)進(jìn)行細(xì)致的評(píng)估,并最終回歸到特定的比賽中的個(gè)人表現(xiàn)。我們非常高興看到這個(gè)通用平臺(tái)經(jīng)過(guò)改進(jìn),能夠幫助研究者更好地理解 AI 以及圍棋界的棋手們也可以使用該平臺(tái)來(lái)磨煉他們的技能并研究圍棋賽事。
韓國(guó)棋院的公關(guān)助力總監(jiān) Beomgeun Cho 就曾表示:「我可以肯定地說(shuō),ELF OpenGo 開(kāi)源項(xiàng)目給韓國(guó)的圍棋界帶來(lái)了巨大的影響。自它問(wèn)世以來(lái),韓國(guó)幾乎每一位競(jìng)賽型職業(yè)棋手都在使用 ELF Go 程序來(lái)分析他們自己以及其他棋手的對(duì)戰(zhàn)情況。并且正是因?yàn)檫@樣,不僅韓國(guó)的圍棋水平得到提高,整個(gè)世界的圍棋水平也得以明顯提升?!?/p>
當(dāng) DeepMind 在 2017 年發(fā)布 AlphaGo Zero 時(shí),就展示了擁有 4000 年歷史的圍棋作為深度強(qiáng)化學(xué)習(xí)(RL)相關(guān)研究者的試驗(yàn)臺(tái)的價(jià)值。由于其高分支乘數(shù)、卷積交互及復(fù)雜模式,有效的圍棋 AI 必須泛化到?jīng)]見(jiàn)過(guò)的復(fù)雜場(chǎng)景中,來(lái)探索并找到新的策略。它提供了一個(gè)上百萬(wàn)種潛在的移動(dòng)組合環(huán)境,不過(guò)缺少了隱藏的或基于偶然性的游戲機(jī)制(例如滾動(dòng)式骰子或洗牌)。不過(guò)雖然 AlphaGo Zero 和它的進(jìn)化版本 AlphaZero 都已經(jīng)證明了 AI 系統(tǒng)經(jīng)過(guò)訓(xùn)練后可以持續(xù)地打敗人類(lèi)圍棋棋手,但是對(duì)于更廣大的 AI 研究界來(lái)說(shuō),它們的作用更多地是作為一個(gè)深度強(qiáng)化學(xué)習(xí)的成功案例而非一種工具。
作為其開(kāi)放科學(xué)實(shí)施中的一部分,F(xiàn)AIR 去年發(fā)布了 AlphaZero 的另一種實(shí)現(xiàn)方式——ELF OpenGo,讓其他研究實(shí)驗(yàn)室能夠更加深入地了解這些方法的工作原理。該模型的開(kāi)源同樣為未來(lái)的研究工作提供了一個(gè)必不可少的基準(zhǔn)。然而 FAIR 也意識(shí)到,由于該模型需要巨大的計(jì)算資源,大多數(shù)的研究者即便使用開(kāi)源的代碼也無(wú)法獲得與其相同的結(jié)果。這就是為什么我們?cè)俣劝l(fā)表一篇新論文(論文查看地址:https://dl.fbaipublicfiles.com/elfopengo/pdf/arxiv.pdf),基于從頭開(kāi)始進(jìn)行重新訓(xùn)練的 ELF OpenGo 與大家分享一些新的思想。這篇論文很好地解釋了為什么 AI 在與人類(lèi)棋手的對(duì)戰(zhàn)中有這么強(qiáng)大的表現(xiàn),并闡明了科技的局限性,而這種局限性是可以幫助研究者更好地理解 AI 系統(tǒng)的潛在機(jī)制并將其應(yīng)用到其他的場(chǎng)景中的。
對(duì)于研究界來(lái)說(shuō),我們更新后的模型和代碼是 ELF OpenGo 迄今為止最好的版本,同時(shí)通過(guò)發(fā)布由 2000 萬(wàn)局自我對(duì)弈的棋局和 1500 個(gè)用來(lái)生成這些棋局的中間模型組成的數(shù)據(jù)集,我們也進(jìn)一步降低了模型對(duì)計(jì)算資源的要求(在訓(xùn)練過(guò)程中,自我對(duì)弈是對(duì)硬件資源要求最高的環(huán)節(jié))。并且對(duì)于那些想要深入挖掘基于強(qiáng)化學(xué)習(xí)的圍棋 AI 是怎樣學(xué)習(xí)和下棋的研究人員來(lái)說(shuō),我們的這篇論文也詳細(xì)介紹了大量消融實(shí)驗(yàn)(ablation experiments)的結(jié)果,并在評(píng)估中更改了個(gè)體特征以更好地理解這些算法種類(lèi)的屬性。
ELF OpenGo 擁有強(qiáng)大性能的關(guān)鍵就在于它不像人類(lèi)一樣學(xué)習(xí)。深度強(qiáng)化學(xué)習(xí)反復(fù)試錯(cuò)的屬性(即系統(tǒng)探索各種不同的動(dòng)作,得到失敗案例也得到成功案例,并從這些案例中學(xué)習(xí)來(lái)采取接下來(lái)的行動(dòng))類(lèi)似于人類(lèi)一般意義上的學(xué)習(xí),不過(guò)特定的機(jī)制是非常不同的。例如,ELF OpenGo 可能僅僅從它贏得或敗掉的比賽或者自我對(duì)弈棋局的知識(shí)范圍中學(xué)習(xí)。它不知道哪步特定的棋會(huì)對(duì)它的輸贏產(chǎn)生最大的影響。與人類(lèi)棋手不同,ELF OpenGo 無(wú)法從知道每步棋的好壞的水平更高的棋手那里獲得建議,也沒(méi)有機(jī)會(huì)去與比它自身的更強(qiáng)棋手進(jìn)行對(duì)戰(zhàn)。FAIR 的最終模型是 2000 萬(wàn)局自我對(duì)弈棋局的結(jié)果。
當(dāng)我們使用這一模型去分析人類(lèi)職業(yè)棋手所下的棋局時(shí),它在整個(gè)訓(xùn)練時(shí)長(zhǎng) 10% 的時(shí)間內(nèi),就能夠在其學(xué)習(xí)過(guò)程中早早地預(yù)測(cè)到怎樣落棋子以達(dá)到平衡。但是當(dāng)模型繼續(xù)訓(xùn)練時(shí),它的下棋水平也會(huì)繼續(xù)提升,并最終在 60% 的訓(xùn)練時(shí)長(zhǎng)中擊敗更早版本的原型 ELF OpenGo 模型。這個(gè)原型系統(tǒng)已經(jīng)超越了人類(lèi)專(zhuān)家,曾以 20:0 的成績(jī)擊敗了位列全球 Top 30 棋手的 4 位圍棋職業(yè)棋手。ELF OpenGo 進(jìn)一步證實(shí)了 AlphaZero 此前的發(fā)現(xiàn):很多人的棋法——即便是最專(zhuān)業(yè)的棋手,都不是最優(yōu)的。
不過(guò)正如夸大 AI 在其他領(lǐng)域中超越人類(lèi)的表現(xiàn),F(xiàn)AIR 在對(duì) ELF OpenGo 學(xué)習(xí)過(guò)程的探索中也發(fā)現(xiàn)了其在深度強(qiáng)化學(xué)習(xí)中特定的重要局限性。像 AlphaZero 一樣,ELF OpenGo 系統(tǒng)無(wú)法完全掌握「征(ladder)」這一概念,而這個(gè)概念是圍棋初學(xué)者也能夠理解的最基礎(chǔ)的入門(mén)技巧,即一位棋手用一個(gè)在棋盤(pán)上以對(duì)角的形式延展的長(zhǎng)編隊(duì)來(lái)圍困對(duì)手的棋子(最終被吃掉的棋子就像階梯的梯級(jí)一樣)。這種棋法更多地依賴(lài)于預(yù)測(cè)而不是進(jìn)行大量其他的排序。雖然對(duì)于人類(lèi)圍棋棋手來(lái)說(shuō),預(yù)測(cè)未來(lái) 30 步或更多步棋是順手拈來(lái)的,但 DeepMind 曾指出這些預(yù)測(cè)是在模型在訓(xùn)練后期才能學(xué)到的。
在這張圖中,黑子試圖用「征」來(lái)圍困白子,不過(guò)白子順利逃脫了。人類(lèi)棋手可以快速地學(xué)到征這種棋法的模式,但是機(jī)器人學(xué)得更慢得多,并且無(wú)法從某個(gè)使用「征」的示例中泛化到其他棋局中。
為了進(jìn)一步研究其弱點(diǎn),我們策劃了一個(gè)有著 100 個(gè)「征」方案的數(shù)據(jù)集,并評(píng)估了 ELF OpenGo 使用這些方案下棋的表現(xiàn)。在當(dāng)前模型設(shè)計(jì)的情況下,方案是模型通過(guò)蠻力學(xué)到的(例如每個(gè)征的增加長(zhǎng)度都要求另外訓(xùn)練),而不是作為系統(tǒng)能夠泛化到未見(jiàn)過(guò)的場(chǎng)景中的模式。ELF OpenGo 依賴(lài)于蒙特卡洛樹(shù)搜索(MCTS)的方法來(lái)來(lái)預(yù)測(cè)之后的動(dòng)作。人類(lèi)可以很快理解「征」會(huì)形成一個(gè)非常特別的移動(dòng)陣列,并能快速分析出最終結(jié)果。MCTS 是一個(gè)概率方法,意味著即使每個(gè)棋子的正確移動(dòng)有很高的概率,在一個(gè)長(zhǎng)的陣列中實(shí)現(xiàn)所有棋子的正確移動(dòng)的概率也是低的。
更廣泛地說(shuō),ELF OpenGo 讓其他 AI 研究人員能夠獲得關(guān)于這些系統(tǒng)如何工作的第一手經(jīng)驗(yàn)。這可以幫助研究界從理論上提高對(duì)模型訓(xùn)練程序的理解,發(fā)現(xiàn)這些算法的新弱點(diǎn),并最終以更低的計(jì)算能力實(shí)現(xiàn)更好的性能。
有趣的是,ELF OpenGo 以與人類(lèi)棋手相反的方式學(xué)習(xí)下圍棋,其基于強(qiáng)化學(xué)習(xí)的方法更多地關(guān)注棋局的后期階段,而不是開(kāi)局或中間階段。通過(guò)設(shè)置激勵(lì) AI 獲勝的動(dòng)作,強(qiáng)化學(xué)習(xí)促使 ELF OpenGo 更多地了解棋局如何結(jié)束而不是如何開(kāi)始。與此同時(shí),人類(lèi)則傾向于即刻開(kāi)始評(píng)估當(dāng)前的棋局,重點(diǎn)關(guān)注近期和局部的勝利,同時(shí)保持不斷推進(jìn)棋局。雖然 FAIR 的研究結(jié)果僅限于圍棋,不過(guò)它表明了強(qiáng)化學(xué)習(xí)有著不少局限性,這可能導(dǎo)致這樣的結(jié)果:雖然其整體表現(xiàn)令人印象深刻,但如果過(guò)分關(guān)注最終結(jié)果而忽視近期的勝利則可能會(huì)遭遇失敗或被(對(duì)手)利用。
在重新訓(xùn)練和執(zhí)行 ELF OpenGo 的過(guò)程中,我們意識(shí)到它不僅僅會(huì)影響到目前的 AI 棋手,同時(shí)也是了解過(guò)去四個(gè)世紀(jì)競(jìng)技性圍棋歷史的窗口。為什么不發(fā)掘一下 ELF OpenGo 在專(zhuān)門(mén)分析這些圍棋歷史和棋手上的潛力呢?
這盤(pán)圍棋顯示了日本 19 世紀(jì)的一位職業(yè)圍棋棋手——Honinbo Shusaku 所下出的「ear-reddening」棋局。Shusaku 著名的一步棋落于「a」區(qū)域,不過(guò) ELF OpenGo 很自信地認(rèn)為應(yīng)該落在「b!」區(qū)域。
這種覺(jué)悟帶來(lái)的成果就是一個(gè)交互工具(工具地址:https://dl.fbaipublicfiles.com/elfopengo/analysis/www/index.html),它基于 ELF OpenGo 對(duì)人類(lèi)對(duì)弈的 87,000 場(chǎng)圍棋的分析。這個(gè)數(shù)據(jù)集的時(shí)間跨度為 1700 年到 2018 年,這個(gè)系統(tǒng)則基于機(jī)器人和人類(lèi)對(duì)未來(lái)落棋的預(yù)測(cè)的一致性來(lái)評(píng)估個(gè)體的棋法水平。雖然這個(gè)工具鼓勵(lì)深入到特定的圍棋賽事進(jìn)行分析,但它同樣也看重圍棋的重要發(fā)展趨勢(shì)。在對(duì) 300 多年時(shí)間里進(jìn)行過(guò)的圍棋賽事的分析中,AI 發(fā)現(xiàn)圍棋的平均水平正在穩(wěn)步提升。其他的評(píng)估方法,例如,據(jù) ELF OpenGo,歷史比賽過(guò)程中最糟糕的一步棋(這步棋往往與獲勝概率的最大降幅息息相關(guān))反反復(fù)復(fù)地或得到提高或變得更糟,其中 19 世紀(jì)末期和 21 世紀(jì)的表現(xiàn)是最好的。同時(shí),F(xiàn)AIR 也對(duì)個(gè)人棋手進(jìn)行了分析,例如在對(duì)圍棋史上最著名的棋手 Honinbo Shusaku 的分析中,他的落棋方式與 ELF OpenGo 所推薦的落棋方式不一致。他早期的落棋方法隨著時(shí)間的推移與 ELF OpenGo 是背離的,不過(guò)中期的落棋方式與 ELF OpenGo 更加一致。他們還對(duì) Honinbo Shusaku 在 17 歲對(duì)戰(zhàn) Gennan Inseki 這位更加成熟的圍棋棋手時(shí)所下出的著名的「ear-reddening」棋局進(jìn)行了分析,結(jié)果顯示 ELF OpenGo 反而更偏愛(ài) Gennan Inseki 的棋法。
從 1700 年 到 2018 年,圍棋比賽中間階段(第 60 步到 120 步)圍棋職業(yè)棋手的落棋方式與 ELF OpenGo 所推薦的落棋方式的一致性百分比。
圍棋比賽中,圍棋職業(yè)棋手最糟糕的一步棋給其獲勝概率帶來(lái)的最大降幅(圍棋比賽的時(shí)間跨度為 1700 年 到 2018 年間;數(shù)值越低越好。)
日本 19 世紀(jì)的一位職業(yè)圍棋棋手 Honinbo Shusaku 早期的落棋方式與 ELF OpenGo 所推薦的落棋方式的一致性百分比。
圍棋比賽中間階段,Honinbo Shusaku 落棋方式與 ELF OpenGo 所推薦的落棋方式的一致性百分比。
ELF OpenGo 同時(shí)也強(qiáng)調(diào)了 AI 對(duì)圍棋的明顯影響。例如,ELF OpenGo 的一致性概率隨著時(shí)間的推移趨于增加,這表明了圍棋的總體水平與日提升。
該系統(tǒng)對(duì)特定棋手的評(píng)估也會(huì)隨著時(shí)間的推移而提高,這表明了他們?cè)诼殬I(yè)發(fā)展過(guò)程中的進(jìn)步。事后看來(lái),這些觀(guān)察結(jié)果可能是顯而易見(jiàn)的,但 ELF OpenGo 量化了這些進(jìn)展,并發(fā)現(xiàn)了個(gè)人的圍棋水平明顯會(huì)隨著時(shí)間而發(fā)生變化。2016 年棋手的落棋方式與 ELF OpenGo 推薦的的落棋方式的一致性突然而全面地增加,也會(huì)增強(qiáng)人類(lèi)的這一信念:引入強(qiáng)大的 AI 對(duì)手有利于提升職業(yè)棋手的水平。這種顯著的相關(guān)性不是決定性的——人類(lèi)的圍棋水平也有可能由于其他原因顯著提高,但作為一個(gè)案例,從現(xiàn)在以及歷史角度來(lái)看,它都很好地體現(xiàn)了一個(gè)經(jīng)過(guò)訓(xùn)練來(lái)執(zhí)行指定任務(wù)的系統(tǒng)也可以對(duì)更廣泛的領(lǐng)域進(jìn)行更廣泛的分析。
雖然 ELF OpenGo 已經(jīng)被世界各地的研究團(tuán)隊(duì)和棋手廣泛應(yīng)用,但我們也很高興將去年的版本擴(kuò)展為更廣泛的一項(xiàng)開(kāi)源資源。對(duì)于圍棋愛(ài)好者來(lái)說(shuō),該系統(tǒng)對(duì)職業(yè)圍棋比賽的分析可以作為一種新型的訓(xùn)練輔助工具,能為他們提供一個(gè)超越人類(lèi)的 AI 棋手在圍棋不同階段的表現(xiàn)參考。此外,我們出于訓(xùn)練目的,還增加了 AI 本身的開(kāi)放性,并發(fā)布了圍棋棋手可以下載并進(jìn)行對(duì)局的可在 Windows 上運(yùn)行的 AI 版本。
不過(guò),無(wú)論是對(duì)于 ELF OpenGo,還是在開(kāi)發(fā)能向人類(lèi)一樣有效學(xué)習(xí)的 AI 的更大項(xiàng)目中,F(xiàn)AIR 還有很多工作要做。ELF OpenGo 能夠擊敗人類(lèi)專(zhuān)家,但這僅僅只能在其與自己對(duì)弈百萬(wàn)場(chǎng)比賽之后才能實(shí)現(xiàn)。它如何從眾多案例中的一小部分中學(xué)習(xí),同時(shí)更快地掌握「征」等概念并最終實(shí)現(xiàn)更好的表現(xiàn)?通過(guò)將我們的工具和分析全面開(kāi)放給大家,我們希望能夠加速 AI 界更快地追尋到這些問(wèn)題的答案。
via:https://ai.facebook.com/blog/open-sourcing-new-elf-opengo-bot-and-go-research/?ref=shareable 雷鋒網(wǎng)雷鋒網(wǎng)
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。