Google設計了AlphaGo(圍棋機器人)的事早已經(jīng)家喻戶曉了,都9102年了,它怎么又出現(xiàn)了?
說到這,盧sir就先帶大伙回顧一下AlphaGo的發(fā)展歷程吧。迄今為止,AlphaGo一共有四個版本:AlphaGo Fan、AlphaGo Lee、AlphaGo Master和AlphaGo Zero。
2016年,AlphaGo Fan以5比0的戰(zhàn)績戰(zhàn)勝了歐洲圍棋冠軍樊麾后,登上了國際學術期刊《自然》的封面,成功引起了人類的注意。
緊接著AlphaGo Lee又以4比1的比分戰(zhàn)勝了圍棋世界冠軍、職業(yè)九段棋手李世石,成為了世界上第一個戰(zhàn)勝圍棋世界冠軍的人工智能機器人。
愈戰(zhàn)愈勇的AlphaGo又以“AlphaGo Master”的身份與中日韓數(shù)十位圍棋高手進行快棋對決,創(chuàng)造了連續(xù)60局全勝的戰(zhàn)績,甚至連人類排名第一的棋手柯潔也被打成3比0。
不得不說,AlphaGo的勢頭的確挺猛的,僅一年的時間,就戰(zhàn)勝了大量的世界頂尖的圍棋高手,甚至還引發(fā)了“機器人打敗人類開始占領地球”的言論。
不過機智的盧sir早已看破其中的奧秘,“Fan、Lee和Master”看起來是人工智能,實際上卻是“人工智障”。
因為它們在比賽前就會從對手的棋局里進行全方位的學習,比如說:在任意一步時,它們就會把下一步所有可能性都羅列出來,然后一步步往后推,然后選取勝率最高的方法。
說來也搞笑,誰能想到一群圍棋精英會輸給一個連圍棋規(guī)則都不懂的機器人呢?所以說,AlphaGo只能打有準備的仗,讓它臨場發(fā)揮的話,可能它連我盧sir都下不贏,更別提它能“占領地球”了。
直到2017年10月19,Deepmind(谷歌下屬公司)在國際學術期刊《自然》上發(fā)表的一篇研究論文中就提到了AlphaGo的全新版本——AlphaGo Zero。
AlphaGo Zero與前三代的最大不同是,它能從空白狀態(tài)學起,在無任何人類輸入的條件下,它能夠迅速自學圍棋。
也就是說,這次AlphaGo Zero是真的自己學會了圍棋規(guī)則,系統(tǒng)學會漸漸從輸、贏以及平局里面調(diào)整參數(shù),讓自己更懂得選擇那些有利于贏下比賽的走法,而不再去分析對手的特征了。
都說新官上任三把火,AlphaGo Zero僅經(jīng)過了3天的訓練(自學),就以100比0的絕對優(yōu)勢戰(zhàn)勝了AlphaGo Lee;經(jīng)過40天訓練后又把AlphaGo Master給秒殺了。
高呼著“拋棄人類經(jīng)驗”和“自我訓練”問世的AlphaGo Zero的本領當然不只是欺負“老人家”啦,它強大的reinforcement learning(強化學習的算法)可以讓它輕松的掌握國際象棋、日本將棋和中國圍棋,而且每項都能當世界第一。
訓練2個小時,AlphaZero就碾壓了日本將棋世界冠軍程序Elmo;
訓練4個小時,AlphaZero就戰(zhàn)勝了國際象棋世界冠軍程序Stockfish。
其中,盧sir就發(fā)現(xiàn)了一個細節(jié),由于AlphaGoZero的機制從“知己知彼”變成了“百戰(zhàn)百勝”,它下棋能力也出現(xiàn)相應的成長式變化,而不是一味的獲勝。話不多說,直接看一組數(shù)據(jù):
AlphaGo Zero在挑戰(zhàn)國際象棋世界冠軍Stockfish時,1000場輸了155場;
在挑戰(zhàn)日本將棋世界冠軍Elmo時,勝率為91.2%;
在挑戰(zhàn)AlphaGo的前三代時,勝率僅有61%。
那為什么AlphaGo Zero不選擇和人類一較高下,而是和機器人打起了內(nèi)戰(zhàn)?
因為早在AlphaGo把人類精英棋手虐一遍之后,就宣布不再參與任何人機之間的下棋比賽,典型的裝完逼就跑。
其實機器人也是不忍心了,因為早在1997年5月,人類棋手就已經(jīng)被機器人血虐了——超級計算機“深藍”打敗了國際象棋棋王,世界冠軍卡斯帕羅夫,這件事轟動了整個世界。
雖然盧sir覺得AlphaGo Zero已經(jīng)有了質(zhì)的突變,但還是有不少人懷疑它的真實性和可行性。
直到2018年12月,AlphaGo Zero登上世界頂級學術期刊《科學》雜志封面后,《科學》雜志官方為其正名:“能夠解決多個復雜問題的單一算法,是創(chuàng)建通用機器學習系統(tǒng),解決實際問題的重要一步。”
那AlphaGo Zero到底是憑什么用短短一年時間從“知己知彼”變成“百戰(zhàn)百勝”的呢?
首先,AlphaGo Zero做了一個全新的定位:重在學習,而不是急于求勝。
Deepmind采用了5000個TPU(可以簡單的理解為電腦的CPU),再結合深度神經(jīng)網(wǎng)絡、通用強化學習算法和通用樹搜索算法來打造了一個全能棋手。
AlphaGo Zero的學習能力也是一個動態(tài)成長的過程,每次學習一種新的棋類或者游戲都會根據(jù)難易程度來展開一段自我博弈,產(chǎn)生的超參數(shù)再通過貝葉斯優(yōu)化進行調(diào)整。
與此同時,AlphaGo Zero的“自學”過程還有一項特別重要的任務——對自身進行神經(jīng)網(wǎng)絡訓練。
訓練好的神經(jīng)網(wǎng)絡,可以精準地指引一個搜索算法,就是蒙特卡洛樹搜索(MCTS),為每一步棋選出最有利的落子位置。每下一步之前,AlphaGo Zero的搜索對象不是所有可能性,而只是最合適當下“戰(zhàn)況”的一小部分可能性,這就大大提升了精確性和效率性。
關于神經(jīng)網(wǎng)絡的優(yōu)勢,Deepmind在論文中也例舉了例子。
上圖展示的是在AlphaGo Zero執(zhí)白、Stockfish執(zhí)黑的一局國際象棋里,經(jīng)過100次、1000次……直到100萬次模擬之后,AlphaZero蒙特卡洛樹的內(nèi)部狀態(tài)。每個樹狀圖解都展示了10個最常訪問的狀態(tài)。
不怕機器人會下棋,就怕機器人產(chǎn)生意識和情感。
其實對于AlphaGo Zero的人工智能性質(zhì),棋手們最大的感受就是:這個家伙不按套路出牌。因為AlphaGo Zero自己學習了每種棋類,所以它并不受人類現(xiàn)有套路的影響,產(chǎn)生了獨特的、且富有創(chuàng)造力和動態(tài)的棋風。
國際象棋世界冠軍卡斯帕羅夫也在《科學》上撰文表示:“AlphaGo Zero的棋風跟我一樣,具備動態(tài)、開放的風格。”
盧sir:但這樣并不能掩蓋你戰(zhàn)敗的事實。