導讀:谷歌DeepMind團隊在最新一期《Nature》上發表論文稱,他們研發的人工智慧演算法擊敗了歐洲圍棋冠軍Fan Hui,同時也擊敗了目前最好的圍棋程式中99.8%的對手。而幫助他們解決這個人工智慧歷史難題的關鍵是使用了策略網路(policy network)和評估網路(value network)兩種深度神經網路。而就在前一天,Facebook也在arXiv.org上更新了一篇用卷積神經網路和蒙特卡洛樹搜尋相結合來解決圍棋問題的新、論文。並且,公司人工智慧實驗室負責人Yann LeCun在自己的FB主頁上針對谷歌和Facebook的研究發表了一段非常精彩的說明。
谷歌DeepMind團隊發表Nature封面論文,贏得圍棋人工智慧挑戰
在邁向搭建具有更類似人類直覺的人工智慧道路上,谷歌取得了出乎意料的輝煌一步;他們研發出能夠在極其複雜的圍棋遊戲中擊敗專家級人類選手的計算機。他們將論文發表在了《Nature》上。 谷歌團隊已經表明,掌握圍棋所需技能並不為人類獨享。他們的一款叫做Alpha Go的計算機程式擊敗了歐洲圍棋冠軍Fan Hui,戰績為5:0。Alpha Go的下一個挑戰將是世界頂級圍棋選手之一,李世乭,比賽將於三月份在首爾舉行。
李世乭
開發Alpha Go的團隊是Google的DeepMind,這是2014年Google在英國收購的一家很小的人工智慧公司。這個團隊使用的是一種非常流行和成功的機器學習方法,叫做深度學習,同時還加上了另一種模擬技術來對潛在的步法進行建模。深度學習需要對一個大型的神經網路進行訓練,使其對資料中的模式做出反應。事實還證明,它對影像和音訊處理也十分有用。許多大型科技公司都在探索新方法來使用這種技術。 要想掌握圍棋,需要不斷實踐練習,也需要識別棋子佈局中微妙模式的巧妙本事。
DeepMind團隊表示,Alpha Go的關鍵在於使用的深度神經網路,實際上,在Alpha Go中有兩種不同的神經網路,第一種叫做策略網路(policy network),用來預測下一步;第二種叫做評估網路(value network),用來預測棋盤上不同的分佈會帶來什麼不同的結果。Alpha Go使用它們的方法是,把非常複雜的搜尋樹減少到可操作的規模。所以,它並不是在每一步都要考慮幾百種步數,而只考慮策略網路提供的幾十種最有前景的步法,評估網路的作用是減少搜尋的深度,所以,它的搜尋深度並不是特別深,它並不是一下子搜尋出直達比賽末尾的300多步,而是搜尋更少的步數,比如20多步,並評估這些位置,而不是一路評估到底,看誰最終能贏。搜尋並不是靠蠻力,而是與某種與想象力很相似的東西。
領導這項研究的另一位Google研究者David Silver說:「圍棋有著巨大的搜尋空間,用蠻力很難解決。Alpha Go的關鍵在於,將搜尋空間縮小到可以操作的範圍。這個方法讓Alpha Go比以前的方法都更像人類。」 Demis Hassabis說,圍棋是人類發明的最複雜也是最美的遊戲。通過戰勝Fan Hui,「我們的程式贏得了長期以來一項重大人工智慧挑戰的勝利。而這項技術在Google的首個用途將是開發更好的個人助理軟體。這樣的個人助理能夠從使用者線上行為中學習使用者偏好,並對產品和事件作出更符合直覺的建議。
DeepMind創始人Demis Hassabis
Hassabis還說道,他們用來創造Alpha Go的技術,也正是他的團隊努力開發強人工智慧的嘗試。他說:「最終,我們想要將這些技術應用到真實世界的重要問題中。因為我們用的方法是通用的,我們希望有一天,它們能延伸得更廣,幫助解決最緊迫的社會問題,從醫藥診斷到環境模型。」 實際上在幾年前,大多數圍棋選手和棋類程式設計師都相信,圍棋實在是太困難了,必須要花上幾十年的時間,計算機才能達到人類專業棋手的標準水平。對計算機來說,圍棋比象棋的挑戰更大,原因有二:每個回合可能存在的走法數量多得多,沒有一個簡單的方法來測算優勢。所以,棋手只能學著在棋盤上幾百個棋子中識別出抽象模式。即使是專家也經常會很難解釋為什麼一步棋看起來很有優勢或有問題。
眾專家的評價
1997年,當IBM深藍計算機在象棋上稱霸時,它使用的是手工編碼的規則,在搜尋時將窮盡所有可能發生的步法。Alpha Go從本質上則是隨著時間而學習的,可以識別出可能具有優勢的模式,然後模擬出數量有限的潛在結果。 Google的成就受到了廣泛的祝賀,也引起了許多本領域研究者的驚訝。 新成立的非營利性組織OpenAI的AI研究者Ilya Sutskever說:「從技術的角度說,這個研究對AI具有紀念碑式的貢獻。」他說,這個成果非常重要,因為Alpha Go從本質上教會了自己如何贏得比賽。「同樣的技術也可以用於其他棋類遊戲中,以獲得高超表現。」
加拿大阿爾伯塔大學的電腦科學教授Michael Bowling最近開發了一個能在撲克牌上贏過人類的程式。他聽到這個訊息也很興奮。他相信,這個方法在許多可以運用機器學習的領域都很有用。他說:「許多我們通常認為是人類智慧的東西其實都構建於模式匹配上。許多被我們看做學習的東西,其實都是在過去看到了某些模式,然後意識到它們與現在的狀況有何聯絡。」 紐約大學認知教授Gary Marcus說:「這不是所謂的端對端深度學習系統。而是精心建構的模組化系統,在前端具有一些縝密的手工操作,也就是說,幾乎媲美人類心智:豐富,模組化,通過演化做出些微調整,而不僅僅是一束隨機互聯的神經元,完全通過經驗做出調整。」
Facebook不甘示弱:提前發表論文,LeCun精彩回應
而就在國外媒體對谷歌這篇論文進行大規模報導之前,Facebook人工智慧實驗室(以下簡稱FAIR)負責人Yann LeCun也非常「巧合」地在自己Facebook主頁貼出了Facebook剛剛發表在arXiv.org的一篇針對圍棋問題的論文,還意味深長的從圍棋問題的歷史、相關技術、Facebook研究進展等方面進行了詳細說明。
首先,Yann LeCun解釋了我們為什麼要研究圍棋?他說,作為一項非常困難的任務,圍棋是一個很好的案例來驗證各種學習技能的結合,包括模式識別、問題解決和規劃等,也是一個可以用來測試新想法的工具,包括機器學習、推理和規劃的結合。 Yann LeCun說,Facebook FAIR的一位科學家Yuandong在幾個月前開始獨立研究圍棋專案,他開發了一款叫做「黑暗森林」的機器人。根據論文中的描述,最新版機器人將卷積神經網路和目前圍棋機器人的經典方法——蒙特卡洛樹搜尋進行了有機結合。
此前,曾在2014年東京圍棋擂臺賽上通過讓子以微弱優勢戰勝人類棋手的Crazy Stone就是依賴於蒙特卡洛樹搜尋,這是一套能夠從本質上對每一步走法的所有結果都進行分析的系統。所以,有些機器能夠非常精通西洋棋、國際象棋和其他棋類。它們比人類棋手看的更遠,所以能夠輕鬆的擊敗他們。但圍棋不是這樣,下圍棋有太多的可能性需要考慮。在國際象棋的任何一個回合,平均可能的走法有35種。但圍棋的走法卻能達到250種。並且在這250種可能的走法之後,還對應著另外250種可能,以此類推。因此,用蒙特卡洛數搜尋去計算每一步走法所帶來的所有結果是不可能的。
從Facebook的研究成果可以看出,通過將訓練過的卷積神經網路和蒙特卡洛樹搜尋的結合,我們可以在模式匹配功能上再加入策略評估這個新功能。這也將有益於遊戲之外的其他應用,比如說自然語言生成,在回覆中能夠加上自發性和多樣性,同時也能進行推理,而推理所需要的就是搜尋可能的答案並挑選出最優的邏輯鏈。我們的興趣並不在於要開發出世界上最好的圍棋選手,但這是我們人工智慧研究進展的一次有趣練習。
從去年11月起,DarkForest就已經在公開的圍棋伺服器KGS上擊敗了一些人類選手和其他圍棋機器人。DarkForest的第一版完全是基於卷積神經網路。通過有監督模式的訓練讓它來「模仿」人類選手。我們使用了大量人類專業選手比賽錄影的資料庫,然後將比賽的棋盤格局輸入到卷積神經網路中,以此來訓練它預測人類選手的下一步走法。這需要大規模卷積神經網路,它的輸入是一個帶有註釋的完整的19x19圍棋棋盤,而神經網路輸出的是一個代表著人類專業棋手每一步走法概率分佈的棋盤地圖。這充分利用了卷積神經網路的模式識別能力,而這種能力在影像中的物體識別、人臉識別和語音識別方面的成功早就得到了證明。
LeCun表示,將卷積神經網路應用於圍棋的想法要追溯到很久之前的1994年,Nicol Schraudolph及合作者共同在NIPS上發表了一篇論文,將卷積神經網路和增強學習結合起來應用於圍棋問題研究。但當時對這些技術的理解還不夠深入,而且那時的計算機限制了可以被訓練的卷積神經網路的規模和複雜性。近期,多倫多大學的博士生Chris Maddison與Google DeepMind的研究者在ICLR 2015上共同發表了一篇論文,文章中提到,用比賽視訊資料庫訓練過的卷積神經網路能夠在預測走法上擁有優秀表現。愛丁堡大學Amos Storkey團隊發表在ICML上的論文同樣體現出這個結果。許多研究者開始相信,或許深度學習和卷積神經網路真正能夠在圍棋上有所作為。Amos Storkey說:「圍棋是由棋盤上的各種模式來驅動,深度神經網路非常擅長從棋盤的各種模式中進行歸納總結,因此非常合適下圍棋。」 這就是促使Yuandong將第一版黑暗森林釋出在KGS伺服器上的原因,此後,一個更加先進的版本很快攀升到了KGS伺服器上的第三名,遠好於之前的研究。這項排名要好於大多數開源程式,即便是人類棋手,也需要花費幾年時間才能達到這個水平。人類棋手喜歡和它對弈的原因在於它的走法非常像人類棋手。但同時它又非常擅長作戰策略。贏下區域性和策略有關的戰爭有時需要非常具體的探索,而非單純的模式識別。
很明顯,通過將卷積神經網路和蒙特卡洛樹搜尋的結合可以提升程式在策略方面的能力。在過去五年中,計算機圍棋程式通過蒙特卡洛樹搜尋取得了很大進步。蒙特卡洛樹搜尋是一種應用於計算機國際象棋程式中的樹形搜尋方法的「隨機」版本。INRIA的法國研究者團隊第一次提出了蒙特卡洛樹搜尋。之後,這種方法很快在幾個最好的計算機圍棋團隊中流傳開來,並變成開發頂級圍棋機器人所需要的標準方法。 今天釋出的新論文描述了DarkForest的最新版本,被稱作黑暗森林3,它使用了卷積神經網路和蒙特卡洛樹搜尋的結合。這個程式已經在KGS伺服器上運營了一個多月,並取得了成人組第五的排名。這個排名意味著它已經成為全美國最好的前100名選手之一,也步入了世界最頂尖圍棋機器人之列。
有趣的是,這個專案是由我們一個小團隊僅花了幾個月時間開發出來的,沒有投入任何圍棋專家資源(當然,除了比賽錄影資料庫)。這是對機器學習威力的一次偉大證明。 接下來明智的選擇是將卷積神經網路和蒙特卡洛樹搜尋與增強學習結合起來,就像Nicol Schraudolph的開創性研究。使用增強學習的優勢在於可以讓機器自己與自己對戰連續玩很多次遊戲,自己訓練自己。這個想法可以追溯到Gerry Tesauro的「NeuroGammon」,一個二十世紀九十年代的計算機西洋雙陸棋程式,它將神經網路和增強學習結合了起來,並打敗了這款遊戲的世界冠軍。我們知道,世界範圍內的幾個團隊正在積極研究這一系統。我們的系統仍處在開發中。
Yann LeCun最後的結尾非常有深意:Facebook對研究的態度素來是「儘早釋出,時常釋出」,以此詮釋開源軟體世界頗受歡迎的座右銘。我們的圍棋機器人系統已經運營在KGS伺服器上,我們的論文已於早些時候發表在 arXiv.org。我們認為,當研究團隊彼此迅速交換研究成果並以彼此研究為基礎來推進研究時,科學會進步的更快。
谷歌和Facebook的圍棋軍備之爭
谷歌和Facebook正在開展一場破解圍棋的演算法競賽。此前,Facebook一名研究員Rob Fergue認為,「圍棋就是高階人工智慧的目標。」同時他也承認,Facebook此舉至少在小範圍內是在與谷歌進行競爭。谷歌的圍棋研究令人印象深刻。
如今,谷歌和Facebook使用深度學習來識別網路圖片中的人臉;計算機能夠識別出我們的語音命令;可以將一種語言翻譯成另一種;有時甚至能夠理解人類的自然語言。
這些技術都依賴於深度神經網路。如果你將足夠多的關於樹木的照片輸入進去,它們就能學會識別出一棵樹。如果輸入足夠多的對話,它們就能學會如何進行一段得體的對話。如果輸入足夠多的圍棋走法,它們就能學會下圍棋。 「圍棋是由棋盤上的各種模式來驅動,深度神經網路非常擅長從棋盤的各種模式中進行歸納總結,因此非常合適下圍棋。」愛丁堡大學教授 Amos Storkey表示。他正在使用深度神經網路來處理圍棋問題,就像谷歌和Facebook所做的那樣。
他們相信這些神經網路最終能夠縮小機器和人類之間的差距。在下圍棋時,即使是最高段的棋手也無法檢查出每一步走法所帶來的所有結果。他們往往是基於盤面來進行決策。藉助於深度學習,研究者就可以對這種方法進行復制。將成功走法的圖片輸入到神經網路中,從而幫助機器掌握每一次成功走法的模樣。「這種方法並不是希望找出最優走法,而是學習人類的下棋風格,然後對人類棋手進行有效的複製。」Storkey說到。 谷歌和Facebook交戰過程如下(美國當地時間): 1)2015年11月,Facebook在Arxiv發表論文,提到了一種將蒙特卡洛數搜尋與深度學習相結合的方法,這套系統在與人類棋手的比賽中絲毫不落下風,公司表示,它甚至能夠表現出人類般的下棋風格。畢竟,這套系統是從人類棋手的棋路中進行學習的。RÉMI COULOM Coulom稱這項結果「非常驚人」。 2)2015年12月初,谷歌DeepMind創始人Hassabis在接受視訊採訪被問到「或許你們會在圍棋上有所突破?」Hassabis笑著說:「我現在不能談論這件事,但是幾個月後,我相信會出現一個大驚喜。」 3)2016年1月26日,Facebook對去年11月發表的論文《Better Computer Go Player with Neural Network and Long-term Prediction》進行了更新,Yann LeCun在個人Facebook主頁發表長篇宣告。 4)2016年1月27日,谷歌DeepMind在《Nature》發表論文。