再次對決AlphaGo,柯潔的勝算有多大? | 陳經

關注風雲之聲提升思維層次

解讀科學,洞察本質

戳穿忽悠,粉碎謠言

導讀

柯潔可以考慮在盤面中積極製造頭緒。AlphaGo喜歡簡化局面、控制流、避免複雜劫爭,原因就是懼怕地平線效應。人應該反其道而行之,與它針鋒相對。例如可以進行另類的局勢判斷,不數目,而是觀察盤面頭緒的多少與關聯性,製造出新頭緒就得分,被AlphaGo消除頭緒就減分。

醞釀了近一年的二次人機大戰終於有了正式消息。4月10日,谷歌與中國棋院宣布,2017年5月23日起,AlphaGo將與柯潔進行三番棋對決。勝者獎金150萬美元,負者出場費也高達30萬美元,是圍棋比賽有史以來的最高獎金。

一、勝一盤的重要性

然而,150萬美元獎金雖高卻像畫餅,幾乎沒人相信柯潔能勝兩盤獲得比賽的勝利。但這不是錢的事,只要柯潔勝一盤,就能封神了。

這次比賽會下滿三盤,古力說柯潔只有10%的機會勝一盤,還可能樂觀了。一些資深棋迷打賭開的賠率也是柯潔勝一盤賠10倍。這相當於說,柯潔和AlphaGo下,30盤才能勝一盤。

棋界現在一種說法是,AI戰勝人類帶來圍棋技術的大發展,人類學習AI與AI共同進步。這算是呼應谷歌團隊的姿態,說棋藝有大發展、學習AI,這都沒問題。但圍棋首先是個勝負的遊戲,對職業棋手來說,勝負壓倒一切。圍棋和國際象棋、中國象棋不一樣,和棋極少,輸半目也是輸,更殘酷。現在不能認慫,還是應該爭取戰勝AlphaGo,只勝一盤意義都大於這150萬美元的獎金。我相信,如果柯潔能勝AlphaGo一盤,倒貼錢他都願意。柯潔自己也是鬥志滿滿,在央視《朗讀者》上讀哈里波特,把AlphaGo比作伏地魔,聲稱要「零封AlphaGo」。

柯潔參加《朗讀者》,閱讀《哈利波特》

去年李世石以1:4慘負AlphaGo,震動了棋界甚至整個世界,引發了人工智慧熱潮。《自然》與《科學》都將這個事件列為年度八大、十大科技進展。對外界來說,1:4和0:5似乎區別不大,對棋界就不一樣了。如果沒有這一勝,棋手們面對AlphaGo將極度自卑,只剩下各種恐懼與膜拜。去年人機戰第三盤AlphaGo序盤碾壓李世石,以3:0勝出比賽的時候,棋界氣氛極度壓抑,幾乎沒人再對李世石抱有希望。直到第四盤李世石勝出,棋手們才恍然大悟,原來AlphaGo的命門是計算!整個棋界大緩了一口氣。李世石說,這一勝拿什麼也不換,意義真有這麼大。

去年正因為我深深知道人類勝局的重大意義,才在幾乎所有人都絕望的時候,仍然堅持分析AlphaGo的弱點,還真預測到了李世石勝出的方式。

Master年初60:0碾壓人類高手,現在棋界的氣氛又和去年3:0時差不多了。某種程度甚至更為絕望,因為這回盤數很多有說服力。而且能戰勝人類的AI不只AlphaGo了,還有絕藝和DeepZenGo。好消息是有職業實力的AI只有這三個,壞消息是連最弱的DeepZenGo都不好對付。

3月18至19日的計算機圍棋UEC杯,絕藝在預賽和決賽中兩勝DeepZenGo,AI界的老二老三座次排定。緊接著3月21至23日的首屆世界圍棋最強戰中,老三DeepZenGo代表AI與中日韓三大高手下了三局每方三小時的慢棋,一局完勝兩局憾負,前半盤都是明顯領先。3月26日UEC杯的後續節目電聖戰,絕藝與DeepZenGo都表現上佳擊潰日本新銳一力遼。在野狐圍棋網,絕藝實力不斷進步,在快棋中對人類高手勝率高達9成,並以碾壓態勢率先升為10段。柯潔對絕藝13連敗,已經1個月沒有公開和絕藝下了。如果人類連絕藝和DeepZenGo都打不過,那還怎麼和AlphaGo較量?

二、正確認識AlphaGo,消除恐懼

人類棋手的誤區是,總是不由自主把圍棋AI當作人來看待,首先根據戰績判斷AI的實力,其次看棋譜。以前看棋譜覺得AlphaGo實力不強,李世石100萬美元獎金天上掉餡餅。AlphaGo3:0勝出的時候,又覺得AlphaGo不可戰勝了,要讓二子。李世石勝了一盤,又覺得原來AI有弱點,畏懼心理消除。AlphaGo升級為Master下得又快又好創新很多,又覺得它深不可測,不可戰勝了。看DeepZenGo網上戰績,高手們評價不太高,但從最強戰三局慢棋實戰表現來看是低估了它。只有絕藝一直和高手們親密接觸,甚至有能悔棋的內測版,開發人員中也有羅洗河這個世界冠軍,所以棋手們了解多些。

圍棋AI是程序,思維和人截然不同,不能象觀察人那樣去想像它的能力。它強的地方,不要低估,它弱的地方,也不要高估。除了戰績、棋譜這些擺在明面上的信息,更值得分析的是AI的演算法。應該從演算法原理去分析,圍棋AI為什麼強,為什麼弱,結合實戰表現,做出合理的解釋與猜想。現在棋界一大問題是對AlphaGo太過懼怕,不少職業棋手對Master可以說是嚇死的,招法完全變形,序盤就敗了。不了解對手,對手下的招出乎預料就害怕傻眼了,時間壓力之下失去正常思維,這根本沒法下棋了。

棋界迫切需要盡量了解AlphaGo,對它的行為模式建立預期,消除恐懼。Master的60局棋譜,棋手們研究一段時間了,有了相當的認識。由於谷歌的保密風格,演算法上AlphaGo有什麼重大進展信息極少,但也還是有一些可以分析的,本文會從演算法角度進行推測。

我的結論是,AlphaGo是個「圍地大師」、「創新大師」,但並不是「戰鬥大師」,棋藝從原理上就存在短板,但是特長極強,掩蓋了弱點。柯潔僅僅是消除畏懼心理,恢復平常心是不夠的,這還是傳統思維模式,也不一定做得到。人類高手不能空喊「有信心」之類的口號,需要從理性上確立「獲勝是可以做到的」這個信念,根據AlphaGo的演算法特點,改變傳統思維模式,針鋒相對與它戰鬥,爭取在人機戰中獲得勝利突破。柯潔在人類棋手中思維活躍、攪功無敵,是戰勝AlphaGo的最好人選。希望柯潔採用正確戰術,取得一勝。只要一勝,二次人機大戰就會成為棋手與棋迷的狂歡節。

絕藝對世界冠軍

特別有幫助的是,騰訊開發的絕藝達到了極高水平,柯潔和絕藝極為開放的內測版下,可以反覆實踐演練自己的想法,並不是悶頭準備。騰訊開發圍棋AI的團隊就有三個,絕藝只是勝出的那個,這個投入確實很有魄力,如果柯潔能打破AlphaGo的堅冰,棋界要感謝騰訊。

由於絕藝不斷在野狐圍棋網上下,雖然勝率不斷提高,但還是經常輸給職業高手,所以人們可能低估了它的實力。絕藝輸主要是出bug,表現正常的時候實力極為可怕,而且在快速進步,要看最近的勝率。業餘六段和職業棋手也就是讓先到二子的差距,據說有業六讓四子和絕藝下20分鐘的慢棋還是輸了。絕藝的棋風和AlphaGo不同,創新不多,但是力量太大了,出手很敏銳。4月10日開始絕藝在野狐復出下棋每天兩盤,是20分鐘和三次1分鐘讀秒的慢棋。到4月14日,對10位職業高手取得了9勝1負的戰績。

通過和絕藝的不斷對局,人類高手已經相信,自己正常1分鐘讀秒的表現會比20、30秒好得多,對絕藝勝率明顯提高(指以前版本,絕藝最新版本又進步了)。AI對手和人不是一回事,人類下快棋對AI實力會大降。如果現在的絕藝和人類高手下20秒、30秒的快棋,再加上人類高手不了解它,如果它還新手不斷,殺個60:0不是不可想像。有了絕藝這個參照物,年初Master的表現也就不是這麼震憾了。絕藝雖然在快速進步,但人類高手由於看著它成長的,和它下思維比較正常,表現要好得多。

我這並不是心靈雞湯式的給人類圍棋高手打氣。如果是國際象棋,從演算法原理上就知道,人類不可能戰勝AI。國際象棋AI和人下棋的思路差不多,算得比人深遠,無論是局勢評估還是推理搜索,人會的AI全會,還更厲害。國際象棋AI能下出人類無法想像的「AI」棋,人類確實沒理由戰勝AI。但圍棋是另一種遊戲,不僅複雜得多,特點還完全不同。AI和人是用兩種截然不同的思維模式下圍棋,AI學會了人的部分本事,還發展出了新的本事,在局勢評估上遠遠強於人。但是人也有AI不會的絕招,就是複雜戰鬥、對殺、死活、精確收官等以推理為基礎的圍棋技術,由於AI沒有概念推理的能力,這些任務對AI演算法來說很困難。

相當於人和汽車的賽跑比賽,如果是一條平路,汽車必然戰勝人。如果路上有的地方有牆,有的地方有溝,人會翻牆也會下到溝里再上來,而汽車翻牆過溝不太會,可能會翻車輸給人。人如果選擇在平路和汽車比拼,那當然必輸;如果把比賽引向翻牆過溝的比拼,不僅比賽有趣多了,還真可以獲勝。比賽之前人制定戰術的時候,不能說要平常心,要學習汽車的高速度爭取跑出博爾特的水平,那也是輸。為了勝利就應該揚長避短,跑步也要會,不要跑步就把腿折了退賽。速度落後於汽車不要驚慌,如果能把汽車引向有牆有溝的路段,就能等到時機。

當然AlphaGo的能力很強,很難把它引向表現差的路段,這只是一個比喻。但可以肯定AlphaGo不是全能的,從演算法原理上就有漏洞。最高水平的國際象棋AI互相比賽絕大多數是平局。兩個AlphaGo自我對局總是能分出勝負,也不是每局都差距很小。這中間肯定有大量的局面,在演算法的能力之外,AlphaGo執黑或執白隨機地出錯。

三、AlphaGo的演算法進步與人類棋手的應對

打了很多比喻,還是要具體說演算法。AlphaGo在去年3月以後,演算法框架又有了突破。但是從種種跡象來看,圍棋AI下棋還是依靠三大技術:給出搜索候選點的策略網路、評估局勢的價值網路、展開搜索樹模擬至終局數子的MCTS(蒙特卡洛樹形搜索),這三大技術全部以「勝率」這樣的概率輸出統一起來。AlphaGo、絕藝、DeepZenGo,以及一些更弱的AI都是這樣下棋的,在基本框架上沒有本質區別,有的沒有價值網路。谷歌團隊厲害的是,在訓練上有很多突破,做出來的策略網路、價值網路在質量與特性上,比其它AI要厲害得多。

在策略網路上,圍棋AI都是學習人類高手棋譜訓練的,AlphaGo的策略網路並不突出。這是一個深度學習訓練問題,Facebook的Darkforest在預測人類高手著手時正確率還更高,也有一些業餘開發者做出了不錯的策略網路。AlphaGo展現的高超實力,並不是靠策略網路,它的開發門檻不高。

但是價值網路的開發門檻很高。只有谷歌這種大公司,才能動用十幾萬個伺服器產生幾千萬局機器自我對弈棋局,用於價值網路的訓練。後來騰訊也做到了,絕藝自我對弈超過30億局。而DeepZenGo的價值網路訓練就似乎不容易,開發者加藤英樹抱怨合作公司的支持不夠。DeepZenGo的價值網路甚至犯了這樣一個錯:

2017年3月22日世界圍棋最強戰,DeepZenGo執白負朴廷桓

這個局面左上部的幾個白子是死棋,連業餘棋手都知道。但是DeepZenGo的價值網路卻判斷是「雙活」,給出了完全錯誤的勝率判斷。這個局部看上去和雙活的棋形很象,黑棋要吃掉白要經過一定次序的緊氣。這說明,價值網路是根據靜態的相似棋形來判斷的,不管怎麼訓練它的搜索能力都很差。絕藝和AlphaGo的價值網路訓練的棋局數多,表現肯定好些,但也還是靜態的卷積神經網路計算,不具備動態的搜索能力。

從演算法原理上就可以確信,無論怎麼訓練,價值網路都存在「bug局面」。比如複雜的對殺、局部棋塊死活,價值網路肯定會作出錯誤判斷。網上實戰,絕藝和DeepZenGo就經常判斷錯誤。AlphaGo的價值網路肯定也有bug局面,它總是一個靜態的神經網路,就算係數多達幾百M,也不可能解決需要複雜推理的棋塊死活問題,深度神經網路沒有這種神奇能力。正如人類高手看一眼棋局,也不能說出局部是死是活,得花些時間計算,除非以前見過這類「局部常形」。

這也是圍棋奇妙的地方,局面稍有差別,價值網路可能以為是一回事,但死活就可能倒轉,倒轉突變程度遠超國際象棋。價值網路常見棋形訓練多了知道是死是活,但如果局部棋形沒出現過或者訓練不足,就可能發生死活誤判。而且神經網路深度學習訓練也不是說堆積樣本就一定能全部訓練正確,總會有一定差錯率。訓練會進入瓶頸,這個訓練弄對了,原先對的那個又錯了。包括策略網路的訓練,預測人類高手著手正確率只會是50%多,再高上不去了,也沒意義。谷歌可以堆機器把訓練做得更快,但不可能讓價值網路產生神奇的能力,bug局面絕對大量存在。

據Deepmind透漏,2016年3月以後,AlphaGo的訓練流程確實進入了瓶頸,應該是訓練出來的新版對上一個新版棋力提升不多了。價值網路和策略網路再怎麼訓練,棋力也沒有顯著提高了。這時谷歌開發團隊又做出了一個創新,可能就是Master神秘實力的重要來源。

之前圍棋AI是學習人類高手棋譜生成策略網路的,但是人類高手群體其實有很多盲區!就像後來不少高手看到Master的表現說,像開局點三三之類的著手,沒有一個棋手想得到,集體沒往那個方向想,但其實是可行的。學習人類高手棋譜,這些新招只會有極低的預測概率,就搜索不到了。但是開發團隊發現,有些選點,雖然策略網路不看好,但真要下出來,價值網路卻給出了不錯的評分。可以在訓練中對價值網路海量嘗試,補充一些勝率不錯的選點給策略網路,又經過搜索與海量對弈發現,這確實是不錯的選點。這就是Master新招不斷的技術秘密,其實也沒那麼神奇。人類棋手沒有明確的價值網路,也不可能天天去試一些奇招。而機器自我對弈學習卻可以這麼做,訓練流水線運轉起來後,所有選點都試一下不過是寫個循環,靠機器算力猛試就行了。就算絕大部分失敗,只要找到一些新招就足以震憾人類棋手了。

最後結果就是,獲得價值網路的回贈之後,Master的策略網路已經和人類棋手很不一樣了,人類棋手不敢想的招,Master敢想敢下。Master和人類棋手60局對局,幾乎每局都有這種人類想不到的招,這也是棋手們對Master十分敬畏的來源。人類棋手要創新很難,能不斷下出可行新招的棋手會得到極高的推許,正如吳清源大師,不知道他為什麼那麼能創新。但是Master的創新卻不難理解,就是極高質量價值網路的附加效應。其實Master的新招下出來以後,人類棋手慢慢也能理解了,甚至在實戰中應用了。

2016年12月31日,Master執黑對金庭賢

Master在17位掛了以後,19位直接開局點三三,驚爆眼球。棋手們總結後也理解了,實戰要點是不能D2位扳粘湊白虎成鐵厚,而兩側的黑子能限制白厚勢的發展。後麵條件成熟,黑就能從兩側攻逼這塊厚勢,E5的點會很犀利。人類更多是沒往這個方向想,而不是不能理解。機器的價值網路是中立的,下出來它就冷靜地全盤評估,沒有人類阻礙創新的固有錯誤邏輯,天然就能發現好點。Master的很多新手都有這個特點。朴永訓在正式比賽中對於之瑩也是開局點三三,而且還勝了,復盤這招也是可行的。

可以從理論上相信,AlphaGo的價值網路,加上MCTS終局數子,對地域的估算比人精確得多。對於一些虛虛的厚勢,人類很難講清楚其價值,AlphaGo卻有成熟的套路給出勝率評估。以此為基礎,AlphaGo的價值網路加上搜索,在很多局面能發現人類的盲點,找出更恰當的圍地選擇。如果圍棋是一個雙方和平圍地的遊戲,理論上人類棋手就可以認輸了。實際上Master的60局中不少就是如此,沒有激烈的戰鬥,幾個選擇後,人莫明其妙就落後了。其實就是圍地搞不過AlphaGo。

圍地就是子力的配合,角上、邊上、中央,配合的方式多種多樣,有的子能自己圍,有的能破對方。幾面圍起來空挺大,但是對手進來一個頭效率就劇降,圍地的效率很有講究。棋塊的方向選擇互相配合非常關鍵,低手往往想像不到這有多重要。

2009年9月4日,第一屆豐田杯八強賽李昌鎬執黑勝阿基魯爾

阿根廷業餘棋手阿基魯爾曾殺入世界大賽八強與李昌鎬對局,完全沒戰鬥,就是劃分地域,到這個局面就落後30目了。黑棋的子都圍了很結實確定的地,白棋邊角的確定地不多,棋塊形成的厚勢面對黑的活棋沒有作用,相互配合又成不了大空。

人類棋手也發展出不少圍地理論,布局理論一度非常流行,甚至被認為是最高級的棋藝。中國國家隊曾長期學習日本,集體研究大局觀,說收官與戰鬥自己研究就行。但是世界棋壇的發展卻出乎預料,高手們走向了暴力圍棋。這是因為人類棋手眼中的大局觀,琢磨到後來就說不清楚了,高手復盤時經常意見不統一。低手大局觀提升變高手可以,高手再怎麼提高就不知道了。後來甚至以為圍棋布局也就這回事,再怎麼琢磨也占不了多大便宜,隨便下下就行了,中後盤決戰才是王道。而且實戰也確實如此,沒有哪個棋手布局優勢突出,都是拼中後盤。

直到圍棋AI出現,人們才明白,原來布局方向選擇比想像的還要重要。不僅是AlphaGo,人們眼中實力並不太強的DeepZenGo大局觀都很好。最強戰三場比賽,羋昱廷、朴廷桓、井山裕太大局上都落後於DeepZenGo。如果和AI比大局觀,比圍地,人類棋手連DeepZenGo都戰勝不了。我和唐韋星九段一起在騰訊直播解說了DeepZenGo和一力遼的比賽,DeepZenGo雖然下得很快,但大局觀還是明顯比一力遼強。絕藝的大局觀應該和DeepZenGo類似,並不強太多,UEC杯決賽對DeepZenGo直到120手勝率還是0.5不佔優。AlphaGo由於有創新,大局觀又要強很多。

人類選手在大局觀上面對絕藝和DeepZenGo已經占不到便宜,甚至會吃點虧,但還沒到被碾壓的程度,後面可以等機會翻盤。高手們面對Master可以說布局階段就明顯吃大虧,從來沒碰到過這樣的對手,一時不知道怎麼辦了。首先用時策略就得改。

人類高手和AI下的時候,從圍棋技術角度還以為是和人下,但又知道對手是AI心態扭曲,表現甚至更差。和人下,會感覺布局並不是太重要,20秒、30秒雙方下得有模有樣。誰也沒有很厲害的大局功夫,有人稍強點也有限。用時分配上就明顯有傾向,布局階段往往下得快,感覺差不多就下了。不是說沒時間思考,習慣上就不覺得能想多少,沒什麼好想的秒下算了。有時碰上新手才用多些時間應對。到中盤戰鬥與收官「複雜」起來,才開始習慣性長考,有人甚至認為長考說明局勢困難。

這個用時策略對付絕藝或者DeepZenGo可能還行,吃虧不太大後面總有機會。對付Master就不行了,感覺行棋布局肯定頂不住。由於Master對人60:0都是網棋,每手20秒或者30秒,人類高手被迫用錯誤的時間策略和它下,輸這麼慘這是很重要一個因素,Master的棋力優勢放大了很多。這次柯潔對戰AlphaGo是3小時思考時間,五人相談棋是2個半小時,一定要注意把時間花在序盤布局。1分鐘讀秒的緊棋高手們有經驗,寧肯進入中後盤讀秒下,也不要序盤下快了莫明其妙吃大虧。

其實人類高手布局水平也不是說差到被Master碾壓的程度,仔細思考表現會好得多。如果思考時先存了一個「布局不要吃大虧」的想法,一些行棋方向判斷仔細體會,肯定可以提高。Master的60局中一些創新,體現了一些布局新思想,隱約有「全局關聯」行棋的感覺,遠處幾個子不一樣,焦點處的選擇就不一樣。Master並不是靠驚天妙手在局部擊潰高手們,更多是在平平淡淡的局面選擇中體現功力,有不少反直覺的招法,仔細體會是成立的。從演算法角度,這些新招是可以解釋的,就是價值網路的貢獻,突破了人類策略網路的成見,不要看得太神秘。多挖掘分析Master在60局中領先的原因,有助於人類高手在布局階段頂住。一些棋手已經在正式對局中模仿Master的下法,但不少棋手都說如果沒有理解盲目模仿並沒有好處,這是對的。要下功夫去理解這些棋譜。

2016年12月29日,Master執黑勝於之瑩

這是Master對於之瑩的對局,黑23、25撈地,白26封住,好象是很自然的招法。但是黑27不好應付。白的棋形出現弱點,為了防斷,只好28和30位補強自身。這時黑31拆就顯得價值極大了。Master的棋經常有這種表現,它撈地,人類對手自以為外面是厚勢。但是再來幾招就發現,對手的厚勢Master有幾個子遠遠的限制著,還有幾個子貼著很討厭,厚勢變孤棋甚至被吃都可能。後來白這團「厚勢」確實被吃了。

2016年12月31日,Master執黑勝朴廷桓

這個局面也類似,Master連爬二路,4目做活,看上去很委曲。但是仔細看,黑上面一塊已經是帶眼鐵活的厚勢,黑所得不小。而白三路連壓這一串,說是厚勢,其實沒有眼,黑棋再來一兩手,這塊棋就得忙做活了。而且白這塊「厚勢」沒有發展了,下面四個黑子遠遠地限制著,白也沒有手段借這塊厚勢打入黑下面大搞破壞。

這類局面Master得心應手,而人類棋手即使在局面形成後能明白,前面也習慣性地行棋。如「壓對手爬二路真爽」,「封住再說」,「外面打一下不虧」,「分斷總是對的」。這些其實都不是絕對真理,需要繼續推更多步來判斷。曾經日本棋手面對中韓棋手有理說不清,戰鬥起來被暴打。其實就是感覺行棋,以為棋形正就對了。日本前輩總結說,中韓棋手先不管棋形,不靠感覺判斷,而是往下擺,擺出結果自然就說明問題了。同樣的錯誤,現在人類棋手面對AI布局時也在犯。人類布局就靠感覺,有時根據一些「格言」秒拍,或者粗粗看下就覺得可行。其實有些後續招法有必然性,能往後推不少步,再來判斷感覺可能就不一樣了。布局時不能一味講究「棋形」、「經驗」。哪怕就按人類下棋時的思維方法,也可以往後多推一些,再小心地進行局面判斷,有時是能糾正一些錯覺的。

布局時什麼時候要小心,其實也不是完全沒跡象。如果子都在近前,人自然知道要小心推理,局部結果都受影響了。就是有些子遠遠的放著,人容易掉以輕心,只看局部。其實推多些步以後,這些遠遠的子就關聯上了,有時甚至能直接參与戰鬥,更常見是能影響局部結果評估。可能Master的價值網路也並不是多神奇,只是天生就是全局思維,從來不會只看局部,對這些全局微妙的地方體會深,不會產生錯誤的局部「格言」。人類也要這樣全局思維。雖然一時難以做到很好,但和AlphaGo對戰布局時改變一下思維模式,提醒自己多進行布局分析,應該是可以的。

這需要改變平時網上拍快棋的習慣。年青高手特別喜歡在網上拍快棋,20秒都覺得慢了,經常下15秒的。這是能鍛煉棋感,但這麼快下出來形成的往往只是局部的棋感。要從全局出發培養棋感,需要多下慢棋,在慢棋中仔細體會全局配置。起碼要有了全局思維的習慣,再去下拍快棋。高手們細心體會Master的全局思維,布局水平一定會有很大進步。如果全局思維上取得進步,雖然從原理上還是沒法勝過AlphaGo,和它對局時莫明其妙吃大虧的機會就小多了。這其實是人類和AlphaGo目前差距最大的地方,也是人可以主動努力提高的方向。

人類棋手如果布局能頂住,戰勝AlphaGo的機會就會明顯上升,因為從演算法原理上AlphaGo仍然會有難以消除的弱點。

谷歌團隊在AlphaGo訓練到瓶頸以後,又搞了幾種創新。除了前面提到的用價值網路選點補策略網路極大提升創新能力,可以肯定的是AlphaGo的訓練速度提升了,從一月一個新版本進步到一周一個。另外,還用了強化學習領域的一個技術,做了一個Anti-AlphaGo來專門針對AlphaGo的弱點,更快改進提升跳出訓練中的局部陷阱。這可能就是一周能出一個新版的技術原因。另外還有說法,AlphaGo的策略網路和價值網路改了模型,輸入不再是三值(黑白無)的圖形,每個點根據棋塊的性質可以有幾十個值,相當於用彩色圖形輸入進行深度學習圖像識別訓練了。也許這能提升計算速度,極大改進AlphaGo訓練與下棋時的速度,快棋水平急劇提升。這次比賽據說AlphaGo會用完全捨棄人類棋譜從0開始訓練的版本,這個版本無疑創新性會極強,完全不受人類成見的「污染」。具體會如何實在沒法猜想,但棋譜會很有趣,說不定開局就不下角上。

這些改進一方面是提升了AlphaGo的下棋速度,另一方面提升了價值網路的水平,搜索時局面判斷能力更強了。這讓AlphaGo的判斷更強,圍地能力更強,拋離人類對手很多,是絕對的「圍地大師」、「創新大師」。其實它自己並沒有「創新」的感覺,它只是想圍地,下出新招是對人類而言的。但是,能不能說AlphaGo是「戰鬥大師」?雖然它的戰鬥力也不弱,但明顯不如布局創新這樣能給人震憾。有一些局面,人類是奔著大戰一場去的,Master卻平淡地控制局面,繞開了這類看不清的「大決戰」。

從演算法原理上來說,對殺、死活、劫爭之類的戰鬥局面主要靠MCTS展開搜索樹推理。價值網路是不行的,靜態的計算沒法解決戰鬥問題。AlphaGo是有推理能力的,會展開二三十步的搜索樹推理,演算法進步、硬體進步能更擴展更多步。但是,這個框架就必然有一些機器的「難言之隱」。

有一些局面,人類的推理能夠聚焦,集中去計算一塊棋的死活,一個對殺的結果,有一些成熟的推理驗算經驗。但是AI演算法很難把這個邏輯實現,可以合理推測,AlphaGo也沒這個能力。它得按策略網路給出的概率去逐個點搜索,如果策略網路給出類似「只此一手」的極高概率,那和人類的感覺差不多,但往往並非如此。選點會不少,有時對殺應該聚焦高概率的點,有些局面又應該小概率的也搜搜看,演算法只能全面照顧都去搜。這樣,步數一多,演算法就會面臨「指數爆炸」。這是一個天生的缺陷,很難彌補。AI會碰到兩類麻煩,一類是推理步數過長,出現「地平線效應」,棋局複雜度超過演算法搜索能力,下出自以為能勝的敗招。一類是漏算,棋塊的死活以為算清楚了,其實有些小概率的點沒考慮到,一個人類可以給出結論的必然推理過程被帶歪了。

2017年3月22日世界圍棋最強戰,DeepZenGo執白負朴廷桓

如圖,第225手時DeepZenGo已經是盤面都好的必勝局面了,朴廷桓打劫死撐。226手忽然放棄打劫封口圍中央。早就在等機會的朴廷桓當然229手衝進白空中搞事,DeepZenGo堅決要吃掉229、231這些來「送死」的。但是233這手一出,DeepZenGo才發現自己算錯了,這三個黑子吃不掉。這個誤算其實發生在226手,由於選擇與後續手數較多DeepZenGo配置不行搜索能力差一些,發生了「地平線效應」,覺悟過來時為時已晚。AlphaGo也出過同樣類型的錯,就是李世石著名的「神之一手」引發的誤算。

2017年4月10日,黨毅飛執黑勝絕藝

這盤棋野狐圍觀棋迷以為絕藝要勝了。白204先手接回2子,205做活包藏殺機。絕藝卻混然不覺,208占官子大棋。黑終於等到209先手切斷再211長,白上面大塊已經連不回家,也無法做活。這個變化在人看來並不複雜,絕藝卻犯了低級錯誤。絕藝的搜索框架還是有bug,要消除這類bug,需要艱苦的努力。

由於圍棋的複雜性,很難確認一個程序真的消除了低級bug。甚至從原理上來說,深度神經網路存在錯覺,而且難以消除。價值網路就是發神經認為一個輸了的局面是勝的,或者策略網路就是對某個重要選點給極低概率,這都無法杜絕。這個版本的絕藝已經非常厲害了,還會出這樣簡單的bug。

這兩類bug,第二類靠運氣,不知為何AI就出bug了。第一類似乎人類棋手有主動操作的空間。理論上來說,要增多盤面上互相關聯的「頭緒」,這在中間開放式的戰鬥中常見。幾塊棋糾在一起,斷點多,頭緒互相有聯繫,這時策略網路、價值網路給出的概率不準,或者只能給出多個選擇,還得靠MCTS搜索解決問題。如果頭緒多、關聯手數多、空間開放,產生「地平線效應」的概率就大多了。這不是說一味地強硬「戰鬥」,戰鬥本身並不會讓搜索崩潰出bug,而是引而不發的「頭緒」要多。

也許柯潔可以考慮,在盤面中積極製造頭緒的戰法。他本身這方面能力不錯,東一下西一下搞事,攪棋的功夫很厲害。我感覺柯潔可能是和絕藝下得比較多,沒有分清楚兩類bug的區別。絕藝更多的是第二類bug,就是簡單的出錯,也能快速修復越來越少,不足為據。第一類的bug就很本質了,AlphaGo明顯喜歡簡化局面、控制流、避免複雜劫爭,原因就是懼怕地平線效應。人類棋手應該反其道而行之,與它針鋒相對。例如可以進行另類的局勢判斷,不數目,而是觀察盤面頭緒的多少與關聯性,製造出新頭緒就得分,被AlphaGo消除頭緒就減分。

文章本天成,妙手偶得之。AlphaGo的bug絕對大量存在,怎麼也排不光,只等柯潔去製造,去發現妙手。

圍棋AI與人類的比賽,天生就極具看點。世界圍棋最強戰第三輪,朴廷桓與羋昱廷前兩戰都勝出,將爭奪冠軍,冠亞軍獎金180萬、60萬人民幣,一盤棋價值120萬。兩戰皆負的DeepZenGo與井山裕太爭奪第三名,獎金都是30萬人民幣。要是以前,兩個負者的比賽就是籃球比賽里的垃圾時間,關注的人不多。但這次解說棋手和棋迷們卻明顯更關注DeepZenGo大模樣作戰完勝井山裕太這盤。這說明,哪怕是AI界老三的正式比賽也能引起相當大的關注,更不要說柯潔與AlphaGo的頂級對決。

近來柯潔正在絕藝的幫助下秘密訓練,一些棋手感覺柯潔又漲棋了,繼絕藝之後第二個成為野狐的10段(20戰中對世界冠軍和全國冠軍18勝)。柯潔聲稱有對付AI的「秘密武器」,有人猜測是模仿棋,絕藝明顯對付不了模仿棋,4次輸在模仿棋上。但模仿棋是可破的,引發到中央的征子或者戰鬥就能破了。AlphaGo團隊如果意識到這個問題,肯定有辦法應對。雖然圍棋規則比賽規則都允許模仿棋,我不希望柯潔在這麼重大的正式比賽這麼做。職業棋手們執白對Master時到是應該試一試,可惜只有周俊勛執黑試了一下也速敗了。備戰還是應該基於圍棋基本技術與對AI演算法的深入了解。柯潔對絕藝13連敗明顯事出有因,想試練一些招法速敗。他在和絕藝內測時應該有所發現,「秘密武器」也可能是一些開局複雜劫爭之類的。

有一種說法是由於柯潔敗局已定,這次比賽社會關注度會不如去年人機大戰。圍棋足夠複雜,AI也不是全能,還有很多不足,從原理上並非不可戰勝。希望本文可以讓更多人有理有據地提升對柯潔的信心。也希望棋界不要陷入必敗輿論中無所作為,要全面正確認識AlphaGo棋力背後的演算法,共同努力備戰增加人類棋手的勝機。

背景簡介本文作者筆名陳經,香港科技大學計算機科學碩士,科技與戰略風雲學會會員, 微博@風雲學會陳經。文章於2017年4月17日發表於觀察者網(陳經:再次對決AlphaGo,柯潔的勝算有多大)。

責任編輯:孫遠

歡迎關注風雲之聲

知乎專欄:

zhuanlan.zhihu.com/feng

一點資訊:

yidianzixun.com/home?

今日頭條:

toutiao.com/m6256575842


推薦閱讀:

怎樣看待搜狗ceo王小川在直播 AlphaGo VS 李世石的比賽時缺乏對職業棋手的尊重。?
觀棋錄
如何看待王思聰對柯潔對陣AlphaGo的評價?
AlphaGo 戰勝了李世石,人工智慧突破了圍棋領域,這意味著什麼?

TAG:柯洁 | AlphaGo | 朴廷桓 |