AlphaGo的命門其實很簡單|陳經
AlphaGo的命門其實很簡單|陳經
請點擊「風雲之聲」,打開新的世界
科技與戰略風雲學會,受過科學訓練的理性愛國者們組建的智庫。科學素養,家國情懷,橫跨文理,縱覽風雲。
導讀:本文寫於李世石和AlphaGo第四盤對局獲勝後。李世石接到谷歌的邀請,只考慮3分鐘沒提什麼條件就應戰了。從人類與機器鬥爭的角度看,這真不折不扣是《三體》中描述的有礙於人類生存的「傲慢」。不誇張地說,只要李世石要求谷歌公布一張AlphaGo的敗局譜,這次人機大戰的勝利者就非常可能改寫。
————————————————————————————————
2016年3月13日,人機大戰第四局李世石執白180手中盤勝AlphaGo。說這一勝是人類歷史上最重要的一勝也不為過,就不多說了。從圍棋技術與演算法上來說,最重要的意義是,我們終於看到了一張AlphaGo的敗局譜,明確知道AlphaGo有重大bug,前三局過後看似威力無比的機器,發起瘋狗症竟然會走出那麼可笑的招法。
現在終於知道,為什麼谷歌只公布了與樊麾的五盤正式對局的棋譜,卻不公布非正式對局裡二盤敗局的棋譜。哪怕一盤敗局的全譜泄露出來,人類稍作調查就會知道如何對付它。李世石接到谷歌的邀請,只考慮3分鐘沒提什麼條件就應戰了。從人類與機器鬥爭的角度看,這真不折不扣是《三體》中描述的有礙於人類生存的「傲慢」。不誇張地說,只要李世石要求谷歌公布一張AlphaGo的敗局譜,這次人機大戰的勝利者就非常可能改寫。但也不能怪李世石,估計所有職業棋手都想不到,這是人類的共性。我們要感謝李世石,終於用生命一般的抗爭在第四局逼出了真相。
1996年國際象棋第一次人機大戰,卡斯帕羅夫就謹慎得多。他提出先由助手和IBM的機器下測試棋,正式比賽時卡斯帕羅夫以4:2獲勝。這是因為國際象棋程序當時已經發展多年,顯示了不低的實力。而圍棋程序也是發展了多年,雖然取得了幾次重大進步,人的感覺仍然是職業棋手讓五六子的水平。樊麾的失利是一個重要信號,但從人類情緒來看,越是不懂圍棋技術的人越敢預測機器的勝利。棋迷與職業棋手更了解自己這邊的「強大實力」,更了解圍棋作為一個演算法問題的複雜度,傲慢沒有減少。
第四局李世石獲勝的關鍵,賽前我就在上一篇文章中作出了非常接近實戰進程的預測:開放式接觸戰,利用機器「不喜歡打劫」的特性,讓機器犯昏。(陳經:在AlphaGo完勝後繼續分析其演算法巨大優勢與可能的缺陷)
李世石這第78手在人類看來,其實還是有漏洞的,仔細拆解會發現這並不是最佳著手,黑棋應對了白不行。但是這招非常神奇地引發了機器的bug。為什麼會有bug,難有定論,我認為最可能是AlphaGo的價值網路出問題了。
李世石對AlphaGo第四局第82手
如圖至第82手。80和82都是必然的,所以叫78為神之一手。其實AlphaGo這時走B位,據職業棋手分析,空里沒有什麼棋。如果白M13撲,黑可以 提掉78一子,白L13再打吃,黑粘在78位。下面白吃不掉63這個子。對人來說變化並不複雜。觀戰棋手猜測李世石預想的變化圖是這樣的:
李世石對AlphaGo第四局第82手後變化圖
如果AlphaGo走1位,那白只好2位先手接回一子,再4位先手切斷,在外面做出一片形勢,局勢還能維持。
李世石對AlphaGo第四局第93手
而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架構的,都會有難以解決的大缺陷。我對人類高手一段時間內壓制機器充滿信心!
作者簡介:筆名陳經,香港科技大學計算機科學碩士,科技與戰略風雲學會會員, 微博@風雲學會陳經,棋力新浪圍棋6D。二十一世紀初開始有獨特原創性的經濟研究,啟發了大批讀者。2003年的《經濟版圖中的發展中國家》預言中國將不斷產業升級,挑戰發達國家。2016年8月出版新書《陳經說:中國的官辦經濟》。
【本文2016年3月14日以《感謝李世石生命般的抗爭 現在我敢說AlphaGo的命門其實很簡單》為題發表於觀察者網(陳經:感謝李世石生命般的抗爭 現在我敢說AlphaGo的命門其實很簡單)。】
請關注風雲學會的微信公眾平台「風雲之聲」,微信號fyvoice
知乎專欄:風雲之聲 - 知乎專欄
一點資訊:【一點資訊】風雲之聲 www.yidianzixun.com
今日頭條:風雲之聲 – 頭條號(TouTiao.org)
推薦閱讀:
※如何看待《最強大腦》第四季第三期人機大戰中不敗戰神王昱珩慘敗,最終一個也沒答對?
※人不能在圍棋上戰勝AI,但人可以發明圍棋
※請問李世石第四局的「神之一手」到底有多奇妙呢?
※從孫子兵法看人機大戰
※柯潔大戰阿爾法狗,品牌借勢哪家強?