算法的棋道

開場白

AlphaGo兩番贏下了人類圍棋世界的真正高手,世界第二的韓國棋手李世石[1]

賽前,準(zhǔn)確說是Google的DeepMind團(tuán)隊(duì)剛放出消息說戰(zhàn)勝了歐洲圍棋冠軍樊輝并打算挑戰(zhàn)李世石的時(shí)候,我個(gè)人是很謹(jǐn)慎地說這場比賽很難講,但其實(shí)心里認(rèn)為AlphaGo的贏面更大。只不過當(dāng)時(shí)AlphaGo戰(zhàn)勝的樊輝雖說是歐洲冠軍,但全球排名都不入百,實(shí)在算不得是大高手。但AlphaGo的優(yōu)勢在于有半年多的時(shí)間可以不眠不休地學(xué)習(xí)提高,而且還有DeepMind的工程師為其保駕護(hù)航,當(dāng)時(shí)的AlphaGo也不是完全版,再加上我所深知的人類固有的夜郎自大,這些戰(zhàn)內(nèi)戰(zhàn)外的因素結(jié)合在一起,雖然嘴巴上說這事難講,但心里是認(rèn)定了AlphaGo會贏得。

結(jié)果,李世石賽前說比賽應(yīng)該會5:0或者4:1而自己的使命就是盡可能阻止那1的出現(xiàn),但實(shí)際的戰(zhàn)況卻是現(xiàn)在AlphaGo以2:0的比分暫時(shí)領(lǐng)先。且,如果不出意外的話,最終的總比分應(yīng)該是AlphaGo勝出——只不過到底是5:0還是4:1,這還有待事態(tài)發(fā)展。

這一幕不由地讓人想起了當(dāng)年的吳清源,將所有不屑他的挑戰(zhàn)者一一斬落,最終敢讓天下先。

當(dāng)然了,當(dāng)今世界棋壇第一人的柯潔對此恐怕是不同意的,但讓我說,如果下半年AlphaGo挑戰(zhàn)柯潔,或者柯潔主動挑戰(zhàn)AlphaGo,那我還是堅(jiān)定地認(rèn)為,AlphaGo可以戰(zhàn)勝柯潔。

不過,這里所要說的并不是上述這些時(shí)代背景。

機(jī)器超越人類僅僅是一個(gè)時(shí)間的問題,當(dāng)然還有一個(gè)人類是否肯丟下面子去承認(rèn)的問題[2]。

輸贏不是重點(diǎn),為什么會輸怎么會贏,這才是重點(diǎn)。


AlphaGo的算法

第一局對弈中,李世石開局選擇所有人都不曾走過的開局,是為了試探AlphaGo。而中后盤又出現(xiàn)了明顯的惡手,所以人們普遍可以認(rèn)為AlphaGo是捕捉到了李世石本身的重大失誤,這才完成的逆轉(zhuǎn)。

事實(shí)上李世石本人也是這么認(rèn)為的。

但到了第二局,事情就完全不同了。執(zhí)黑的AlphaGo竟然讓李世石認(rèn)為自己從來就沒有真正地占有過優(yōu)勢,從而可以認(rèn)為是被一路壓制著走到了最后。

而且,無論是第一局還是第二局,AlphaGo都走出了所有職業(yè)棋手都嘆為觀止的妙手,或者是讓所有職業(yè)棋手都皺眉不接的怪手。

很多時(shí)候,明明在職業(yè)棋手看來是不應(yīng)該走的落子,最后卻居然發(fā)揮了奇妙的作用。就連賽前認(rèn)為AlphaGo必?cái)〉穆櫰迨ィ紝Φ诙种蠥lphaGo的一步五線肩沖表示脫帽致敬。

職業(yè)棋手出生的李喆連續(xù)寫了兩篇文章來分析這兩局棋,在對棋局的分析上我自然是不可能比他更專業(yè)的。我這里所想要說的是,從AlphaGo背后的算法的角度來看,機(jī)器的棋道究竟是什么呢?


AlphaGo的算法,可以分為四大塊[3]

  1. 策略網(wǎng)絡(luò)
  2. 快速走子
  3. 估值網(wǎng)絡(luò)
  4. 蒙特卡洛樹搜索

這四個(gè)部分有機(jī)結(jié)合在一起,就構(gòu)成了AlphaGo的算法。

當(dāng)然,這么說比較枯燥,所以讓我們從蒙特卡洛樹開始做一個(gè)簡單的介紹。

當(dāng)我們在玩一個(gè)游戲的時(shí)候(當(dāng)然,最好是圍棋象棋這種信息完全透明公開且完備沒有不可知成分的游戲),對于下一步應(yīng)該如何行動,最好的方法當(dāng)然是將下一步所有可能的情況都列舉出來,然后分析對手所有可能的策略,再分析自己所有可能的應(yīng)對,直到最后比賽結(jié)束。這就相當(dāng)于是說,以現(xiàn)在的局面為種子,每一次預(yù)判都進(jìn)行一定數(shù)量的分岔,構(gòu)造出一棵完備的“決策樹”——這里所謂的完備,是說每一種可能的未來的變化都能在這棵決策樹中被體現(xiàn)出來,從而沒有跑出決策樹之外的可能。

有了決策樹,我們自然可以分析,哪些下一步的行為是對自己有利的,哪些是對自己有害的,從而選擇最有利的那一步來走。

也就是說,當(dāng)我們擁有完備的決策樹的時(shí)候,勝負(fù)基本已經(jīng)定下了,或者說如何應(yīng)對可以獲勝,基本已經(jīng)定下了。

更極端一點(diǎn)的,梅策羅有條定理就是說,在上述這類游戲中,必然存在至少一條這種必勝的策略[4]。

所以,原則上來說,在全知全能的上帝(當(dāng)然是不存在的)面前,你不管怎么下圍棋(或者國際象棋、中國象棋、日本將棋),上帝都知道怎么走必勝,或者最多最多就是你走的剛好和上帝所預(yù)設(shè)的一樣。

但,上述完全的完備的完美的決策樹,雖然理論上對于圍棋這樣的游戲來說是存在的,但實(shí)際上我們無法獲得。

不但是說我們?nèi)祟悷o法獲得,更是說我們的機(jī)器也無法獲得——圍棋最后的局面可能有3361種可能,這個(gè)數(shù)量超過了人類可觀測宇宙中的原子總數(shù)。

因此,現(xiàn)在的情況是:無論是人還是機(jī)器,都只能掌握完全決策樹的一部分,而且是非常非常小的一部分。

所以,上述神之棋路是我們?nèi)祟惡蜋C(jī)器都無法掌握的。

故而,人和機(jī)器就采用了一定的手段來多決策樹做簡化,至少將其簡化到自己能處理的程度。

在這個(gè)過程中,一個(gè)最自然的方法(無論對機(jī)器還是對人來說),就是只考慮少量層次的完全展開,而在這些層次之后的決策展開則是不完全的。

比如說,第一步有100種可能,我們都考慮。而這100種可能的落子之后,就會有第二部的選擇,這里比如說有99種可能,但我們并不都考慮,我們只考慮其中的9種。那么本來兩層展開有9900種可能,現(xiàn)在我們就只考慮其中的900種,計(jì)算量自然是大為縮減。

這里,大方向人和機(jī)器是相同的,差別在于到底如何篩選。

對機(jī)器來說,不完全的決策展開所采用的是蒙特卡洛方法——假定對子決策的隨機(jī)選擇中好與壞的分布與完全展開的情況下的分布是相似的,那么我們就可以用少量的隨機(jī)抽樣來代表完全采樣的結(jié)果。

說白了就是:我隨便選幾個(gè)可能的決策,然后最進(jìn)一步分析。

這里當(dāng)然就存在很大的風(fēng)向了:如果正好有一些決策,是隨機(jī)過程沒有選中的,那不就蛋疼了么?

這點(diǎn)人的做法并不相同,因?yàn)槿瞬⒉煌耆请S機(jī)做出選擇。

這里就牽扯到了所謂的棋感或者大局觀。

人們在落子的時(shí)候,并不是對所有可能的上百個(gè)選擇中隨機(jī)選一個(gè)出來試試未來的發(fā)展,而是利用棋形、定式、手筋等等通過對局或者學(xué)習(xí)而得來的經(jīng)驗(yàn),來判斷出哪些落子的可行性更高,哪些位置的落子則基本可以無視。

所以,這就出現(xiàn)了AlphaGo與李世石對局中那些人類棋手很莫名的棋著來了——按照人類的經(jīng)驗(yàn),從棋形、棋感、定式等等經(jīng)驗(yàn)出發(fā)完全不應(yīng)該去走的落子,AlphaGo就走了出來。

在傳統(tǒng)只利用蒙特卡洛樹搜索的算法中,由于對落子位置的選擇以隨機(jī)為主,所以棋力無法再做出提升。這等于是說機(jī)器是一個(gè)完全沒學(xué)過圍棋的人,完全靠著強(qiáng)大的計(jì)算力來預(yù)測未來幾百步的發(fā)展,但這幾百步中的大多數(shù)都是隨機(jī)走出的不可能之棋局,沒有實(shí)際的參考價(jià)值。

Facebook的DarkForest和DeepMind的AlphaGo所做的,就是將原本用于圖形圖像分析的深度卷積神經(jīng)網(wǎng)絡(luò)用到了對棋局的分析上,然后將分析結(jié)果用到了蒙特卡洛樹搜索中。

這里,深度卷積神經(jīng)網(wǎng)絡(luò)(DCNN)的作用,是通過對棋局的圖形圖像分析,來分析棋局背后所隱藏的規(guī)律——用人的話來說,就是棋形對整個(gè)棋局的影響規(guī)律。

然后,將這些規(guī)律作用到對決策樹的裁剪上,不再是完全通過隨機(jī)的方法來判斷下一步應(yīng)該往哪走,而是利用DCNN來分析當(dāng)下的棋形,從而分析當(dāng)下棋形中哪些位置的落子具有更高的價(jià)值,哪些位置的落子幾乎毫無價(jià)值,從而將無價(jià)值的可能落子從決策樹中減除,而對哪些具有高價(jià)值的決策進(jìn)行進(jìn)一步的分析。

這就等于是將學(xué)習(xí)來的棋形對棋局的影響規(guī)律運(yùn)用到了對未來可能發(fā)展的選擇策略中,從而構(gòu)成了一個(gè)“學(xué)習(xí)-實(shí)踐”的正反饋。

從AlphaGo的算法來看,這種學(xué)習(xí)經(jīng)驗(yàn)的使用可以認(rèn)為分為兩部分。一個(gè)是估值網(wǎng)絡(luò),對整個(gè)棋局大勢做分析;而另一個(gè)是快速走子,對棋局的局部特征做出分析匹配。

因此,一個(gè)負(fù)責(zé)“大局觀”,而另一個(gè)負(fù)責(zé)“局部判斷”,這兩個(gè)最后都被用來做決策的剪裁,給出有足夠深度與準(zhǔn)確度的分析。

與之相對的,人的決策時(shí)如何制定的呢?


人類的弱點(diǎn)

我雖然不是棋手,只是知道圍棋規(guī)則和簡單的幾個(gè)定式,但人的一大特征就是,人的很多思考方式是在生活的各個(gè)領(lǐng)域都通用的,一般不會出現(xiàn)一個(gè)人在下圍棋時(shí)用的思路與干別的事時(shí)的思路徹底不同這樣的情況。

因此,我可以通過分析自己與觀察別人在日常生活中的行為以及如何導(dǎo)致這種行為的原因,來分析下棋的時(shí)候人類的普遍一般性策略是怎么樣的。

那就是——人類會根據(jù)自身的性格與情緒等非棋道的因素,來進(jìn)行決策裁剪。

比如說,我們經(jīng)常會說一個(gè)棋手的風(fēng)格是保守的,而另一個(gè)棋手的風(fēng)格是偏向于激進(jìn)廝殺的——記得人們對李世石的風(fēng)格界定就是這樣。

這意味著什么?這其實(shí)是說,當(dāng)下一步可能的決策有100條,其中30條偏保守,30條偏激進(jìn),40條中庸,這么個(gè)情況下,一個(gè)棋風(fēng)嗜血的棋手可能會選擇那激進(jìn)的30條策略,而忽略別的70條;而一個(gè)棋風(fēng)保守的,則可能選擇保守的30條策略;一個(gè)棋風(fēng)穩(wěn)健的,則可能是那中庸的40條策略為主。

他們選擇策略的因素不是因?yàn)檫@些策略可能的勝率更高,而是這些策略所能體現(xiàn)出的局部的棋感更符合自己的風(fēng)格——這是與是否能獲勝無關(guān)的價(jià)值判斷,甚至可以說是和棋本身無關(guān)的一種判斷方法,依據(jù)僅僅是自己是否喜歡。

更進(jìn)一步,人類棋手還可以根據(jù)對手的棋風(fēng)、性格等因素,來篩選出對手所可能走的棋路,從而篩選出可能的策略進(jìn)行反擊。

因此,也就是說:由于人腦無法處理如此龐大的信息、決策分岔與可能性,于是人腦索性利用自身的性格與經(jīng)驗(yàn)等因素,做出與處理問題無關(guān)的信息篩選。

這可以說是AlphaGo與人類棋手最大的不同。

人類棋手很可能會因?yàn)轱L(fēng)格、性格、情緒等等因素的影響,而對某些可能性做出不夠重視的判斷,但這種情況在AlphaGo的算法中是不存在的。

其中,情緒可以通過各種手段來壓制,但棋手個(gè)人的風(fēng)格與更深層次的性格元素,卻完全可能導(dǎo)致上述弱點(diǎn)在自己無法控制的情況下出現(xiàn)。但這是AlphaGo所不具備的弱點(diǎn)——當(dāng)然,這不是說AlphaGo沒弱點(diǎn),只不過沒有人類的弱點(diǎn)罷了。

究其根本,這種通過戰(zhàn)局外的因素來篩選戰(zhàn)局內(nèi)的決策的情況之所以會出現(xiàn),原因在于人腦的信息處理能力的不足(當(dāng)然如果我們計(jì)算一個(gè)單位體積或者單位質(zhì)量的處理問題的能力的話,那么人腦應(yīng)該還是優(yōu)于現(xiàn)在的計(jì)算機(jī)很多很多的,這點(diǎn)毋庸置疑),從而只能通過這種手段來降低所需分析的信息量,以確保自己可以完成任務(wù)。

這是一種在有限資源下的取舍策略,犧牲廣度的同時(shí)來換取深度以及最終對問題的解決。

同時(shí),又由于人腦的這種功能并不是為了某個(gè)特定任務(wù)而開發(fā)的,而是對于整個(gè)生活與生存來說的“通識”,因此這種舍去本身只能與人的個(gè)體有關(guān),而與要處理的問題無關(guān),從而無法做到AlphaGo那樣完全只通過局面的分析來做出篩選,而是通過棋局之外的因素來做出選擇。

這就是人與AlphaGo的最大不同,可以說是分別寫在基因與代碼上的命門。

更進(jìn)一步,人類除了上述決策篩選的通用方案之外,當(dāng)然是有針對特定問題的特定篩選方案的,具體在圍棋上,那就是各種定式、套路以及各種成熟或者不成熟的關(guān)于棋形與大勢的理論,或者僅僅是感覺。

也就是說,人通過學(xué)習(xí)來掌握局部與全局特征,并利用這些特征來做出決策,這個(gè)步驟本身和機(jī)器所干的是一樣的。但不同點(diǎn)在于,人可能過于依賴這些已有的經(jīng)驗(yàn)總結(jié),從而陷入可能出現(xiàn)而無人注意的陷阱中。

這就是這次AlphaGo數(shù)次走出有違人類經(jīng)驗(yàn)常理的棋著但事后發(fā)現(xiàn)很有用很犀利的原因——我們并不知道自己數(shù)千年來總結(jié)下來的經(jīng)驗(yàn)到底能在多大程度上應(yīng)用于新的棋局而依然有用。

但AlphaGo的算法沒有這方面的困擾。它雖然依然是利用人類的棋譜所給出的經(jīng)驗(yàn),利用這些棋譜中所呈現(xiàn)出的全局或者局部的規(guī)律,但最終還是會通過蒙特卡洛樹搜索將這些經(jīng)驗(yàn)運(yùn)用到對棋局的推演中去,而不是直接利用這些規(guī)律做出定式般的落子。

所以,不但定式對AlphaGo是沒意義的,所謂不走尋常路的新棋路對AlphaGo來說威脅也不大——這次第一局中李世石的新棋路不就一樣失效了么?因此即便吳清源再世,或者秀哉再世(佐為??),他們即便開創(chuàng)出全新的棋路,也不能作為必定能戰(zhàn)勝AlphaGo的依據(jù)。

理論上來說,只要出現(xiàn)過的棋譜足夠多,那么就能找出圍棋背后的規(guī)律,而這就是機(jī)器學(xué)習(xí)要挖掘出來的。新的棋路,本質(zhì)上不過是這種規(guī)律所演化出的一種無人見過的新現(xiàn)象,而不是新規(guī)律。

那么,AlphaGo的弱點(diǎn)是什么?它是不是全無弱點(diǎn)?

這點(diǎn)倒是未必的。


AlphaGo的弱點(diǎn)

從AlphaGo的算法本身來說,它和人一樣不可能對所有可能的決策都做出分析,雖然可以利用各種手段來做出價(jià)值判斷,并對高價(jià)值的決策做出深入分析,但畢竟不是全部,依然會有遺漏。這點(diǎn)本身就說明:AlphaGo的考慮不可能是完備的。

而且,很顯然的是,如果一個(gè)人類可能進(jìn)行的策略在AlphaGo看來只會帶來不高的勝率,那么這種策略本身就會被剪除,從而這種策略所帶來的變化就不在AlphaGo當(dāng)下的考慮中。

因此,假如說存在一種棋路,它在前期的多輪思考中都不會帶來高勝率,那么這種棋路就是AlphaGo“意料之外”的。

而如果這種每一步都沒有高勝率的棋路在若干步后可以給出一個(gè)對人類來說絕佳的局面,從而讓AlphaGo無法翻盤,那么這種棋路就成了AlphaGo思路的死角。

也就是說說,在AlphaGo發(fā)覺它之前,它的每一步鋪墊都是低勝率的,而最后構(gòu)造出的棋形卻具有絕對的高勝率,這種低開高走的棋路,是會被AlphaGo忽略的。

雖然我們并不知道這種棋路是否存在,以及這種棋路如果存在的話應(yīng)該長什么樣,但我們至少知道,從理論上來說,這種棋路是AlphaGo的死角,而這一死角的存在就基于這個(gè)事實(shí):無論是人還是AlphaGo,都不可能對所有策略的所有演變都掌握,從而無論如何死角總是存在的。

當(dāng)然,這一理論上的死穴的存在性并不能幫助人類獲勝,因?yàn)檫@要求極深的觀察力和預(yù)判能力,以及要構(gòu)造出一個(gè)即便AlphaGo察覺了也已回天乏力的幾乎可以說是一錘定音的局面,這兩點(diǎn)本身的要求就非常高,尤其在思考深度上,人類恐怕本就比不過機(jī)器,從而這樣的死角可能最終只有機(jī)器能做到——也就是說,我們可以針對AlphaGo的算法研發(fā)一款BetaGo,專門生成克制AlphaGo的棋路,然后人類去學(xué)習(xí)。以算法戰(zhàn)勝算法[5]

但這樣到底是機(jī)器贏了,還是人贏了呢?

另一方面,上述方法雖然是理論上的AlphaGo思維的死角,本人們并不容易掌握。那有沒有人們可以掌握的AlphaGo的死角呢?

這點(diǎn)恐怕非常難。我認(rèn)為李喆的觀點(diǎn)是非常有道理的,那就是利用人類現(xiàn)在和歷史上的整體經(jīng)驗(yàn)。

開創(chuàng)新的棋局就必須面對處理你自己都沒有充分面對充分準(zhǔn)備過的局面,這種情況下人類具有前面所說過的兩個(gè)弱點(diǎn)從而要么思考不完全要么陷入過往經(jīng)驗(yàn)與定式的坑中沒能走出來,而機(jī)器卻可以更均衡地對所有可能的局面盡可能分析,思考更全面周翔,那么人的局限性未必能在新棋局中討到什么好果子吃。

反過來,如果是人類已經(jīng)研究多年非常非常熟悉的局面,已經(jīng)沒有新花樣可以玩出來了,那么機(jī)器的全面考慮就未必能比人的千年經(jīng)驗(yàn)更占有。

因此,面對AlphaGo,人類自以為傲的創(chuàng)造力恐怕反而是絆腳石,回歸傳統(tǒng)利用傳統(tǒng)積累才有可能獲勝。

但,這樣的獲勝等于是說:我創(chuàng)造力不如機(jī)器,我用我的經(jīng)驗(yàn)砸死你。

人類引以為傲的創(chuàng)造力被拋棄,機(jī)器本應(yīng)更擅長的被定式卻成了救命稻草,這不是很虐心么?

那么,創(chuàng)新棋路是否真的不可能戰(zhàn)勝AlphaGo?這點(diǎn)至少從目前來看,幾乎不可能,除非——

如果李世石和別的人類其實(shí)通過這兩天,或者說在這幾年里都演練過一個(gè)被推演得很充分的新棋路,但這套棋路從來沒有被以任何形式公開過,那么這樣的新棋路對AlphaGo來說可能會造成麻煩,因?yàn)樵緞?chuàng)新中AlphaGo的均衡全面考慮可能會敗給李世石等人類棋手多年的推演專修而來的集體經(jīng)驗(yàn)。

因此,我們現(xiàn)在有了三條可以戰(zhàn)勝AlphaGo的可能之路:

  1. 通過每一步低勝率的棋著構(gòu)造出一個(gè)擁有極高勝率的局面,利用前期的低勝率騙過AlphaGo的策略剪枝算法,可以說是鉆算法的漏洞;
  2. 利用人類千年的圍棋經(jīng)驗(yàn)總結(jié),靠傳統(tǒng)定式而非創(chuàng)造力擊敗思考均衡的AlphaGo,可以說是用歷史戰(zhàn)勝算法;
  3. 人類棋手秘而不宣地研究從未公開過的新棋路,從而突破AlphaGo基于傳統(tǒng)棋譜而總結(jié)學(xué)習(xí)來的經(jīng)驗(yàn),可以說是用創(chuàng)造力戰(zhàn)勝算法。

其中,算法漏洞是必殺,但人類未必能掌握,只能靠未來更先進(jìn)的算法,所以不算是人類的勝利;用歷史戰(zhàn)勝算法,則可以說拋棄了人類的驕傲與自豪,勝之有愧;而用創(chuàng)造力戰(zhàn)勝算法,大概算是最有范的,但卻依然很難說必勝——而且萬一AlphaGo自己與自己的千萬局對弈中早就發(fā)現(xiàn)了這種棋路,那人類依然會慘敗。

綜上所述,要戰(zhàn)勝AlphaGo,實(shí)在是一條充滿了艱辛的道路,而且未必能走到頭。


人相對AlphaGo的優(yōu)勢

雖然說,在圍棋項(xiàng)目上,人必然最終敗在以AlphaGo為代表的計(jì)算機(jī)算法的腳下,但這并不表示AlphaGo為代表的圍棋算法就真的已經(jīng)超越了人類。

問題的關(guān)鍵在于:AlphaGo下棋的目的,是預(yù)設(shè)在算法中的,而不是其自己生成的。

也就是說,AlphaGo之所以會去下圍棋,會去盡力贏圍棋,因?yàn)槿祟愒O(shè)定了AlphaGo要去這么做,這不是AlphaGo自己能決定的。

這可以說是人與AlphaGo之間做大的不同。

而,進(jìn)一步來分析的話,我們不由地要問:人活在這個(gè)世界上是否真的是無預(yù)設(shè)的,完全有自己決定的呢?

恐怕未必。

包括人在內(nèi)的所有生物,基本都有一個(gè)預(yù)設(shè)的目標(biāo),那就是要保證自己能活下去,也即求生欲。

人可以通過各種后天的經(jīng)驗(yàn)來講這個(gè)目標(biāo)壓制下去,但這一目標(biāo)本身是寫在人類的基因中的。

從這點(diǎn)來看,AlphaGo的問題恐怕并不是被預(yù)設(shè)了一個(gè)目標(biāo),而是目前還不具備設(shè)置自己的目標(biāo)的能力,從而就更加談不上以自己設(shè)置的目標(biāo)覆蓋預(yù)設(shè)的目標(biāo)的可能了。

那么,如何讓算法可以自己設(shè)定目標(biāo)呢?這個(gè)問題恐怕沒那么容易來回答。

而,如果將這個(gè)問題局限在圍棋領(lǐng)域,那么就成了:AlphaGo雖然知道要去贏棋,但并不知道贏棋這個(gè)目標(biāo)可以分解為前中后三期的子目標(biāo),比如人類經(jīng)常談及的爭大勢、奪實(shí)地以及最后的獲勝,這類子目標(biāo)。

雖說在某些小局部,DCNN似乎展現(xiàn)了可以將問題分解為子目標(biāo)并加以解決的能力,但至少在設(shè)立總體目標(biāo)這個(gè)問題上,目前的算法看來還無能為力。

這種自助設(shè)定目標(biāo)的能力的缺失,恐怕會是一種對算法能力的制約,因?yàn)樽幽繕?biāo)有時(shí)候會極大地簡化策略搜索空間的結(jié)構(gòu)與大小,從而避免計(jì)算資源的浪費(fèi)。

另一方面,人超越AlphaGo的另一方面,在于人具有將各種不同的活動共通抽象出一種通用的規(guī)律的能力。

人們可以從日常生活、體育活動、工作學(xué)習(xí)等等活動中抽象出一種通用的規(guī)律并收為己用,這種規(guī)律可以認(rèn)為是人生觀或者價(jià)值觀,也或者別的什么,然后將這種三觀運(yùn)用到諸如寫作與下棋中,從而形成一種通過這種具體活動而體現(xiàn)出自己對人生對生活的看法的獨(dú)特風(fēng)格,這種能力目前計(jì)算機(jī)的算法并不能掌握。

這種將各不同領(lǐng)域中的規(guī)律進(jìn)一步融會貫通抽象出更深一層規(guī)律的能力,原則上來說并不是算法做不到的,但我們目前沒有看到的一個(gè)最主要的原因,恐怕是無論是AlphaGo還是Google的Atlas或者別的什么項(xiàng)目,都是針對一個(gè)個(gè)特定領(lǐng)域設(shè)計(jì)的,而不是設(shè)計(jì)來對日常生活的方方面面進(jìn)行處理。

也就是說,在算法設(shè)計(jì)方面,我們所持的是一種還原論,將人的能力分解還原為一個(gè)個(gè)領(lǐng)域內(nèi)的特有能力,而還沒有考慮如何將這些分解后的能力再重新整合起來。

但人在自然演化過程中卻不是如此,人并不是通過對一個(gè)個(gè)項(xiàng)目的鉆研,然后匯聚成一個(gè)人,人是在直接面對日常生活中的各個(gè)領(lǐng)域的問題,直接演化出了大腦,然后才用這個(gè)大腦去處理一個(gè)個(gè)特定領(lǐng)域內(nèi)的具體問題。

因此,算法是由底向上的設(shè)計(jì)方式,而人類卻是由頂向下的設(shè)計(jì)方式,這恐怕是兩者最大的不同吧。

這也就是說,雖然在某個(gè)具體問題上,以AlphaGo為代表的計(jì)算機(jī)的訓(xùn)練樣本是遠(yuǎn)大于人的,但在總體上來說,人的訓(xùn)練樣本卻可能是遠(yuǎn)高于計(jì)算機(jī)的,因?yàn)槿丝梢岳脟逯獾膭e的日常生活的活動來訓(xùn)練自己的大腦。

這恐怕是一種新的學(xué)習(xí)算法設(shè)計(jì)方向——先設(shè)計(jì)一種可以利用所有可以探測到的活動來訓(xùn)練自己的神經(jīng)網(wǎng)絡(luò)演化算法,然后再利用這個(gè)算法已經(jīng)生成的神經(jīng)網(wǎng)絡(luò)來學(xué)習(xí)某個(gè)特定領(lǐng)域的問題。

這種通用的神經(jīng)網(wǎng)絡(luò)算法相對于專門領(lǐng)域的算法到底是優(yōu)是劣,這恐怕在那一天出來以前,人類是無法知道的了。


人與AlphaGo的不同

最后,讓我們回到AlphaGo與李世石的對局上。

我們可以看到,在這兩局中,最大的一個(gè)特點(diǎn),就是AlphaGo所理解的棋道,與人所理解的棋道,看來是存在很大的不同的。

這也就是說,人所設(shè)計(jì)的下圍棋的算法,與人自己對圍棋的理解,是不同的。

這代表什么?

這表示,人為了解決某個(gè)問題而設(shè)計(jì)的算法,很可能會做出與人對這個(gè)問題的理解不同的行為來,而這個(gè)行為滿足算法本身對這個(gè)問題的理解。

這是一件細(xì)思極恐的事,因?yàn)檫@表示具有更強(qiáng)能力的機(jī)器可能因?yàn)槔斫獾牟煌龀雠c人不同的行為來。這種行為人無法理解,也無法判斷到底是對是錯(cuò)是好是壞,在最終結(jié)局到來之前人根本不知道機(jī)器的行為到底是何目的。

因此,完全可能出現(xiàn)一種很科幻的局面:人設(shè)計(jì)了一套“能將人類社會變好”的算法,而這套算法的行為卻讓人完全無法理解,以至于最終的社會可能更好,但中間的行為以及給人帶來的局面卻是人類根本想不到的。

這大概是最讓人擔(dān)憂的吧。

當(dāng)然,就目前來說,這一天的到來大概還早,目前我們還不用太擔(dān)心。


結(jié)尾

今天是AlphaGo與李世石的第三輪對決,希望能有所驚喜吧,當(dāng)然我是說AlphaGo能為人類帶來更多的驚喜。


本文遵守創(chuàng)作共享CC BY-NC-SA 4.0協(xié)議

通過本協(xié)議,您可以分享并修改本文內(nèi)容,只要你遵守以下授權(quán)條款規(guī)定:姓名標(biāo)示非商業(yè)性、相同方式分享
具體內(nèi)容請查閱上述協(xié)議聲明。

本文禁止一切紙媒,即印刷于紙張之上的一切組織,包括但不限于轉(zhuǎn)載、摘編的任何應(yīng)用和衍生。網(wǎng)絡(luò)平臺如需轉(zhuǎn)載必須與本人聯(lián)系確認(rèn)。


如果喜歡簡書,想要下載簡書App的話,輕戳這里~~
<small>私人推薦訂閱專題:《有意思的文章》、《嚴(yán)肅碼匠圈》</small>


  1. 對,是世界第二,因?yàn)榫驮谀瓿跛麆倓偙恢袊鴩逄觳趴聺崝芈漶R下,所以柯潔現(xiàn)在是世界第一,李世石很不幸地低落到了世界第二。當(dāng)然了,AlphaGo背后的DeepMind團(tuán)隊(duì)打算挑戰(zhàn)李世石的時(shí)候,他還是世界第一。 ?

  2. 有一個(gè)很有趣的效應(yīng),稱為“AI效應(yīng)”,大意就是說一旦機(jī)器在某個(gè)領(lǐng)域超越了人類,那么人類就會宣布這一領(lǐng)域無法代表人類的智慧,從而始終保持著“AI無法超越人類”的局面。這種掩耳盜鈴的鴕鳥政策實(shí)在是讓人嘆為觀止。 ?

  3. 這部分可以看Facebook圍棋項(xiàng)目DarkForest在知乎的文章:AlphaGo的分析 ?

  4. 策梅洛于1913年提出的策梅洛定理表示,在二人的有限游戲中,如果雙方皆擁有完全的資訊,并且運(yùn)氣因素并不牽涉在游戲中,那先行或后行者當(dāng)中必有一方有必勝/必不敗的策略。 ?

  5. 這方面,有人已經(jīng)研究了一種算法,可以專門功課基于特定神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)算法,從而構(gòu)造出在人看來無意義的噪音而在計(jì)算機(jī)看來卻能識別出各種不存在的圖形的圖像。未來這種針對算法的“病毒算法”恐怕會比學(xué)習(xí)算法本身具有更大的市場和更高的關(guān)注。 ?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容