← 回到天際線 思考機器第 18 層 / 102

EP 862020-04-031:48:01

Silver 談自我對弈與圍棋的直覺

David Silver

AlphaGo 首席研究員談圍棋為何難倒搜尋法、自我對弈如何一路推進到 MuZero,也聊到人生的獎勵函數。

David Silver: AlphaGo, AlphaZero, and Deep Reinforcement Learning | Lex Fridman Podcast #86在 YouTube 看 ↗

重點6 條

  1. 童年就迷上程式與智慧:BBC 微電腦上寫出第一支程式,父親也重回校園念 AI 碩士;他在劍橋讀資工時開始認真想「電腦科學的終極目標,會不會就是打造出堪比人類智慧的東西」。
  2. 從手工 AI 轉向強化學習:遊戲業做的角色 AI 靠寫死規則取巧,他漸漸覺得那不是真正的智慧,於是回頭讀博士,把強化學習套用在圍棋上,第一個系統靠自我對弈學習,最後打敗了他自己。
  3. 圍棋難在無法量化的直覺:棋盤局面高達約 10 的 170 次方種,傳統搜尋派不上用場;真正卡住整個領域的是「怎麼一眼判斷誰佔優勢」這種直覺,沒人知道怎麼寫進程式。
  4. AlphaGo 到 AlphaZero:一路拿掉人類知識:從借助人類棋譜加速訓練,到完全靠自我對弈修正系統的「幻覺」持續變強,還無縫推廣到西洋棋、將棋,最後連規則都不用給的 MuZero。
  5. 首爾之戰教會他的事:直到人在首爾看到上億人線上收看,才發現自己對這件事重要性的估計差了好幾個數量級;第五局團隊一路以為系統又判斷錯了,結果它才是對的,這讓他相信要學會信任系統的判斷。
  6. 從獎勵函數聊到人生的意義:他先說這是超出專業的推想,再借用物理學家 Max Tegmark 的部分比喻,把宇宙、演化、大腦到智慧一層層拆成各自的「目標」;Lex 補上 AI 這一層,他順著推下去,把打造會自己達成目標的系統,說成是人類這個學習大腦的下一層。

時間軸26 段

01 04:00
童年寫程式

他在 BBC 微電腦上寫出第一支程式(讓自己的名字跑迴圈換顏色),覺得像玩樂高一樣可以無限發揮;父親後來也迷上這台機器,重回校園念 AI 碩士,教他寫 Prolog 查族譜。大學在劍橋讀資工時,他開始認真想電腦科學的終極目標會不會就是打造堪比人類智慧的東西。

02 08:10
遊戲業轉向 PhD

他在遊戲公司做了五年 AI,靠寫死的規則讓角色反應更快、抓對手漏洞取巧,漸漸覺得這不是真正的智慧;於是回頭讀博士,把強化學習套用在圍棋上,寫出的第一個系統靠自我對弈學習,最後打敗了他自己;Lex 問他有沒有一絲敬畏,他說感受到的是滿足,不是敬畏。那時深度學習還沒出現。

03 12:09
圍棋曾被視為不可能

他從小下棋、玩 Scrabble,大學接觸圍棋後被它的深度震住,很清楚知道自己再怎麼練也成不了職業高手,於是選擇打造一個能下得比他好的智慧。西洋棋、跳棋、西洋雙陸棋、黑白棋都被啟發式搜尋一一攻破,但當時有一筆百萬美元獎金要頒給能打贏職業棋士的圍棋程式,獎金在 2000 年到期沒人領走;那年最強的程式被一個九歲小孩讓 9 子打敗,一位電腦圍棋專家讓它 29 子也贏了。

04 15:51
直覺是圍棋的關鍵

圍棋的搜尋空間龐大,在其他領域很成功的方法到了圍棋都失靈;更關鍵的是,圍棋高手能一眼看出局勢、判斷大概誰會贏,那種直覺沒有人知道怎麼寫進程式。他意識到,破解這個問題得到的會是某種接近人類直覺的東西,不只是解決一款遊戲。

05 17:43
學習不能靠灌知識

他堅信系統要超越人類水準,不能只是模仿人類怎麼下棋,而要讓它自己理解;把知識硬塞進系統只會撞上「知識取得瓶頸」,塞得越多系統反而越脆弱。當年的圍棋程式是拼裝出來的,開局、官子、死活各自獨立的手工系統湊在一起,他想做的是回到第一原則,讓系統自己從結果學。

06 21:41
規則簡單複雜度驚人

19 路棋盤、輪流下子、圍地為主,規則簡單到有人猜想,就算跟外星生命語言不通,也能跟他們下圍棋,因為他們很可能也發現了同一套規則;但由這套簡單規則長出的策略深不見底,全球約五千萬人在下,是中國文人四藝之一。他也提到圍棋雙方子數幾乎相等,沒辦法像西洋棋一樣靠算子力分數判斷優劣,局面好壞全憑對地盤的直覺判斷;再加上圍棋大約有 10 的 170 次方種局面,傳統啟發式搜尋完全派不上用場。

07 25:39
RL 走進他的人生

離開遊戲業後,他空出一年重新思考方向,讀到 Sutton 與 Barto 合寫的強化學習教科書,整個人被說服這就是智慧該有的樣子;他直接寫信問 Sutton 願不願意指導博士,當時 Sutton 正在對抗重病,最後他還是去了 Alberta 的遊戲研究團隊。

08 28:19
RL 是智慧問題本身

他認為強化學習這個問題定義,本身就能涵蓋「智慧」的大部分意涵;至於要用什麼方法解它,他主張保持開放態度。他也簡述了 RL 的基本框架:agent 與 environment 互動、拿到 reward,以及用價值函數、策略、環境模型三種積木組合出不同解法。

09 35:59
深度學習萬用逼近

深度學習的威力在於它能逼近、學習任何函數;不管要表示的是價值函數、策略還是環境模型,神經網路都能處理,而且投入的運算與資料越多,系統就會持續變強、沒有天花板。他覺得強化學習本身能成功並不意外,因為人類智慧的存在就是一個證明;真正讓他意外的是,高維度神經網路訓練時幾乎不會卡在局部最優,這違反低維度的直覺,連理論都還沒完全跟上。

10 43:58
MoGo 與蒙地卡羅搜尋

不靠人給規則,而是讓程式隨機把棋局下到底、取平均勝率當局面評估,這個想法叫蒙地卡羅搜尋;Rémi Coulom 在 2006 年率先把它發展成蒙地卡羅樹搜尋,用在電腦圍棋上。Sylvain Gelly 寫的 MoGo 是第一個在 9 路小棋盤打到人類高手水準的程式,但這類程式後來都卡在業餘段位,離職業水準還很遠。

11 48:17
AlphaGo 的起點

在 DeepMind,他與一位研究夥伴、實習生 Chris Maddison 想問的科學問題是:深度學習能不能像辨識影像一樣看懂圍棋盤面?結果他們寫出的第一個純深度學習系統,完全不靠搜尋,就已經打到業餘段位高手的水準,跟當時最強的蒙地卡羅樹搜尋程式相當。

12 50:35
賭局與樊麾之戰

一位剛加入團隊、有段位的棋士,跟純深度學習系統打了一場內部賭局,系統贏了;那之後他確信有特別的事正在發生,團隊隨即擴編,幾個月內就打敗歐洲冠軍樊麾,寫下圍棋程式首次擊敗職業棋士的紀錄,團隊才開始評估要不要挑戰世界冠軍。

13 53:29
人類棋譜是權宜之計

早期用人類棋譜訓練,是為了先驗證深度學習做不做得到,但目標從一開始就是自我對弈;人類資料在當時幫他們理解系統、建立乾淨的表示法,後來才據此打造出更純粹、完全靠自我對弈的版本。

14 56:17
首爾之戰的震撼

他在電腦圍棋研究上投入了十幾年,直到人在首爾,看到滿街的跟拍與上億人線上收看比賽,才發現自己對這件事重要性的估計差了好幾個數量級;他也坦言那段時間有點可怕,開始擔心系統還存在的缺陷會被全世界看到。

15 59:11
賽前猜比分

賽前隊上比手指猜比分,他猜四比一,根據的是數據:AlphaGo 大約每五局會出現一次「幻覺」,一種會持續數十手的知識破洞;沒有幻覺時它強到超越人類水準,有幻覺就會犯錯,最後真的是四比一。

16 1:01:20
第 37 手

第一局,AlphaGo 大膽入侵李世乭的地盤,是史上第一次程式打敗世界冠軍;第二局出現後來被稱為「第 37 手」的一步棋,打破圍棋界既有的套路,棋手一度以為是操作員按錯,現在反而成了圍棋知識的一部分,他認為這就是電腦展現創造力的清楚例子。

17 1:03:32
雙劫與絕地反擊

第三局,李世乭從劣勢中做出歷史上電腦圍棋從未正確處理過的雙劫局面,AlphaGo 撐了過去;第四局李世乭下出一手扭轉局勢的妙棋,AlphaGo 的評估瞬間崩潰,那是它唯一輸的一局。第五局團隊一路以為系統又陷入幻覺,直到終局前幾手才發現它其實判斷正確,這件事教會他們要信任系統的判斷。

18 1:07:03
賽後體悟

Kasparov 在前一天的座談上說,自己當年輸給深藍時一度覺得是失敗,後來才明白那是 AI 的轉捩點;李世乭在賽後致詞說這場比賽替他打開了新視野,讓他重新愛上圍棋,後來他宣布退役,Silver 說他會被記得是最後一位打敗 AlphaGo 的人,下一版系統後來以 60 比 0 打敗其他強豪。

19 1:09:59
AlphaZero 與深藍

他說 Kasparov 認為 AlphaZero 在西洋棋上的突破比深藍更有意義,因為它是自己學出新想法的;他也在座談上聽說 Magnus Carlsen 研究 AlphaZero 的棋、改了棋風,等級分創下新高。他不想貶低前一代 AI 的成就,但深藍的評估函數是人類寫死的,這種做法有天花板,而且在多數真實世界問題裡行不通,因為多數領域的知識雜亂、難從專家身上萃取,甚至根本沒有。

20 1:14:18
AlphaZero 拿掉知識

AlphaZero 的核心構想是把人類知識徹底拿掉,讓系統只靠自我對弈學會一切;拿掉知識除了讓系統較不脆弱,也讓它更容易被搬到別的領域。這個想法是他在蜜月旅行時浮現的,但直到打完李世乭那場比賽後才有機會真正驗證;他刻意選擇拿不準結果的題目做實驗,第一步的 AlphaGo Zero 最後以 100 比 0 打敗前一版 AlphaGo。

21 1:21:05
自我對弈為什麼有效

他解釋,錯誤只能靠系統自己修正,AlphaGo 曾出現的幻覺正是要靠一輪輪自我對弈去發現並改正;他提出一個可證偽的預測:只要投入更多運算資源重跑這個演算法,新系統都能以 100 比 0 打敗前一版,而且至少在他有生之年會一直持續;圍棋有 10 的 170 次方種狀態,就算用宇宙裡 10 的 80 次方個原子造電腦也碰不到那個天花板。

22 1:25:49
推廣到 MuZero

AlphaZero 不用修改演算法,直接打敗世界最強的西洋棋程式,也在將棋上達到超人類水準,而且將棋是第一次跑就直接成功,完全沒調。再往後一步是 MuZero:系統連遊戲規則都不會被告知,靠反覆試誤自己建立起環境模型,在 Atari 上超越當時最好的成績,在圍棋、西洋棋、將棋上也一樣打到超人類水準。

23 1:31:54
創造力與 Joseki

他把創造力定義成發現某個先前未知、出乎意料、跳脫常規的東西,自我對弈說穿了就是不斷重複這種微小發現。AlphaGo Zero 訓練的 40 天裡,系統先重新發現了人類已經使用數千年的定式(joseki),後來又淘汰其中一些、下出人類不知道的新變化,如今職業棋士反過來研究這些新定式。

24 1:35:23
走出棋盤

已經有兩篇 Nature 論文,不同團隊各自把 AlphaZero 的方法用在逆合成路徑規劃與量子計算問題上,都打敗了當時最強的方法;Lex 問它有沒有機會用到機器人、自駕車這類安全攸關的領域,他說很希望這類想法將來能用在各種領域。

25 1:38:00
獎勵函數要清楚定義

他認為要理解或打造智慧,一定要先有明確、可評估的終極目標;子目標可以由系統自己產生,但終究要服務那個終極目標,否則等於放棄了對智慧的理解。

26 1:41:13
人生的獎勵函數是什麼

被問到「人生的獎勵函數是什麼」,他先說這是超出專業的推想,再借用物理學家 Max Tegmark 的部分比喻,把宇宙、演化、大腦到智慧一層層拆解:宇宙或許以讓熵極大化為目標,演化或許是達成這件事的機制,大腦與學習系統則是演化為了支援生存繁衍而發展出的能力。Lex 補上 AI 這一層,他順著推下去,把打造能替自己達成目標的系統,說成是人類這個學習大腦再往上的一層。