Compute Goes Brrr:重溫強化學習之父Sutton關於AI的70年慘痛教訓

導語:所以,“慘痛教訓”是對是錯?可能既不是這邊,也不是那邊。
譯者:AI研習社(Key

雙語原文鏈接:Compute Goes Brrr: Revisiting Sutton’s Bitter Lesson for Artificial Intelligence


回顧理查德·薩頓關於AI的慘痛教訓

就在不久前的過去,在一個與我們今天相差無幾的世界上,在達特茅斯學院,有這樣一個雄心勃勃的項目,志在彌合人類與機器智能之間的鴻溝。那是1956年。雖然達特茅斯夏季人工智能研究項目並不是第一個對思考機器的潛力提出設想的研究項目,但它的確爲這個領域取了一個公認的名字(“人工智能”),並建立了由具有影響力的研究者們所組成的一座“萬神殿”。在約翰·麥卡錫、馬文·閔斯基、克勞德·香農與納撒尼爾·羅切斯特共同撰寫的提案中,作者們的目標雖然仍不成熟,但他們的雄心壯志,即使今天看來也足夠奇妙有趣。

(我們)將致力於探索如何讓機器使用語言,形成歸納和概念,解決現在只有人類可以涉足的各種問題,並進行自我改良。我們認爲,如果一個經過精心挑選的科學家團隊在一起工作一個夏天,就可以在其中的一個或多個問題上取得重大進展。——《達特茅斯夏季人工智能研究項目提案》,1955年

最初的人工智能

從那時起到現在,關於人工智能的研究,經歷過車水馬龍的盛況,也不乏門可羅雀的冷落。在1956年,盛行的方法包括元胞自動機、控制論(cybernetics)、信息論。隨着時間的流逝,專家系統、形式推理、連接主義等方法也輪番亮相,各領風騷。

今日,AI的復興源於連接主義一脈相承的最新成果——深度學習。儘管一些新思想的確也在這個領域造成了相當大的衝擊(僅舉幾例:注意力機制、殘差連接、批量歸一化),大部分關於建立和訓練深度神經網絡的思想,早在上世紀八九十年代就已經被提出。然而今天,AI與AI相關的技術所扮演的角色,卻並不是任何在之前的“AI之春”中活躍的研究者所想象的那個樣子。例如,幾乎沒有人能預見到,廣告科技(adtech)和算法驅動的新聞供稿的盛行與社會反響。我也很確信,他們中的很多人會爲今天的社會如此缺少仿真機器人而感到失望。

約翰·麥卡錫,達特茅斯提案的共同作者,以及“人工智能”一詞的發明者。圖源

約翰·麥卡錫曾經抱怨過,落實到現實世界的AI技術,總是會變得不那麼吸引人,並會逐漸失去“AI”的名字。不過,這並非我們今天所見的現象——也許我們要歸咎於風險投資和政府基金,因爲是它們鼓勵大家去做了截然相反的事情。倫敦風險投資公司MMC的一份調查顯示,在2019年的歐洲,高達40%自稱的AI創業公司實際上並不將AI作爲它們業務的核心構成部分。

深度學習與AI研究之間的區別

深度學習時代與之前那些AI研究的那些暖春期之間的區別,似乎可以被歸結爲摩爾定律的S形曲線。許多人將“ImageNet時刻”視爲今天AI/ML復興的起點——一個名叫AlexNet的模型,以壓倒性優勢贏得了2012年ImageNet大規模視覺識別挑戰賽(ILSVRC)。AlexNet的結構,與在它20多年前就被提出的LeNet-5並沒有很大的差別。

擁有5個卷積層的AlexNet,比擁有3個的LeNet要稍大一些。它總共有8層,而LeNet有7層(其中2層是池化層)。而其中的重大突破,則在於圖形處理單元(GPU)以並行處理的方式實現最基礎的神經網絡運算(卷積與矩陣乘法),以及由李飛飛和她在斯坦福大學的實驗室所整理的、兼具規模和質量的ImageNet數據集

硬件加速的慘痛教訓

硬件加速的存在,在今天的深度學習從業者看來已經是理所當然。它是諸如PytorchTensorFlowJAX等熱門深度學習庫不可缺少的部分。深度學習研究者隊伍的壯大,和麪向AI/ML的商業需求的日益增長,構建了一個協同反饋的循環,從而推動了良好的硬件支持的形成。而當基於FPGA、ASIC甚至是光子或量子芯片的新型硬件加速器逐漸爲人們所用,各類熱門學習庫的軟件支持也自然緊隨其後。

ML硬件加速器與其賦予AI研究的更多算力所帶來的衝擊,被理查德·薩頓簡潔地概括在了一篇相(臭)當(名)出(昭)名(著)的短文《慘痛的教訓》中。文中,薩頓——這位曾(共同)撰寫過強化學習教科書的人物——卻聲稱AI研究者們所付出的所有勤奮努力和聰明才華,對於整個大框架幾乎沒有起到任何推動作用。根據薩頓的說法,當前AI進步的主要驅動者,是日益提升的算力被用於實現我們既有的簡單的學習和搜索算法的結果,而其中包含的硬編碼的人類知識只是所需的最低水平。而薩頓認爲,基於AI的方法應該是儘可能普適的方法,諸如無約束搜索和學習。

不出所料地,許多研究者都對薩頓所說的這個教訓有着截然不同的觀點。畢竟,他們中的許多人都將畢生心血投入到關於AI的各種技巧和理論基礎的研究上,以期推動AI發展的進程。許多AI研究者並不侷限於探索如何達到最先進的指標,而是希望學習所謂智能的本質,或更抽象地說,人類在整個宇宙中所扮演的角色。薩頓的表述似乎在支持這樣一個令人失望的結論,即:對理論神經科學、數學、認知心理學等學科的探索,對於推動AI的發展是毫無幫助的。

來自gwern.net的一張梗圖。以及另一張

關於“慘痛教訓”的多方質疑

對薩頓的這篇短文,值得關注的一些批評包括了機器人學家羅德尼·布魯克斯的《更好的一課》(譯註:原文標題爲“A Better Lesson”,與薩頓的標題“A Bitter Lesson”僅一字之差),牛津大學計算機科學教授西蒙·懷特森的一串推文,以及Shopify的數據科學家凱瑟琳·貝利的一篇博客。貝利反駁道,雖然薩頓對現代AI領域中那些僅侷限於追求指標的課題的論斷也許是對的,但這樣的短視卻完全沒有抓住關鍵。AI研究的終極目標,應該是從可利用的角度去理解智能,而不是對每個特定的指標優化問題都從頭訓練出一個新模型——這需要付出極大的金錢和精力。貝利認爲,現代的機器學習從業者,常常會誤將指標當作目標;研究者們之所以要造出超越人類的下棋機器或圍棋機器人,不是爲了他們自己,而是因爲這些工作對於人類智能的某些方面,可能是至關重要的例證。

布魯克斯和懷特森則反駁道,薩頓所提及的所有“不涉及人類先驗”的例子,實際上都是大量人類智慧的結晶。例如,如果沒有卷積層的平移不變性,那麼很難想象,深度神經網絡可以表現得像今天的殘差網絡(ResNet)一樣好。我們也可以發現當前網絡仍具有的很多不足,例如不滿足旋轉不變性或顏色不變性。此外,網絡結構和訓練細節也十分依賴人類的直覺和智慧。雖然比起人類工程師手動設計的模型,自動化的神經結構搜索(NAS)有時可以找到更好的網絡結構,但NAS算法最初的搜索範圍,也是從所有的可能性裏大大縮減後得到的——而縮小搜索範圍,一直是人類設計者所管轄的領域。

懷特森反駁道,搭建機器學習系統的人類智慧對解決複雜問題而言是必需,而不是阻礙。

對“慘痛教訓”發聲的批評人士中,也包括不少對深度學習整體都存有懷疑的研究者。深度學習依舊維持着令人印象深刻的龐大規模,投入算力的開支不斷膨脹,關於其能源消耗影響環境的擔憂也日益加重。而且,沒人能夠保證,在未來的某個時刻,深度學習不會撞到一堵難以逾越的南牆——也許很快了。

距離邊際收益無法再承受額外的支出,還有多久?深度學習的進步讓人喫驚的原因之一,在於模型本身是很難被人們理解的;一個模型的表現,是從具有數以萬億計的參數所構成的複雜系統中突然出現的產物。要預測或分析它們到底能做到什麼地步,相當困難。

也許我們所有人都應該認真記住符號人工智能(GOFAI)的經典,由斯圖爾格·羅素和彼得·諾維格合著的《人工智能:一種現代方法》裏的一課。在書中臨近最後一章的結尾,我們發現了以下的警告:在關於AI的研究中,我們偏愛的方法——對我們來說是深度學習——也許就像:

“…爬一棵樹就想登上月亮。人們可以一直穩步攀升,直到樹頂。”——《人工智能:一種現代方法》,斯圖爾格·羅素,彼得·諾維格

作者們在這裏換了一種方式表述了休伯特·德雷福斯在1992年所著的《計算機不能做什麼》中的一個比喻,而這常常會回到那個月球旅行的樹棲策略的比喻。儘管許多原始的智人曾經嘗試過這個方法,但實際上,要登上月亮,首先要從樹上下來,然後開始爲太空計劃紮紮實實地做準備。

結果不言自明

儘管這些批評聽起來頗有說服力,但它們留給別人的印象,也只比酸葡萄稍微好一點。當學術界還在被知識分子們無法滿足的“更多算力”的呼聲拖後腿的時候,大型私人研究機構的研究者們馬不停蹄地在各種項目裏登上頭條。而他們在工程上花費的心血,基本上都直接投入到了規模化當中。

而在這方面最臭名昭著的,莫過於OpenAI。

OpenAI在去年從非盈利組織轉變爲有限合夥企業,而它的核心人員從未掩飾過他們對於海量算力的偏愛。其創始人格雷格·布羅克曼與伊爾亞‧蘇茨克維,與許多蓬勃成長的公司裏的科技人士一樣,正是理查德·薩頓的“慘痛教訓”所形容的那樣的人。OpenAI爲衝刺里程碑所需的大量訓練任務,促使相應的基礎工程建設成爲一大亮點。

OpenAI Five打敗了(人類)Dota2世界冠軍隊伍OG,而它“僅僅”只用了45,000年——即每天進行大約250年的遊戲——來進行學習。在10個實時月內,它始終維持着800pefaflop/s-days(pfs-day)的算力。(譯註:1pfs-day指一天內可進行約10的20次方次加法或乘法運算)如果以世界最先進的性能功耗比,每瓦特進行170億次運算來計算,其能量消耗甚至超過1.1吉瓦時,即一個正常美國家庭92年的總用電量。

OpenAI的另一個高規格、高消耗的項目,則是他們的Dactyl,Shadow機器靈巧手項目。該項目的高光時刻,是機器手可以靈巧地解出魔方(雖然選擇解法的步驟是由一個確定的求解器完成的)。這一解魔方的項目,是建立在大約13,000年的模擬器經驗之上的。此外,DeepMind與之相當的AlphaStar(44天,384塊TPU訓練12個智能體,模擬進行了數千年的遊戲)或AlphaGo系列(AlphaGo Zero:約1800pfs-day)等項目,也需要在計算資源上投入大量開支。

但結果也會對不上

但在“慘痛教訓”所描述的潮流以外,也存在着這樣一個鮮明的反例:訓練遊戲智能體的AlphaGo系列,在取得更好的表現的同時,實際上所需的算力反而更少。AlphaGo系列的確是個很有趣的例子,因爲它無法融入“慘痛教訓”所提出的框架之內。沒錯,這個項目一開始確實調用了壓倒性的高性能計算資源用於訓練:AlphaGo使用了176塊GPU,並會在測試階段消耗4萬瓦特的能量。但從AlphaGo到MuZero之間的每一次更新換代,無論在訓練階段還是實際演示階段,都消耗了更少的能量以及算力。

實際上,在AlphaGo Zero對陣“鱈魚”——前深度學習時代最先進的下棋引擎——的時候,它的搜索次數比起StockFish要少得多,也要有針對性得多。雖然AlphGo Zero使用了蒙特卡羅樹搜索,但爲其“引路”的價值函數卻是由一個深度神經網絡所確定的。而“鱈魚”所用的Alpha-beta剪枝搜索法,則有着更廣的搜索範圍:在每個回合中,“鱈魚”所考慮的棋盤走位大概是AlphaGo Zero的400倍。

“慘痛教訓”應該比針對性方法表現更佳嗎?

你應該還記得,無約束搜索是薩頓曾列舉的一個普適方法的例子。而如果我們全盤接受“慘痛教訓”,那麼它的表現應該比一個搜索範圍更窄的針對性方法要來得更好。然而在AlphaGo系列的例子裏,我們卻發現:在每次更新換代(AlphaGo, AlphaGo Zero, AlphaZero, MuZero)之後,新方法比舊方法大體上都表現得更優秀,然而它們的學習和搜索都是更有針對性的。在Muzero中,原先用於搜索的基準真實遊戲模擬器,被換成了名字以Alpha開頭的所有前輩們。它們都有着一個學習好的深度模型,用於表示遊戲狀態、遊戲的動態數據,並進行預測。

設計一個學習好的遊戲模型,所需的人力遠超最初的AlphaGo。然而,Muzero卻拓展出了更通用的學習能力,在57個Atari遊戲上都達到了當前最先進的表現,而之前的那些Alpha模型只學習了象棋、將棋和圍棋。Muzero在每個搜索節點上所用的運算量比AlphaZero小了20%,並且也歸功於硬件設施的改進,在訓練過程中節省了4到5倍的TPU。

(被AlphaGo Zero打敗後)被醃製晾乾的鱈魚─.─||。圖源爲公共領域。

由Deepmind研發的AlphaGo系列遊戲機器人,是深度強化學習發展進程中的一個格外精妙的案例。而如果說,AlphaGo的研究隊伍能成功地在降低計算需求的同時,還持續實現性能和通用學習能力的提升,這不就直接反駁了“慘痛教訓”嗎?

若是如此,它又爲人們對通用智能的探索展示了什麼呢?根據許多人的說法,強化學習是實現通用人工智能(AGI)的一個出色的候選方案,因爲它與人和動物面向獎勵的學習模式相近。不過,也有其他形式的智能,同樣被一部分人認爲是通用人工智能的先驅的候選者。

語言模型:大規模模型的王者

薩頓的文章受到新一輪的重視(最近KDNuggets甚至將它列爲一篇頂級文章)的一大原因,是OpenAI萬衆矚目的GPT-3語言模型和應用程序接口(API)的發佈。GPT-3是一個參數多達1750億的Transformer,以略超10倍的數量,打破了之前由微軟的Turing-NLG保持的語言模型規模的記錄。GPT-3也比那個“危險得不能發佈”的GPT-2大了100倍以上。

GPT-3的發佈,是OpenAI的測試版API公告中的一個核心部分。這個API基本允許實驗人員使用GPT-3模型(但不能對參數進行微調),並調節一些可以操縱推理過程的超參數。可以理解,那些足夠幸運地用上了這個API的測試版用戶,抱着極大的激情打開了GPT-3——而結果也是令人印象深刻的。實驗人員開發了基於文本的遊戲、用戶界面的生成器、假博客,以及其他許多對這個大型模型的創新性應用。GPT-3的表現比GPT-2有顯著性的提高,而其間唯一的主要區別,就是規模。

語言模型規模逐漸擴大的趨勢,早在這些巨大的GPT出現之前就存在,並且也不侷限於OpenAI的研究。但直到《你只需要注意力》一文引入了第一個Transformer,這一趨勢才真正開始快速發展。在不知不覺間,Transformer的參數量已經平穩增長到數以百億計。假如在一年多之後,就有人提出一個上萬億參數的Transformer,那我也不會感到驚訝。Transformer看起來十分適合拓展到更大的規模,而它的結構也並不侷限於面向文本的自然語言處理。Transformer已經被應用於強化學習化學反應預測、生成音樂圖片等領域。關於Transformer模型所用的注意力機制的可視化解釋,參見此處

按當前的模型增長速度計算,不出數年,就會有人訓練出一個參數量堪比一個人類大腦中的所有神經元突觸數量(約100萬億)的模型。科幻作品充斥着這樣的例子:只要具有足夠大的規模和複雜度,機器就能獲得自我意識和通用智能。這會是Transformer不斷增長的終點嗎?

關於AI未來的答案,介於兩個極端之間

(圖片文字:只有傑出的研究科學家纔會以極端的方式行事!)

巨大的Transformer自然有着令人印象深刻的表現,而這一隨着規模而遞進的發展趨勢,也符合“慘痛教訓”所述。然而,將所有關於AI的工作都歸爲關於規模化的工作,是既不得體也不能令人滿意的。此外,隨之而來的能源需求也引起了人們的擔憂。雲端訓練,將許多大實驗室的研究者與低效的訓練過程相隔離。但在一間小辦公室或小公寓裏運行深度學習實驗的人們,則會身陷熱浪之中。這熱浪從他們的工作臺背後不斷冒出,一直提醒着他們(這訓練是多麼消耗能量)。

Steve Jurvetson修改的理查德·薩頓的肖像

(圖片文字:結束了,學者們,我有算力!)

以超參數搜索和架構搜索訓練一個龐大的NLP Transformer的碳排放量,可以輕易超過一個小型研究隊伍的所有成員進行所有其他活動所產生的總排放量。

我們知道,智能體是可以在持續以20瓦特(以及額外用於機體運轉的80瓦特)運行的“硬件”上運行的。如果你對此抱有懷疑,那麼你應該在自己的雙耳之間找到這一存在的證據。而與之相反的是,用於訓練OpenAI Five的能量消耗,卻比一個人類玩家活一輩子所需的熱量還要多,足以支撐他90年的壽命。

一個細心的觀察者會指出,一個人類大腦所需的20瓦特的能量消耗,並不代表整個學習算法的總消耗。然而,它的架構和運行規則,也是一個運行長達40億年的漫長的黑箱優化過程——其名爲“進化”——所得到的結果。如果將所有人類祖先的全部能量消耗一併加總,也許人類和機器遊戲玩家之間的對比可以顯得更有意義些。即便如此,在模型架構和訓練算法上的一切進步,與純粹的通用隨機搜索仍然相差甚遠。但在機器智能上由人類驅動的進步,當然比動物界之中智能的進化要快得多。

所以,“慘痛教訓”是對是錯?

一個顯然的,但也許對絕對主義者不夠友好的答案是:既不是這邊,也不是那邊。注意力機制、卷積層、乘法循環連接以及其他許多大模型中常見的機制,都是人類智慧的結晶。換句話說,它們是令人類思想推動學習任務運行得更好的前提,也對我們目前所見的一系列規模化的進步至關重要。故意忽略這些發明,一味地維護摩爾定律和“慘痛教訓”的話,便與純粹依靠手動編碼的專家知識一樣短視。

一個設計錯誤的優化過程,即使運行到宇宙的終結,也解不出一個問題。在享受規模化所帶來的紅利時,一定要將這一課銘記於心。

(圖片文字:你低估了我的算法!)


AI研習社是AI學術青年和AI開發者技術交流的在線社區。我們與高校、學術機構和產業界合作,通過提供學習、實戰和求職服務,爲AI學術青年和開發者的交流互助和職業發展打造一站式平臺,致力成爲中國最大的科技創新人才聚集地。

如果,你也是位熱愛分享的AI愛好者。歡迎與譯站一起,學習新知,分享成長。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章