AlphaGo 之父:AI 打破人類圍棋 3000 年來的盲點
原文刊登於 騰訊科技 ,INSIDE 獲授權轉載。
4 月 10 日 ,「人機大戰」的消息再次傳出,關於人類和 AI 的對抗再次牽動世界的神經。
「我會抱必勝心態、必死信念。我一定要擊敗 AlphaGo!」對於 5 月 23 日至 27 日與圍棋人工智慧程式 AlphaGo 的對弈,目前世界排名第一的中國職業九段柯潔放出豪語。然而,AlphaGo 之父卻說,「我們發明 AlphaGo,並不是為了贏得圍棋比賽。」
AlphaGo 之父德米斯 · 哈薩比斯(Demis Hassabis)近日在母校英國劍橋大學做了一場題為「超越人類認知的極限」的演講,解答了世人對於人工智慧,對於 AlphaGo 的諸多疑問——過去 3000 年裡人類低估了棋局哪部分的重要性?
AlphaGo 去年贏了韓國職業九段李世乭靠哪幾個絕招?今年年初拿下數位國際大師的神秘棋手 Master 究竟是不是 AlphaGo?為什麼圍棋是人工智慧難解之謎?
德米斯 · 哈薩比斯,DeepMind 創辦人,AlphaGo 之父,4 歲開始下西洋棋,8 歲時在棋盤上的成功促使他開始思考兩個至今令他困擾的問題:第一,人腦是如何學會完成複雜任務的?第二,電腦能否做到這一點?17 歲時,哈薩比斯就負責了經典模擬遊戲《主題公園》的開發,並在 1994 年發表。他隨後讀完了劍橋大學電腦科學學位,2005 年進入倫敦大學學院,攻讀神經科學博士學位,希望瞭解真正的大腦究竟如何運作,以此促進人工智慧的發展。2014 年他創辦公司 DeepMind,公司產品 AlphaGo 在 2016 年大戰圍棋冠軍李世乭事件上一舉成名。
哈薩比斯在當天的演講中透露了韓國棋手李世乭去年輸給 AlphaGo 的致命原因,他最後也提到了 AlphaGo 即將迎戰的中國棋手柯潔,他說,「柯潔也在網上和 AlphaGo 對決過,比賽之後柯潔說人類已經研究圍棋研究了幾千年了,然而人工智慧卻告訴我們,我們甚至連其表皮都沒揭開。異曲同工,柯潔提到了圍棋的真理,我們在這裡談的是科學的真理。」
以下為演講筆記全文:
非常感謝大家今天能夠到場,今天,我將談談人工智慧,以及 DeepMind 近期在做些什麼,我把這場報告命名為「超越人類認知的極限」,我希望到了報告結束的時候,大家都清晰瞭解我想傳達的思想。
1. 你真的知道什麼是人工智慧嗎?
對於不知道 DeepMind 公司的朋友,我做個簡單介紹,我們是在 2010 年於倫敦成立了這家公司,在 2014 年我們被 Google 收購,希望藉此加快我們人工智慧技術的腳步。我們的使命是什麼呢?我們的首要使命便是解決人工智慧問題;一旦這個問題解決了,理論上任何問題都可以被解決。這就是我們的兩大使命了,聽起來可能有點狡猾,但是我們真的相信,如果人工智慧最基本的問題都解決了的話,沒有什麼問題是困難的。
那麼我們準備怎樣實現這個目標呢?DeepMind 現在在努力製造世界上第一台通用學習機器,大體上學習可以分為兩類:一種就是直接從輸入資料和經驗中學習,沒有既定的程序或者規則可循,系統需要從原始數據自己進行學習;第二種學習系統就是通用學習系統,指的是一種演算法可以用於不同的任務和領域,甚至是一些從未見過的全新領域。大家一定會問,系統是怎麼做到這一點的?
其實,人腦就是一個非常明顯的例子,這是有可能的。關鍵在於如何透過大量的數據資源,尋找到最合適的解決方式和演算法。我們把這種系統叫做通用人工智慧,來區別於如今我們目前大部分人在用的,僅在某項領域發揮特長的狹義人工智慧,這種狹義人工智慧在過去的 40-50 年非常流行。
IBM 發明的深藍系統(DeepBlue)就是一個很好的狹義人工智慧的例子,他在上世紀 90 年代末期曾打敗了西洋棋冠軍蓋瑞 · 卡斯帕羅夫(Gary Kasporov)。如今,我們到了人工智慧的新的轉捩點,我們有著更加先進、搭配得更好的技術。
2、如何讓機器聽從人類的命令?
大家可能想問機器是如何聽從人類的命令的,其實並不是機器或者演算法本身,而是一群聰明的開發者智慧的結晶。他們與每一位西洋棋大師對話,汲取他們的經驗,把其轉化成程式碼和規則,建立了人類最強的西洋棋大師團隊。但是這樣的系統僅限於西洋棋,不能用於其他遊戲。對於新的遊戲,你需要重新開始編程。在某種程度上,這些技術仍然不夠完美,並不是傳統意義上的完全人工智慧,其中所缺乏的就是普遍性和學習性。我們想透過「加強學習」來解決這一難題。在這裡我解釋一下強化學習,我相信很多人都瞭解這個演算法。
首先,想像一下有一個主體,在 AI 領域我們稱我們的人工智慧系統為主體,它需要瞭解自己所處的環境,並盡力找出自己要達到的目的。這裡的環境可以指真實事件,可以是機器人,也可以是虛擬世界,比如遊戲環境;主體透過兩種方式與周圍環境接觸;它先透過觀察熟悉環境,我們起初透過視覺,之後也可以透過聽覺、觸覺等,我們也在發展多感官的系統;
第二個任務,就是在此基礎上,建模並找出最佳選擇。這可能涉及對未來的預期,想像,以及假設檢驗。這個主體經常處在真實環境中,當時間節點到了的時候,系統需要輸出目前找到的最佳方案。這個方案可能或多或少會改變所處環境,進一步驅動觀察的結果,並回 饋給主體。
簡單來說,這就是強化學習的原則,示意圖雖然簡單,但是其中卻涉及了極其複雜的演算法和原理。如果我們能夠解決大部分問題,我們就能夠搭建泛用人工智慧。這是因為兩個主要原因:首先,從數學角度來講,我的合夥人是一名博士,他建了一個系統叫「AI-XI」,用這個模型,他證明在電腦硬體條件和時間無限的情況下,建一個泛用人工智慧,需要的資訊。另外,從動物和人類等生物角度來講,人類的大腦是多巴胺控制的,它就在執行強化學習的行為。因此,不論是從數學的角度,還是生物的角度,強化學習是一個有效的解決人工智慧問題的工具。
3、為什麼圍棋是人工智慧難解之謎?
接下來,我要談談我們最近的技術,那就是去年誕生的 AlphaGo;希望在座的大家瞭解這個遊戲,並嘗試玩玩,這是個非常棒的遊戲。圍棋使用方形格狀棋盤及黑白二色圓形棋子進行對弈,棋盤上有縱橫各 19 條直線將棋盤分成 361 個交叉點,棋子走在交叉點上,雙方交替行棋,以圍地多者為勝。圍棋規則沒有多複雜,我可以在五分鐘之內教給大家。這張圖展示的就是一局已結束,整個棋盤布滿棋子,然後數一下你的棋子圈出的空間以及對方棋子圈出的空間,誰的空間大,誰就獲勝。在圖示的這場勢均力敵的比賽中,白棋一格之差險勝。
其實,要理解這個遊戲的最終目的非常難,因為它並不像西洋棋那樣,有著直接明確的目標,在圍棋裡,完全是憑直覺的,甚至連如何決定遊戲結束,對於初學者來說都很難。圍棋是個歷史悠久的遊戲,有著 3000 多年的歷史,起源於中國,在亞洲,圍棋有著很深的文化意義。孔子還曾指出,圍棋是每一個真正的學者都應該掌握的四大技能之一(琴棋書畫),所以在亞洲圍棋是種藝術,專家們都會玩。
如今,這個遊戲更加流行,有 4000 萬人在玩圍棋,超過 2000 多個頂級專家,如果你在 4-5 歲的時候就展示了圍棋的天賦,這些小孩將會被選中,並進入特殊的專業圍棋學校,在那裡,學生從 6 歲起,每天花 12 個小時學習圍棋,一週七天,天天如此。直到你成為這個領域的專家,才可以離開學校畢業。這些專家基本是投入人生全部的精力,去揣摩學習掌握這門技巧,我認為圍棋也許是最優雅的一種遊戲了。
就像我說的那樣,這個遊戲只有兩個非常簡單的規則,而其複雜性卻是難以想像的,一共有 10170(10 的 170 次方)種可能性,這個數字比整個宇宙中的原子數 1080(10 的 80 次方)還要多,是很難窮舉出圍棋所有的可能結果的。我們需要一種更加聰明的方法。你也許會問:為什麼電腦進行圍棋的遊戲會如此困難?儘管 1997 年 IBM 的人工智慧 DeepBlue(深藍)打敗了當時的西洋棋世界冠軍 Garry Kasparov,圍棋一直是人工智慧領域的難解之謎。我們能否做出一個演算法來與世界圍棋冠軍競爭呢?要做到這一點,有兩個大的挑戰:
一、搜尋空間龐大(分支因數就有 200 個),一個很好的例子,就是在圍棋中,平均每一個棋子有兩百個可能的位置,而西洋棋僅僅 20。圍棋的分支因數遠大於西洋棋。
二、比這個更難的是,幾乎沒有一個合適的評價函數來定義誰是贏家,贏了多少;這個評價函數對於該系統是重要的彎見。而對於西洋棋來說,寫一個評價函數是非常簡單的,因為西洋棋不僅是個相對簡單的遊戲,而且是實體的,只要數一下雙方的棋子,就能輕而易舉得出結論了。你也可以透過其他指標來評價西洋棋,比如棋子的機動性等。
所有的這些標準在圍棋裡都是不可能的,並不是所有的部分都一樣,甚至一個小小部分的變動,會整個改變格局,所以每一個小的棋子都對棋局有著重要的影響。最難的部分是,我稱西洋棋為毀滅性的遊戲,遊戲開始的時候,所有的棋子都在棋盤上了,隨著遊戲的進行,棋子被對方吃掉,棋子數目不斷減少,遊戲也變得越來越簡單。相反地,圍棋是個建設性的遊戲,開始的時候,棋盤是空的,下棋雙方再慢慢把棋盤填滿。
因此,如果你準備在中場判斷一下目前形勢,在西洋棋裡,你只需看看現在的棋盤,就能告訴你大致情況;在圍棋裡,你必須評估未來可能會發生什麼,才能評估現在的局勢,所以相比之下,圍棋難得多。也有很多人試著將 DeepBlue 的技術應用在圍棋上,但是結果並不理想,這些技術連一個專業圍棋手都打不贏,更別說世界冠軍了。
所以大家就要問了,連電腦操作起來都這麼難,人類是怎樣解決這個問題的?其實,人類是靠直覺的,而圍棋一開始就是一個靠直覺而非計算的遊戲。所以,如果你問一個西洋棋選手,為什麼這步這樣走,他會告訴你,這樣走完之後,下一步和下下一步會怎樣走,就可以達到什麼樣的目的。這樣的計劃,有時候也許不盡如人意,但是起碼選手是有原因的。
然而圍棋就不同了,如果你去問世界級的大師,為什麼走這一步,他們經常回答你直覺告訴他這麼走,這是真的,他們是沒法描述其中的原因的。我們透過用加強學習的方式來提高人工神經網路演算法,希望能夠解決這個問題。我們試圖透過深度神經網路模仿人類的這種直覺行為,在這裡,需要訓練兩個神經網路,一種是決策網路,我們從網上下載了上百萬的業餘圍棋遊戲,透過監督學習,我們讓 AlphaGo 模擬人類下圍棋的行為;我們從棋盤上任意選擇一個落子點,訓練系統去預測下一步人類將作出的決定;系統的輸入是在那個特殊位置最有可能發生的前五或者前十的位置移動;這樣,你只需看那 5-10 種可能性,而不用分析所有的 200 種可能性了。
一旦我們有了這個,我們對系統進行幾百萬次的訓練,透過誤差加強學習,對於贏了的情況,讓系統意識到,下次出現類似的情形時,更有可能做相似的決定。相反地,如果系統輸了,那麼下次再出現類似的情況,就不會選擇這種走法。我們建立了自己的遊戲數據庫,透過百萬次的遊戲,對系統進行訓練,得到第二種神經網路。選擇不同的落子點,經過信賴區間進行學習,選出能夠贏的情況,這個機率介於 0-1 之間,0 是根本不可能贏,1 是百分之百贏。
把這兩個神經網路結合起來(決策網路和值網路),我們可以大致預估出現在的情況。這兩個神經網路樹,透過蒙特卡羅演算法,把這種本來不能解決的問題,變得可以解決。我們網羅了大部分的圍棋下法,然後和歐洲的圍棋冠軍比賽,結果是 AlphaGo 贏了,那是我們的第一次突破,而且相關演算法還被發表在《自然》科學雜誌。
接下來,我們在韓國設立了 100 萬美元的獎金,並在 2016 年 3 月,與世界圍棋冠軍李世乭進行了對決。李世乭先生是圍棋界的傳奇,在過去的 10 年都公認為是最頂級的圍棋專家。我們與他進行對決,發現他有非常多創新的玩法,有的時候 AlphaGo 很難掌控。比賽開始之前,世界上每個人(包括他本人在內)都認為他一定會很輕鬆就打贏這五場比賽,但實際結果是我們的 AlphaGo 以 4:1 獲勝。圍棋專家和人工智慧領域的專家都稱這具有劃時代的意義。對於業界人員來說,之前根本沒想到。
4、棋局哪些關鍵區域被人類忽視了?
這對於我們來說也是一生僅有一次的偶然事件。這場比賽,全世界 28 億人在關注,35,000 多篇關於此的報導。整個韓國那一週都在討論這個話題,這真是一件非常美妙的事情。對於我們而言,重要的不是 AlphaGo 贏了這個比賽,而是瞭解分析他是如何贏的,這個系統有多強的創新能力。
AlphaGo 不只是模仿其他人類選手的下法,他在不斷創新。在這裡舉個例子,這是第二局的一個情況,第 37 步,這一步是我整個比賽中最喜歡的一步。在這裡,黑棋代表 AlphaGo,他將棋子落在了圖中三角標出的位置。為什麼這步這麼關鍵呢?為什麼大家都震驚了?
其實在圍棋中有兩條重要的分界線,從右數第三根線。如果在第三條線上移動棋子,意味著你將佔領這個線右邊的領域。而如果是在第四根線上落子,意味著你想向棋盤中部進軍,未來你會佔棋盤上其他部分的領域,可能和你在第三根線上得到的領域相當。
所以在過去的 3000 多年,人們認為在第三條線上落子和第四條線上落子有著相同的重要性。但是在這場遊戲中,大家看到在這第 37 步中, AlphaGo 落子在第五條線,進軍棋局的中部區域。與第四條線相比,這條線離中部區域更近。這可能意味著,幾千年來,人們低估了棋局中部區域的重要性。
有趣的是,圍棋就是一門藝術,是一種客觀的藝術。我們坐在這裡的每一個人,都可能因為心情好壞產生成千上百種的新想法,但並不意味著每一種想法都是好的。而 AlphaGo 卻是客觀的,他的目標就是贏得遊戲。
5、 AlphaGo 拿下李世乭靠哪幾個絕招?
大家看到在現在的棋局下,左下角那兩個用三角標出的棋子看起來好像陷入困境,而 15 步之後,這兩個棋子的力量擴散到棋局中心,一直延續到棋盤的右邊,使得這第 37 步恰恰落在這裡,成為一個獲勝的決定性因素。
在這一步上 AlphaGo 非常創新。我本人是一個很業餘的棋手,讓我們看看一位世界級專家 Michael Redmond 對這一步的評價。Michael 是一位 9 段選手(圍棋最高段),就像是功夫中的黑帶一樣,他說:「這是非常令人震驚的一步,看起來就像是一個錯誤的決定。」在即時模擬預測中,Michael 其實一開始把棋子放在另外一個地方,根本沒想到 AlphaGo 會走這一步。在這場比賽中, AlphaGo 還有許多像這樣的創新。在這裡,我特別感謝李世乭先生,其實在我們贏了前三局的時候,他陷入了劣勢。
那是三場非常艱難的比賽,尤其是第一場。因為我們需要不斷訓練我們的演算法, AlphaGo 之前打贏了歐洲冠軍,經過這場比賽,我們知道了歐洲冠軍和世界冠軍的差別。理論上來講,我們的系統也進步了。但是當你訓練這個系統的時候,我們不知道有多少是過度擬合的,因此,在第一局比賽結束之前,系統是不知道自己的統計結果的。所以,其實第一局,我們非常緊張,因為如果第一局輸了,很有可能我們的演算法存在巨大漏洞,有可能會連輸五局。但是如果我們第一局贏了,證明我們的加權系統是對的。
不過,李世乭先生在第四場的時候,回來了,也許壓力緩解了許多,他做出了一步非常創新的舉動,我認為這是歷史上的創新之舉。這一步迷惑了 AlphaGo,使他的決策樹進行了錯誤估計,一些中國的專家甚至稱之為「黃金一手」。透過這個例子,我們可以看到多少的哲理蘊含於圍棋中。這些頂級專家,用盡必生的精力,去找出這種黃金一手。其實,在這步, AlphaGo 知道這是非常不尋常的一步,他當時估計李世乭透過這步贏的可能性是 0.007%, AlphaGo 之前沒有見過這樣的落子方式,在那 2 分鐘,它需要重新搜尋決策計算。我剛剛已經提到過這個遊戲的影響:28 億人觀看,35000 篇相關文章的媒體報導,在西方,網路上的圍棋被一掃而空,我聽說 MIT(美國麻省理工學院)還有其他很多高中,有許多人新加入了圍棋社。
我剛才談到了直覺和創新,直覺是一種含蓄的表達,它是基於人類的經歷和本能的一種思維形式,不需要精確計算。這項決策的準確性可以透過行為進行評判。在圍棋裡很簡單,我們在系統輸入棋子的位置,來評估其重要性。 AlphaGo 就是在模擬人類這種直覺行為。創新,我認為就是在已有知識和經驗的基礎上,產生一種原始的,創新的觀點。 AlphaGo 很明顯的示範了這兩種能力。
6、神秘棋手 Master 就是 AlphaGo
那麼我們今天的主題是「超越人類認知的極限」,下一步應該是什麼呢?從去年三月以來,我們一直在不斷改進 AlphaGo,大家一定會問,既然我們已經是世界冠軍了,還有什麼可修改的?其實,我們認為 AlphaGo 還不是完美的,還需要做更多的研究。
首先,我們想要繼續研究剛才提到的和李世乭的第四局的比賽,來填充知識的空白;這個問題其實已經解決了,我們建立了一個新的 AlphaGo 分支系統,不同於主系統,這個分支系統是用來迷惑主系統的。我們也優化了系統的行為,以前我們需要花至少 3 個月來訓練系統,現在只需要一週時間。
第二,我們需要理解 AlphaGo 所採取的決定,並對其進行解釋; AlphaGo 這樣做的原因是什麼,是否符合人類的想法等等;我們透過對比人類大腦對於不同落子位置的反應以及 AlphaGo 對於棋子位置的反應,以期找到一些新的知識;本質上就是想讓系統更專業。我們在網路上與世界頂級的專家對決,一開始我們使用了一個假名(Master),在連勝之後被大家猜出是 AlphaGo。這些都是頂級的專家,我們至今已贏了 60 位大師了。如果你做個簡單的貝葉斯分析,你會發現 AlphaGo 贏不同對手的難易不一樣。而且, AlphaGo 也在不斷自我創新,比如說圖中右下角這個棋子(圓圈標處),落在第二條線,以往我們並不認為這是個有效的位置。實際上,韓國有的團隊預約了幾場遊戲,想研究其中新的意義和訊息。
柯潔,既是中國的圍棋冠軍,也是目前的世界圍棋冠軍,他才 19 歲。他也在網上和 AlphaGo 對決過,比賽之後他說人類已經研究圍棋研究了幾千年了,然而人工智慧卻告訴我們,我們甚至連其表皮都沒揭開。他也說人類和人工智慧的聯合將會開創一個新紀元,將共同發現圍棋的真諦。異曲同工,柯潔提到了圍棋的真理,我們在這裡談的是科學的真理。
那麼圍棋的新紀元是否真的到來了呢?圍棋史上這樣的劃時代事件曾經發生過兩次,第一次是發生在 1600 年左右的日本,20 世紀 30-40 年代的日本,日本一位當時非常傑出的圍棋高手吳清源提出了一個全新的關於圍棋的理論,將圍棋提升到了一個全新的境界。大家說如今, AlphaGo 帶來的是圍棋界的第三次變革。
7、為什麼人工智慧「下圍棋」強於「下西洋棋」?
我想解釋一下,為什麼人工智慧在圍棋界所作出的貢獻,要遠大於西洋棋界。如果我們看看當今的世界西洋棋冠軍芒努斯 · 卡爾森,他其實和之前的世界冠軍沒什麼大的區別,他們都很優秀,都很聰明。但為什麼當人工智慧出現的時候,他們可以遠遠超越人類?我認為其中的原因是,西洋棋更注重戰術,而 AlphaGo 更注重戰略。如今世界頂級的西洋棋程式再不會犯技術性的錯誤,而在人類身上,不可能不犯錯。
第二,西洋棋有著巨大的數據庫,如果棋盤上少於 9 個棋子的時候,透過數學演算法就可以計算出誰勝誰敗了。電腦透過成千上萬的迭代演算法,就可以計算出來了。因此,當棋盤上少於九個棋子的時候,下西洋棋時人類是沒有辦法獲勝的。
因此,西洋棋的演算法已經近乎極致,我們沒有辦法再去提升它。然而圍棋中的 AlphaGo,仍在不斷創造新的想法,這些全新的想法,在和真人對決的時候,頂級的棋手也可以把其納入到考慮的範疇,不斷提高自己。
就如歐洲圍棋冠軍樊麾(第一位與 AlphaGo 對陣的人類職業棋手)所說的那樣,在和 AlphaGo 對決的過程中,機器人不斷創新的下法,也讓人類不斷跳出自己的思維局限,不斷提升自己。大家都知道,經過專業圍棋學校 30 多年的磨練,他們的很多思維已經僵化,機器人的創新想法能為其帶來意想不到的靈感。我真的相信如果人類和機器人一起合作,能創造出許多不可思議的事情。我們的天性和真正的潛力會被真正釋放出來。
8、 AlphaGo 不為了贏得比賽又是為了什麼?
就像是天文學家利用哈伯望遠鏡觀察宇宙一樣,利用 AlphaGo,圍棋專家可以去探索他們的未知世界,探索圍棋世界的奧秘。我們發明 AlphaGo,並不是為了贏取圍棋比賽,我們是想為測試我們自己的人工智慧演算法建利一個有效的平台,我們的最終目的是把這些演算法應用到真實的世界中,為社會所服務。
當今世界面臨的巨大挑戰之一,就是過量的資訊和複雜的系統,我們怎麼才能找到其中的規律和結構,從疾病到氣候,我們需要解決不同領域的問題。這些領域十分複雜,對於這些問題,即使是最聰明的人類也無法解決的。
我認為人工智慧是解決這些問題的一個潛在方式。在如今這個充斥著各種新技術的時代,人工智慧必須在人類道德範圍內開發和利用。本來,技術是中性的,但是我們使用它的目的和使用它的範圍,大大決定了其功能和性質,這必須是一個讓人人受益的技術才行。
我自己的理想是透過自己的努力,讓人工智慧科學家或者人工智慧助理和醫藥助理成為可能,透過該技術,我們可以真正加速科技的更新和進步。
留言列表