午夜毛片免费看,老师老少妇黄色网站,久久本道综合久久伊人,伊人黄片子

針對異構GPU顯卡的大語言模型分布式流水并行微調方法與流程

文檔序號:39726327發(fā)布日期:2024-10-22 13:26閱讀:2來源:國知局
針對異構GPU顯卡的大語言模型分布式流水并行微調方法與流程

本發(fā)明屬于自然語言處理,涉及大語言模型微調方法,尤其涉及針對異構gpu顯卡的大語言模型分布式流水并行微調方法。


背景技術:

1、在自然語言處理領域,大語言模型(llm)的微調是一項關鍵任務,旨在將預訓練的通用模型適應到特定任務或領域。傳統(tǒng)的全量微調方法在微調過程中更新所有模型參數,但由于llm模型的巨大參數量和微調任務的特殊性,這種方法顯得笨重且計算資源密集。因此,針對微調過程中的gpu內存和計算優(yōu)化問題,特別是針對參數高效的微調技術的挑戰(zhàn),成為當前研究的焦點。

2、現有的微調方法,如lora技術,提供了一種參數高效的微調方式,通過僅調整部分參數來實現模型的專業(yè)化和領域化,從而在保持微調效果的同時降低了計算資源的需求。然而,面對多任務微調時,特別是在大規(guī)模llm模型上,仍然存在一系列挑戰(zhàn),包括如何有效地分配和利用計算資源,以及如何通過動態(tài)任務調度和分布式計算優(yōu)化算法提高整體訓練和微調過程的效率。

3、目前已有一些關于llm微調優(yōu)化的研究,如s-lora等系統(tǒng)。s-lora是一個致力于優(yōu)化llm服務場景下效率的系統(tǒng),其核心思想是使用異構批處理來批量處理不同的lora適配器,結合高效管理kv緩存等方法來提高系統(tǒng)吞吐量。該系統(tǒng)通過共享一個預訓練模型,在服務眾多l(xiāng)ora適配器時有效地管理計算資源。s-lora系統(tǒng)主要關注于llm在服務場景下的效率,通過批處理和資源管理來優(yōu)化系統(tǒng)吞吐量,并沒有充分考慮微調過程中的訓練場景,特別是在多任務微調和大模型微調的情況下,其性能仍有待進一步提升。

4、因此,目前大語言模型微調技術主要存在以下問題:(1)未充分考慮到多任務微調的復雜性,或者缺乏高效的任務調度算法和資源分配策略,導致在資源分配和任務調度方面缺乏靈活性和智能性;(2)由于缺乏動態(tài)資源分配和任務調度機制,或者由于硬件配置不匹配,導致部分gpu可能處于空閑狀態(tài),而其他gpu過載,未能有效地解決多gpu環(huán)境中計算資源利用不均衡的問題;(3)未能設計出適用于多gpu環(huán)境的高效模型同步策略,或者未對模型收斂速度進行充分優(yōu)化,可能導致模型在不同gpu上的收斂不一致,影響微調的效果。


技術實現思路

1、本發(fā)明的目的在于針對現有技術中的不足,提供一種針對異構gpu顯卡的大語言模型分布式流水并行微調方法,在提高大規(guī)模預訓練語言模型在特定任務上微調的效率和效果,同時最大化計算資源的利用率,減少訓練成本。

2、本發(fā)明的發(fā)明思路為:(1)對于單卡環(huán)境下的多l(xiāng)ora任務微調:開發(fā)更高效的梯度下降方法和任務調度策略,以最大化單個gpu的利用率,提高任務吞吐率和流轉率;優(yōu)化模型微調過程,充分利用gpu的內存和計算能力,提高訓練速度和模型性能;(2)對于多機多卡環(huán)境下的lora模型并行化微調:設計高效的模型切分和向量并行技術,充分利用多個gpu的計算能力和內存大小,以實現高效的并行微調;解決流水線并行中的計算負載平衡和通信開銷問題,設計新的重疊計算與通信策略,以提高訓練效率并保證模型收斂性;(3)本發(fā)明還提出了兩種多l(xiāng)ora微調任務的調度優(yōu)化算法:①提前結束估算算法,開發(fā)準確的任務提前結束估算算法,以預測任務的執(zhí)行時間并提前釋放gpu資源,提高系統(tǒng)的整體吞吐率;②任務調度優(yōu)化算法:設計高效的任務調度算法,優(yōu)化多任務執(zhí)行中的batch?fusion策略,減少計算過程中的空閑時間,確保資源的高效利用和公平管理。

3、本發(fā)明提供的針對異構gpu顯卡的大語言模型分布式流水并行微調方法,基于多任務微調系統(tǒng)同時對多個lora模型實現微調;每個lora模型切分為多個部分,分布在相應數量的gpu上,并對gpu進行排序;所述多任務微調系統(tǒng)包括任務配置模塊、分析器、任務動態(tài)調度器和分布在多個gpu上的多任務訓練模塊;每個多任務訓練模塊用于實現對lora模型的相應部分微調;

4、所述大語言模型分布式流水并行微調方法包括以下步驟:

5、s1依據用戶請求,通過所述任務配置模塊生成多個任務,并將每個任務劃分為若干訓練批次;

6、s2通過分析器為每個任務配置超參數;

7、s3按照每個任務的訓練批次順序,通過任務動態(tài)調度器結合動態(tài)調度策略生成調度方案;

8、s4按照gpu正序,將調度方案發(fā)送給首個gpu上的多任務訓練模塊,多任務訓練模塊按照調度方案中包含的訓練批次對所有l(wèi)ora模型進行訓練;并將訓練結果傳送至下一個gpu上的多任務訓練模塊,重復上述操作,直至最后一個gpu;然后依據最后一個gpu輸出的訓練結果確定損失函數,將訓練結果和損失函數反饋給分析器;同時按照gpu逆序,將損失函數進行反向傳播,對gpu上相應部分的lora模型參數進行優(yōu)化;

9、s5所述分析器依據訓練結果和損失函數進行精度分析,判斷所有任務是否滿足訓練要求;若所有任務滿足訓練要求,程序結束;否則將精度分析結果反饋至任務動態(tài)調度器,返回步驟s3。

10、lora模型選自llama-7b、llama-13b、chatglm2-6b和llama2-7b或llama2-13b等??梢詫ora模型可以按照不同的維度進行切分,例如按層切分或按參數切分。在優(yōu)選實現方式中,例如按照頭部(head)、中部(mid)和尾部(tail),對lora模型進行切分,頭部(head)和尾部(tail)分布在兩個gpu,而中部(mid)可以按照大小判斷是否需要進行再次切分,分布在一個以上的gpu上。

11、上述步驟s1中,用戶請求包括任務配置(即模型的超參數配置)、訓練數據和調度目標,調度目標包括最小化等待時間、減少周轉時間、最大化吞吐量、最大化精度、按照順序執(zhí)行調度等。

12、上述步驟s3中,所述任務動態(tài)調度器對各批次中的任務長度進行排序,將同批次中任務長度相同或相近的任務來完成調度方案中任務符號填充;從而使任務動態(tài)調度器采取接近最優(yōu)的方法來減少填充符號對訓練吞吐量的影響。這意味著它能夠有效處理不同長度的輸入序列,從而減少由于填充符號引起的計算資源浪費。

13、所述動態(tài)調度策略包括:

14、①不早停策略:按照任務順序執(zhí)行;

15、②早停策略:初始時,按照任務順序執(zhí)行;在訓練過程中,依據分析器的精度分析結果的變化趨勢,提前結束精度變差的任務,同時將后序的任務提前;

16、③有預測的早停策略:首先基于所有任務的一批次以上的數據生成調度方案,執(zhí)行步驟s4進行預測試,得到預測結果,并反饋給分析器;分析器依據預測結果進行精度分析,生成后續(xù)任務調度方案;在后續(xù)訓練過程中,依據分析器的精度分析結果的變化趨勢,提前結束精度變差的任務,同時將后序的任務提前。

17、依據用戶請求中的調度目標,選擇①、②、③中的一種策略來生成調度任務;例如當調度目標為最小化等待時間、減少周轉時間、最大化吞吐量時,任務動態(tài)調度器根據預測結果自動選擇策略②或③;當調度目標為按順序執(zhí)行一系列任務時,任務動態(tài)調度器自動選擇策略①。任務動態(tài)調度器能夠有效管理系統(tǒng)資源,提高整體系統(tǒng)效率。它通過智能調度策略,確保系統(tǒng)資源在各個任務之間得到最優(yōu)化的分配和利用。尤其是對于有預測的早停策略,實現了一個內存使用估計模型。這使得調度器能夠根據當前的資源使用情況和任務需求,自適應地調整作業(yè)的調度,以優(yōu)化內存利用率和避免內存溢出。接著,調度器實現了多目標優(yōu)化。其目標不僅是減少等待時間和降低周轉時間,還包括增加吞吐量,同時確保任務執(zhí)行的優(yōu)先級和公平性。這意味著高優(yōu)先級的任務將優(yōu)先執(zhí)行,同時遵循先來先服務的原則。

18、上述步驟s4中,所述多任務訓練模塊將多個任務的訓練數據融合成一個訓練集;在每次迭代中,多個lora模型共享一個預訓練模型。

19、給定第i個任務的輸入順序xi,輸出數據將是hi。融合的輸入矩陣表示為x=fusion(x1,...,xn)。它將與預訓練權重和所有l(wèi)ora模型權重相乘,然后將個結果加在一起以產生最終輸出h,完整的計算公式如下所示:

20、h=concat(h1,...,hn)=w0x+[δw1x1,...,δwnxn]

21、=w0x+[b1a1x1,...,bnanxn]

22、其中,w0∈rd×k表示共享的預訓練權重,d、k表示(矩陣的行、列大小);δwi=biai表示第i個任務訓練的lora模型的權重,和分別為低秩分解矩陣,秩ri<<min(d,k)。

23、上述步驟s5中,依據損失函數值,分析器對各任務每一批次訓練后得到的損失函數值進行統(tǒng)計;還可以進一步對損失函數值進行擬合。另外,依據訓練結果,分析器還可以對各任務每一批次訓練后得到的準確率進行統(tǒng)計、擬合。所述精度分析結果包括損失函數值隨迭代次數的變化,還包括準確率隨迭代次數的變化。

24、與現有技術相比,本發(fā)明提供的針對異構gpu顯卡的大語言模型分布式流水并行微調方法具有以下有益效果:

25、(1)本發(fā)明通過多任務調度系統(tǒng),能夠實現高效的gpu內存管理和優(yōu)化策略,包括內存分配、共享機制和動態(tài)調度,以實現更多微調任務的并發(fā)執(zhí)行,并提高gpu內存的利用率,從而提高系統(tǒng)的整體性能;

26、(2)本發(fā)明采用精細的模型切分和分配策略、流水線優(yōu)化路徑和任務負載平衡策略,能夠更有效地利用多機多卡環(huán)境的計算資源,提高微調過程的整體效率,減少資源的浪費;

27、(3)本發(fā)明設計智能的任務調度機制和動態(tài)早停策略,能夠根據任務性能指標和系統(tǒng)負載情況實時調整任務執(zhí)行順序和優(yōu)先級,減少不必要的計算開銷,以最大程度地提高系統(tǒng)的整體吞吐率和資源利用率;通過優(yōu)化算法和資源管理,本發(fā)明能夠在保證微調效率的同時,確保微調模型的性能和質量,進而提高模型在特定任務上的表現和應用效果。

28、綜上所述,本發(fā)明技術方案將帶來更高效、更智能和更優(yōu)質的大型模型微調過程。

當前第1頁1 2 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1