RéMI COULOM花費十年時間打造了一個比其他機器更聰明下圍棋的軟件。他把這個產品叫做Crazy Stone。在去年早些時候的東京圍棋擂臺賽上,這個軟件向世界頂尖的圍棋選手依田紀基發起了挑戰,Crazy Stone表現的還不錯。在Crazy Stone賴以成名的電圣比賽中, Crazy Stone打敗了人類選手,不過這場勝利也有一些限定規則。
過去二十多年里,機器在諸多智力游戲領域都超過了人類,現在我們幾乎可以假設機器能夠在所有領域戰勝人類。但圍棋一直是個例外。是的,這次Crazy Stone打敗了依田紀基。不過,依田紀基讓了四子。Crazy Stone 也僅僅是以 2.5 目取勝。這也是保證比賽公正的唯一辦法。
90年代中期,一個名叫Chinook的程序打敗了全世界頂尖的跳棋高手們。幾年后,IBM的深藍給當時國際象棋大師卡斯帕洛夫制造了很多麻煩,并最終戰勝了人類。進入21世紀,IBM又制造了Watson,這臺超級計算機在Jeopardy!比賽中擊敗所有人類選手。如今,機器在黑白棋、拼字游戲、西洋雙陸棋以及撲克等領域擁有不可撼動的領先地位。而在此次Crazy Stone打敗依田紀基之后,Coulom預測,如果機器不先手,機器在圍棋領域要真正戰勝人類還需要十年。
如今,這個預測看起來要提前了。很多人類的圍棋大師在比賽時更多地依靠直覺做出判斷,這與機器的判斷方式截然不同,要讓機器復制圍棋大師的「直覺」非常困難。但深度學習成為機器接近圍棋大師直覺的新武器。深度學習早已體現在谷歌、Facebook公司的諸多產品上,諸如在圖像識別和空間圖像抓取方面都有不俗表現,這些同樣也可以運用到圍棋上。
谷歌和Facebook正在開展一場破解圍棋的算法競賽。
正如Facebook 人工智能研究員 Yuandong Tian所言,圍棋是一種經典的人工智能命題——它因為極其困難而充滿吸引力。該公司認為解決圍棋這個難題不僅將改進目前用于社交網絡的人工智能技術,還將進一步證明人工智能的價值。另一位研究員Rob Fergue認為,「這就是高級人工智能的目標。」但他也承認,Facebook此舉至少在小范圍內是在與谷歌進行競爭。谷歌的圍棋研究令人印象深刻。
開發一個可以下圍棋的「大腦」
如今,谷歌和Facebook使用深度學習來識別網絡圖片中的人臉;計算機能夠識別出我們的語音命令;可以將一種語言翻譯成另一種;有時甚至能夠理解人類的自然語言。
這些技術都依賴于深度神經網絡。如果你將足夠多的關于樹木的照片輸入進去,它們就能學會識別出一棵樹。如果輸入足夠多的對話,它們就能學會如何進行一段得體的對話。如果輸入足夠多的圍棋走法,它們就能學會下圍棋。
「圍棋是由棋盤上的各種模式來驅動,深度神經網絡非常擅長從棋盤的各種模式中進行歸納總結,因此非常合適下圍棋。」愛丁堡大學教授 Amos Storkey表示。他正在使用深度神經網絡來處理圍棋問題,就像谷歌和Facebook所做的那樣。
他們相信這些神經網絡最終能夠縮小機器和人類之間的差距。在下圍棋時,即使是最高段的棋手也無法檢查出每一步走法所帶來的所有結果。他們往往是基于盤面來進行決策。借助于深度學習,研究者就可以對這種方法進行復制。將成功走法的圖片輸入到神經網絡中,從而幫助機器掌握每一次成功走法的模樣。「這種方法并不是希望找出最優走法,而是學習人類的下棋風格,然后對人類棋手進行有效的復制。」Storkey說到。
比深度學習更加深度
開發一臺能夠下贏圍棋的機器不僅僅是計算能力的問題。這就是Coulom的程序無法勝任的原因。Crazy Stone依賴于蒙特卡洛樹搜索,這是一套能夠從本質上對每一步走法的所有結果都進行分析的系統。所以,有些機器能夠非常精通西洋棋、國際象棋和其他棋類。它們比人類棋手看的更遠,所以能夠輕松的擊敗他們。但圍棋不是這樣,下圍棋有太多的可能性需要考慮。在國際象棋的任何一個回合,平均可能的走法有35種。但圍棋的走法卻能達到250種。并且在這250種可能的走法之后,還對應著另外250種可能,以此類推。因此,用蒙特卡洛數搜索去計算每一步走法所帶來的所有結果是不可能的。
但深度學習能解決這個問題,因為它具有一定的「直覺」,而非使用蠻力搜索(brute force)。上個月,Facebook在一篇發表于Arxiv的論文中提到了一種將蒙特卡洛數搜索與深度學習相結合的方法,這套系統在與人類棋手的比賽中絲毫不落下風,公司表示,它甚至能夠表現出人類般的下棋風格。畢竟,這套系統是從人類棋手的棋路中進行學習的。Coulom稱這項結果「非常驚人」。
Coulom說,這種混合方法將能最終破解這個問題。他說:「人們正在試著把兩種方法結合起來,好讓它們比單用一種方法的效果好。」他指出,Crazy Stone已經將一種機器學習與蒙特卡洛樹搜索相結合。只是他的方法不如Facebook采用的神經網絡那么復雜。
Facebook的論文展示了深度學習的力量,它還提醒人們,重大的人工智能任務最終會采用不止一種技術來解決。它們會在許多技術的結合下解決。深度學習能很好地完成許多事情。但是,它總是需要其他人工智能技術的幫助。
試錯
Facebook公布了它在圍棋上的研究后,谷歌很快做出了回應。谷歌頂級人工智能研究者、DeepMind創始人Demis Hassabis說,幾個月后他們就將公布一個與圍棋有關的「大驚喜」。谷歌拒絕透露更多信息,我們也不清楚這家公司已經取得了什么成果。Coulom說,谷歌不太可能這么快就做出一個可以擊敗頂級圍棋選手的產品,但是他相信谷歌將在這方面取得重要進步。
十有八九,這將依賴于多種技術的結合。我們猜測其中一個技術是所謂的「強化學習」(reinforcement learning)。深度學習擅長于感知(識別物體的外觀、聲音和行動),而強化學習算法能夠教機器根據這些感知來行動。
Hassabis是谷歌子公司DeepMind的CEO。這家公司位于英國劍橋,十分擅長于將深度學習與強化學習算法結合起來使用。今年早些時候,他的團隊發表了一篇論文,闡述如何使用這兩種技術來玩一個古老的Atari太空躲避類游戲——有時甚至能贏過專業的游戲測試師。該系統在深度神經網絡的幫助下理解了游戲的狀態(游戲界面在不同時刻的樣子),接著,強化學習算法用試錯法幫助該系統理解如何對這些狀態做出回應。從根本上說就是,計算機嘗試某個行動,如果這個行動帶來了獎賞(游戲中的點數),它就認為這個行動是好的。嘗試足夠多次之后,系統開始理解游戲的最佳玩法。對圍棋,也可以采用同樣的方法。
這種方法與標準的樹形搜索不同。樹形搜索也可以用來學習某個行動是好是壞,研究者會在真實比賽開始之前對它進行訓練。而在深度學習中,它會利用某些「知識」來玩游戲,而不是靠蠻力來解決問題。
如果他們要解決圍棋問題,那么,這些技術,機器統統都需要。強化學習可以汲取深度學習的營養。二者還可以與蒙特卡洛樹搜索相配合。破解圍棋是一個相當困難的問題,但現代人工智能正在接近答案。等到Hassabis公布這個「大驚喜」之時,我們就會知道,他們到底有多么接近答案了。