感謝李世石生命般的抗爭 AlphaGo的命門其實很簡單 - 圍棋

Elizabeth avatar
By Elizabeth
at 2016-03-15T09:38

Table of Contents

http://www.guancha.cn/chenjing/2016_03_14_353915_s.shtml

陳經

2016年3月13日,人機大戰第四局李世石執白180手中盤勝AlphaGo。說這一勝是人類歷史上最重要的一勝也不為過,就不多說了。從圍棋技術與算法上來說,最重要的意義是,我們終於看到了一張AlphaGo的敗局譜,明確知道AlphaGo有重大bug,前三局過後看似威力無比的機器,發起瘋狗症竟然會走出那麼可笑的招法。

現在終於知道,為什麼谷歌只公佈了與樊麾的五盤正式對局的棋譜,卻不公佈非正式對局裡二盤敗局的棋譜。哪怕一盤敗局的全譜洩露出來,人類稍作調查就會知道如何對付它。李世石接到谷歌的邀請,只考慮3分鐘沒提什麼條件就應戰了。從人類與機器鬥爭的角度看,這真不折不扣是《三體》中描述的有礙於人類生存的「傲慢」。不誇張地說,只要李世石要求谷歌公佈一張AlphaGo的敗局譜,這次人機大戰的勝利者就非常可能改寫。但也不能怪李世石,估計所有職業棋手都想不到,這是人類的共性。我們要感謝李世石,終於用生命一般的抗爭在第四局逼出了真相。

1996年國際象棋第一次人機大戰,卡斯帕羅夫就謹慎得多。他提出先由助手和IBM的機器下測試棋,正式比賽時卡斯帕羅夫以4:2獲勝。這是因為國際象棋程序當時已經發展多年,顯示了不低的實力。而圍棋程序也是發展了多年,雖然取得了幾次重大進步,人的感覺仍然是職業棋手讓五六子的水平。樊麾的失利是一個重要信 號,但從人類情緒來看,越是不懂圍棋技術的人越敢預測機器的勝利。棋迷與職業棋手更瞭解自己這邊的「強大實力」,更瞭解圍棋作為一個算法問題的複雜度,傲慢沒有減少。

第四局李世石獲勝的關鍵,賽前我就在上一篇文章中作出了非常接近實戰進程的預測:開放式接觸戰,利用機器「不喜歡打劫」的特性,讓機器犯昏。

李世石這第78手在人類看來,其實還是有漏洞的,仔細拆解會發現這並不是最佳著手,黑棋應對了白不行。但是這招非常神奇地引發了機器的bug。為什麼會有bug,難有定論,我認為最可能是AlphaGo的價值網絡出問題了。(註:關於AlphaGo的價值網絡,田淵棟的這篇《AlphaGo的分析》做了很好的科普,作者為前谷歌工程師,Facebook智能圍棋 darkforest 的負責人和第一作者)

http://zhuanlan.zhihu.com/yuandong/20607684

http://i.guancha.cn/news/2016/03/14/20160314221811421.png

如圖至第82手。80和82都是必然的,所以叫78為神之一手。其實AlphaGo這時走B位,據職業棋手分析,空裡沒有什麼棋。如果白M13撲,黑可以 提掉78一子,白L13再打吃,黑粘在78位。下面白吃不掉63這個子。對人來說變化並不複雜。觀戰棋手猜測李世石預想的變化圖是這樣的:

http://i.guancha.cn/news/2016/03/14/20160314221853477.png

如果AlphaGo走1位,那白只好2位先手接回一子,再4位先手切斷,在外面做出一片形勢,局勢還能維持。

http://i.guancha.cn/news/2016/03/14/20160314221922300.png

而AlphaGo卻走了實戰的83手,後面一連串招法都特別糊塗的樣。所以犯錯是從83手開始的。Deepmind負責人哈薩比斯說從79到85手,機器都以為自己勝率高達70%,到第87手才發現不對勁,一步棋評分就急劇下降了。降到多少沒有說,但肯定是個很低的分,所以才後面一連串搞笑的棋。這些搞笑的棋本身到是不難解釋,為了偷得可憐的一點勝率,它覺得別的招都不如你打吃看不見。Zen之類的MCTS程序落後了亂下很常見。我們要解釋,為什麼AlphaGo下了錯誤的83。

這個局面特別複雜,把整個棋盤中間都捲進去了,可以說根本不是地塊劃分的問題。決定性因素就是怎麼出棋,出多大的棋,出劫的話怎麼造對自己有利的劫。從AlphaGo的算法來看,它會從當前這個局面進行搜索展開,對葉子節點給出判斷。一半是靠價值網絡,一半是靠「快速走子策略」走到終局。

價值網絡的意思是,它靜態地看整個盤面,用一個多層的神經網絡直接算,就報告這個局面誰會勝。雖然它能「深度學習」到很多隱藏的概念,我們很難想像,在一個火藥桶一樣的盤面上,一個靜態的不搜索的神經網絡居然可以判斷清楚最終的勝負。這種複雜局面,我斷定價值網絡的判斷誤差是極大的。也許價值網絡在各種葉子節點粗粗地一看,黑棋在中間以多打少似乎應該是形勢一片大好。這應該不難理解,無論谷歌怎麼拿幾億個局面訓練價值網絡,我也不相信它能判斷清楚。

那麼AlphaGo在葉子節點還有一半的機會,就是「快速走子」你一招我一招不停直到終局。這個快速走子策略的實力還不錯,速度比策略網絡快1000倍的情況下,單只靠這個策略就有KGS的3D實力,做得其實很好了。但我們再想想,這麼複雜的盤面,兩個KGS的3D在那下到終局,你信得過它們的模擬質量?黑死還是白死估計就是隨機的了。如果讓兩個真實的人類3D在這個局面下,黑好白好確實可能等於扔硬幣。

如果「快速走子終局」給的結果是隨機,基本就是價值網絡在那主導判斷了。它要是有系統性的錯誤偏向,誤以為黑形勢一片大好,那可能一大堆葉子節點都有類似錯誤,因為盤面很相似。所以綜合起來,AlphaGo的MCTS模塊,讓價值網絡在那高興,下了83和85還是繼續高興,勝率還是70%。終於在白下了86,黑87後,價值網絡發生了「跳變」,這裡出現了棋塊特徵的本質變化,一大片類似葉子節點的價值網絡判斷都倒轉過來,於是只一手,勝率就從70%跳到30%之類的悲慘數字了。

這是我的猜測,只能儘量地往合理上靠,最終如何希望Deepmind能給出分析。但是顯然,複雜的對殺盤面會對價值網絡造成嚴重困擾,這應該是AlphaGo體系架構中一個不太好消除的命門。同時複雜的對殺盤面,又讓「快速走子策略」模仿精度下降。要是兩個3D在那下和平棋終局,你佔10目我佔9目,錯進錯出最後一平均是可能把局面好壞概率性模擬清楚。但要是50-50%機會的大對殺,就和其它地方無關了,模擬到最後也提供不了什麼有效信息。

AlphaGo搜索中的兩個武器都失靈了,就只有依靠「策略網絡」提供的各個候選點的概率了。同樣的原因,這個策略網絡只是一個靜態評估,複雜盤面各處頭緒很多,各種要點多得是,看上去的好點到處都是。我不相信策略網絡就那麼湊巧對真正的好點給出高的概率。

可以非常合理的認為,對於複雜的、頭緒很多的對殺盤面,AlphaGo所有的搜索武器都會失靈,容易做出錯誤選擇!三大搜索武器「策略網絡」、「價值網絡」、「快速走子終局數子」,全都失靈!

都失靈了,不管你怎麼調參數拼湊一個MCTS架構,最後也還是失靈。這就是AlphaGo的命門!

讓我們人類開心的是,這並不是很難實現的!我和Zen下過,水平不夠怎麼也下不過它。要麼局部被它殺死,要麼圈地大局觀搞不過。但是下多了,慢慢也琢磨出來了辦法。就不要怕它,這裡開一片頭緒,那裡開一片,留著不動。然後各種頭緒慢慢湊一起,這裡的選擇會影響那裡。這種情況下Zen就昏了,它的搜索武器其實比AlphaGo更差,更是全都失靈了。我雖然也昏,但就死盯著某一個「陰謀」,設計一條路線圖就夠了,不去搜索那麼多亂七八糟的。最後哈哈,Zen上當了,我陰謀得逞,吃了一大片終於贏了。其實我的水平真的遠不如Zen,各個局面手段和大局明顯不如。

那麼對李世石這樣的職業高手來說,複雜盤面更不是個事了。職業高手能理清楚複雜盤面的推理邏輯,用清楚的變化圖給出殺招。這正是體現大高手水平的地方。

因此我大膽推測,AlphaGo其實沒有那麼可怕。所有MCTS為基礎的程序都有的大漏洞,它一樣有,而且從算法角度沒有什麼好辦法解決!這是算法原理決定的,不是寫程序代碼錯了幾行的小bug。

如果職業高手們瞭解了AlphaGo的漏洞,就不要客氣搞什麼棋理圈地,直接就上去跟它殺!但不要在局部亂殺,不是說「在此決一勝負」,如李世石第一局開始的殺法,不對。要這裡留點味道,那裡留些頭緒,最後這些亂子湊到一起去,一定把AlphaGo弄昏頭。

因此,除了「不喜歡打劫」以外,AlphaGo還不喜歡複雜的盤面。所以前三局中它表現得特別喜歡定型,有手段就使出來,減少頭緒。這是它的搜索特性決定的。

分析清楚以後就可以肯定,AlphaGo的漏洞不小。開始人類不瞭解它,看它下得像模像樣,還時不時有好招,被它嚇到了,沒有找到它的命門。它是有幾招絕活玩得不錯,封閉局面算得不錯,圈地運動搞得不錯,幾百萬次算到終局去人不可能玩得過。選點也很靠譜,算得快算得準。在它擅長的領域和它打,當然就不是對手,哪怕是人類最高水平的也不行。但複雜盤面是人類的天生優勢,這不是MCTS那幾招搞得定的,需要人類高手製造頭緒歸納頭緒的邏輯能力。

AlphaGo的缺陷被測試出來以後,人類高手將可能對機器取得壓倒性的勝利。當然人類高手需要改變下法,不要和自己人下那樣講棋理數著目下。碰到機器就要攪,越複雜越好。不是一處變化多手數多那種複雜,而是攪出的頭緒越多越好。

這還沒有提到打劫的能力,這更是人類高手勝過機器的地方。機器可以用控制流避開劫爭,但這終究不是辦法。如果人想通了,自己不要虛,大膽引入劫爭分支,機器總是避劫原理上就不合於棋道。當然這個分析起來更複雜。

綜上所述,如果高水平圍棋程序還是基於MCTS架構的,都會有難以解決的大缺陷。我對人類高手一段時間內壓制機器充滿信心!

--
Tags: 圍棋

All Comments

Harry avatar
By Harry
at 2016-03-15T23:48
好文推
Erin avatar
By Erin
at 2016-03-18T18:35
78是最佳解無誤喔....他是勝負手
Aaliyah avatar
By Aaliyah
at 2016-03-21T01:14
是最佳解 保證可以讓看似完蛋的白拉回均勢 不過均勢如果
Sandy avatar
By Sandy
at 2016-03-21T13:33
好好下 勝負難料 黑的並非無法逆轉
Damian avatar
By Damian
at 2016-03-23T22:46
同意
Ophelia avatar
By Ophelia
at 2016-03-26T22:31
好文,值得一看
Hedy avatar
By Hedy
at 2016-03-31T14:26
身為一位工程師 不覺得這會是個瓶頸 等alphago多修正幾
Connor avatar
By Connor
at 2016-04-03T17:12
個版本 可能九段們也很難贏了 當然我不是看雖人類
Isla avatar
By Isla
at 2016-04-06T09:56
只是alphago也是結合數十萬的工程師們的心血結晶阿
Poppy avatar
By Poppy
at 2016-04-07T08:09
這場圍棋比賽不管誰贏 都是人類贏 不是嗎?
Kristin avatar
By Kristin
at 2016-04-08T01:47
樊麾贏的那二盤是快棋 樊麾的訪談有提到
James avatar
By James
at 2016-04-11T19:39
終於有一篇正解文章
William avatar
By William
at 2016-04-16T17:05
雖然有部分分析不錯,但有點捕風捉影過頭了
Kama avatar
By Kama
at 2016-04-19T07:02
Google根本沒有不敢讓人了解AI,連演算法都公告天下了
Irma avatar
By Irma
at 2016-04-20T15:49
沒有比78更好的下法
Jake avatar
By Jake
at 2016-04-22T16:49
方向對 但是要搞出複雜盤面 自己又不要犯錯 談何容易
Sierra Rose avatar
By Sierra Rose
at 2016-04-23T06:58
阿發狗可不是ZEN的等級
Mia avatar
By Mia
at 2016-04-24T17:35
下圍棋的當然希望棋士贏,若每天下苦功卻被電腦追過..
Skylar DavisLinda avatar
By Skylar DavisLinda
at 2016-04-26T07:51
電腦也是人花了很大的功夫研究出來的呀
Ula avatar
By Ula
at 2016-04-29T13:42
這篇很有趣,先去其他戰場攪,等到關心這戰場的樹被清掉
Hedda avatar
By Hedda
at 2016-05-03T23:25
再回來下這邊,讓他後來的sampling不足
Daph Bay avatar
By Daph Bay
at 2016-05-04T23:45
棋士和工程師還是不能一概而論阿
Kyle avatar
By Kyle
at 2016-05-05T12:50
有點在腦補google用意吧 google的確會想讓大家覺得alp
hago好厲害 但應該不會刻意去隱瞞alphago的缺陷吧 或
是該說 不會因為怕輸掉比賽而不讓職業棋手發現弱點
Enid avatar
By Enid
at 2016-05-07T06:33
作文厲害
Heather avatar
By Heather
at 2016-05-07T14:01
我也覺得作文多了點
Anthony avatar
By Anthony
at 2016-05-11T01:33
好文個頭...

圍棋AI AlphaGo 之我見

Mason avatar
By Mason
at 2016-03-15T08:30
※ 引述《mathbug (天堂的定義)》之銘言: : 1. 據說 AlphaGo用到的Neuro Network深達13層 : 有任何穩定性的報告或是說明嗎? 論文裡有提到它預測的誤差 : 2. 圍棋的勝敗至少包括兩種,一種是壓著打或是完勝,另一種是反敗為勝 : AlphaGo的設計應該是 ...

寺山怜並非無名之輩 世界第三井山裕太在

Suhail Hany avatar
By Suhail Hany
at 2016-03-15T03:14
寺山怜並非無名之輩 世界第三井山裕太在哪?  新浪體育訊  百靈杯日本隊把種子名額給了一位名為寺山怜的日本棋手,他其實並非 “無名之輩”,作為2015年的若鯉戰冠軍,同時在NHK杯中還有著不俗表現,寺山怜獲得 這個種子名額並不過分。但令人遺憾的是,世界排名第三、日本著名棋手井山裕太九段 再度缺席了世界個人 ...

寺山憐日本圍棋苦寒的背影 望重新贏回尊重

Isabella avatar
By Isabella
at 2016-03-15T00:21
原文恕刪 沒有替日本護航的意思 這個名單確實不怎麼樣 但是說日本「亂派」應該是沒有的事 日本棋院的制度之嚴謹 我想應該是中日韓之最 他們各項歷史悠久的賽事會在很早很早就排定日程 隨便看一下官網: http://www.nihonkiin.or.jp/match/kisei/041.html ...

韓國棋院遊記 以圍棋為事業的人們

Kyle avatar
By Kyle
at 2016-03-14T23:45
首爾日記:韓國棋院遊記 以圍棋為事業的人們 3月14日,晴。首爾暖和了起來。   在新華社駐韓國記者金敬東老師的帶領下,我們三位來自新浪的記者參觀了傳說中的 韓國棋院。韓國棋院坐落於首爾城東區弘益洞315號,電視劇《請回答1988》裏面男主角 崔澤總是在棋院下棋到很晚,在電視裡看到的大都是夜景,這次終於在 ...

第四局AlphaGo敗招的分析

Aaliyah avatar
By Aaliyah
at 2016-03-14T23:43
剛才在知乎看到 DarkForest (Facebook 的圍棋 AI) 的作者寫了這篇新文章 對 AI 運作方式 (DCNN/MCTS) 有興趣的人可以參考看看 :p --- 作者:田淵棟 知乎原文連結:http://zhuanlan.zhihu.com/yuandong/20644427 第四局李 ...