從20世紀90年代開始,計算機已連續在國際象棋、跳棋、撲克和電視問答等游戲中打敗人類。但是,有一種游戲,專業的人類選手依舊勝過機器,那就是圍棋。這項具有2500多年歷史的棋盤游戲非常復雜,游戲雙方分別用黑色和白色的棋子圍住盡可能多的區域來戰勝對方,這對于計算機來說很難掌握。但是人類在圍棋領域唯我獨尊的時代貌似已經結束——谷歌DeepMind的研究人員近日宣稱他們開發出一種復雜的人工智能程序——融合了深度神經網絡技術和搜索技術,在歷史上首次打敗了人類的圍棋冠軍。
去年十月,DeepMind團隊在倫敦邀請了歐洲圍棋冠軍樊麾與他們的程序AlphaGo對弈。比賽是私下進行的,只有少數幾個觀眾在場,他們在19乘19的網格棋盤上進行比賽。 AlphaGo在與CrazyStone和Zen等高端的圍棋程序的495場對戰測試中只輸了一場。但是,與跟其他計算機比賽相比,與人類高手的對弈更具挑戰性,畢竟職業選手更勝一籌——他們有多年的比賽經驗,對于運籌博弈的方法有著某種直覺。因此,AlphaGo以5:0擊敗人類確實很了不起。
許多人曾預言,計算機若想打敗人類圍棋冠軍至少還需要10年時間。亞馬遜的著名軟件工程師David Fotland在AlphaGo擊敗人類冠軍后發出感慨,“這些年來,計算機性能的飛躍是出乎意料的,而且是空前的。”他也曾開發出一種計算機圍棋程序,但他并沒有參與此次AlphaGo的研究工作。對于AlphaGo的成功,David Fotland并沒有驚訝。
要想了解DeepMind研究人員如何創造出這項令人欽佩的程序,我們首先必須意識到下好圍棋對于計算機來說為什么這么難 (如果你并不了解圍棋的規則和技巧,下文將給你帶來清晰簡明的解釋)。第一,圍棋有無數種可能的走法和結果——用研究人員的話來說,就是圍棋中可能位置的數量比宇宙中原子的數目還要多。DeepMind的共同創始人Demis Hassabis是該項研究發起人之一,他將圍棋和象棋做了比較,發現在象棋中每一回合平均有20種可能的走法,然而在圍棋中,每一回合可能的走法卻有將近200種,整整多了將近9倍。這意味著如果一臺計算機想要探究圍棋中所有可能的走法和結果,需要超強大的計算能力,曾有科學家甚至覺得完成這項工作幾乎是不可能的。

JonathanSchaeffer是加拿大阿爾伯塔大學的一名計算機科學家,他解釋說,計算機很難掌握圍棋的另一個原因是,圍棋選手需要大量的知識,需要吸取以前的比賽經驗。對于象棋,你只需輸入少量的信息就可以自己建立一個強大的游戲程序,但在圍棋中卻無法做到。這是因為,在象棋中,計算機可以按照程序中預先編寫的規則走棋,但在圍棋中使用這種策略是不可行的。因為圍棋的每一步走棋是與棋局所呈現的格局息息相關的,而不是一系列可以有章可循的邏輯規則。
DeepMind團隊開發的系統解決了搜索量巨大和知識匱乏的問題。在《自然》雜志中(有興趣做深層探索的朋友可以一睹研究報告真容http://www.nature.com/nature/journal/v518/n7540/full/nature14236.html),他們表明是通過將搜索技術和深度學習技術結合,從而克服了這些困難。
為了解決知識問題,他們利用所謂的深度神經網絡技術——兩個13層深的邏輯關系網絡,包括成千上萬個連接點,類似于人類大腦中的神經連接。研究人員通過兩種方法來訓練這些關系網絡:對于單個關系網絡,他們向計算機展示了人類高手對決中超過3000萬種的走法(這可以使系統學到最佳玩家是如何獲勝的);對于兩個關系網絡,研究人員讓計算機同自己進行上千次博弈,這樣,它就能發現新的策略,并且自己學習這項游戲。這兩種訓練策略使計算機在游戲中可以識別不同的模式,并鑒定出如何走棋才能以最大的機會獲勝。
對于棘手的搜索問題,研究人員開發了一種特殊的搜索技術,稱為Monte Carlo Tree搜索。這種方法已經存在好多年了,并且被應用于其他計算機游戲,本質上是使系統利用統計數據作為捷徑來決定最佳的走棋,而不是根據給定的走法計算出每一種可能的結果(在圍棋中,如果這樣,計算機會永遠計算下去)。

DeepMind團隊使用的搜索技術和深度學習工具并不新奇。許多計算機圍棋程序已經在用Monte Carlo Tree搜索,神經網絡技術也已被使用。但是,使DeepMind團隊的AlphaGo程序如此先進的關鍵在于這些工具被結合到一起的方式,再加上深度神經網絡的高性能。主要的新奇之處在于他們如何將這些不同的因素組合到一起——在這方面,他們的做法很有創新性。跟人們以前的做法相比,這種方法更簡單,更全面,而且更優雅,這是一個巨大的飛躍。也正是因此,在與樊麾的比賽中,AlphaGo獲得了很大的優勢——計算機5:0獲勝。
盡管不是所有人都關心計算機打敗人類圍棋冠軍,因為他們并沒有洞察到這一進步在其他領域也很重要。研究人員按照通用方法建立了該系統,而不是僅僅適用于圍棋。他們打算最終將這些技術應用到重要的現實問題中。該項目的參與人Hassabis說:“我們希望有一天它們可以盡力幫助人們解決一些社會上最艱難、最緊迫的問題,從氣候建模到復雜的疾病分析。” Yoshua Bengio說該程序在電腦對話中也可能會有重要的應用,而且在將來它還可能用來解決一些抽象的社會問題,這些問題可以通過游戲的方式來表述,像國家政治問題或者國際氣候協商。
但是,AlphaGo的當務之急是如何打敗全球最優秀的圍棋選手李世石,他們之間的比賽將于下個月在韓國首爾舉行。盡管AlphaGo在與樊麾的對決中表現出眾,但Schaeffer和Fotland仍舊認為李世石將會贏得比賽。“我覺得人類職業選手會勝出,” Fotland說,“但是,面對如此強大的圍棋程序,我相信人類高手會大吃一驚。”到現在為止,依舊有一部分人堅信人類選手會贏得這場比賽。3月9日鹿死誰手,讓我們拭目以待吧!
0 篇文章
如果覺得我的文章對您有用,請隨意打賞。你的支持將鼓勵我繼續創作!