大模型正在改變深度機器學習,訓練大模型的工程技術挑戰(zhàn)在哪里?

崔鵬CP2023-11-28 08:23

早在2020年,騰訊開始研發(fā)支持大模型訓練和推理的工程技術底座時,初衷只是為了滿足騰訊廣告的需求,想通過提升參數(shù)量的方式,來提高廣告模型推理預測的能力。

在OpenAI將生成式大模型帶入主流視野之后,幾乎所有頭部廠商都在研究和推出自己的大模型業(yè)務。今年9月騰訊對外推出自研的通用大模型“混元大模型”,成為國內頭部科技企業(yè)中最后一個對外發(fā)布大模型業(yè)務的公司。

推動大模型應用落地是一項頗為復雜的工程,不僅要考慮如何降低訓練和精調的成本,還要關注投產(chǎn)時的推理成本。因為當所有的應用場景都用千億級模型去做訓練和推理時,會形成長期的成本消耗,企業(yè)需要支撐每次服務調用帶來的算力成本。

有些廠商也推出了小尺寸模型,試圖在性能、成本和效果之間做均衡:在一些需要高度復雜推理的場景下用大模型能力,在一些不太復雜的場景使用小尺寸模型。

任何一家廠商,如果想推出領先于競品的大模型服務,不僅要有最好的硬件集群,還要針對新型算力集群提供訓練推理框架、軟件框架,做軟硬適配一體化。

對于這些話題,近日,騰訊的兩位混元大模型技術專家與界面新聞等媒體進行了深度溝通,聊到了大模型對傳統(tǒng)深度機器學習平臺的改變,以及大模型底層技術支撐對頭部廠商的挑戰(zhàn)。

機器學習平臺不再是從0到1

雖然都在人工智能范疇之下,但在各大公司紛紛介入大模型研發(fā)后,即便是不久之前的深度機器學習平臺,也與大模型優(yōu)化出來的新型訓練推理范式有著本質區(qū)別。

從模型的精調、評測再到部署,這些環(huán)節(jié)就是現(xiàn)在專屬模型定制的主要訓練過程,與傳統(tǒng)機器學習平臺的區(qū)別也主要集中在這個過程中。

比如說,傳統(tǒng)的機器學習平臺只提供各種庫和算法,訓練都是從0到1的過程,不會提供一個帶參數(shù)的模型。

今天由大廠提供的千億規(guī)?;A模型,則包含了各種尺寸的模型矩陣,以及龐大的數(shù)據(jù)量。此時研發(fā)人員要做的就是精調專屬模型,并進行應用構建。

其中,龐大的數(shù)據(jù)量決定著應用落地的天花板。十幾年前的機器學習平臺,數(shù)據(jù)科學家60%-80%的時間在做數(shù)據(jù)清理,只有20%左右時間在建模。

大模型時代訓練用的原始素材動輒以PB(1000TB)級別起步,“你不可能在任何一個環(huán)節(jié)上用手工做”,騰訊機器學習平臺部的專家工程師姚軍表示,如果沒有智能數(shù)據(jù)處理,科學家哪怕花費100%的時間都處理不完這些數(shù)據(jù)。

這種參數(shù)規(guī)模呈現(xiàn)的是指數(shù)量級的增長,“智能不夠,數(shù)據(jù)來湊”。2020年OpenAI的一篇論文中表示,他們從研究上發(fā)現(xiàn)整個人工智能從神經(jīng)網(wǎng)絡的深度和寬度上看,數(shù)據(jù)越多、模型越大,它對知識的歸納總結以及推理泛化能力就越強。

基礎模型的參數(shù)決定了智能能力的天花板,但否能摸到天花板,很多時候取決于它與業(yè)務場景的適配,也就是精調模型的效果。

精調指的是企業(yè)基于大廠提供的基礎模型,進行專屬模型的訓練(二次訓練、精調訓練),針對企業(yè)自己的應用場景和特有數(shù)據(jù)進行優(yōu)化,讓大模型能理解企業(yè)的應用指令,并且用特定方式輸出它存儲的數(shù)據(jù)。

比如OpenAI不久之前的發(fā)布會上,首席執(zhí)行官Sam Altman演示的創(chuàng)業(yè)訓練營案例文檔,就包含大量的傳統(tǒng)OCR和表格轉換工作,想要讓大模型看懂文檔,就需要對針對這個垂直場景進行大量訓練。

對于那些參數(shù)量成百上千億的大模型來說,有多少參數(shù)在精調過程中可以改動,改動的越多,跟場景的適配越好,但也意味著更高的訓練成本。

大模型提供的不同尺寸、不同程度的調參能力,以及降低幻覺的需求,也是與傳統(tǒng)機器學習平臺完全不同的地方。

數(shù)據(jù)各家都有,為何訓練大模型這么難?

雖然很多公司都有不少數(shù)據(jù)積累,但不是每家公司都能承擔起訓練大模型的工作,挑戰(zhàn)主要來自四個方面:

1、算力挑戰(zhàn)。大模型算力呈現(xiàn)指數(shù)級增長,超過了很多硬件加速器的算力。

從早期的Bert模型,到LLamMA,再到GPT3和GPT4,深度模型網(wǎng)絡要通過反向和前向計算去得到最好的權重值,每個位置上都要進行計算,因此模型的節(jié)點數(shù)量、網(wǎng)絡層次的規(guī)模就決定了模型需要的計算量。

相比之下,今天的主流硬件加速器算力較為有限。以Bert模型為例,如果用一張英偉達V100卡來算,大概需要50天左右,如果用這張卡去計算GPT系列模型,可能要幾十上百年時間。

2、顯存挑戰(zhàn)。目前大模型的規(guī)模已經(jīng)增大到TB級別,遠遠超過一張卡的顯存大?。℅B級別),不再能像過去那樣用一張卡來跑模型,分布式訓練框架等新技術成為必經(jīng)之路。

3、通信挑戰(zhàn)。用多張卡做分布式訓練時,由于卡與卡之間存在大量通信損耗,所以簡單增加顯卡不能得到線性加速結果。也就是說增加一倍的卡量,訓練時間并不會減半。

所以,如何解決分布式訓練中的通信問題,讓實際的加速比盡可能貼近理論的加速比,這也是一個很大的工程問題。

4、故障挑戰(zhàn)。所有硬件有一定的故障率,顯卡跑的時間太久也會壞,尤其是溫度問題,GPU算力使用較高后,會產(chǎn)生散熱問題,高溫會讓機器進入自我保護狀態(tài),直接關機。

這些都是當下研究大模型的技術人員所要面臨的工程技術難題,騰訊機器學習平臺部總監(jiān)陶陽宇也介紹了騰訊一些此前并未公開的解決方案。

比如通過3D多維并行提高訓練的并行度,采用“數(shù)據(jù)并行+張量并行+流水并行”的方式,配合算子優(yōu)化技術,提高并行路,降低在分布式訓練過程中的網(wǎng)絡通信開銷,提升整體訓練性能。

比如在存儲層面,將GPU顯存與系統(tǒng)內存統(tǒng)一編址、統(tǒng)一視角管理,擴大可存儲模型的容量。顯存和主存打通后,技術人員在訓練時可以將大量參數(shù)先放在系統(tǒng)存儲中,當需要的時候再放到顯存里。

目前顯存大小80G已經(jīng)算非常大,但系統(tǒng)存儲的主流容量已經(jīng)來到了2T,所以通過顯存和系統(tǒng)內存的統(tǒng)一編址,單機存儲容量能提升90%,突破顯存限制。這樣也可以盤活大量低端顯卡存貨,用低端卡來訓練大模型。

在顯卡供給受阻的背景下,這一點更加重要。從實踐結果來看,騰訊目前已經(jīng)能基于40G顯存低配卡訓練出混元千億大模型、24G低配卡實現(xiàn)模型精調。

來源:界面新聞 作者:崔鵬CP 

版權與免責:以上作品(包括文、圖、音視頻)版權歸發(fā)布者【崔鵬CP】所有。本App為發(fā)布者提供信息發(fā)布平臺服務,不代表經(jīng)觀的觀點和構成投資等建議