5300億!巨型語言模型參數每年暴漲10倍,新「摩爾定律」要來了?
前不久,微軟和英偉達推出包含5300億參數的語言模型MT-NLG,這是一種基于transformer的模型,被譽為「世界上最強,最大的語言生成模型」。
不過,這真的是一件值得歡欣鼓舞的事情嗎?

大腦的深度學習研究人員估計,人類大腦平均包含860億個神經元和100萬億個突觸。但不是所有的都用于語言。有趣的是,GPT-4預計將有大約100萬億個參數。
兩個「100萬億」。
這會是一個巧合嗎?我們不禁思考,建立與人腦大小差不多的語言模型是否是一個長期可行的方法?
當然了,經過數百萬年的進化,我們的大腦已經成為了一個非常了不起的設備,而深度學習模型才發展了幾十年。誠然,我們的直覺告訴我們,有些東西不能夠通過計算來衡量的。
是深度學習,還是「深度錢包」?在龐大的文本數據集上訓練一個5300億個參數模型,無疑需要龐大的基礎設施。
事實上,微軟和英偉達使用數百臺DGX-A100的GPU服務器,每臺售價高達19.9萬美元,再加上網絡設備、主機等成本,任何想要重復這個實驗的人都必須花費大約1億美元。

嚴謹地來看,哪些公司有業務例子可以證明在深度學習基礎設備上花費1億美元是合理的?或者1000萬美元?如果設計出來,那這些模型是為誰而設計的呢?
GPU集群:散熱、環保都成問題實際上,在GPU上訓練深度學習模型是一項十分費力的事情。
據英偉達服務器參數表顯示,每臺英偉達 DGX A100服務器最高能耗為6.5千瓦。當然,數據中心(或者服務器)也至少需要同樣多的散熱設備。

除非你是史塔克家族的人,需要拯救臨冬城,否則散熱將成為一大難題。
而且,隨著公眾對氣候和社會責任問題的意識增強,公司還需要考慮他們的碳足跡問題。
馬薩諸塞大學2019年的一項研究「用GPU訓練BERT,其碳足跡大致相當于進行一次橫跨美國的飛行」。

而BERT-Large的參數數量更是高達3.4億,訓練起來的碳足跡究竟有多大?恐怕只是想想都害怕。

所以,我們真的應該為MT-NLG模型的5300億個參數感到興奮嗎?。用這么多參數和算力換來的基準測試性能改進,值得付出這些成本、復雜度和碳足跡嗎?
大力推廣這些巨型模型,真的有助于公司和個人理解和擁抱機器學習嗎?
而如果,我們把重點放在可操作性更高的技術上,就可以用來構建高質量的機器學習解決方案。比如下面這些技術:
使用預訓練模型絕大多數情況下,并不需要定制模型體系結構。
一個好的起點是尋找那些已經為能為你解決問題的(比如,總結英語文本)預訓練模型。
然后,快速嘗試幾個模型來預測數據。如果參數表明,某個參數良好,那么就完全可以了。
如果需要更準確的參數,那就嘗試微調模型 (下面會有詳細介紹)。
使用小模型
在評估模型時,應該盡量選擇能夠提供所需精度的最小模型。這樣做預測速度更快,訓練和推理所需要的硬件資源也更少。
算力昂貴,能省就省。
實際上,現在的機器學習模型越來越小,也早已不是什么新鮮事了。熟悉計算機視覺的人都會記得 2017年SqueezeNet 的問世,與 AlexNet 相比,SqueezeNet的規模縮小了98%,同時在精度表現上與AlexNet不相上下。
除了計算機視覺領域,NLP社區也在努力縮小模型的規模,其中大量使用了知識蒸餾等遷移學習技術。其中最出名的可能就是對谷歌BERT模型的改進型DistilBERT。
與原始 BERT 模型相比,DistilBERT保留了97%的語言理解能力,同時模型體積縮小了 40%,速度提高了60%。相同的方法已應用于其他模型,比如 Facebook 的 BART。
最近來自「Big Science」項目的最新模型也令人印象深刻。如下圖所示,這些項目中的 T0 模型在許多任務上都優于 GPT-3的性能,但模型大小只有GPT-3的1/16。

微調模型
如果需要在一個高度專門化領域使用模型,大可不必從頭開始訓練模型,這時應該對模型進行微調,也就是說,僅在自己的數據集上訓練幾個時期。
實際上,微調模型也是遷移學習的一種方式,目的還是節約資源,能省就省!
使用遷移學習的好處不少,比如:
- 需要收集、存儲、清理和注釋的數據更少
- 實驗和數據迭代的速度更快
- 獲得產出所需的資源更少
換句話說就是:省時、省錢、省資源!
使用云基礎設施
云計算企業知道如何構建高效的基礎設施。研究表明,基于云的基礎設施往往比替代方案能效更高、碳足跡更淺。Earth.org 表示,雖然云基礎設施目前并不完美,但仍然比替代方案更節能,可以促進對環境有益的服務,推動經濟增長。”
確實,在易用性、靈活性和「即用即付」方面,云當然有很多優勢。如果實在負擔不起自購 GPU,何不嘗試在 Amazon SageMaker(AWS 的機器學習托管服務)上微調模型呢?
優化模型從編譯器到虛擬機,軟件工程師長期以來一直使用工具來自動優化硬件代碼。
然而,和軟件行業相比,機器學習社區仍在為這個問題苦苦掙扎,這是有原因的。最重要的是,對機器學習模型的進行優化是一項極其復雜的任務,其中涉及以下技術和條件:
- 硬件:大量面向加速訓練任務(Graphcore、Habana)和推理任務(Google TPU、AWS Inferentia)的專用硬件。
- 剪枝:刪除對預測結果影響很小或沒有影響的模型參數。
- 融合:合并模型層(比如卷積和激活)。
- 量化:以較小的值存儲模型參數(比如使用8位存儲,而不是32位存儲)
所幸,現在已經開始出現可用的自動化工具,如Optimum 開源庫和 Infinity,這是一種容器化解決方案,延時低至1毫秒,但精度可以與Transformer相當。
另一個「摩爾定律」要來了嗎?
在過去的幾年里,大型語言模型的規模每年都以10倍的速度增長。看起來,另一個「摩爾定律」就要誕生了。
原來的摩爾定律,現在的命運如何?關于「摩爾定律行將終結」的話題,早幾年就已經甚囂塵上。

但有一點是確切無疑的,如果機器學習沿著「模型巨大化」的路走下去,路可能會越走越窄。收益遞減、成本增加、復雜度增加,這些可以預見的問題,可能會在不遠的未來,把機器學習行業逼進死胡同。
這就是人工智能未來的樣子嗎?
希望不是。與其追逐萬億參數的巨大模型,不如把更多精力放在構建解決現實世界問題的、實用且高效的解決更好么?