AlphaGo比象棋冠軍深藍厲害多少倍?

佚名發表於2016-03-04

抱歉,這個事情我們真的沒法直接告訴你。這麼說吧:1997年下贏國際象棋冠軍卡斯帕羅夫的“深藍”是一臺超級計算機,而即將和李世石對決圍棋的AlphaGo卻是谷歌旗下公司DeepMind開發出來的人工智慧程式。強行把這二者拉在一起比較……少年我們還是來談談世界和平吧。

不過AlphaGo作為程式,最終還是要運轉在計算機上才能去和人類比個高下的。所以把問題換成“即將和人類下圍棋的那臺計算機到底比深藍厲害多少倍?”我們還是能夠簡單計算一下給出大致答案的。畢竟在衡量計算機效能方面,我們已經有了一個相當統一的標準:每秒浮點運算次數,為了方便起見,我們下面一律稱之為“FLOPS”。

千萬別被“浮點運算”這個計算機術語嚇跑,說人話的話,浮點運算其實就是帶小數的四則運算,比如1.2加2.1就是一個典型的浮點運算。如果你的小學數學老師不是美國人的話,那麼我們估計這會兒你早就心算出結果是3.3了。不過這對計算機來說,這個問題沒那麼簡單。

我們知道,計算機是以0和1構成的二進位制數字進行運算的,比如在基礎的二進位制裡,1就是1,2就變成了10,3是11,4是100……這種運算方式讓我們可以用最簡單的電路元件組裝出穩定有效的計算機器,但它也帶來一個問題:計算機能夠處理的數字只有整數。如果想不借助任何其他的數學方法,用0和1表示一個0.1……少年我們真的還是來談談世界和平吧。

解決這個問題的辦法很簡單:0.1可以看成是1除以10的結果,我們想讓計算機計算一個帶小數點的數字,只要告訴CPU這是一個被1後面加了多少個0整除的整數就行了。不過這樣一來,計算機在處理小數點的時候,就多了好幾個運算步驟。所以進行浮點運算的速度也就成了衡量計算機效能的標準。

拿在國際象棋上擊敗人類的深藍來說,它的計算能力是11.38GFLOPS,意思就是深藍能在每秒鐘裡計算113.8億次帶小數的加減乘除。而在二戰期間幫助美國設計製造原子彈的第一臺通用計算機ENIAC,它的效能只有300FLOP。

在今天看來,深藍的效能怎麼樣?三個字:弱爆了。單就PC中使用的CPU來說,早在2006年,英特爾推出的第一代酷睿2就已經穩穩地超過了深藍。這還沒有算上顯示卡裡GPU帶來的效果加成,今天最普通的整合顯示卡,其效能也已經超過了700GFLOPS。如果真要在效能上比個高下,深藍這種上個世紀的超級計算機,就算組團也不一定能單挑你面前的這臺筆記本電腦

那麼今天的超級計算機已經達到了什麼樣的效能水平?我們國家的天河二號是世界最快的超級計算機,它浮點運算能力已經達到了33.86PFLOPS。也就是說,深藍要在效能上增長到自身的30萬倍,才能和天河二號相提並論。

不過對於深藍來說,這樣的比較實在是太不公平。因為即便在當年,深藍也不是速度最快的超級計算機。相比之下,只有透過谷歌AlphaGo使用的電腦,我們才能比較出這20年裡,我們的計算機到底經過了怎樣驚人的發展。

根據谷歌團隊發表在《自然》雜誌上的論文,AlphaGo最初是在谷歌的一臺計算機上“訓練”人工智慧下圍棋的。按照論文裡的描述,谷歌利用這臺計算機,讓AlphaGo的圍棋水平提升到了與歐洲冠軍樊麾接近的地步。不過論文除了提到這臺計算機裝有48個CPU和8個GPU之外,對計算機的效能連一個數字都沒有提到。好在AlphaGo是在雲端計算平臺上執行的,我們只要找來競爭對手的計算機資料比較,就可以瞭解到大概了。

比如說去年12月,阿里雲對外開放的高效能運算服務。按照阿里雲的描述,這些計算機的單機浮點運算能力是11TFLOPS,而且同樣可以用來訓練人工智慧自行學習。如果谷歌的計算機效能與阿里雲接近的話,那麼AlphaGo所驅動的硬體,效能至少是深藍的1000倍。

但故事到這裡還沒有完,AlphaGo並非只有“單機版”一個版本。為了達到更高的運算能力,谷歌還把AlphaGo接入到了1202個CPU組成的網路之中。聯網後的AlphaGo算力猛增24倍,一下子從“單機版”不到職業二段的水平,跳躍到了職業五段上下的水準。

所以AlphaGo比深藍厲害多少倍?估計這會你已經得出答案了:2.5萬倍。從這個角度,我們也能看出來,圍棋究竟是怎樣複雜的一種智力遊戲以至於計算機的效能需要20年的提高,才能在象棋上戰勝人類後,再在圍棋棋盤面前,坐到人類頂尖選手的對面。不過歸根揭底,AlphaGo最重要的成就並不是採用了效能多麼優秀的電腦,而是第一次讓程式可以以人類的方式思考、學習和提高。所以過幾天的比賽,無論誰輸誰贏,我們見證的都是一個嶄新紀元的開端。

當然別忘了關注快科技,我們到時候會在後方,帶你迎接這個新紀元的第一道曙光。

相關文章