3
昨天人機大戰的第二場,AlphaGo又贏了,一些人工智能方面的專家開始坦白地承認——技術的發展超出了我們的想象。態度更明確的,比如在騰訊直播室觀戰的余凱則表示“我的結論是計算機已經超過了人類”。
但承認失敗從來不是人類的常態,失敗后找出破綻再次出發才是,以一種不屈不撓的挑戰者精神來說,就算接下來的三盤李世石輸了,還有中國的柯潔;就算柯潔也被AlphaGo超越了,我們也不會承認AlphaGo的智力已經全部輾壓人類,因為它就是我們自己造出來的,因為它這次連贏兩場是有客觀條件的。
眼尖的人會發現,之前的IBM深藍不管在計算力上多么厲害,它都沒法像AlphaGo下地這么像人類的棋著,好比直播時新浪網友一邊看一邊驚呼“實戰中李世石在黑3頂的時候,毅然搶占下邊的大官子。本以為AlphaGo要對中腹白龍展開猛攻,誰知AlphaGo竟然11位本本分分地虎一手,仔細一判斷,竟然全局還是黑棋優勢,AlphaGo的全局判斷力非常準確。”
但從機器的角度,AlphaGo無論下地如何像人都不會有靈魂在指導的,有的只是基于強大CPU集群的基礎上多了一個強大的GPU集群,這些才是讓它依托其其深度學習能力能表現地如此像人的本質所在。至于它這一次為什么表現地這么出色,據王小川3月9號的表述,此次谷歌此次動用了上萬臺的機器,對外宣稱1200臺,2000個GPU,比深藍計算力提高了3萬倍。
很多人不解,最初用于渲染游戲圖像的GPU怎么就會被發現適合深度學習呢?對此,圖靈機器人聯合創始人楊釗告訴雷鋒網
相比CPU設計為通用的計算處理,GPU更適合處理并行的相同的計算;一般情況下,GPU的核數更多,在并行處理大量數據時優勢更加明顯;深度學習需要大量的數據運算,典型的深度神經網絡有很多節點,每個節點又有很多連接,需要并在學習的過程中不斷更新迭代,這種情況下GPU更具優勢;
如果要舉一個形象的例子,按小智機器人何勇的說法
在串行架構下 ,計算兩個長度為1000向量的加法需要循環計算1000次,而用GPU一次就可以完成計算。
普通人都知道,GPU的全名是“圖形處理器”,按理說它應該不是這次人機大戰的動力主角,但因為其在大規模并行運算環境中的出色表現,對需要大量使用張量計算的深度學習來說能夠起到明顯的加速作用,反而使得它成為此次人機大戰中的耀眼新星。另外一個讓雷鋒網覺得有意思的東西,是余凱在解讀昨天的人機大戰時,提到“Alphago似乎可以掌握局面。因為基于深度學習里面采用卷積神經網絡,就是拿很多的濾波器,掃描棋盤,它可能拿成千上百個濾波器,得到分層的理解,上面再來一層掃描,這個機制跟人眼睛的視覺神經網絡是完全一樣的。這里面很巧妙的,卷集神經網絡是模擬人整個大腦的視覺神經網絡的機制。”
人類臉上的一雙眼睛,比其它任何五官部位都能有助于迅速掌握全局,但這個卷積神經網絡沒用攝像頭、也沒有雷達掃描。只是用一雙沒有眼睛的“眼睛”(基于模擬人整個大腦的視覺神經網絡的機制),讓AlphaGo有了比賽中表現的“全局觀”,這似乎是非常有意思的一件事。
AlphaGo的計算能力比人強已經是板上釘釘的事實,它的“思維能力”也在趕超人類的路上,但這次人機大戰展開的初衷,就是我們深信它的“神經網絡”跟我們真人的神經網絡是有差距的,所以我們不斷測試。那它跟真人神經網絡相比,還有哪些差距呢?
楊釗:
規模遠沒有人腦大,人腦800多億個神經元,整體性能比人腦稍慢;
功耗的問題;
泛化能力(舉一反三的能力);
何勇:
目前科學界對大腦的結構認知還是非常有限的,當前的人工神經網絡就是建立在這個有限的認知上設計出來的一個高度簡化的人腦模型,所以相比人腦而言,還有 很大差距。舉個簡單的例子,其“智能”的遷移性相對于人腦有非常大的距離,比如,一個能夠擊敗人類棋手的AI很難去學習怎么去理解一篇簡單的文章。
而思必馳CTO周偉達博士則從AlphaGo的主動和被動性上分析了這個問題——與人類相比,AlphaGO需要改進的地方還有很多方面,目前深度學習大多采用有監督的學習,在無監督學習,半監督學習和自學能力方面需要加強;同樣由于目前深度學習大多從以往的棋局中進行學習,在聯想記憶、創新、和推廣能力不足,等人類逐漸熟悉其棋路后,其這方面的弱勢也會顯露無遺,所以其創新和推廣能力方面還需要加強。
在正式比賽前,有人就已經關注到AlphaGo先讀取KGS(一個網絡圍棋對戰平臺)上面近16萬局共3000多萬步的人類走法,但這種簡單復制Copy的能力還不能滿足AlphaGo飛速進化的需求,按出門問問NLP工程師Jason的說法,它只是“基于這個在人類棋局上學習出來的SL Policy Network, 然后使用強化學習(Reinforcement Learning)的方法通過自己跟自己對弈,來進一步優化Policy Network。”
而從李世石在前兩局的“異常棋風”表現中,我們這里不妨推測出李世石已經意識到AlphaGo已經對自己的棋風相當了解,他本人正在極力求變,而不是職業棋手認為的他在“消極應戰”,因為我們相信以一個圍棋冠軍的智商,他絕對知道找出對手破綻的重要性,即使這個對手不是人。
至于如何保證跟自己對弈的過程中學到東西(不下一樣的棋),業余5段趙治勛表示
在算法里這個叫做加強學習,通過對弈提升棋力。我學過這個算法,認為它可信而且有用。通俗來講,人不可以復制,但機器可以。兩只阿爾法圍棋的復制品0號機和1號機對弈 互不干擾 這樣的學習就是有用的 而人并不能分身自我對弈干擾嚴重,因此不能學東西。
知己知彼,方有勝算,在知道AlphaGo在此番競賽中,它擅長的是記住棋譜+加強學習+計算能力,那如果按武俠小說破招的思路,人類應該干啥來破招?
從招式上,楊釗表示有3點 1 盡可能地使用冷招,進入冷僻局面;2 在前期利用人腦的大局觀建立優勢,否則到了后期搜索空間變小,計算機更具優勢; 3 創新棋局理論,讓其之前學習到的棋局能力減效(挺難的)。
從心理上,何勇表示AI的優勢在于精準的計算,不像人類棋手會受生理和心理因素影響,出現失誤。而劣勢也顯而易見,缺乏對全局的掌控,AI的走法,更多的是基于當前棋局做出的 一個短期判斷。所以,如果跟一個善于全局布局的高手對弈,勝的可能性相對較低。
從可能性上,出門問問李理表示,很難,從我程序員的角度看,因為殘局的差距太大了,前面走子機器也不會太差。我覺得可以試試的策略就是中前期占優勢,然后殘局導向簡單變化的局面。開局不要被怪招嚇到,認為是弱手就要嚴厲打擊,機器的開局不怎么樣。
從本質上,周博士表示,目前機器智能還處在初始發展階段,機器憑借其海量的存儲能力和快速的邏輯計算能力獲得了一定的優勢,同時在智能方面通過人工智能專家的設計具備了一定的學習能力,但其與人類相比還有很大的差距,人類并不需要太大驚小怪。人類只需要更多地了解目前機器智能的本質,在實際對弈中去了解機器的強項和弱勢,相信人類很快能找到發揮人類優勢戰勝機器的方法。
也許后面李世石接著輸了,也許柯潔也被AlphaGo超越了,也許以后博弈類的游戲人類再也不是機器的對手了,但我們依然覺得,把AlphaGo的原理搞清楚了,像IBM的深藍一樣讓我們對它知根知底,就是它最大的破綻。
目前網上分析AlphaGo的文章一大推,因為晦澀難懂,引發了人類對它的敬畏,或者說對它的恐懼,但我們若把它往簡單里看。
1997年的IBM深藍依靠計算力和暴力窮舉,超越了人類在國際象棋上的局限。
2009年的時候,一個叫做Hinton的老頭第一次把他研究了近30年的深度神經網絡介紹給了做語音識別的學者,到了第二年語音識別領域就發生了巨大的突破。
于是深度學習網絡像開了掛一樣開始向人工智能的各個領域蔓延,并開始出現CNN、RNN等更多具體的變種。
直到2016年3月,它用在圍棋游戲上跟人類對弈。
那怎么簡單描述深度網絡在圍棋上的應用呢?
“我的理解,兩個深度網絡的工具,Policy Network+Value Network通過評估每一步收益,用來簡化蒙特卡洛樹(AI框架)的搜索空間,取得落子最優和時間消耗的平衡。”楊釗如是說。
雷峰網原創文章,未經授權禁止轉載。詳情見轉載須知。