選單

深度學習的回報遞減,改進的成本正在變得不可持續

編譯 | 蘿蔔皮

深度學習現在有許多普遍的技術應用,比如用於語言翻譯、預測蛋白質摺疊、分析醫學掃描以及玩圍棋等複雜的遊戲等。21世紀初機器學習技術還鮮為人知,而近年來機器學習在各個領域所取得的成就,使該技術逐漸成為廣為人知的主流技術。

深度學習的回報遞減,改進的成本正在變得不可持續

深度學習的成名較晚,彷彿是一項新技術,然而它的起源卻可以追溯到計算機發展初期。1958 年,當大型計算機充滿房間並在真空管上執行時,受大腦神經元之間互連的知識啟發,康奈爾大學的 Frank Rosenblatt 設計了第一個人工神經網路;他將其描述為「模式識別裝置」。但 Rosenblatt 的想法遠遠超過了他那個時代的硬體承載能力——他本人也清楚這一點。甚至他的就職論文也被迫承認神經網路對計算能力的貪婪需求,並不得不哀嘆「隨著網路中連線數量的增加……傳統數字計算機的負擔很快就會變得過重。」

Rosenblatt 的相關報道:https://news。cornell。edu/stories/2019/09/professors-perceptron-paved-way-ai-60-years-too-soon

幸運的是,這種人工神經網路後來被重新命名為「深度學習」(當它們包含額外的神經元層時)。幾十年間,隨著摩爾定律和計算機硬體的改進,計算機在一秒鐘內可執行的計算數量,增加了大約 1,000 萬倍。因此,在 20 世紀後期,當研究人員重返深度學習時,他們擁有了足以應對挑戰的工具。

有了這些更強大的計算機的支援,使具有更多連線和神經元的網路可以被構建,進而獲得對複雜現象進行建模的強大能力。研究人員在將深度學習應用於新任務時,利用這種能力打破了各類人類記錄。

雖然深度學習的興起是飛速的,但它未來的道路依舊是坎坷的。就像最初的 Rosenblatt 一樣,今天深度學習的研究人員正不斷逼近當前硬體計算可實現的極限。要了解為什麼這一挑戰將重塑未來機器學習的發展佈局,必須首先了解深度學習為何如此成功,以及完成這些成就需要付出什麼代價。

深度學習

是人工智慧長期趨勢的現代體現,該趨勢已從基於專家知識的精簡系統轉向靈活的統計模型。早期的人工智慧系統是基於規則的,應用邏輯和專家知識來得出結果。後來的系統結合學習來設定其可調引數,但這些通常數量很少。

今天的神經網路也學習引數值,但這些引數是這種計算機模型的一部分——如果它們足夠大——它們將成為通用函式逼近器,這意味著它們可以擬合任何型別的資料。這種無限的靈活性是深度學習可以應用於如此多不同領域的原因。

神經網路的靈活性來自於將許多資料輸入模型並讓網路以多種方式將它們組合起來。這意味著輸出不會是應用簡單公式的結果,而是非常複雜的關聯結果。

例如,當尖端的影象識別系統 Noisy Student 將影象的畫素值轉換為影象中物件的機率時,它使用了具有 4。8 億個引數的網路。確定如此大量引數值的訓練更加引人注目,因為它僅使用 120 萬張標記影象完成。

深度學習模型是過度引數化的,它們的引數多於可用於訓練的資料點。傳統上,這會導致過度擬合,模型不僅會學習一般趨勢,還會學習訓練資料的隨機變化。深度學習透過隨機初始化引數,使用隨機梯度下降的方法迭代調整引數集,從而更好地擬合數據同時避免資料陷阱。令人驚訝的是,此過程已被證明可以確保學習到的模型具有良好的泛化能力。

靈活的深度學習模型已經成功應用於機器翻譯領域。幾十年來,軟體一直被用於將文字從一種語言翻譯成另一種語言。這個問題的早期方法使用了語法專家設計的規則。但是,隨著更多文字資料在特定語言中使用,進而可以應用統計方法——諸如最大熵、隱馬爾可夫模型和條件隨機場等。

最初,對每種語言最有效的方法因資料可用性和語法特性而異。例如,最初在翻譯烏爾都語、阿拉伯語和馬來語等語言時,基於規則的方法優於統計方法。如今,所有這些方法都被深度學習所超越,深度學習幾乎在任何應用到它的地方都證明了自己的優越性。

然而,就深度學習而言,有一個好訊息和一個壞訊息。好訊息是深度學習提供了巨大的靈活性;壞訊息是這種靈活性帶來了巨大的計算成本。

深度學習的回報遞減,改進的成本正在變得不可持續

圖示:推斷近年來的收益可能表明,到 2025 年,為識別 ImageNet 資料集中的物件而設計的最佳深度學習系統的錯誤水平應該降低到僅 5% 。但是訓練這樣一個未來系統所需的計算資源和能源將是巨大的,導致排放的二氧化碳與紐約市一個月產生的二氧化碳一樣多了。(來源:網路)

深度學習的靈活性適用於所有統計模型:要將效能提高 k 倍,必須至少使用 k^2 個以上的資料點來訓練模型。計算成本的第二部分明確來自過度引數化。一旦考慮到,這將產生至少 k^4 改進的總計算成本。指數中的那個小 4 非常昂貴:例如,10 倍的改進至少需要增加 10,000 倍的計算量。

為了使靈活性與計算之間的權衡更加生動,請考慮這樣一個場景:醫生試圖預測患者的 X 射線是否顯示癌症。進一步假設,如果在 X 射線中測量 100 個細節(通常稱為變數或特徵),就可以找到真正的答案。挑戰在於無法提前知道哪些變數是重要的,並且可能需要考慮大量候選變數。

解決這個問題的專家系統方法是讓熟悉放射學和腫瘤學的人指定他們認為重要的變數,讓系統只檢查那些變數。靈活系統方法是測試儘可能多的變數,讓系統自行確定哪些是重要的,需要更多資料並在此過程中產生更高的計算成本。

專家為其建立了相關變數的模型,能夠快速瞭解哪些值適合這些變數,並且所需計算量有限——這是它們早期流行的原因。但是,如果專家沒有正確指定應包含在模型中的所有變數,他們學習的能力就會停滯。相比之下,像深度學習這樣的靈活模型,前期效率較低,需要更多的計算量來匹配專家模型的效能。但是,透過足夠的計算(和資料),靈活的模型可以勝過專家試圖指定相關變數的模型。

顯然

,如果使用更多的計算能力來構建更大的模型,並用更多的資料訓練它們,那麼深度學習便可獲得更高的效能。但是這種計算負擔究竟會變得多麼昂貴,成本是否會高到阻礙進展?

為了以具體的方式回答這些問題,編者從 1,000 多篇深度學習研究論文中收集了資料,涵蓋影象分類、物件檢測、問答、命名實體識別和機器翻譯等領域。在這裡,將只詳細討論影象分類,但這些課程應用廣泛。

多年來,減少影象分類錯誤伴隨著計算負擔的巨大擴充套件。例如,在 2012 年,AlexNet 模型首次展示了在圖形處理單元(GPU)上訓練深度學習系統的能力,使用兩個 GPU 進行了五到六天的訓練。到 2018 年,另一個模型 NASNet-A 將 AlexNet 的錯誤率降低了一半,但它使用了 1,000 多倍的計算來實現這一目標。

對這種現象的分析還能夠將實際發生的情況與理論預期進行比較。理論告訴我們,計算需要至少以效能改進的四次方進行擴充套件。在實踐中,實際需求至少是九次方。

這個九次方意味著要將錯誤率減半,可能需要 500 倍以上的計算資源。這是一個毀滅性的高價。然而,這裡可能有一線希望。實踐中發生的事情與理論預測之間的差距可能意味著,仍有未發現的演算法改進可以大大提高深度學習的效率。

要將錯誤率減半,可能需要 500 倍以上的計算資源

正如前面所指出的,摩爾定律和其他硬體的進步極大地提高了晶片效能。這是否意味著計算需求的升級無關緊要?抱歉不行。在 AlexNet 和 NASNet-A 使用的 1,000 倍計算差異中,只有 6 倍的改進來自更好的硬體;其餘的來自使用更多的處理器或執行時間更長,從而產生更高的成本。

估計了影象識別的計算成本-效能曲線後,我們可以使用它來估計需要多少計算才能在未來達到更令人印象深刻的效能基準。例如,實現 5% 的錯誤率需要 10^20 億次浮點運算。

馬薩諸塞大學阿默斯特分校研究人員的重要工作,使我們能夠了解這種計算負擔所隱含的經濟成本和碳排放。面臨的問題是十分嚴峻的:訓練這樣一個模型將耗資 1,000 億美元,並且產生的碳排放量與紐約市一個月內產生的碳排放量一樣多。如果我們估計 1% 錯誤率的計算負擔,結果會更糟。

論文連結:https://arxiv。org/abs/1906。02243

推斷出這麼多數量級是否合理?是也不是。當然,重要的是要了解這些預測並不準確,儘管如此令人眼花繚亂的結果,它們並不需要傳達不可持續的整體資訊。如果我們假設研究人員會一直遵循這條軌跡走向如此極端的結果,那麼以這種方式推斷將是不合理的。面對飛漲的成本,研究人員要麼不得不想出更有效的方法來解決這些問題,要麼放棄對這些問題的研究,進展就會停滯不前。

另一方面,推斷我們的結果不僅合理而且很重要,因為它傳達了未來挑戰的重要性。這個問題的前沿已經變得明顯。當谷歌子公司 DeepMind 訓練其系統下圍棋時,估計耗資 3,500 萬美元。當 DeepMind 的研究人員設計一個系統來玩星際爭霸 II 影片遊戲時,他們故意沒有嘗試多種方法來構建一個重要的元件,因為訓練成本太高了。

在重要的機器學習智囊團 OpenAI,研究人員最近設計並訓練了一個廣受讚譽的深度學習語言系統 GPT-3,耗資超過 400 萬美元。即使他們在實施系統時犯了錯誤,他們也沒有修復它,只是在他們的學術出版物的補充中解釋說「由於訓練成本太高,重新訓練模型是不可行的。」

甚至科技行業以外的企業現在也開始迴避深度學習的計算費用。一家大型歐洲連鎖超市最近放棄了一個基於深度學習的系統,該系統顯著提高了其預測將購買哪些產品的能力。公司高管放棄了這一嘗試,因為他們認為培訓和執行系統的成本太高。

面對不斷上升的經濟和環境成本

,深度學習社群需要找到提高效能的方法,同時又不會導致計算需求激增。如果他們不這樣做,進展就會停滯不前。但不要絕望:我們已經做了很多工作來應對這一挑戰。

一種策略是使用專為高效深度學習計算而設計的處理器。這種方法在過去十年中被廣泛使用,因為 CPU 讓位於 GPU,在某些情況下,現場可程式設計門陣列和特定應用的 IC(包括谷歌的 Tensor 處理單元)。從根本上說,所有這些方法都犧牲了計算平臺的通用性來提高專業化的效率。但這種專業化面臨著收益遞減的問題。因此,長期收益將需要採用完全不同的硬體框架——可能是基於模擬、神經形態、光學或量子系統的硬體。然而,到目前為止,這些完全不同的硬體框架還沒有產生太大的影響。

要麼適應進行深度學習的方式,要麼面對進展緩慢得多的未來

另一種減少計算負擔的方法側重於生成神經網路,這些網路在實施時更小。這種策略在你每次使用它們時都會降低成本,但它通常會增加培訓成本(我們在本文中到目前為止已經描述過)。這些成本中哪一個最重要取決於具體情況。對於廣泛使用的模型,執行成本是投資總額的最大組成部分。對於其他模型——例如那些經常需要重新訓練的模型——訓練成本可能占主導地位。在任何一種情況下,總成本都必須大於培訓本身。因此,如果培訓成本太高,正如我們所展示的,那麼總成本也會很高。

這就是用於縮小實施規模的各種策略所面臨的挑戰:

它們沒有充分降低培訓成本。

例如,允許訓練一個大型網路,但在訓練過程中會降低複雜性;另一個涉及訓練一個大型網路,然後「修剪」掉不重要的連線。另一種方法是透過跨多個模型進行最佳化來找到儘可能高效的架構——這就是所謂的神經架構搜尋。雖然這些技術中的每一種都可以為實施提供顯著的好處,但對培訓的影響很小——當然不足以解決我們在資料中看到的問題。在許多情況下,它們使培訓成本更高。

一種可以降低培訓成本的新興技術稱為元學習。這個想法是系統學習各種資料,然後可以應用於許多領域。例如,與其構建單獨的系統來識別影象中的狗、影象中的貓和影象中的汽車,還可以對所有這些系統進行訓練並多次使用單個系統。

不幸的是,麻省理工學院的 Andrei Barbu 最近的工作揭示了元學習的難度。他的團隊表明,即使原始資料與你想要使用它的地方之間的微小差異,也會嚴重降低效能。他們證明,當前的影象識別系統在很大程度上取決於物體是以特定角度還是以特定姿勢拍攝的。因此,即使是識別不同姿勢的相同物體的簡單任務,也會導致系統的準確度幾乎減半。

加州大學伯克利分校的 Benjamin Recht 等人更加明確地說明了這一點;他表明,即使使用專門構建的新資料集來模仿原始訓練資料,效能也會下降 10% 以上。如果資料的微小變化導致效能大幅下降,那麼綜合元學習系統所需的資料可能會非常龐大。因此,元學習的巨大前景遠未實現。

另一種規避深度學習計算限制的可能策略是,轉向其他可能尚未發現或未被重視的機器學習型別。正如我們所描述的,圍繞專家的洞察力構建的機器學習系統在計算上可以更加高效;但如果這些專家無法區分所有影響因素,它們的效能就無法達到與深度學習系統相同的高度。正在開發

神經符號

方法和其他技術,以將專家知識和推理的力量與神經網路中常見的靈活性相結合。

論文連結:https://arxiv。org/abs/2012。05876

就像 Rosenblatt 在神經網路誕生之初所面臨的情況一樣,深度學習如今正受到可用計算工具的限制。面對對經濟和環境造成破壞的計算擴充套件,我們必須要麼適應深度學習的方式,要麼面臨進展緩慢的未來。

顯然,適應性是更可取的。未來一個巧妙的突破可能會找到一種方法,來使深度學習更高效或計算機硬體更強大,這將使我們能夠繼續使用這些非常靈活的模型。如果沒有,時代的鐘擺可能會轉向更多地依賴專家來確定需要學習的內容。

相關報道:https://spectrum。ieee。org/deep-learning-computational-cost

人工智慧

×

[ 生物 神經科學 數學 物理 材料 ]

「ScienceAI」關注人工智慧與其他前沿技術及基礎科學的交叉研究與融合發展

歡迎

註標星

,並點選右下角

點贊

在看