close
2.0版的AlphaGo要來瞭,自己是自己的老師 : 經理人分享
今年5月烏鎮圍棋大賽時,DeepMind CEO Hassabis 表示,將在今年晚些時候公佈戰勝瞭柯潔的那版AlphaGo的技術細節。今天,這個承諾如約兌現,DeepMind在他們最新發表於Nature的一篇論文中,描述瞭迄今最強大的一版AlphaGo——AlphaGo Zero 的技術細節。
AlphaGo Zero完全不依賴於人類數據,因此,這一系統的成功也是朝向人工智能研究長期以來的目標——創造出在沒有人類輸入的條件下,在最具挑戰性的領域實現超越人類能力的算法——邁進的一大步。
作者在論文中寫道,AlphaGo Zero 證明瞭即使在最具挑戰的領域,純強化學習的方法也是完全可行的:不需要人類的樣例或指導,不提供基本規則以外的任何領域知識,使用強化學習能夠實現超越人類的水平。此外,純強化學習方法隻花費額外很少的訓練時間,但相比使用人類數據,實現瞭更好的漸進性能(asymptotic performance)。
在很多靜電油煙機租賃情況下,人類數據,尤其是專傢數據,往往太過昂貴,或者根本無法獲得。如果類似的技術可以應用到其他問題上,這些突破就有可能對社會產生積極的影響。
是的,你或許要說,AlphaGo已經在今年5月宣佈退休,但AlphaGo的技術將永存,並進一步往前發展、進化。DeepMind已經完成圍棋上的概念證明,接下來,就是用他們的強化學習改變世界。
這也是為什麼接下來我們要介紹的這篇論文如此重要——它不僅是很多人期盼已久的技術報告,也是人工智能一個新的技術節點。在未來,它將得到很多引用,成為無數AI產業和服務的基礎。
迄今最強大的圍棋程序:不使用人類的知識DeepMind這篇最新的Nature,有一個樸素的名字——《不使用人類知識掌握圍棋》。
摘要
人工智能長期以來的一個目標是創造一個能夠在具有挑戰性的領域,以超越人類的精通程度學習的算法,“tabula rasa”(譯註:一種認知論觀念,認為台中靜電油煙處理機租賃指個體在沒有先天精神內容的情況下誕生,所有的知識都來自於後天的經驗或感知)。此前,AlphaGo成為首個在圍棋中戰勝人類世界冠軍的系統。AlphaGo的那些神經網絡使用人類專傢下棋的數據進行監督學習訓練,同時也通過自我對弈進行強化學習。
在這裡,我們介紹一種僅基於強化學習的算法,不使用人類的數據、指導或規則以外的領域知識。AlphaGo成瞭自己的老師。我們訓練瞭一個神經網絡來預測AlphaGo自己的落子選擇和AlphaGo自我對弈的贏傢。這種神經網絡提高瞭樹搜索的強度,使落子質量更高,自我對弈迭代更強。從“tabula rasa”開始,我們的新系統AlphaGo Zero實現瞭超人的表現,以100:0的成績擊敗瞭此前發表的AlphaGo。
DOI:10.1038/nature24270
全新的強化學習:自己成為自己的老師AlphaGo Zero得到這樣的結果,是利用瞭一種新的強化學習方式,在這個過程中,AlphaGo Zero 成為自己的老師。這個系統從一個對圍棋遊戲完全沒有任何知識的神經網絡開始。然後,通過將這個神經網絡與一種強大的搜索算法相結合,它就可以自己和自己下棋瞭。在它自我對弈的過程中,神經網絡被調整、更新,以預測下一個落子位置以及對局的最終贏傢。
這個更新後的神經網絡又將與搜索算法重新組合,進而創建一個新的、更強大的 AlphaGo Zero 版本,再次重復這個過程。在每一次迭代中,系統的性能都得到一點兒的提高,自我對弈的質量也在提高,這就使得神經網絡的預測越來越準確,得到更加強大的 AlphaGo Zero 版本。
這種技術比上一版本的 AlphaGo 更強大,因為它不再受限於人類知識的局限。相反,它可以從一張白紙的狀態開始,從世界上最強大的圍棋玩傢——AlphaGo 自身——學習。
AlphaGo Zero在其他方面也與之前的版本有所不同:
AlphaGo Zero 隻使用圍棋棋盤上的黑子和白子作為輸入,而上一版本的 AlphaGo 的輸入包含瞭少量人工設計的特征。
它隻使用一個神經網絡,而不是兩個。以前版本的 AlphaGo 使用一個“策略網絡”(policy network)來選擇下一個落子位置和一個“價值網絡”(value network)來預測遊戲的贏傢。這些在 AlphaGo Zero 中是聯合進行的,這使得它能夠更有效地進行訓練和評估。
AlphaGo Zero 不使用“走子演算”(rollout)——這是其他圍棋程序使用的快速、隨機遊戲,用來預測哪一方將從當前的棋局中獲勝。相反,它依賴於高質量的神經網絡來評估落子位置。
上面的所有這些不同之處都有助於提高系統的性能,使其更加通用。但使得這個系統更加強大和高效的是算法的改變。
在進行瞭3天的自我訓練後,AlphaGo Zero 在100局比賽中以100:0擊敗瞭上一版本的 AlphaGo——而上一版本的 AlphaGo 擊敗瞭曾18次獲得圍棋世界冠軍的韓國九段棋士李世乭。經過 40 天的自我訓練後,AlphaGo Zero 變得更加強大,超越瞭“Master”版本的 AlphaGo——Master 曾擊敗世界上最優秀的棋士、世界第一的柯潔。
在經過數以百萬計的 AlphaGo vs AlphaGo 的對弈後,這個系統逐漸從零開始學會瞭下圍棋,在短短幾天內積累瞭人類數千年積累的知識。AlphaGo Zero 也發現瞭新的知識,開發出非常規的策略和創造性的新下法,這些新下法超越瞭它在與柯潔和李世乭比賽時發明的新技巧。
盡管目前仍處於早期階段,但 AlphaGo Zero 成為瞭朝著這個目標邁進的關鍵一步。DeepMind 聯合創始人兼 CEODemis Hassabis 評論稱:“AlphaGo在短短兩年裡取得瞭如此令人驚嘆的成果。現在,AlphaGo Zero是我們項目中最強大的版本,它展示瞭我們在更少的計算能力,而且完全不使用人類數據的情況下可以取得如此大的進展。
“最終,我們希望利用這樣的算法突破來幫助解決現實世界的各種緊迫問題,例如蛋白質折疊或新材料設計。如果我們能在這些問題上取得與AlphaGo同樣的進展,就有可能推動人類理解,並對我們的生活產生積極影響。”
AlphaGo Zero技術細節拆解:將價值網絡和策略網絡整合為一個架構,整合蒙特卡洛搜索不斷迭代新方法使用瞭一個深度神經網絡fθ,參數為 θ。這個神經網絡將原始棋盤表征 s(棋子位置和歷史)作為輸入,輸出落子概率和一個值(p, v)= fθ(s)。
落子概率向量 p 表示選擇下每一步棋(包括不下)的概率。值 v 是一個標量估值,衡量當前棋手在位置 s 獲勝的概率。
這個神經網絡將最初的 AlphaGo(下文中的 AlphaGo Fan 和 AlphaGo Lee,分別指對戰樊麾和對戰李世石的版本)的策略網絡和價值網絡整合到一個架構裡,含有很多基於卷積神經網絡的殘差模塊,這些殘差模塊中使用瞭批正則化(batch normalization)和非線性整流函數(rectifier nonlinearities)。
AlphaGo Zero 的神經網絡使用自我對弈數據做訓練,這些自我對弈是在一種新的強化學習算法下完成的。在每個位置 s,神經網絡 fθ都會進行蒙特卡洛樹搜索(MCTS)。MCTS 輸出下每步棋的落子概率 π。這樣搜索得出的概率通常比神經網絡 fθ(s) 的原始落子概率 p 要更加強一些;MCTS 也因此可以被視為一個更加強大的策略提升 operator。
系統通過搜索進行自我對弈,也即使用增強的基於 MCTS 的策略選擇下哪步棋,然後使用獲勝者 z 作為價值樣本,這個過程可以被視為一個強有力的策略評估 operator。
這一新的強化學習算法的核心思想是,在策略迭代的過程中,反復使用這些搜索 operator:神經網絡的參數不斷更新,讓落子概率和價值 (p,v)= fθ(s) 越來越接近改善後的搜索概率和自我對弈贏傢 (π, z)。這些新的參數也被用於下一次自我對弈的迭代,讓搜索更強。下面的圖1 展示瞭自我對弈訓練的流程。
圖1:AlphaGo Zero 自我對弈訓練的流程:a. 程序自己和自己下棋,標記為s1, ..., sT。在每個位置st,一個MCTS αθ被執行(見圖2),使用最新的神經網絡fθ。每個走子選擇的依據是通過MCTS, at ~ πt計算的搜索概率。最終的位置sT根據遊戲規則計算對局的最終勝者z。b. AlphaGo Zero 中神經網絡的訓練。該神經網絡將棋盤位置st作為輸入,與參數θ一起講它傳送到許多的卷積層,並同時輸出表示每一走子的概率分佈的向量 pt 和一個表示當前玩傢在位置 st 上的贏率的標量值 vt。
MCTS 使用神經網絡 fθ指導其模擬(參見圖2)。搜索樹中的每條邊 (s, a) 都存儲瞭一個概率先驗 P(s, a),一個訪問數 N(s, a),以及動作值 Q(s, a)。每次模擬都從根節點狀態開始,不斷迭代,選擇能將置信區間 Q(s, a)+ U(s, a) 的上層最大化的落子結果,直到走到葉節點 s′。
然後,網絡會擴充這個葉節點,並且隻進行一次評估,生成概率先驗和評估值,(P(s′, ·), V(s′))= fθ(s′)。在模擬中,遍歷每條邊 (s, a) 後,會更新訪問量 N(s, a),然後將動作值更新,取所有模擬的平均值:
MCTS 可以被看做一種自我對弈算法:給定神經網絡參數 θ 和一個根節點位置 s,計算搜索概率向量推薦落子 π = αθ(s),與每步棋的訪問量指數成正比,τ 是溫度參數:
神經網絡使用這個自我對弈的強化學習算法做訓練,正如上文介紹,這個算法使用 MCTS 下每一步棋。首先,神經網絡使用隨機權重 θ0初始化。在隨後的每一次迭代中,i ≥ 1,生成自我對弈棋譜(參見圖1的a)。在每個時間步長 t,運行一個 MCTS 搜索 πt= αθ(st),使用上一次神經網絡 fθi?1迭代的結果,然後根據搜索概率采樣下出一步棋。一局棋在第 T 步結束,也就是雙方都無法落子,搜索值降低到閾值以下的時候。隨後,進行計分,得出獎勵 rT ∈ {?1,+1}。
每一個時間步長 t 的數據都被存儲為 (st, πt, zt),其中 zt = ± rT 就是從當前這步棋 t 看來最終獲勝的贏傢。
同時(參見圖1 b),使用從最後一次自我對弈迭代的所有時間步長中獲取的數據 (s, π, z),對新的網絡參數 θi 進行訓練。調整神經網絡 (p, v) = fθi (s),將預測值 v 和自我對比勝者 z 之間的誤差降低到最小,同時將神經網絡落子概率 p 和搜索概率 π 之間的相似度提升到最大。
具體說,我們用損失函數 l 的梯度下降來調節參數 θ,這個損失函數表示如下,其中 c 是控制 L2 權重正則化水平的參數(防止過擬合):
評估結果:21天就比戰勝柯潔的Master更加厲害DeepMind官方博客上介紹瞭AlphaGo Zero與此前版本的對比。完全從零開始,3天超越AlphaGo李世石版本,21天達到Master水平。
論文中,為瞭分開結構和算法的貢獻,DeepMind研究人員還比較瞭 AlphaGo Zero 的神經網絡架構和先前與李世乭對弈時的 AlphaGo (記為 AlphaGo Lee)的神經網絡架構的性能(見圖4)。
我們構建瞭4個神經網絡,分別是在 AlphaGo Lee 中使用的分開的策略網絡和價值網絡,或者在 AlphaGo Zero 中使用的合並的策略和價值網絡;以及 AlphaGo Lee 使用的卷積網絡架構,或 AlphaGo Zero 使用的殘差網絡架構。每個網絡都被訓練以最小化同一個損失函數(公式1),訓練使用的是 AlphaGo Zero 在72小時的自我對弈之後產生的同一個自我對弈棋局數據集。
使用殘差網絡的準確率更高,誤差更低,在 AlphaGo 達到600 Elo(等級分)的性能提高。將策略(policy)和價值(value)結合到一個單一的網絡中的話,走子預測的準確性略微降低瞭,但是價值錯誤也降低瞭,並且將 AlphaGo 的性能再提高瞭600 Elo。這在一定程度上是由於提高瞭計算效率,但更重要的是,雙目標使網絡成為支持多個用例的常規表示。
圖4:AlphaGo Zero 和 AlphaGo Lee 的神經網絡架構比較。使用分開的策略和價值網絡記為(sep),使用組合的策略和價值網絡記為(dual),使用卷積網絡記為(conv),使用殘差網絡記為(res)。“dual-res”和“sep-conv”分別表示在 AlphaGo Zero 和 AlphaGo Lee 中使用的神經網絡架構。每個網絡都在同一個數據集上訓練,該數據集由 AlphaGo Zero 的自我對弈產生。a,每個訓練好的網絡都與 AlphaGo Zero 的搜索相結合,以得到一個不同的玩傢。Elo等級分是由這些不同玩傢之間的評估遊戲計算得到的,每一步棋有5秒的思考時間。b,對每個網絡架構的職業棋手的走法(從GoKifu數據集得來)的預測準確性。c,每個網絡架構的人類職業棋手的棋局結果(從GoKifu數據集得來)的MSE。
AlphaGo Zero學到的知識。a,AlphaGo Zero訓練期間發現的五個人類定式(常見的角落序列)。b)自我對弈中愛用的5個定式。c)在不同訓練階段進行的3次自我對弈的前80步棋,每次搜索使用1,600次模擬(約0.4s)。最開始,系統關註奪子,很像人類初學者。而後,關註勢和地,也即圍棋根本。最後,整場比賽體現出瞭很好的平衡,涉及多次戰鬥和一場復雜的戰鬥,最終以白棋多半子獲勝。
AlphaGo 小傳姓名:AlphaGo(Fan,Lee,Master,Zero)
別名:阿老師,阿爾法狗
生日:2014年
出生地:英國倫敦
1擊敗樊麾
2015年10月,AlphaGo擊敗樊麾,成為第一個無需讓子即可在19路棋盤上擊敗圍棋職業棋手的電腦圍棋程序,寫下瞭歷史,相關成果在2016年1月發表於Nature
2擊敗李世石
2016年3月,AlphaGo在一場五番棋比賽中4:1擊敗尖端職業棋手李世石,成為第一個不借助讓子而擊敗圍棋職業九段棋手的電腦圍棋程序,再創歷史。五局賽後韓國棋院授予AlphaGo有史以來第一位名譽職業九段
3排名短暫超越柯潔
2016年7月18日,AlphaGo在Go Ratings網站的排名升至世界第一。但幾天之後被柯潔反超。
4化名“Master”橫掃棋界
2016年底至2017年年初,再度強化的AlphaGo以“Master”為名,在未公開其真實身份的情況下,借非正式的網絡快棋對戰進行測試,挑戰中韓日臺的一流高手,60戰全勝
5戰勝柯潔,成為世界第一
2017年5月23至27日烏鎮圍棋峰會,最新的強化版AlphaGo和世界第一棋手柯潔對局,並配合八段棋手協同作戰與對決五位頂尖九段棋手等五場比賽,獲取3比零全勝的戰績,團隊戰與組隊戰也全勝。這次AlphaGo的運算資源消耗僅李世石版本的十分之一。在與柯潔的比賽結束後,中國圍棋協會授予AlphaGo職業圍棋九段的稱號
AlphaGo在沒有人類對手後,2017年5月25日,AlphaGo之父傑米斯·哈薩比斯宣佈AlphaGo退役。AlphaGo的研究計劃於2014年開始,從業餘棋手的水平到世界第一,AlphaGo的棋力獲取這樣的進步,僅僅花瞭兩年左右。
AlphaGo雖已退休,但技術永存。
謹以此文,致敬AlphaGo,以及研發AlphaGo的人。
??原標題:徹底擺脫人類,比戰勝柯潔還厲害的AlphaGo要來瞭??
(下載iPhone或Android應用“經理人分享”,一個隻為職業精英人群提供優質知識服務的分享平臺。不做單純的資訊推送,致力於成為你的私人智庫。)
作者:聞菲,劉小芹
來源:微信公眾號新智元(ID:AI_era) 台北靜電油煙機出租
今年5月烏鎮圍棋大賽時,DeepMind CEO Hassabis 表示,將在今年晚些時候公佈戰勝瞭柯潔的那版AlphaGo的技術細節。今天,這個承諾如約兌現,DeepMind在他們最新發表於Nature的一篇論文中,描述瞭迄今最強大的一版AlphaGo——AlphaGo Zero 的技術細節。
AlphaGo Zero完全不依賴於人類數據,因此,這一系統的成功也是朝向人工智能研究長期以來的目標——創造出在沒有人類輸入的條件下,在最具挑戰性的領域實現超越人類能力的算法——邁進的一大步。
作者在論文中寫道,AlphaGo Zero 證明瞭即使在最具挑戰的領域,純強化學習的方法也是完全可行的:不需要人類的樣例或指導,不提供基本規則以外的任何領域知識,使用強化學習能夠實現超越人類的水平。此外,純強化學習方法隻花費額外很少的訓練時間,但相比使用人類數據,實現瞭更好的漸進性能(asymptotic performance)。
在很多靜電油煙機租賃情況下,人類數據,尤其是專傢數據,往往太過昂貴,或者根本無法獲得。如果類似的技術可以應用到其他問題上,這些突破就有可能對社會產生積極的影響。
是的,你或許要說,AlphaGo已經在今年5月宣佈退休,但AlphaGo的技術將永存,並進一步往前發展、進化。DeepMind已經完成圍棋上的概念證明,接下來,就是用他們的強化學習改變世界。
這也是為什麼接下來我們要介紹的這篇論文如此重要——它不僅是很多人期盼已久的技術報告,也是人工智能一個新的技術節點。在未來,它將得到很多引用,成為無數AI產業和服務的基礎。
迄今最強大的圍棋程序:不使用人類的知識DeepMind這篇最新的Nature,有一個樸素的名字——《不使用人類知識掌握圍棋》。
摘要
人工智能長期以來的一個目標是創造一個能夠在具有挑戰性的領域,以超越人類的精通程度學習的算法,“tabula rasa”(譯註:一種認知論觀念,認為台中靜電油煙處理機租賃指個體在沒有先天精神內容的情況下誕生,所有的知識都來自於後天的經驗或感知)。此前,AlphaGo成為首個在圍棋中戰勝人類世界冠軍的系統。AlphaGo的那些神經網絡使用人類專傢下棋的數據進行監督學習訓練,同時也通過自我對弈進行強化學習。
在這裡,我們介紹一種僅基於強化學習的算法,不使用人類的數據、指導或規則以外的領域知識。AlphaGo成瞭自己的老師。我們訓練瞭一個神經網絡來預測AlphaGo自己的落子選擇和AlphaGo自我對弈的贏傢。這種神經網絡提高瞭樹搜索的強度,使落子質量更高,自我對弈迭代更強。從“tabula rasa”開始,我們的新系統AlphaGo Zero實現瞭超人的表現,以100:0的成績擊敗瞭此前發表的AlphaGo。
DOI:10.1038/nature24270
全新的強化學習:自己成為自己的老師AlphaGo Zero得到這樣的結果,是利用瞭一種新的強化學習方式,在這個過程中,AlphaGo Zero 成為自己的老師。這個系統從一個對圍棋遊戲完全沒有任何知識的神經網絡開始。然後,通過將這個神經網絡與一種強大的搜索算法相結合,它就可以自己和自己下棋瞭。在它自我對弈的過程中,神經網絡被調整、更新,以預測下一個落子位置以及對局的最終贏傢。
這個更新後的神經網絡又將與搜索算法重新組合,進而創建一個新的、更強大的 AlphaGo Zero 版本,再次重復這個過程。在每一次迭代中,系統的性能都得到一點兒的提高,自我對弈的質量也在提高,這就使得神經網絡的預測越來越準確,得到更加強大的 AlphaGo Zero 版本。
這種技術比上一版本的 AlphaGo 更強大,因為它不再受限於人類知識的局限。相反,它可以從一張白紙的狀態開始,從世界上最強大的圍棋玩傢——AlphaGo 自身——學習。
AlphaGo Zero在其他方面也與之前的版本有所不同:
AlphaGo Zero 隻使用圍棋棋盤上的黑子和白子作為輸入,而上一版本的 AlphaGo 的輸入包含瞭少量人工設計的特征。
它隻使用一個神經網絡,而不是兩個。以前版本的 AlphaGo 使用一個“策略網絡”(policy network)來選擇下一個落子位置和一個“價值網絡”(value network)來預測遊戲的贏傢。這些在 AlphaGo Zero 中是聯合進行的,這使得它能夠更有效地進行訓練和評估。
AlphaGo Zero 不使用“走子演算”(rollout)——這是其他圍棋程序使用的快速、隨機遊戲,用來預測哪一方將從當前的棋局中獲勝。相反,它依賴於高質量的神經網絡來評估落子位置。
上面的所有這些不同之處都有助於提高系統的性能,使其更加通用。但使得這個系統更加強大和高效的是算法的改變。
在進行瞭3天的自我訓練後,AlphaGo Zero 在100局比賽中以100:0擊敗瞭上一版本的 AlphaGo——而上一版本的 AlphaGo 擊敗瞭曾18次獲得圍棋世界冠軍的韓國九段棋士李世乭。經過 40 天的自我訓練後,AlphaGo Zero 變得更加強大,超越瞭“Master”版本的 AlphaGo——Master 曾擊敗世界上最優秀的棋士、世界第一的柯潔。
在經過數以百萬計的 AlphaGo vs AlphaGo 的對弈後,這個系統逐漸從零開始學會瞭下圍棋,在短短幾天內積累瞭人類數千年積累的知識。AlphaGo Zero 也發現瞭新的知識,開發出非常規的策略和創造性的新下法,這些新下法超越瞭它在與柯潔和李世乭比賽時發明的新技巧。
盡管目前仍處於早期階段,但 AlphaGo Zero 成為瞭朝著這個目標邁進的關鍵一步。DeepMind 聯合創始人兼 CEODemis Hassabis 評論稱:“AlphaGo在短短兩年裡取得瞭如此令人驚嘆的成果。現在,AlphaGo Zero是我們項目中最強大的版本,它展示瞭我們在更少的計算能力,而且完全不使用人類數據的情況下可以取得如此大的進展。
“最終,我們希望利用這樣的算法突破來幫助解決現實世界的各種緊迫問題,例如蛋白質折疊或新材料設計。如果我們能在這些問題上取得與AlphaGo同樣的進展,就有可能推動人類理解,並對我們的生活產生積極影響。”
AlphaGo Zero技術細節拆解:將價值網絡和策略網絡整合為一個架構,整合蒙特卡洛搜索不斷迭代新方法使用瞭一個深度神經網絡fθ,參數為 θ。這個神經網絡將原始棋盤表征 s(棋子位置和歷史)作為輸入,輸出落子概率和一個值(p, v)= fθ(s)。
落子概率向量 p 表示選擇下每一步棋(包括不下)的概率。值 v 是一個標量估值,衡量當前棋手在位置 s 獲勝的概率。
這個神經網絡將最初的 AlphaGo(下文中的 AlphaGo Fan 和 AlphaGo Lee,分別指對戰樊麾和對戰李世石的版本)的策略網絡和價值網絡整合到一個架構裡,含有很多基於卷積神經網絡的殘差模塊,這些殘差模塊中使用瞭批正則化(batch normalization)和非線性整流函數(rectifier nonlinearities)。
AlphaGo Zero 的神經網絡使用自我對弈數據做訓練,這些自我對弈是在一種新的強化學習算法下完成的。在每個位置 s,神經網絡 fθ都會進行蒙特卡洛樹搜索(MCTS)。MCTS 輸出下每步棋的落子概率 π。這樣搜索得出的概率通常比神經網絡 fθ(s) 的原始落子概率 p 要更加強一些;MCTS 也因此可以被視為一個更加強大的策略提升 operator。
系統通過搜索進行自我對弈,也即使用增強的基於 MCTS 的策略選擇下哪步棋,然後使用獲勝者 z 作為價值樣本,這個過程可以被視為一個強有力的策略評估 operator。
這一新的強化學習算法的核心思想是,在策略迭代的過程中,反復使用這些搜索 operator:神經網絡的參數不斷更新,讓落子概率和價值 (p,v)= fθ(s) 越來越接近改善後的搜索概率和自我對弈贏傢 (π, z)。這些新的參數也被用於下一次自我對弈的迭代,讓搜索更強。下面的圖1 展示瞭自我對弈訓練的流程。
圖1:AlphaGo Zero 自我對弈訓練的流程:a. 程序自己和自己下棋,標記為s1, ..., sT。在每個位置st,一個MCTS αθ被執行(見圖2),使用最新的神經網絡fθ。每個走子選擇的依據是通過MCTS, at ~ πt計算的搜索概率。最終的位置sT根據遊戲規則計算對局的最終勝者z。b. AlphaGo Zero 中神經網絡的訓練。該神經網絡將棋盤位置st作為輸入,與參數θ一起講它傳送到許多的卷積層,並同時輸出表示每一走子的概率分佈的向量 pt 和一個表示當前玩傢在位置 st 上的贏率的標量值 vt。
MCTS 使用神經網絡 fθ指導其模擬(參見圖2)。搜索樹中的每條邊 (s, a) 都存儲瞭一個概率先驗 P(s, a),一個訪問數 N(s, a),以及動作值 Q(s, a)。每次模擬都從根節點狀態開始,不斷迭代,選擇能將置信區間 Q(s, a)+ U(s, a) 的上層最大化的落子結果,直到走到葉節點 s′。
然後,網絡會擴充這個葉節點,並且隻進行一次評估,生成概率先驗和評估值,(P(s′, ·), V(s′))= fθ(s′)。在模擬中,遍歷每條邊 (s, a) 後,會更新訪問量 N(s, a),然後將動作值更新,取所有模擬的平均值:
MCTS 可以被看做一種自我對弈算法:給定神經網絡參數 θ 和一個根節點位置 s,計算搜索概率向量推薦落子 π = αθ(s),與每步棋的訪問量指數成正比,τ 是溫度參數:
神經網絡使用這個自我對弈的強化學習算法做訓練,正如上文介紹,這個算法使用 MCTS 下每一步棋。首先,神經網絡使用隨機權重 θ0初始化。在隨後的每一次迭代中,i ≥ 1,生成自我對弈棋譜(參見圖1的a)。在每個時間步長 t,運行一個 MCTS 搜索 πt= αθ(st),使用上一次神經網絡 fθi?1迭代的結果,然後根據搜索概率采樣下出一步棋。一局棋在第 T 步結束,也就是雙方都無法落子,搜索值降低到閾值以下的時候。隨後,進行計分,得出獎勵 rT ∈ {?1,+1}。
每一個時間步長 t 的數據都被存儲為 (st, πt, zt),其中 zt = ± rT 就是從當前這步棋 t 看來最終獲勝的贏傢。
同時(參見圖1 b),使用從最後一次自我對弈迭代的所有時間步長中獲取的數據 (s, π, z),對新的網絡參數 θi 進行訓練。調整神經網絡 (p, v) = fθi (s),將預測值 v 和自我對比勝者 z 之間的誤差降低到最小,同時將神經網絡落子概率 p 和搜索概率 π 之間的相似度提升到最大。
具體說,我們用損失函數 l 的梯度下降來調節參數 θ,這個損失函數表示如下,其中 c 是控制 L2 權重正則化水平的參數(防止過擬合):
評估結果:21天就比戰勝柯潔的Master更加厲害DeepMind官方博客上介紹瞭AlphaGo Zero與此前版本的對比。完全從零開始,3天超越AlphaGo李世石版本,21天達到Master水平。
論文中,為瞭分開結構和算法的貢獻,DeepMind研究人員還比較瞭 AlphaGo Zero 的神經網絡架構和先前與李世乭對弈時的 AlphaGo (記為 AlphaGo Lee)的神經網絡架構的性能(見圖4)。
我們構建瞭4個神經網絡,分別是在 AlphaGo Lee 中使用的分開的策略網絡和價值網絡,或者在 AlphaGo Zero 中使用的合並的策略和價值網絡;以及 AlphaGo Lee 使用的卷積網絡架構,或 AlphaGo Zero 使用的殘差網絡架構。每個網絡都被訓練以最小化同一個損失函數(公式1),訓練使用的是 AlphaGo Zero 在72小時的自我對弈之後產生的同一個自我對弈棋局數據集。
使用殘差網絡的準確率更高,誤差更低,在 AlphaGo 達到600 Elo(等級分)的性能提高。將策略(policy)和價值(value)結合到一個單一的網絡中的話,走子預測的準確性略微降低瞭,但是價值錯誤也降低瞭,並且將 AlphaGo 的性能再提高瞭600 Elo。這在一定程度上是由於提高瞭計算效率,但更重要的是,雙目標使網絡成為支持多個用例的常規表示。
圖4:AlphaGo Zero 和 AlphaGo Lee 的神經網絡架構比較。使用分開的策略和價值網絡記為(sep),使用組合的策略和價值網絡記為(dual),使用卷積網絡記為(conv),使用殘差網絡記為(res)。“dual-res”和“sep-conv”分別表示在 AlphaGo Zero 和 AlphaGo Lee 中使用的神經網絡架構。每個網絡都在同一個數據集上訓練,該數據集由 AlphaGo Zero 的自我對弈產生。a,每個訓練好的網絡都與 AlphaGo Zero 的搜索相結合,以得到一個不同的玩傢。Elo等級分是由這些不同玩傢之間的評估遊戲計算得到的,每一步棋有5秒的思考時間。b,對每個網絡架構的職業棋手的走法(從GoKifu數據集得來)的預測準確性。c,每個網絡架構的人類職業棋手的棋局結果(從GoKifu數據集得來)的MSE。
AlphaGo Zero學到的知識。a,AlphaGo Zero訓練期間發現的五個人類定式(常見的角落序列)。b)自我對弈中愛用的5個定式。c)在不同訓練階段進行的3次自我對弈的前80步棋,每次搜索使用1,600次模擬(約0.4s)。最開始,系統關註奪子,很像人類初學者。而後,關註勢和地,也即圍棋根本。最後,整場比賽體現出瞭很好的平衡,涉及多次戰鬥和一場復雜的戰鬥,最終以白棋多半子獲勝。
AlphaGo 小傳姓名:AlphaGo(Fan,Lee,Master,Zero)
別名:阿老師,阿爾法狗
生日:2014年
出生地:英國倫敦
1擊敗樊麾
2015年10月,AlphaGo擊敗樊麾,成為第一個無需讓子即可在19路棋盤上擊敗圍棋職業棋手的電腦圍棋程序,寫下瞭歷史,相關成果在2016年1月發表於Nature
2擊敗李世石
2016年3月,AlphaGo在一場五番棋比賽中4:1擊敗尖端職業棋手李世石,成為第一個不借助讓子而擊敗圍棋職業九段棋手的電腦圍棋程序,再創歷史。五局賽後韓國棋院授予AlphaGo有史以來第一位名譽職業九段
3排名短暫超越柯潔
2016年7月18日,AlphaGo在Go Ratings網站的排名升至世界第一。但幾天之後被柯潔反超。
4化名“Master”橫掃棋界
2016年底至2017年年初,再度強化的AlphaGo以“Master”為名,在未公開其真實身份的情況下,借非正式的網絡快棋對戰進行測試,挑戰中韓日臺的一流高手,60戰全勝
5戰勝柯潔,成為世界第一
2017年5月23至27日烏鎮圍棋峰會,最新的強化版AlphaGo和世界第一棋手柯潔對局,並配合八段棋手協同作戰與對決五位頂尖九段棋手等五場比賽,獲取3比零全勝的戰績,團隊戰與組隊戰也全勝。這次AlphaGo的運算資源消耗僅李世石版本的十分之一。在與柯潔的比賽結束後,中國圍棋協會授予AlphaGo職業圍棋九段的稱號
AlphaGo在沒有人類對手後,2017年5月25日,AlphaGo之父傑米斯·哈薩比斯宣佈AlphaGo退役。AlphaGo的研究計劃於2014年開始,從業餘棋手的水平到世界第一,AlphaGo的棋力獲取這樣的進步,僅僅花瞭兩年左右。
AlphaGo雖已退休,但技術永存。
謹以此文,致敬AlphaGo,以及研發AlphaGo的人。
??原標題:徹底擺脫人類,比戰勝柯潔還厲害的AlphaGo要來瞭??
(下載iPhone或Android應用“經理人分享”,一個隻為職業精英人群提供優質知識服務的分享平臺。不做單純的資訊推送,致力於成為你的私人智庫。)
作者:聞菲,劉小芹
來源:微信公眾號新智元(ID:AI_era) 台北靜電油煙機出租
全站熱搜
留言列表