如何看待 Google 圍棋 AI AlphaGo 擊敗歐洲圍棋冠軍?
一個月前,DeepMind創始人Demis Hassabis曾說道很快會有關於圍棋研究的驚喜,而1月28日的《Nature》雜誌即將以封面論文的形式介紹Google旗下人工智慧公司DeepMind開發的一款名為AlphaGo的人工智慧,它已經擊敗了歐洲圍棋冠軍,並將於3月與世界冠軍李世乭對戰。該程序採用了兩個深度神經網路,policy network與value network,極大地降低了需要考慮的搜索空間的複雜度,前者降低搜索的廣度,後者降低搜索的深度,很像人腦在下圍棋時憑直覺快速鎖定策略的思維。
這麼說起給一點時間,巔峰的吳清源,李昌鎬這類人物(即使不斷學習)也是下不過電腦的了? (我指的電腦就是2015一台中等配置的PC這樣,不是伺服器集群,類似普通電腦跑Pocket Fritz 4)
Update: (3-15-2016) Alphago 最終4:1戰勝Lee SedolNature 原文:
http://www.nature.com/nature/journal/v529/n7587/full/nature16961.htmlNature 科普文章:
Google AI algorithm masters ancient game of Go : Nature News Comment
Deep learning 的介紹:
Computer science: The learning machines : Nature News Comment
AlphaGo項目主頁:
https://deepmind.com/alpha-go.html
GitHub - Rochester-NRT/AlphaGo: A replication of DeepMind"s 2016 Nature publication, "Mastering the game of Go with deep neural networks and tree search," details of which can be found on their website.
他們確實做得很好,能讓4子勝Zen和CrazyStone,把職業二段打成五比零,實力不容質疑。就期待著今年三月他們和李世石的比賽了。
從演算法上來說,這篇文章並沒有太多新意,主要是通過大量的訓練數據,包括以往的棋譜和自我對局,把性能堆出來。他們訓練了一個走子的神經網路(這個和我們的辦法是一樣的,但我們的文章主要在這上面作了改進),又訓練了一個可以評估局面的網路(這個我們還沒有),然後在蒙特卡羅樹搜索中同時使用這兩個網路。後者用了三千萬局的自我對局(self-play)的結果訓練。為了避免過擬合,每局只隨機選了其中一個局面,然後讓網路預測對局結果(勝或負)。三千萬局不是個小數字,大家可以算一下一刻不停地下,15分鐘一局需要多久才能下完(大約是855年)。這個規模我說實在沒有想到過,谷歌在這方面是很有優勢的。最後,他們的default policy也是經過處理的,能夠兩微秒走一步而且準確率也不錯。還有一些小細節就不一一贅述了。總之,谷歌的做法充分利用了大數據+深度學習的優勢,而幾乎完全沒有用到圍棋的領域知識,所以若是以後棋力能再往上走,我也不會驚訝。
其實這篇文章在去年11月份就已經投稿,但是因為《自然》雜誌嚴格的審查制度,現在才出來。我們在11月的時候還只有3d的水平,蒙特卡羅樹搜索還有各種問題,12月初的時候已經聽到了謠言,當時我驚得話都說不出來了,然而就算這樣,還是決定一點一點做,抓緊聖誕和新年的時間,把性能提高到5d的水平。我們還差一點拿了一月KGS錦標賽的冠軍(Zen和DolBaram都參加了),可惜最後因為程序錯誤而超時,輸了一局贏棋給Zen,得了第三名。谷歌的文章有20個作者,明顯是下了血本,前兩位都是計算機圍棋界的大牛,一作David Silver是計算機圍棋和強化學習的頂級專家,整個博士論文就是做的圍棋; 二作Aja Huang以前寫過多年圍棋軟體,自己又是AGA 6D的水平。相比之下我們只有兩個人( @朱岩 ),只做了半年,中間還要穿插VQA等其他項目,而且都沒有做過圍棋的經驗,想想有些差距也是不冤了。
現在回想起來,要是他們決定去年10月份戰勝了樊麾後馬上公開,或者我們再拖一會兒,決定不投ICLR而等到今年的ICML,那我們就被滅得連渣都不剩了(笑)。這回虎口拔牙,能從中拿到一些貢獻,為公司增加一些影響力,算是比較成功的。至於單挑全軍的感覺如何——我的回答是很爽
Facebook高層也給了我們很大的支持,昨天我們組的老大Yann LeCun發了文章介紹我們的工作,扎克伯格還特地發了一篇文章點到了我的名字,讚揚我們的努力,對此我非常感動。
最後,我們的arXiv更新了[文章見http://arxiv.org/abs/1511.06410],歡迎大家有空看看。謝謝~左右互搏,青出於藍而勝於藍?
—阿爾法狗原理解析
這些天都在沒日沒夜地關注一個話題,谷歌人工智慧程序AlphaGo(國內網友親切地稱為「阿爾法狗」)以5:0擊敗歐洲職業圍棋冠軍樊麾二段,在圍棋遊戲中達到了人類職業棋手的水平。
什麼!!
19年前計算機擊敗國際象棋冠軍卡斯帕羅夫的情景還歷歷在目,現在計算機又要來攻克圍棋了嗎!?
虛竹在天龍八部里自填一子,無意中以「自殺」破解「珍籠」棋局,逍遙子方才親傳掌門之位。難道以後「阿爾法狗」要出任逍遙派掌門了?
1933年,東渡日本19歲的吳清源迎戰當時的日本棋壇霸主、已經60歲的本因坊秀哉,開局三招即是日本人從未見過的三三、星、天元布陣,快速進擊逼得對方連連暫停「打卦」和弟子商量應對之策。隨後以「新布局」開創棋壇新紀元。難道阿爾法狗會再造一個「新新布局」?
作為一個關心人工智慧和人類命運的理科生,近些天刷了好些報道,記者們說「阿爾法狗是個『價值神經網路』和『策略神經網』絡綜合蒙特卡洛搜索樹的程序」,但我覺得光知道這些概念是不夠的。我想看看「阿爾法狗」的廬山真面目。
準備好棋盤和腦容量,一起來探索吧?
圍棋棋盤是19x19路,所以一共是361個交叉點,每個交叉點有三種狀態,可以用1表示黑子,-1表示白字,0表示無子,考慮到每個位置還可能有落子的時間、這個位置的氣等其他信息,我們可以用一個361 * n維的向量來表示一個棋盤的狀態。我們把一個棋盤狀態向量記為s。
當狀態s下,我們暫時不考慮無法落子的地方,可供下一步落子的空間也是361個。我們把下一步的落子的行動也用361維的向量來表示,記為a。
這樣,設計一個圍棋人工智慧的程序,就轉換成為了,任意給定一個s狀態,尋找最好的應對策略a,讓你的程序按照這個策略走,最後獲得棋盤上最大的地盤。
如果你想要設計一個特別牛逼驚世駭俗的圍棋程序,你會從哪裡開始呢?對於在谷歌DeepMind工作的黃世傑和他的小夥伴而言,第一招是:
「深度卷積神經網路」
深度卷積神經網路早在98年就攻克了手寫數字識別,近些年在人臉識別、圖像分類、天氣預報等領域無往而不利,接連達到或超過人類的水平,是深度學習火遍大江南北的急先鋒。我們現在看到的Picasa照片自動分類,Facebook照片識別好友,以及彩雲天氣高精度天氣預報(軟廣出現,不要打我)都是此技術的應用。這等天賜寶物,如果可以用來下圍棋,豈不是狂拽酷炫吊炸天?
所以2015年黃世傑發表在ICLR的論文[3]一上來就使出了「深度神經網路」的殺招,從網上的圍棋對戰平台KGS(外國的qq遊戲大廳)可以獲得人類選手的圍棋對弈的棋局。觀察這些棋局,每一個狀態s,都會有一個人類做出的落子a,這不是天然的訓練樣本&嗎?如此可以得到3000萬個樣本。我們再把s看做一個19x19的二維圖像(具體是19x19 x n,n是表示一些其他feature),輸入一個卷積神經網路進行分類,分類的目標就是落子向量a』,不斷訓練網路,儘可能讓計算機得到的a』接近人類高手的落子結果a,不就得到了一個模擬人類棋手下圍棋的神經網路了嗎?
於是我們得到了一個可以模擬人類棋手的策略函數P_human,給定某個棋局狀態s,它可以計算出人類選手可能在棋盤上落子的概率分布a = P_human(s),如下圖:
紅圈就是P_human覺得最好的落子方案。每一步都選擇概率最高的落子,對方對子後再重新計算一遍,如此往複就可以得到一個棋風類似人類的圍棋程序。
這個基於「狂拽酷炫」深度學習的方案棋力如何呢?
不咋地。黃世傑說P_human已經可以和業餘6段左右的人類選手過招,互有勝負,但還未能超過當時最強的電腦程序CrazyStone,距離人類頂尖玩家就差得更遠了。
所以,為求更進一步,黃世傑打算把P_human和CrazyStone的演算法結合一下,師夷長技以制夷,先擊敗所有的其他圍棋AI再說。
等等,CrazyStone的演算法[1,5]是什麼?
哦,那個演算法是黃世傑的老師Remi Coulum在2006年對圍棋AI做出的另一個重大突破:
「MCTS,蒙特卡洛搜索樹」
蒙特卡洛搜索樹(Monte-Carlo Tree Search)是一種「大智若愚」的方法。面對一個空白棋盤S0,黃世傑的老師Coulum最初對圍棋一無所知,便假設所有落子方法分值都相等,設為1。然後扔了一個骰子,從361種落子方法中隨機選擇一個走法a0。Coulum想像自己落子之後,棋盤狀態變成S1,然後繼續假設對手也和自己一樣二逼,對方也扔了一個篩子,隨便瞎走了一步,這時棋盤狀態變成S2,於是這兩個二逼青年一直扔骰子下棋,一路走到Sn,最後肯定也能分出一個勝負r,贏了就r記為1,輸了則為0,假設這第一次r=1。這樣Coulum便算是在心中模擬了完整的一盤圍棋。
Coulum心想,這樣隨機扔骰子也能贏?運氣不錯啊,那把剛才那個落子方法(S0,a0)記下來,分值提高一些:
- 新分數= 初始分+ r
我剛才從(S0, a0)開始模擬贏了一次,r=1,那麼新分數=2,除了第一步,後面幾步運氣也不錯,那我把這些隨機出的局面所對應落子方法(Si,ai)的分數都設為2吧。然後Coulum開始做第二次模擬,這次扔骰子的時候Coulum對圍棋已經不是一無所知了,但也知道的不是太多,所以這次除(S0, a0)的分值是2之外,其他落子方法的分數還是1。再次選擇a0的概率要比其他方法高一點點。
那位假想中的二逼對手也用同樣的方法更新了自己的新分數,他會選擇一個a1作為應對。如法炮製,Coulum又和想像中的對手又下了一盤稍微不那麼二逼的棋,結果他又贏了,Coulum於是繼續調整他的模擬路徑上相應的分數,把它們都+1。隨著想像中的棋局下得越來越多,那些看起來不錯的落子方案的分數就會越來越高,而這些落子方案越是有前途,就會被更多的選中進行推演,於是最有「前途」的落子方法就會「湧現」出來。
最後,Coulum在想像中下完10萬盤棋之後,選擇他推演過次數最多的那個方案落子,而這時,Coulum才真正下了第一步棋。
蒙特卡洛搜索樹華麗轉身為相當深刻的方法,可以看到它有兩個很有意思的特點:
1)沒有任何人工的feature,完全依靠規則本身,通過不斷想像自對弈來提高能力。這和深藍戰勝卡斯帕羅夫完全不同,深藍包含了很多人工設計的規則。MCTS靠的是一種類似遺傳演算法的自我進化,讓靠譜的方法自我湧現出來。讓我想起了卡爾文在《大腦如何思維》中說的思維的達爾文主義[6]。
2)MCTS可以連續運行,在對手思考對策的同時自己也可以思考對策。Coulum下完第一步之後,完全不必要停下,可以繼續進行想像中的對弈,直到對手落子。Coulum隨後從對手落子之後的狀態開始計算,但是之前的想像中的對弈完全可以保留,因為對手的落子完全可能出現在之前想像中的對弈中,所以之前的計算是有用的。這就像人在進行對弈的時候,可以不斷思考,不會因為等待對手行動而中斷。這一點Coulum的程序非常像人,酷斃了。
但黃世傑很快意識到他老師的程序仍然有局限:初始策略太簡單。我們需要更高效地扔骰子。
如何更高效的扔骰子呢?
用P_human()來扔。
黃世傑改進了MCTS,一上來不再是二逼青年隨機擲骰子,而是先根據P_human的計算結果來得到a可能的概率分布,以這個概率來挑選下一步的動作。一次棋局下完之後,新分數按照如下方式更新:
- 新分數= 調整後的初始分+ 通過模擬得到的贏棋概率
如果某一步被隨機到很多次,就應該主要依據模擬得到的概率而非P_human。
所以P_human的初始分會被打個折扣:
- 調整後的初始分= P_human/(被隨機到的次數+ 1)
這樣就既可以用P_human快速定位比較好的落子方案,又給了其他位置一定的概率。看起來很美,然後實際操作中卻發現:「然並卵」。因為,P_human()計算太慢了。
一次P_human()計算需要0.3ms,相對於原來隨機扔骰子不到1us,慢了3000倍。如果不能快速模擬對局,就找不到妙招,棋力就不能提高。所以,黃世傑訓練了一個簡化版的P_human_fast(),把神經網路層數、輸入特徵都減少,耗時下降到了2us,基本滿足了要求。先以P_human()來開局,走前面大概20多步,後面再使用P_human_fast()快速走到最後。兼顧了準確度和效率。
這樣便綜合了深度神經網路和MCTS兩種方案,此時黃世傑的圍棋程序已經可以戰勝所有其他電腦,雖然距離人類職業選手仍有不小的差距,但他在2015年那篇論文的最後部分信心滿滿的表示:「我們圍棋軟體所使用的神經網路和蒙特卡洛方法都可以隨著訓練集的增長和計算力的加強(比如增加CPU數)而同步增強,我們正前進在正確的道路上。」
看樣子,下一步的突破很快就將到來。同年2月,黃世傑在Deepmind的同事在頂級學術期刊nature上發表了「用神經網路打遊戲」的文章[2]。這篇神作,為進一步提高MCTS的棋力,指明了前進的新方向:
「左右互搏,自我進化」
紅白機很多人小時候都玩過,你能都打通嗎?黃世傑的同事通過「強化學習」方法訓練的程序在類似紅白機的遊戲機上打通了200多個遊戲,大多數得分都比人類還好。
「強化學習」是一類機器學習方法,Agent通過和環境s的交互,選擇下一步的動作a,這個動作會影響環境s,給Agent一個reward,Agent然後繼續和環境交互。遊戲結束的時候,Agent得到一個最後總分r。這時我們把之前的環境狀態s、動作a匹配起來就得到了一系列&,設定目標為最後的總得分r,我們可以訓練一個神經網路去擬合在狀態s下,做動作a的總得分。下一次玩遊戲的時候,我們就可以根據當前狀態s,去選擇最後總得分最大的動作a。通過不斷玩遊戲,我們對&下總得分的估計就會越來越準確,遊戲也玩兒得越來越好。
打磚塊遊戲有一個秘訣:把球打到牆的後面去,球就會自己反彈得分。強化學習的程序在玩了600盤以後,學到這個秘訣:球快要把牆打穿的時候評價函數v的分值就會急劇上升。
黃世傑考慮給圍棋也設計一個評價函數v(s),在P_human()想像自己開局走了20多步之後,不需要搜索到底,如果有一個v(s)可以直接判斷是否能贏,得到最後的結果r,這樣肯定能進一步增加MCTS的威力。
黃世傑已經有了國外的qq遊戲大廳KGS上的對局,但是很遺憾這些對局數量不夠,不足以得到局面評價函數v。但是沒關係,我們還可以左右互搏自對弈創造新的對局。
機器學習的開山鼻祖Samuel早在1967年就用自對弈的方法來學習國際跳棋[7],而之前的蒙特卡洛搜索樹也是一個自對弈的過程。但是現在黃世傑不僅有一個從人類對弈中學習出的P_human這樣一個高起點,而且有一個神經網路可以從對弈樣本中學習,有理由相信這次會有更好的結果。
先用P_human和P_human對弈,比如1萬局,就得到了一萬個新棋譜,加入到訓練集當中,訓練出P_human_1。然後再讓P_human_1和P_human_1對局,得到另外一萬個新棋譜,這樣可以訓練出P_human_2,如此往複,可以得到P_human_n。P_human_n得到了最多的訓練,棋力理應比原來更強。我們給最後這個策略起一個新名字:P_human_plus。這時,再讓P_human_plus和P_human對局,在不用任何搜索的情況下勝率可達80%,不加任何搜索策略的P_human_plus和開源的MCTS相比也有85%的勝率。自對弈方法奏效了。
既然P_human_plus這麼強,我們先代入到MCTS中試試,用P_human_plus來開局,剩下的用P_human_fast。可惜,這樣的方法棋力反而不如用P_human。黃世傑認為是因為P_human_plus走棋的路數太集中,而MCTS需要發散出更多的選擇才好。看來,P_human_plus練功還是太死板,還沒有進入無招勝有招的境界。
沒關係,黃世傑還有局面評價函數v(s)這一招,有了v(s),如果我可以一眼就看到「黑棋大勢已去」,我就不用MCTS在想像中自我對弈了。但考慮到P_human_plus的招法太過集中,黃世傑在訓練v( )的時候,開局還是先用P_human走L步,這樣有利於生成更多局面。黃世傑覺得局面還不夠多樣化,為了進一步擴大搜索空間,在L+1步的時候,乾脆完全隨機擲一次骰子,記下這個狀態SL+1,然後後面再用P_human_plus來對弈,直到結束獲得結果r。如此不斷對弈,由於L也是一個隨機數,我們就得到了開局、中盤、官子不同階段的很多局面s,和這些局面對應的結果r。有了這些訓練樣本&,還是使用神經網路,把最後一層的目標改成回歸而非分類,黃世傑就可以得到一個v( )函數,輸出贏棋的概率。
v( )可以給出下一步落子在棋盤上任意位置之後,如果雙方都使用P_human_plus來走棋,我方贏棋的概率。如果訓練v()的時候全部都使用P_human不用P_human_plus呢?實驗表明基於P_human_plus訓練的v,比基於P_human訓練的v』,棋力更強。強化學習確實有效。
萬事俱備,只欠東風。準備好P_human(),MCTS,以及評價函數v(),黃世傑和小夥伴們繼續進擊,向著可以和人類專業選手過招的圍棋AI前進:
「阿爾法狗」
黃世傑準備在MCTS框架之上融合局面評估函數v()。這次還是用P_human作為初始分開局,每局選擇分數最高的方案落子,下到第L步之後,改用P_human_fast把剩下的棋局走完,同時調用v(SL),評估局面的獲勝概率。然後按照如下規則更新整個樹的分數:
- 新分數= 調整後的初始分+ 0.5 * 通過模擬得到的贏棋概率 + 0.5 * 局面評估分
前兩項和原來一樣,如果待更新的節點就是葉子節點,那局面評估分就是v(SL)。如果是待更新的節點是上級節點,局面評估分是該節點所有葉子節點v()的平均值。
如果v()表示大局觀,「P_human_fast模擬對局」表示快速驗算,那麼上面的方法就是大局觀和快速模擬驗算並重。如果你不服,非要做一個0.5: 0.5之外的權重,黃世傑團隊已經實驗了目前的程序對陣其他權重有95%的勝率。
以上,便是阿爾法狗的廬山真面目。
上圖演示了阿爾法狗和樊麾對弈時的計算過程,阿爾法狗執黑,紅圈是阿爾法狗實際落子的地方。1、2、3和後面的數字表示他想像中的之後雙方下一步落子的地方。白色方框是樊麾的實際落子。在復盤時,樊麾覺得位置1的走法更好。
深度學習、蒙特卡洛搜索樹,自我進化三招齊出,所有其他圍棋ai都毫無還手之力。99%的勝率不說,「阿爾法狗」還可以在讓四子的情況下以77%的勝率擊敗crazystone。「阿爾法狗」利用超過170個GPU,粗略估算超過800萬核並行計算,不僅有前期訓練過程中模仿人類,自我對弈不斷進化,還有實戰時的模擬對局可以實時進化,已經把現有方法發揮到了極限,是目前人工智慧領域絕對的巔峰之作。
後記
圍棋是NP-hard問題,如果用一個原子來存儲圍棋可能的狀態,把全宇宙的原子加起來都不夠儲存所有的狀態。於是我們把這樣的問題轉換為尋找一個函數P,當狀態為S時,計算最優的落子方案a = P(s)。我們看到,無論是「狂拽酷炫」的深度學習,還是「大智若愚」的MCTS,都是對P(s)的越來越精確的估計,但即使引入了「左右互搏」來強化學習,黃世傑仍然做了大量的細節工作。所以只有一步一個腳印,面對挑戰不斷拆解,用耐心與細心,還有辛勤的汗水,才能取得一點又一點的進步,而這些進步積累在一起,終於讓計算機達到了人類職業選手的水平。
據說谷歌接下來要增加20倍的算力,動用全球分散式集群,超過2000個GPU與前世界冠軍李世乭決戰。如此,計算機的棋力會提高20倍嗎?從黃世傑團隊公布的數據看,增加GPU並不能夠帶來棋力的線性增長,最終會有一個極限。
陳景潤攻克(1+2)時,就是把當時所有的數學分析方法都用到了極限,但沒有理論上的重大突破,還是很難攻克「哥德巴赫猜想」。這和今天的「阿爾法狗」有些類似。圍棋世界冠軍,前幾天剛剛擊敗李世乭的19歲中國圍棋天才少年柯潔也是這樣認為。
因為一盤棋走一步需要0.3ms(P_human_plus遍歷整個棋盤的時間),谷歌用大規模集群進行並行化計算,自我對弈3000萬盤棋生成訓練集只需要一天左右的時間[4],所以如果對弈更多棋局可以提高棋力的話,黃世傑他們早就做了。目前的方案可能已經達到了CNN網路能力的極限。完整的阿爾法狗不僅需要生成訓練集,還要用訓練集來生成局面評估函數v(),而這還使用了兩周時間,這也許是阿爾法狗並沒有能夠完全使用強化學習,而僅僅是在整個過程的一小部分使用左右互搏的原因。左右互博用的還不夠多,這是一個遺憾。
如果存在一個「圍棋之神」,一個已經窮盡了所有的圍棋步法的「上帝」,那他每一步都是最優應對。一些頂尖棋手在接受採訪時表示[8],「圍棋之神」對戰人類選手可能還有讓4子的空間,也就是說,就算下贏了人類,計算機也還有很大進步的空間。
面對一個如此高難度的問題,計算機和人類都無法在有限時間內找到完全的規律(柯潔和李世乭比賽是一人有3小時時間思考,阿爾法狗今年3月準備和李世乭進行的比賽則是每人2小時)。計算機和人都是在對問題做抽象,然後搜索最佳策略。要下好圍棋所需要的能力已經接近人類智力的極限:要有大局觀、要懂得取捨、還要會精打細算,治理一個國家也不過如此。計算機可以學會圍棋,就能學會很多一樣難度的技能。在未來,也許圍棋、自動駕駛、同聲傳譯都會被一一攻克。甚至在數論、量子場論等領域,深度學習和搜索相結合,可能也會帶給我們更多驚喜,比如攻克「哥德巴赫猜想」。
那麼,人工智慧是否真的會很快登頂呢?
雖然在智力方面AI有希望登峰造極,但高智商只是人類眾多能力的一個方面。吳清源先生在方寸之間縱橫無敵,但仍然漂泊一生,被命運推著前進。早年他做段祺瑞的門客,棋盤上把段祺瑞打的落花流水,弄得下人都沒有早飯吃;後來東渡日本,三易國籍,留下許多遺憾。如果把「強人工智慧」比作一個天才少年,雖然智商爆表,但其他方面還需要我們悉心加以引導。創造出「德才兼備,匡扶濟世」的人工智慧,才是我輩真正應該努力實現的目標。
一起加油吧,科學少年們!
To the infinity and beyond !
參考文獻:
1, EfficientSelectivity and Backup Operators in Monte-Carlo Tree Search
2, Human-level control through deep reinforcementlearning
3, Move Evaluation In GO Using Deep Convolutional Neural Networks
4. Masteringthe Game of Go with Deep Neural Networks and Tree Search
5. A Survey ofMonte Carlo Tree Search Methods
6. 大腦如何思維—智力演化的今昔
7. Some Studies in Machine LearningUsing the Game of Checkers.II-Recent Progress
8.圍棋之神存在的話,可以讓你几子?
最後的最後,允許插播我司的招聘廣告一則:
———————————————————-
彩雲天氣急需運維工程師一名,我們在毗鄰皇家園林的兩層別墅式公寓辦公,有鋼琴和溫水泳池。需要你的幫助,我們才能每天穩定快速的計算出上億次天氣預報,用人工智慧幫到更多普通大眾。
-
「珍珠港遭到空襲!這不是演習!這不是演習!這不是演習!」
——2016年1月28日凌晨
-
從昨晚開始,一條聲稱谷歌AI在19路棋盤上分先戰勝樊麾二段,並且論文已登上Nature的消息刷爆了朋友圈。
一開始,就像以往的那些「大新聞」一樣,大家都認為是標題黨,甚至某業餘7段還查驗到其論文尚未被Nature審核通過。
然而隨著時間的推移,越來越多的近距離詳細消息傳來,開始有人相信消息的真實性。
圍棋圈內的各種微信群、朋友圈都在不斷的爭論,相信的人越來越多,不信的人也堅持己見。
終於,在接近凌晨兩點,又一條最新報道來了,這次還附帶著棋譜:
面對谷歌圍棋AI,人類最後的智力驕傲即將崩塌……(雖是真消息,但稍有標題黨之嫌)
至此,看到棋譜的所有人幾乎都相信了:人工智慧AlphaGo,實現了里程碑式的一步。
-
首先,在客觀上要肯定AlphaGo實現的水平進步。
從昨晚開始,一條聲稱某AI在19路棋盤上分先戰勝范麾二段,並且論文已登上Nature的消息刷爆了朋友圈。
一開始,就像以往的那些「大新聞」一樣,大家都認為是標題黨,甚至某業餘7段還查驗到其論文尚未被Nature審核通過。
然而隨著時間的推移,越來越多的近距離詳細消息傳來,開始有人相信消息的真實性。
圍棋圈內的各種微信群、朋友圈都在不斷的爭論,相信的人越來越多,不信的人也堅持己見。
終於,在接近凌晨兩點,又一條最新報道來了,這次還附帶著棋譜。
以往最強的圍棋AI,大致是CrazyStone、Zen和銀星圍棋這幾個。
而AlphaGo在讓以上幾個程序(無銀星圍棋)4子的情況下,取得了80%左右的勝率。我們據此基本可以判斷,人工智慧將自己的水平上限一下子提高了5個子。
樊麾二段,雖然以歐洲冠軍聞名於世,但其實圈內誰都知道他是一名中國旅歐教學的職業棋手。
雖然遠離東亞職業一線,但樊老師的水平仍然是不容置疑的,他依然有著職業的水平(雖然是較弱的職業),一般的業6仍然是比他不上的。
AlphaGo在正式比賽中對樊老師5:0(棋譜已可見),據說加上非正式比賽的總分為8:2(已確認),再加上棋譜里AlphaGo顯示出的驚人的表現,我們可以認為,人工智慧在圍棋上的水平已經邁入了職業的大門。
(最新:據多位頂尖棋手對棋譜的鑒定,認為AlphaGo的水平應該在業餘強6段到弱職業之間,離人類頂尖大概還有一先到兩先的差距)
(對於西方圍棋包括樊老師的相關介紹,可見西方人的圍棋水平如何? - 高飛龍的回答)
說的更明白點,之前的AI在蒙特卡洛演算法的幫助下雖然取得了革命性的進步,戰勝了絕大多數的人類,但人類中能戰勝那些AI的人數可能仍然在近百萬的量級。
而自今日(其實已經是三個月前了)的AlphaGo起,能在圍棋盤上戰勝AI的人類人數可能已經不到千人了。
按照 @田淵棟 老師的說法,這個消息在相關研究圈內應該早就不是新聞了。
甚至回想一下昨天扎克伯格在facebook上突然發聲支持自己的研究團隊,也因為是知道了google團隊的成果即將在一日內公示,所以想要在輿論中搶佔一個位置。
(田老師參與的facebook的研究團隊,是google現在最大的競爭對手,田老師他們使用的方法應該不太一樣,雖然他們暫時落後,但我同樣也很期待他們的下一步進展)
總之,這真的不是演習。
-
接下來談點個人對人工智慧的粗淺理解。
近些年來,儘管在蒙特卡洛演算法的幫助下,AI實現了革命性的進步,達到了能戰勝大部分人類的水平(中等業餘5段),但隨著摩爾定律的走向終點(據某it界前輩指點,摩爾定律並非輿論所說的即將結束,而是轉換為了新的形式),計算機硬體的發展速度在舊有的道路上暫時無法按以前的速度繼續爆炸發展下去,大家都認為僅憑蒙特卡洛演算法是無法幫助AI戰勝人類的。
依據個人的理解,我曾在圍棋棋力業餘低段位,如何繼續學習提高?有什麼推薦的參考書目和學習方法? - 高飛龍的回答中將圍棋的思維過程分解為四步的演進:常識→棋感→計算→判斷。
大約一年前,我曾和李喆六段就此問題進行過簡單討論,當時我認為蒙特卡洛演算法的成功主要在於為人工智慧建立了「棋感」,而以往的人工智慧只在「常識」和「計算」方面具有天然優勢。
在蒙特卡洛演算法之前,雖然計算機憑藉強大的計算力可以積累大量「常識」,但由於「棋感」的缺失,人工智慧無法對計算方向進行有效的篩選,最終就不免淪於蠻力搜索。
而蠻力搜索雖然可以在一定程度上實現高水平的「計算」,甚至很多其他棋類都在這一環節上被人工智慧打敗,而由於圍棋的過度複雜和摩爾定律結束對計算機發展前景的限制,走到這一步仍然無法讓人工智慧戰勝人類。
(註:上圖為計算機眼中的國際象棋落子思路,而下圖為計算機眼中的圍棋落子思路,來自谷歌deepmind官網AlphaGo | Google DeepMind)
而蒙特卡洛演算法出現後,憑藉大量儲備的棋局,通過勝負概率來判斷下一步著點以作為計算方向,極大的提高了計算的效率,所以AI的水平才實現了革命性的進步。
而這次的AlphaGo,使用了深度神經網路與蒙特卡洛樹狀搜索相結合的方法。
依據已經能看到的Nature上的論文
http://www.nature.com/nature/journal/v529/n7587/full/nature16961.html,研究者們在AlphaGo中加入了兩個深度神經網路,以value networks來評估大量的選點,而以policy networks來選擇落子,並且開發了一種新式演算法來結合蒙特卡洛演算法和以上兩個神經網路。
(註:上圖為AlphaGo使用的神經網路結構示意圖,來自原論文)
在這種結合下,研究者們結合參考人類職業對局的監督式學習,和AI大量積累自對弈實現的深度學習,來訓練和提高AI的圍棋實力。
在蒙特卡洛演算法之後,我看到了新的天地。
這種結合以及新式的思路,讓人感到前景無限。
-
最後談一談,我認為我們應該保有的態度。
這裡,我首先想引用李喆六段在今天早上說的話:
「我們已來到兩個時代的連接處,無論你是否願意,這都是一個需要接受的事實。工具無善惡,善惡在人心。未來的路通往何方,將由我們自己決定。」
從凌晨到早上,朋友圈裡的評論區一直爭論不休,甚至某世界冠軍一直在說「不信」,畢竟大家在沒有看到板上的釘子之前,從情感上都是不願意相信的。
直到另外兩位一線棋手告訴他,已經可以看到棋譜了......
面對這個事件,接下來將會有很多的爆炸性新聞報道,以及各種各樣姿勢的討論。
我們要知道:
一.人工智慧的確實現了很大的進步。
這次的進步可能是革命性的,這次新聞宣稱的AI取得的成績並不是「標題黨」。
二.人工智慧還沒有戰勝人類(什麼所謂「人類最後的驕傲陷落」都屬於「標題黨」)。
但AI已經朝著這個方向邁出了一大步,而且是在很多人在蒙特卡洛之後不看好AI下一步發展的情況下,來了一個突然襲擊(谷歌從開始研究到出成果再到發布,一直憋一個大新聞憋這麼久也真是能忍)。
三.人工智慧戰勝人類的時點,可能比很多人想像的要來的更早了。
不是之前設想的生物計算機或者量子計算機出現後,甚至都不是新材料製成的處理器取代硅晶片之後,而是在這個時代就有可能出現了。也許是五十年後,也許是二十年後,甚至可能是十年後。
從小學時開始,我就痴迷於許峰雄教授對於計算機國際象棋項目的研究和成就,一直追蹤到97年「深藍」戰勝卡斯帕羅夫。(就是在那之後不久,我才從國際象棋轉投了圍棋......)
(註:上圖為第一個打敗人類的計算機國際象棋程序「深藍」之父——許峰雄)
從中學時代到大學時代,我一直追尋著許教授的動態和他撰寫的各種文章、書籍,他寫的《「深藍」揭秘》(「深藍」揭秘 (豆瓣))被我翻的都爛了,我甚至在中學時代一直想以此作為未來的求學從研的方向。
許教授離開IBM、前往亞研院並聲稱準備致力於作為最終問題的計算機圍棋難題之後,我仍然一年年心心念念的期待著許教授的後續動作。
然而十多年過去,等來的卻是無數的後來者。
這也挺好,人類就是不缺後來者。
看許教授對當年研究過程的講述,最大的感受就是:
其實並不是計算機打敗了人類,而是人類打敗了人類。
大量的計算機專家,配合大量的國際象棋職業棋手,在演算法上不斷革新,再搭乘上摩爾定律的東風,不斷的失敗再重來、輸了再修正,最終才解決了計算機國際象棋難題。
卡斯帕羅夫,是敗給了數以百計的人類專家的智慧的合力。
圍棋也會是一樣,計算機——今天說人工智慧更合適,戰勝人類的那一天遲早會來,大部分人都從來不否認這一點。
爭論,始終在於這一天的早晚。
而棋手和圍棋從業者們,出於可以理解的感情,總是希望並認為這一天不會來的那麼快,但他們絕對不會拒絕甚至仇視這種進步。
其實我看到的很多人,都一直期待並讚許著人工智慧的進步,甚至很多職業高手還親身參與和幫助著計算機圍棋項目的研究。
我們努力打造著一個「大玩具」,一個能戰勝自己的「大玩具」。
所以最終的成功,是我們人類自己的成功,而不應該對計算機感到恐懼。
同時,這「大玩具」也不只是好玩而已,人工智慧對於現代乃至未來科技的發展有著極大的意義,這意義甚至會超出當年原子彈研究的後續紅利。
所以不要害怕,不要煩惱,讓我們期待著人工智慧在圍棋上戰勝人類的那一天的到來吧。
我之前一直認為在我有生之年是看不到這一天的,然而現在看來,我錯了。
我一點也不失望,反而感到很興奮,很激動,並且期待著以google和facebook為首的前沿研究團隊們的進一步的表現。
最後的最後,恭喜谷歌,恭喜圍棋,恭喜人類。
-
鏈接:http://zhuanlan.zhihu.com/godifferent/20540574
這個答案力求客觀評價AlphaGo的實力。因為本來就是我自己寫的,就不全文引用了。。
弱小和無知不是生存的障礙,傲慢才是。
——《三體:死神永生》
AlphaGo戰勝樊麾二段對於圍棋界可謂驚天動地的大事。很多棋友和圈內人士都很關心AlphaGo的棋力到底有多強。我不是職業棋手,自認為如果對戰AlphaGo,需要先恭敬地擺兩子求指導。對於計算機圍棋的了解,我也不如專業人士。不過通過各方面搜集到的證據,我能夠對AlphaGo的棋力下一個相對客觀的結論。當然,這個評價是針對截止到去年10月,與樊麾二段對戰時的AlphaGo. 至於這幾個月AlphaGo會進步多少,除了谷歌的研究人員,大概沒有人能準確知道。
先上結論:AlphaGo的實力,大致上相當於中國的強業餘6段。如果AlphaGo與世界範圍內活躍的職業棋手(過去一年內參加正式比賽超過12盤)一起排名,大致能排到250名-300名之間。換句話說,AlphaGo的實力已經強於很多水平稍弱的職業棋手,但是大概要稍弱於中國業餘棋界的最頂級棋手,或者大致相當。
那麼我們就來看一看依據。
首先是不同職業棋手的評價:
時越九段(世界冠軍,中國棋院等級分第二位):
說實話,我昨天看到這個消息的時候是不信的,雖然我現在還是不能理解電腦是怎麼去學習的,但是事實擺在眼前,這5盤棋電腦下的讓我驚嘆,我認為水平已經邁入了職業的門檻。雖然和頂尖棋手還差的很遠,但按照這個進步速度,3月份的對局,我想李世石也不會贏的太輕鬆。
樊麾二段(法國國家隊總教練,AlphaGo的對手):
第一盤輸了之後,我這個心態就發生了很大變化,因為第一盤畢竟覺得可能比較輕鬆,然後發現他的官子、各方面的掌控能力很強之後,我第二盤就有點(心態)失衡。第二盤打了一個大勺之後,整個進程就不對了。
圍棋畢竟不能用單純的技術來說,一是一、二是二、三是三,因為畢竟有發揮的問題。不過我確實下的也不是很好,當然了,下的時候心態也是一個最主要的原因。不管怎麼樣,AlphaGo的棋力確實已經很強了。
這幾盤棋呢,可以說我自己發揮不佳,但不能說不是我的真實水平,下得不好。主要是在某些方面覺得被他徹底克制住了,尤其心理負擔很重,總感覺下到最後一讀秒就會打勺子,這就導致我的棋下的很急。
(以上來自微信公眾號「喆理圍棋」,作者是李喆。喆理專訪圍棋人工智慧事件 時越:李世石不輕鬆 )
柯潔九段(世界冠軍,中國棋院等級分第一位,當前的世界第一人):
果殼網:假如是不知情地去看AlphaGo和樊麾的這五盤棋,你會猜到AlphaGo不是人類嗎?
柯潔:完全看不出來。這五盤棋我也仔細地看了一眼,但我沒看名字,不知道誰執黑誰執白,完全看不出誰是AI。感覺就像是一個真正的人類下的棋一樣。該棄的地方也會棄,該退出的地方也會退出,非常均衡的一個棋風,真是看不出來出自程序之手。因為之前的ZEN那樣的程序,經常會莫名其妙的抽風,突然跑到一個無關緊要的地方下棋。它這個不會。它知道哪個地方重要,會在重要的地方下棋,不會突然短路。這一點是非常厲害的。
果殼網:就電腦的表現來看,你對它布局,中盤,官子三個階段的評價,分別是什麼水平?
柯潔:按照我的評價,它的水平大概就是沖職業段之前的水平,雖然職業還到不了,但是無限接近於職業了。關於這幾個階段,我的感覺是都差不多,非常均衡,也看不出哪個地方是機器,這個很恐怖(笑)。當然這只是看了五盤棋,也看不出它的短板來,可能是因為對手發揮得太糟糕了(笑),我也看不出來具體的哪裡好哪裡不好。
(以上來自果殼網對柯潔的採訪:【果殼網專訪】圍棋天才柯潔:如果AI下贏了我,我還想贏回來)
羋昱廷九段(世界冠軍,中國棋院等級分第四位)
問:今早的大新聞是谷歌圍棋AlphaGo5比0贏了樊麾二段,是否已看過棋譜?
羋昱廷:知道後感覺很刺激,看棋譜覺得實力相當於沖段少年。
(以上來自新浪網。羋昱廷:大龍逃出取得領先 谷歌圍棋的消息很刺激)
李喆七段(全國冠軍):
Google的圍棋AI已經具有職業水準,從棋譜初步判斷是頂尖棋手讓先-讓先倒貼目的水平,離戰勝人類還有一小段距離。但這是三個月前的棋譜... 以Google機器學習堆數據的速度,今年三月對決李世石相當值得期待。
(來自李喆的微博)
劉星七段(全國冠軍):
第一是棋形很正,第二是失誤相當的少。如果把它看作一名業餘頂尖的棋手,做到這兩點,就已經具備了相當的實力。 (趙守洵:星爺還沒有把它看作職業高手) (劉星:這個很難說)
(以上來自圍棋TV,大概在11分40秒左右。)
以上來自不同一流職業棋手的評價,表面看上去有一定差異。有的說已經具備職業水平,有的說是業餘頂尖水平,其實都差不多是一個意思。在中國,頂尖業餘棋手確實具備職業水平,對戰頂尖職業棋手差不多也就是在讓先到讓先倒貼目之間。為了進一步說明這一點,我又要搬出「民間等級分」,nmcgw版世界圍棋等級分了。這是我見過的統計數據來源最詳盡,同時原理簡潔、有效的一版等級分,甚至強過韓國裴博士發布的世界等級分。目前此版等級分每周一更,發布在tom圍棋論壇êà???§???°òμ??ê?μè??·???DD°?£¨nmcgw°?£?。
雖然業餘棋手的等級分現在不被公布(曾經是公布的),不過按照nmcgw本人的說法,頂尖業餘棋手(以中國的業餘四大天王,胡煜清、王琛、馬天放、白寶祥為例)大致在2350分到2400分之間。換算成世界排名,就是在160名-220名之間,與頂尖的女子職業棋手大致相當 。作為參考,參與nmcgw等級分排名的大概有860位活躍的職業棋手(包括日韓台在內)。同時,這幾年的晚報杯職業業餘對抗賽(2011-2016),由頂尖職業對抗頂尖業餘的比賽中,比分大致是這樣的(剔除了聶衛平、劉小光參加的台次):
女子職業-頂尖業餘 (分先): 3-5;
男子職業-頂尖業餘 (讓先):18-8;
那麼李喆所說的「讓先-讓先倒貼目的水平」,也與業餘頂尖棋手相差無幾。
其實這些評價已經足夠說明問題了,不過我還是稍微有點擔心。會不會是人類棋手因為慣性思維,沒有看到AI某些隱藏的強大之處?我們從AlphaGo研究者的角度來看看這個問題。
這是AlphaGo研究團隊在Nature上發表的論文中的一張圖。我一開始並不知道這個等級分是什麼意思,直到我突然想起來,法國學者Remi Coulum曾經發布過一個圍棋等級分Go Ratings。Remi Coulum是Nature上論文二作Aja Huang 的老師,也是AlphaGo問世之前最強圍棋AI, CrazyStone的作者。那麼有理由相信AlphaGo的團隊用的就是這一版等級分來評價的。
Remi版等級分是Elo等級分的一個變種,規則要比ELO等級分更加先進。但是Remi版等級分的最大弱點是,統計的棋局不足夠詳盡。Remi版等級分統計了自上世紀80年代初以來的52000盤對局,但僅僅是弘通圍棋網收錄的職業對局就有超過十萬局,而且弘通的這個數字好像也是不完全版。無論如何,Remi版等級分還是具有相當參考意義的。
回到上面這張圖。根據原文附錄上的數據,AlphaGo團隊對於在一台計算機上運行的AlphaGo的評價是2890分,而與樊麾對戰的版本(1202CPU, 176GPU)為3140分。樊麾在去年十月對戰時是2908分,在Remi版等級分上排在第632名(共832人)。按照ELO等級分的規則計算,樊麾對AlphaGo的勝率大約是20%。事實上,AlphaGo對樊麾的十盤棋比分正好是8-2。那麼我們再看看3140分大概是什麼水準。在Remi版等級分中,3140分對應排名是281名-283名(並列)。如果對戰當前的李世石(3515分),則只有11%的勝率。至於圖表上的「5p」(職業五段),沒有太大意義,因為當前中日韓三國的職業段位與實力並不直接相關。
將這個3140分轉換到nmcgw版等級分中去,大致上相當於2310分。回顧一下,中國業餘圍棋四大天王的等級分是在2350-2400分之間, 也就是說AlphaGo對戰四大天王有42%左右的勝率。這與之前各位一流職業棋手的評價,「頂尖業餘棋手」、「沖職業段之前的水平」、「具有職業水平」、「讓先-讓先倒貼目之間」,是完全吻合的。當然,如果是以這個水平對戰李世石,五番棋大戰,想要贏一盤都是相當困難的。
AlphaGo確實已經摸到了職業的門檻。網上某些稱「樊麾放水,下得不如普通業餘5段」、「戰勝歐洲冠軍就像戰勝國足」等論調實在不夠客觀。至於3月份AlphaGo與李世石的大戰,我仍然謹慎地看好李世石。3140分到3500分,頂尖業餘到頂尖職業,一個天賦超群的人類棋手也要花五年左右的時間。行百里者半九十,從之前圍棋AI在程序定型以後的學習速度來看,幾個月的時間不足以讓AI再完成一次飛躍。當然,如果到時候被AlphaGo打臉,也是一件很可能發生的事,畢竟開發團隊自稱有五成把握(咦這個flag是不是很熟悉?小李:你說有五成把握,是一百成里有五成嗎?)。各位看官可以收起對人工智慧的傲慢心態,去期待一場或許是火星撞地球的大戰。
—————————————————1.30更新————————————————
根據Nature原文附錄,將估計的數據更新為準確的數據。
藉此地做一個神棍的預測。AlphaGo將於三月對戰李世石之時達到nmcgw等級分2560分的水準,相當於原中國棋院等級分職業九段的門檻分數(雖然這個現在沒什麼實際意義了)。2560分對應的世界排名是40名(對應棋手:鄔光亞六段)。相應地,AlphaGo對李世石的單局勝率有32%。預測AlphaGo-李世石五番棋比分:2-3。 五盤棋分別為阿法狗:勝負勝負負。
預測依據:樊麾二段接受採訪時的「你們就等著看好戲吧」眼神,和開發者自信的「五成把握」。
在2019年1月以前,AlphaGo將不能超過柯潔的水平 (nmcgw等級分2800分)。
預測依據:瞎猜的。
粗粗看了一下,AlphaGo還是有很多新意的,與Facebook的CNN+MCTS還是很大不同的。
AlphaGo的要點在RL而不是dl,dl只是一個學習網路參數的工具。
它的特點在policy的學習上,本質上是一個Actor-Critic的RL架構(value和policy分離,Bias-Variance Tradeoff),這延續了David Silver最近的dpg風格,不過又和一般的Actor-Critic不同,它分為3個stage來訓練整個網路(監督和非監督訓練policy,監督訓練value),和Actor-Critic通常的cascade不同。
policy search用了mcts,與通常的uct不同在於評估用於value和policy的加權。
總得說來,非常優秀的工作。圍棋,發源於中國。
有著非常古老的歷史。規則極其簡單,但是難度非常大。一直被公認為最複雜的棋類遊戲。
計算機圍棋,的發展史,大家可以再去搜索一下。
特別提一下,2008年已經去世的陳志行,中山大學量子化學教授。
他退休後,開始研究計算機圍棋。從1993年起,共10次獲得電腦圍棋世界冠軍:1993年11月獲應氏杯冠軍,1995-1997年連續三年包攬FOST杯、應氏杯冠軍,2000年獲心智奧林匹克電腦圍棋賽冠軍,2001年3月在漢城獲SG杯國際電腦圍棋賽冠軍,2002年10月在貴陽獲國際電腦圍棋賽冠軍。陳志行的這些業績使我國在電腦圍棋這個領域上領先於世界。
記者曾經問他,你覺得計算機圍棋能發展到什麼程度?他回答說,我畢生的目標,就是希望我讓程序9子,程序可以贏我。可以想想當年程序的水平是如何。陳志行是業餘高手,大概業餘五段。
那個年代的圍棋,都是基於規則系統和一些局部的搜索。當然也包括開局庫。
這也是當年陳志行時代的做法。他是用彙編來編寫代碼的,為了充分優化計算性能。
Static analysis of life and death in the game of Go
, written by Ken Chen Zhixing Chen, 20 February 1999後來的典型代表是gnu go,一個開源的系統,代碼非常龐大,框架靈活,方便添加各種規則,並進行試驗測試。
第二個時代,是由一種叫做蒙特卡洛的演算法來突破的。
這個演算法出來之後,迅速取得了決定性的提升。迅速讓程序提高一個大的台階。
Monte-Carlo Go
, written by B. Bouzy and B. Helmstetter from Scientific Literature Digital Library
大致是什麼意思的。很簡單,其實所謂蒙特卡洛,就是隨機走。
以往國際象棋的alpha-beta search在圍棋中不能應用的關鍵,是因為圍棋無法設計評估函數。來評估當前局面。
但是,圍棋的終局是非常容易評估的,數一下子數,誰多,就誰贏。
這個演算法,就是讓當前局面隨機走子,走到終局。通過大量這樣的模擬實驗,來統計當前局面的勝率,來實現評估。
當然,簡單的隨機走,效果並不好。上面論文的進展,主要是引入了一些規則——來限制隨機走子的範圍。讓「隨機」不那麼隨機,更靠譜一些。
這幅圖就是這樣一個search的例子,被稱之為UCT search。顯然,目前最右邊的那個走法,勝率更高,那會以更高的概率去探索。更低勝率的走法,也會以一定的概率去嘗試。
第三個突破,是深度神經網路的應用。
dnn(deep cnn)被廣泛應用在語音、圖像等領域,對於弱特徵(比如像素,聲音片段)表現出了極強的特徵組織能力。
現在也有更強的計算能力,和優化演算法,能夠去train得動這樣的複雜網路。
圍棋的「型」,其實也有這樣的一些特點。
後來就有人用深度卷積網路(dcnn)去train高手的對局,學習其中的型——以及一些全局信息。
Sutskever, Ilya and Nair, Vinod. Mimicking go experts with convolutional neural networks. In
Artificial Neural Networks-ICANN 2008, pp. 101–110. Springer, 2008.
後面又有一些人去做了很多改進。
一個比較大的進展是:
ICLR 2016上,Facebook的tianyuandong,發了一篇paper:
BETTER COMPUTER GO PLAYER WITH NEURAL NETWORK AND LONG-TERM PREDICTION
他只用純粹靜態評估,完全不用search,戰勝了前面講到的mcts(蒙特卡洛樹搜索)系的程序。
這說明,dnn在表達能力和泛化能力方面是非常強勁的。為了學習大量棋譜。
tianyuandong用一台4GPU的機器,跑了2個星期才完成訓練。但是他在和mcts結合方面做得還不夠充分。
其實,這個時候,已經能夠看到程序突破的端倪了。
今天,是歷史的突破,當然,也許會算在3月份。或者再晚一些。
Google在search的候選、模擬和剪枝方面,都充分的優化和使用神經網路。並讓程序自學習——因為mcts的結果,可以做靜態評估訓練的樣本。
在候選的網路上面,和Facebook tianyuandong是類似的,同時他們還做了一個全局評估的網路,用以靜態評估全局——而不是某一個候選的走法。
同時,還做了集群化。並投入大量人力、硬體。在這幾方面全部做到位。
更為可怕的是,google用了非常大量的自學習數據(兩千萬),這需要多大的集群來跑呢。
這確實不是一般的研究機構以及個人能夠搞定的。投入是很大的。
這件事情,更加讓人們看到,深度神經網路的優勢,能夠看到,機器可以做更多的事情。
我詢問了一些做計算機圍棋圈內的朋友,可能不少人心情複雜。mail list裡面,只有簡單的一句話回復:game over
雖然激動,但是,他們恐怕要失業了。只能再換方向、找工作了。
他們失業了,再過些年,你會失業么?
一大早起來被各種新聞刷屏了,看來大家對圍棋很感興趣。
Nature那篇文章的可讀性很強。解棋類遊戲面臨兩個問題:搜索深度太深、廣度太廣。太深,通過構造適當的估值函數來剪枝;太廣,通過構造適當的policy來聚焦。
我不清楚之前的圍棋AI是怎麼實現上面兩點。Google說,我們來試試神經網路吧!於是通過職業棋譜學了一個policy,精確度55%;同時學了一個局部常型的policy,為了之後自己和自己下用的,精確度24%。這樣我們的程序就可以模仿著高手們的譜著下棋,而不是胡亂落子了。
緊接著是構造評估函數。Google說,我們來試試神經網路吧!(你能不能換一個台詞……)就是讓計算機根據policy不斷地和自己下棋,然後學習判斷局面。
Alpha Go碾壓其他AI是沒有問題的,和職業二段Fan Hui五番棋證明Alpha Go已經進入職業水平。不過BBC肯定是有些標題黨了。應該還是有不少人(包括我)對Alpha Go的能力有所懷疑,沒有關係,我們等等三月份看殭屍流小李怎麼虐Alpha Go吧(笑)。
值得一提的是Alpha Go對戰Fan Hui所思考的情況比深藍對陣卡斯帕羅夫少得多得多(thousands of times fewer positions),因為Alpha Go憑「直覺」挑的待選步更好,對形勢的判斷能力更高。從這一點說,非常像人類。此外深藍的估值函數是手寫的,而Alpha Go的估值函數是他自己學出來的。
背景介紹完畢,下面帶點私貨。大題要小作,小題要大作。
就棋談棋沒什麼意思,我來談談這背後反應出來的人工智慧的問題,也是我對於近五十年人工智慧發展的批判:我們經常在沒有理解問題的狀態下解決了問題,更糟糕的是我們滿足於這個現狀。
我沒有要貶低誰,沒有絲毫這個意思。從工程的角度說,發現問題並解決問題,就是我們的目標。Google是公司,運用新技術解決問題,就是他們的目標。但是我們做科學研究的,眼界還要再高一些。
人工智慧發展了五十年,如今到了收穫的時候。我們在圖像識別,NLP等等領域做到了50年前做不到甚至想不到的事情。但是回望過去,半個世紀前,我們提出人工智慧的那個最原始的動機是什麼?是理解並提高人類智能(to understand and improve human intelligence)。半個世紀過去了,我們在這個方向上,這個Science而不是Engineering的維度上,真正前進了多少呢?
Tom M. Mitchell在2006年的The Discipline of Machine Learning一文中提出了一些機器學習從長遠角度看的學術問題,第二個問題就是:Can machine learning theories and algorithms help explain human learning?我同意,Google開發的Alpha Go程序是一個里程碑,標誌著NN技術越發的成熟;擊敗職業棋手的五盤棋背後蘊含著的其實是15篇、25篇學術論文,發現、聚焦並攻克了一系列學術技術難題。這是我們的成就,也是我們人類整體的驕傲。但另一方面,不要忘記了我們的初衷,我們要理解人類智能,我們要改進人類智能。在我們拿著機器學習這把利刃橫掃天下的時候,不要忘記了最初鑄劍的那份衝動和動機。當時看到職業二段被完敗還是很震撼。 Crazystone 已經跟職業九段下棋被讓到 4-5子,當時感覺電腦圍棋超越人腦是必然的事情。但沒想到這麼快。Deep Learning 在各個應用領域都頗有建樹,而且似乎還有很大的空間可以發展。這既可喜也讓人有些遺憾。可喜的是這樣的發展肯定是造福人類。有越來越多的工具和服務可以為人所用。運輸、醫療、科研上因此而革命性的發展似乎是指日可待。遺憾的是, deep learning 似乎並不能更多的告訴我們人腦是如何思維的(當然,這也並不是從事 deep learning 學者們的初衷)。隨著 deep learning 的流行,如 hofstadter 這樣的研究方向可能就更加冷門,被忽略。
這題的答案串居然有個真大牛,必須要膜拜一下
+++++
【創客星球】打敗專業圍棋手的人工智慧 AlphaGo
具體技術細節講太多其實也沒多大用,深度學習這種東西,調參數麻煩的很
簡單說下alphago的基本原理並不完全是深度學習,而是深度學習+蒙特卡洛樹
這種棋類問題,最核心的解法依然是樹結構的搜索,這個始終不變
但是早期的思路,用窮舉的方法在圍棋上是一個無解的問題,因為運算量相對於當前的硬體水平可認為是無窮
那麼alphago主要工作在於減小運算量
這個很多新聞也都說了,就是兩個深度學習的網路,一個是policy,一個是value
說下谷歌宣傳視頻裡面的介紹思路
alphago下棋的「思考」主要分為兩類
一是,當前這個子的可能走法
二是,每一步之後的思考深度
policy主要針對第一點,也就是大大減少當前這個子的落子地點
value則是針對第二點。
一般搜索的話,樹的深度太大,計算量上是infeasible的,value旨在減少這種搜索深度。
舉個簡單的例子,比如曾經可能計算機會「考慮」之後200步怎麼走,但是現在經過優化之後,可能只需要考慮20步即可,而雖然只有以前的10%,但是效果卻又遠遠好過200步
科普一點來講,他們的工作主要就是使用深度學習來「輔助評估」
這就有點類似於金庸一些小說里,如果你和一個對手盲目的切磋,可能不會佔優勢。
但是深度學習就像你身旁站了一位師傅,你一邊出招他一邊指點你,這樣,可以讓你少走很多彎路,最後說不定還可以戰勝你的對手。
+++++
當然,既然是機器學習,免不了大量的訓練過程
如今深度學習都是這個套路,海量的樣本用來訓練。而且深度學習本身就是這種特性,樣本量越大,模型越魯棒
還是以谷歌自己的那個宣傳片為例,作者說的是一天可以100萬次對局的訓練量
想想看,從fanhui到李世石,這中間保有的訓練時間那也是有至少4個月的,120天,一天100萬對局。。。這基本上可說已經窮盡了人類歷史上所有的圍棋對局了。。。
+++++
另外,今天有點意外的是看到柯潔也接受果殼的採訪談到了這個事情
瀏覽了下這個答案串,發現也有人提到「如果人類被AI戰勝,那麼圍棋還有什麼意義」
其實這倒沒什麼,深藍是1997年的東西了,但是至今國際象棋不也好好的活著呢嗎
圍棋對局最大的意義又不是在於輸贏本身上,而是在於過程上
如果你僅僅只是在乎一個遊戲人類和機器到底誰能贏,那你專門設計一些機器不能取勝的遊戲類別不就好了。
現在計算機在模式識別上還有很長的路要走,你要真想體現人類的優越性,光是買火車票那一大堆驗證碼就能虐的計算機死機冒煙了
另外還有一點,即便alphago戰勝了全人類,那本質上也是人類戰勝了人類,而非機器戰勝了人類你能說因為你算數算的比一個計算器慢,你就不如那個計算器了嗎?
看了看五盤棋譜,感覺 AlphaGo在業餘棋手裡可以算是頂尖了。樊二段第一二局還有一些勝機,但 AlphaGo很難犯錯,而且追究對手過分手的力量很大,後三盤就「殺熟」了。人有情緒,機器沒有,不難理解樊的一敗塗地。
但是,這個評價是將它當作人類棋手而發的,事實上, AlphaGo根本不會傳統意義上的「下圍棋」。據 Google的視頻看,它所做的並非下棋,而是冪次方級的巨量打譜,並通過大數據模仿人類棋手的贏棋模式,從細化的局部接觸戰到模糊演算法的大局選擇而已,雖然蠻力驚人,但沒有精神。
李世石九段,拜託你了!請記住,3月8日你面前的對手是個下了三千年總計一億盤模仿棋的蠢物!!必須下出前所未見的新手外加殭屍流大棄子!但絕不能懷有僥倖之心,AlphaGo不是孔傑,不要指望它放虎歸山!如果你輸了一盤,就當是輸給了下了千年模仿棋的妖孽吧,不要沮喪,因為你的對手毫無感情——真正的挑戰是你求道的心。加油!!預測比分3:1,李世石勝!比以前的AI強了很多,沒有明顯莫名其妙、脫離主戰場的棋。但從5張棋譜來看,仍然有欠穩定、不連貫的地方。以第5局如下局面來舉例:
右邊白棋沒有凈活,還欠一手棋。白棋判定本身劫才佔優,可以暫時脫先不管
白棋選擇打吃黑一子,當然價值也不算小
黑棋脫先打吃白棋右邊一子,考驗白棋死活
此時無論如何白棋都應該打劫撐住,但AlphaGo下出令人瞠目結舌的一步——倉皇逃出一段小尾巴,丟盔棄甲。黑棋如S9將7子笑納,不僅目數大,而且外圍斷點自動消失,中腹變得鐵厚。
但黑棋也短路,不知為何脫離主戰場跑去左下應了一手,導致白棋從中央突圍而出,黑棋中腹厚勢潛力頓時煙消雲散。白棋由於黑棋失誤因禍得福,但作戰思路明顯是前後不一致的。人類頂尖高手也會出現這類失誤,但主要是心理狀態而非技術原因。而對AI來說,恐怕預示演算法尚有缺陷,也就是我說的技術層面欠穩定、不連貫。如果對陣李世石出現這樣的敗著,很可能就無法翻身了。
吳清源:「200歲後我要在宇宙下棋。" (日媒:棋界將迎首位百歲壽誕 吳清源200歲還要下棋)
他終於來了...想到一個有趣的問題。我對AI理解是,AI有計算和大局判斷兩個神經網路,一直在學習棋譜,綜合棋譜來判斷下一手棋下在哪裡。那麼可不可能讓AI系統學習某位棋手的棋,來下出他的風格?以後棋手和圍棋愛好者們和電腦下棋的時候可以選對手:「阿爾法,給我來一個全盛時期的大李!」,「阿爾法,設成聶老風格,想請他看看棋!」
這麼看來,我們可以「復活」已逝的棋手了?想想後輩們可以「穿越時空」向吳清源老師請教,心理莫名地感動。:)解密Google Deepmind AlphaGo圍棋演算法:真人工智慧來自於哪裡?
![go](http://7te8bu.com1.z0.glb.clouddn.com/uploads/new/article/740_740/201601/56a9850f3e6d6.jpg)
&>2016年1月28日,Google Deepmind在Nature上發文宣布其人工智慧圍棋系統AlphaGo歷史性的戰勝人類的職業圍棋選手!這條重磅新聞無疑引起了圍棋界和人工智慧界的廣泛關注!3月份AlphaGo對陣李世石的比賽更將引起全人類的目光!
是什麼使圍棋演算法產生了質的飛躍?要知道,在之前最好的圍棋程序也只能達到業餘人類棋手的水平。是真的人工智慧產生了嗎?
對於大多數人來說,大家都知道1997年的「深藍」計算機戰勝了人類的國際象棋冠軍卡斯帕羅夫,但是大家都不會認為「深藍」真正擁有了人工智慧,道理非常簡單:國際象棋(當然圍棋也是)每一步都是可見的,在一個確定性的棋局下,僅有有限個走法。這有限個走法中必然有一個最優的。一個基本的想法就是對棋局進行預測,遍歷每一種走法直到一方勝出,然後回退計算每一個可能贏的概率,最後使用概率最高的作為最優的走法。「深藍」就做了這麼件事,暴力窮舉所有的步子,然後找最優!贏了人類,但沒有智能,因為整個演算法完全就是人工設計的一個演算法,根本看不到智能在哪裡。
顯然圍棋理論上也可以暴力破解,但是問題就在於圍棋的可走的步子太多了,以至於目前的計算性能根本做不到暴力破解。這也就是為什麼圍棋是擋在人工智慧面前的一個重大挑戰。
**要使圍棋程序戰勝人類頂尖高手,只有依靠真正的人工智慧!**
對圍棋有了解的朋友都知道下圍棋需要對整個棋局有直觀的理解,這就是圍棋困難的地方。除非計算機真正理解了棋局,才有可能有大局觀,才有可能下出真正的好棋!
那麼,問題來了:
###AlphaGo 有真正的人工智慧嗎?
我的回答:
###AlphaGo有真人工智慧,雖然還不完美!
那麼
### AlphaGo的真人工智慧在哪裡?
我的回答:
### 就在深度神經網路之中
一切的答案都在Google Deepmind在Nature上發表的文章:
`Mastering the Game of Go with Deep Neural Networks and Tree Search`[論文鏈接](https://storage.googleapis.com/deepmind-data/assets/papers/deepmind-mastering-go.pdf)
本文將分析AlphaGo的這篇Nature文章,去解密真人工智慧的奧秘!
### AlphaGo的」大腦「是怎樣的
![這裡寫圖片描述](http://img.blog.csdn.net/20160130153948867)
深度神經網路是AlphaGo的」大腦「,我們先把它當做一個黑匣子,有輸入端,也有輸出端,中間具體怎麼處理先不考慮。那麼AlphaGo的」大腦「實際上分成了四大部分:
- Rollout Policy 快速感知」腦「:用於快速的感知圍棋的盤面,獲取較優的下棋選擇,類似於人觀察盤面獲得的第一反應,準確度不高
- SL Policy Network 深度模仿」腦「:通過人類6-9段高手的棋局來進行模仿學習得到的腦區。這個深度模仿「腦」能夠根據盤面產生類似人類棋手的走法。
- RL Policy Network 自學成長「腦」:以深度模仿「腦」為基礎,通過不斷的與之前的「自己」訓練提高下棋的水平。
- Value Network 全局分析「腦」:利用自學成長「腦」學習對整個盤面的贏面判斷,實現從全局分析整個棋局。
所以,AlphaGo的「大腦」實際上有四個腦區,每個腦區的功能不一樣,但對比一下發現這些能力基本對於人類棋手下棋所需的不同思維,既包含局部的計算,也包含全局的分析。其中的Policy Network用於具體每一步棋的優劣判斷,而Value Network則對整個棋局進行形勢的判斷。
![network](http://7te8bu.com1.z0.glb.clouddn.com/uploads/new/article/740_740/201601/56a9d516d03ec.png)
而且很重要的是,AlphaGo提升棋力首先是依靠模仿,也就是基於深度模仿「腦」來進行自我水平的提升。這和人類的學習方式其實是一模一樣的。一開始都是模仿別人的下法,然後慢慢的產生自己的下法。
那麼這些不同的腦區的性能如何呢?
- 快速感知「腦」對下棋選擇的判斷對比人類高手的下棋選擇只有24.2%的正確率
- 深度模仿「腦」對下棋選擇的判斷對比人類高手的下棋選擇只有57.0%的正確率,也就是使用深度模仿「腦」,本身就有一半以上的幾率選擇和人類高手一樣的走法。
- 自學成長「腦」在經過不斷的自學改進之後,與深度模仿「腦」進行比賽,竟然達到80%的勝利。這本質上說明了通過自我學習,在下棋水平上取得了巨大的提升。
- 全局分析「腦」使用自學成長「腦」學習訓練後,對全局局勢的判斷均方差在0.22~0.23之間。也就是有大約80%的概率對局面的形勢判斷是對的。這是AlphaGo能夠達到職業棋手水準的關鍵所在。
從上面的分析可以看到AlphaGo的不同「腦區」的強大。具體每個大腦是怎麼學習的在之後的小節分析,我們先來看看有了這些訓練好的大腦之後AlphaGo是如何下棋的。
### AlphaGo 是如何下棋的?
在分析AlphaGo是如何下棋之前,我們先來看看一下人類棋手會怎麼下棋:
- Step 1:分析判斷全局的形勢
- Step 2:分析判斷局部的棋局找到幾個可能的落子點
- Step 3:預測接下來幾步的棋局變化,判斷並選擇最佳的落子點。
那麼,AlphaGo在擁有強大的神經網路」大腦「的基礎上採用蒙特卡洛樹搜索來獲取最佳的落子點,本質上和人類的做法是接近的。
![the way](http://7te8bu.com1.z0.glb.clouddn.com/uploads/new/article/740_740/201601/56a9824989b96.jpg)
首先是採用蒙特卡洛樹搜索的基本思想,其實很簡單:
**多次模擬未來的棋局,然後選擇在模擬中選擇次數最多的走法**
AlphaGo具體的下棋基本思想如下(忽略掉一些技術細節比如拓展葉節點):
- Step 1:基於`深度模仿「腦」` 來預測未來的下一步走法,直到L步。
- Step 2:結合兩種方式來對未來到L的走勢進行評估,一個是使用全局分析「腦」進行評估,判斷贏面,一個是使用快速感知「腦」做進一步的預測直到比賽結束得到模擬的結果。綜合兩者對預測到未來L步走法進行評估。
- Step 3:評估完,將評估結果作為當前棋局下的下一步走法的估值。即給一開始給出的下一步走法根據未來的走向進行評估。
- Step 4 :結合下一步走法的估值和深度模仿腦進行再一次的模擬,如果出現同樣的走法,則對走法的估值取平均(蒙特卡洛的思想在這裡)
反覆循環上面的步驟到n次。然後選擇選擇次數最多的走法作為下一步。
說的有點複雜,簡單的講就是綜合全局和具體走法的計算分析,對下一步棋進行模擬,找到最佳的下一步。對步子的選擇,既要依賴於全局分析「腦」的判斷,也需要深度模仿「腦」的判斷。
分析到這裡,大家就可以理解為什麼在AlphaGo與Fan Hui的比賽中,有一些AlphaGo的落子並不僅僅考慮局部的戰術,也考慮了整體的戰略。
知道了AlphaGo的具體下棋方法之後,我們會明白讓AlphaGo棋力如此之強的還是在於AlphaGo的幾個深度神經網路上。
所以,讓我們看看AlphaGo的大腦是怎麼學習來的。
### AlphaGo是如何學習的?
AlphaGo的學習依賴於深度學習Deep Learning和增強學習Reinforcement Learning,合起來就是Deep Reinforcement Learning。這實際上當前人工智慧界最前沿的研究方向。
關於深度學習和增強學習,本文不做詳細的介紹。深度神經網路是由巨量的參數形成的一個多層的神經網路,輸入某一種類型的數據,輸出某一種特定的結果,根據輸出的誤差,計算並更新神經網路的參數,從而減少誤差,從而使得利用神經網路,特定的輸入可以得到特定想要的結果。
以深度模擬「腦」為例。這個實際上是一個12層的神經網路。輸入主要是整個棋盤的19*19的信息(比如黑棋的信息,白棋的信息,空著的信息,還有其他一些和圍棋規則有關的信息一共48種)。輸出要求是下一步的落子。那麼Google Deepmind擁有3000萬個落子的數據,這就是訓練集,根據輸出的誤差就可以進行神經網路的訓練。訓練結束達到57%的正確率。也就是說輸入一個棋盤的棋局狀態,輸出的落子有一半以上選擇了和人類高手一樣的落子方式。從某種意義上講,就是這個神經網路領悟了棋局,從而能夠得到和人類高手一樣的落子方法。
換另一個角度看會覺得AlphaGo很可怕,因為這個神經網路本來是用在計算機視覺上的。神經網路的輸入是棋盤,就類似為AlphaGo是看著棋盤學習的。
接下來的自學成長「腦」採用深度增強學習(deep reinforcement learning)來更新深度神經網路的參數。通過反覆和過去的「自己」下棋來獲得數據,通過輸贏來判斷好壞,根據好壞結果計算策略梯度,從而更新參數。通過反覆的自學,我們看到自學成長「腦」可以80%勝率戰勝深度模仿「腦」,說明了這種學習的成功,進一步說明自學成長「腦」自己產生了新的下棋方法,形成了自己的一套更強的下棋風格。
說到這,大家可以看到真人工智慧來源於神經網路,具體神經網路的參數為什麼能夠表現出智能恐怕無人知曉?智能到底是什麼還需要等待答案。
&> 深度神經網路是人工智慧的黎明!
首先我有一個疑問,不知道這個AI左右互博的時候貼多少目達到勝率平衡?這個應該可以作為規則制定的參考。
看到有人在討論AI影響未來普通人下棋,我覺得確實無法避免了。因為神經網路的特點本來就是不論訓練集合多大,使用它預測時的計算量仍然固定。
也就是說AI作者只需要在試驗室裡面用集群或者超算進行訓練,而用戶使用的時候普通計算機完全足以勝任。當然網路的規模和能力肯定弱於Google現在的AI,但是一般的業餘愛好者肯定吃不消。
如果蒙特卡洛演算法是對應到3D遊戲裡面的即時運算的話,神經網路就是預渲染的CG了。前者性能受限於終端性能,後者則是擺脫了這個限制。
而且我記得以前有人曾經樂觀的說,如果機器19路下贏人類,人類還可以通過擴展棋盤到21路來保持優勢。現在看來也是沒什麼大用了,因為現在AI的思路已經不受棋盤大小的限制了。從Google的示意圖看,他們也是從局部層層匯聚上來,完全可以動態的適應不同大小的棋盤(需要重新訓練)。估計AI比人類可以更快的適應棋盤擴大。
正如另外幾位答主說提的,AI在具體的局部是不會有任何誤判的。之前限制AI的是如何來判斷局勢,這也是圍棋AI遠不如象棋AI的原因。而Google最大的突破在我看來就是給出了一個足夠好的局勢判斷思路。因為AI算力近乎無窮,所以任何棋手如果不是局勢判斷能力強過AI斷然是難以取勝的。
現在在路上,回家好好看看論文對職業水平有疑慮的,可以歇歇了。
其實關鍵問題是這次直接跨越了無數道天塹,一步登天了。之前最強AI連我這種一般般的業餘5段都完全贏不了,這次直接戰勝一般職業棋手,相當於從全球前10000名直接跨越到前100名。你們說,100名進到第1,會更難?
3月李世石勝敗不那麼重要,這只不過是拉開了圍棋被征服的大幕。
也許受到最大的衝擊的是圍棋教育市場,沒有了智力光環,會有多少家長離開?市場萎縮後,這些年那麼多衝段少年何去何從?
我和另一位棋友,2015年11月的時候才討論過圍棋AI戰勝人類後圍棋市場的崩塌,只是當時我們以為至少還要5年。
我們從被擊敗的歐洲冠軍——當事人樊麾老師的角度看看,以下這段話摘自1月28日樊麾老師接受圍棋TV的採訪對話。答案末尾附上視頻鏈接。
樊麾:還有一個問題就是:很多朋友在問我就是這個人工智慧有一天會超過人類也許,這個事情是好事情還是壞事情? 因為我是最早體驗這個事情的,也是10月份我就知道我輸了,我知道它是什麼實力了,然後經過很長時間我就在思考這個問題:那麼它到底是好事情還是壞事情?可能對某些棋迷朋友來說的話,誒呀好像頭上神聖的光環就要被摘掉了,誒呀圍棋這麼神聖的東西怎麼電腦會比人厲害?但是從更開闊的角度去思考,那麼人工智慧的這個開發和發展,它所接觸到的面不光光是圍棋,那麼通過對圍棋的了解和突破對人未來的生活會起到很大的變化,可以進入很多行業我就不具體說了。所以,就單純從棋上來講,未來的話可能如果有一天終於人們要找到最好的一手的時候就「神之一手」那感覺的時候,可能是跟那個電腦就是人工智慧一起努力也許能找到。 我是覺得從各方面講都是好事情不是壞事情,千萬不要把這當成一種什麼世界末日啊、圍棋再不能下啊等等。相反的,它所未來給予我們的......可能會給予我們更多的樂趣,可能更是一種機遇,最起碼的這個事情出來之後整個歐美的各大媒體的報道,我昨天晚上那個BBC還對我進行採訪,那麼你想這個對歐洲和美國圍棋的推廣這是一件好事情。
圍棋TV獨家解密人工智慧圍棋
Facebook:我們現在研究的AI將有希望打敗頂尖高手。
十小時後。
Google:Done!
(大家當段子看就好,切勿上綱上線,我本人也是很崇拜田淵棟老師的。)
大家目前基本都認同阿爾法圍棋這次系列對局的表現相當於弱職業水準,但會不會存在一種可能,阿爾法表現出的棋力和對局者相關,比如說根據對手的每一手給出「剛好勝過」而不是「最好的」應對,類似於贏沖段少年和職業九段都是一目半的水準。。。
突然覺得這不就是圍棋版的圖靈測試么,而且人類永遠沒法測出它的極限。。。
想了解下這個人工智慧是怎麼學習的。如果按照人類的思路,以厚勢和實地的價值判斷為例。初學者一般都喜歡實地,不喜歡厚勢,但是隨著對局原來越多,發現對方通過厚勢的攻擊非常犀利,那麼初學者會逐步調高對厚勢的價值評價。如果人工智慧要學習這個思路,就必須在一連串的下發中,提取出攻擊、防守、治孤這些抽象的概念,然後通過這些概念下,不同棋形在實戰中的表現進行實際的評價,作為以後局麵價值判斷和取捨的標準。
推薦閱讀:
※基於深度卷積神經網路進行人臉識別的原理是什麼?
※NLP(自然語言處理)界有哪些神級人物?
※微軟的 Cortana 語音助手說話語調極為逼真像人,這是怎麼做到的?
※如果你是圖靈測試者,你會問機器什麼問題?
※機器學習、深度學習等人工智慧技術在工業界的應用狀況是怎樣的?人力供需狀況如何?