0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

探索SFT訓(xùn)練策略對(duì)性能的影響

深度學(xué)習(xí)自然語言處理 ? 來源:深度學(xué)習(xí)自然語言處理 ? 2023-10-26 14:14 ? 次閱讀

SFT是目前最常見的調(diào)節(jié)模型效果的手段,然而它雖然看起來簡單(準(zhǔn)備好數(shù)據(jù)->啟動(dòng)),真正優(yōu)化起效果來卻困難重重,尤其是當(dāng)我們有一堆能力項(xiàng)要優(yōu)化時(shí)(推理能力、閑聊能力等),事情往往不會(huì)像我們預(yù)想的那樣發(fā)展,單獨(dú)調(diào)節(jié)能力和混合調(diào)節(jié)能力完全是兩個(gè)難度

今天就和大家分享我們?cè)诮诘囊黄ぷ?,探索混合?shù)據(jù)后的模型優(yōu)化姿勢(shì):

8f313394-739b-11ee-939d-92fbcf53809c.png

什么是SFT階段的數(shù)據(jù)組成(Data Composition)問題?

8f3c0026-739b-11ee-939d-92fbcf53809c.png

在大語言模型的監(jiān)督微調(diào)階段(Superviesd Finetuning, SFT),我們通過混合注入不同能力項(xiàng)的數(shù)據(jù)(數(shù)學(xué)推理,翻譯,代碼,通用能力等),來解鎖大模型多樣化的能力。然而由于不同能力項(xiàng)的數(shù)據(jù)的來源、領(lǐng)域、分布,以及數(shù)據(jù)規(guī)模的不同,這些因素都將對(duì)模型性能產(chǎn)生劇烈的影響。因此,SFT的數(shù)據(jù)組成問題旨在探究模型能力與各種能力項(xiàng)數(shù)據(jù)之間的關(guān)系,包括不同能力項(xiàng)的數(shù)據(jù)量、數(shù)據(jù)配比、模型參數(shù)量和微調(diào)訓(xùn)練策略等,這對(duì)未來全面提升大模型的奠定了堅(jiān)實(shí)的基礎(chǔ)。

本文聚焦于SFT階段的數(shù)學(xué)推理能力,代碼生成能力,以及通用指令遵循能力,這三個(gè)能力的數(shù)據(jù)集及評(píng)測(cè)指標(biāo)的介紹如下:

? GSM8K RFT [1] 是一個(gè)增強(qiáng)的數(shù)學(xué)推理數(shù)據(jù)集,它基于GSM8K數(shù)據(jù)集[4]并結(jié)合RFT策略整合了多條推理路徑。訓(xùn)練集中包含7.5K個(gè)問題和110K個(gè)回答,我們所有實(shí)驗(yàn)數(shù)學(xué)的評(píng)測(cè)指標(biāo)為GSM8k測(cè)試集分?jǐn)?shù)。

? Code Alpaca [2] 旨在構(gòu)建一個(gè)遵循指令,生成代碼的LLaMA模型,構(gòu)建方式完全基于Stanford Alpaca,包含20K對(duì)的代碼數(shù)據(jù),我們代碼生成的評(píng)測(cè)指標(biāo)為HumanEval。

? ShareGPT [3] 使用多輪對(duì)話歷史記錄,包括約9w條來自人類的提問和來自ChatGPT和其他聊天機(jī)器人的回復(fù)。我們通用能力的評(píng)測(cè)指標(biāo)為MT-Bench。

本文旨在從Data Scaling的視角,全面性地研究模型性能與不同因素之間的關(guān)系,包括數(shù)據(jù)量,數(shù)據(jù)配比,模型參數(shù)量SFT訓(xùn)練策略。我們的文章以4個(gè)研究問題(RQ)為主線進(jìn)行探究。

RQ1: 隨著數(shù)據(jù)量的增加,數(shù)學(xué)推理、代碼生成和通用能力的性能變化趨勢(shì)如何?

8f49a5b4-739b-11ee-939d-92fbcf53809c.png

實(shí)驗(yàn)設(shè)置:

我們使用來自數(shù)學(xué),代碼,通用能力的訓(xùn)練集按比例{1, 1/4, 1/16, 1/64, 1/256}對(duì)不同參數(shù)量的LLaMA進(jìn)行監(jiān)督微調(diào)。來評(píng)估每種單獨(dú)能力項(xiàng)在不同數(shù)據(jù)量/模型參數(shù)量下的表現(xiàn)。

核心結(jié)論(圖2):

? 不同能力項(xiàng)有不同的Data Scaling曲線:數(shù)學(xué)推理能力,通用能力與數(shù)據(jù)量呈正相關(guān)模型的性能縮放曲線。值得注意的是通用能力只需要大約 1k數(shù)據(jù)樣本便會(huì)產(chǎn)生性能激增(數(shù)據(jù)量從1/256 到 1/64),并在達(dá)到一定閾值提高緩慢(1/64),這契合于LIMA[5]文中所提到的“Less is more”。然而代碼能力在7B,13B則呈現(xiàn)不規(guī)則的性能曲線,33B呈現(xiàn)log-linear的趨勢(shì)。

? 數(shù)據(jù)充足的情況下,更大參數(shù)量的模型往往有更強(qiáng)大的性能

RQ2: 在SFT階段中,將三種能力項(xiàng)數(shù)據(jù)直接混合是否會(huì)產(chǎn)生性能沖突?

8f5873c8-739b-11ee-939d-92fbcf53809c.png

實(shí)驗(yàn)設(shè)置:

單數(shù)據(jù)源:分別使用{1, 1/4, 1/16, 1/64, 1/256}數(shù)量的數(shù)學(xué),代碼,通用能力數(shù)據(jù)對(duì)LLaMA模型微調(diào)。

混合數(shù)據(jù)源:分別使用{1, 1/4, 1/16, 1/64, 1/256}數(shù)量的三種能力項(xiàng)數(shù)據(jù),三種數(shù)據(jù)按照同等的數(shù)據(jù)比例直接混合,來對(duì)LLaMA模型微調(diào)。

核心結(jié)論(圖3):

? 與單數(shù)據(jù)源相比,混合數(shù)據(jù)源設(shè)置呈現(xiàn)低資源性能增益,而高資源性能沖突: 三種能力的性能放縮曲線一致呈現(xiàn)高資源下(1/1)混合數(shù)據(jù)源設(shè)置弱于單數(shù)據(jù)源,然而隨著數(shù)據(jù)量下降二者產(chǎn)生性能轉(zhuǎn)折,最終低資源(1/256)下混合數(shù)據(jù)源產(chǎn)生明顯性能增益。

? 隨著模型參數(shù)量的提高,數(shù)學(xué)推理與通用能力在低資源下的性能增益更加顯著

RQ3: 什么是產(chǎn)生性能沖突的關(guān)鍵因素:

8f6b8724-739b-11ee-939d-92fbcf53809c.png

實(shí)驗(yàn)設(shè)置:

我們將代碼生成與數(shù)學(xué)推理數(shù)據(jù)視為特定能力數(shù)據(jù)源,而ShareGPT則為通用能力數(shù)據(jù)源。我們?cè)O(shè)計(jì)了以下三種設(shè)置來探究通用數(shù)據(jù)和特定能力數(shù)據(jù)之間的比例變化:

固定通用數(shù)據(jù),放縮特定能力數(shù)據(jù):Fix general + k (code, math)

固定特定能力數(shù)據(jù),放縮通用數(shù)據(jù):Fix (code, math)l + k general

固定1/64通用數(shù)據(jù),放縮特定能力數(shù)據(jù):Fix 1/64 general+ k (code, math)

核心結(jié)論(圖4):

? 當(dāng)不同的SFT能力之間存在顯著的任務(wù)格式和數(shù)據(jù)分布差異時(shí)(數(shù)學(xué)和通用數(shù)據(jù)之間),數(shù)據(jù)比例的影響較小。然而,當(dāng)存在一定程度的相似性時(shí)(代碼和通用數(shù)據(jù)之間),數(shù)據(jù)比例可能會(huì)導(dǎo)致明顯的性能波動(dòng)。(數(shù)據(jù)分布的討論見D1)

? 即便在通用數(shù)據(jù)資源非常有限的情況下,特定能力的數(shù)據(jù)比例的放縮也沒有對(duì)通用能力造成明顯影響。

RQ4: 不同的SFT訓(xùn)練策略對(duì)數(shù)據(jù)組成的影響是什么?

8f6fd68a-739b-11ee-939d-92fbcf53809c.png

實(shí)驗(yàn)設(shè)置:

如圖1所示,我們探究以上SFT訓(xùn)練策略對(duì)性能的影響:

多任務(wù)學(xué)習(xí):直接混合不同的SFT能力項(xiàng)數(shù)據(jù)進(jìn)行SFT。若將每個(gè)數(shù)據(jù)源視為不同任務(wù),則可視為多任務(wù)學(xué)習(xí)。

順序訓(xùn)練:按順序依次在各能力項(xiàng)數(shù)據(jù)集上微調(diào)。由于通用能力是人類對(duì)齊的核心能力,我們將通用能力數(shù)據(jù)放在最后階段微調(diào)。

混合順序訓(xùn)練:首先在特定能力數(shù)據(jù)集(代碼、數(shù)學(xué))上進(jìn)行多任務(wù)學(xué)習(xí),然后在通用能力數(shù)據(jù)集上進(jìn)行SFT。

兩階段混合微調(diào)(DMT):我們綜合RQ1-3的結(jié)論與上述訓(xùn)練策略的優(yōu)缺點(diǎn),提出DMT策略。在第一階段我們首先在特定能力數(shù)據(jù)集(代碼、數(shù)學(xué))上進(jìn)行多任務(wù)學(xué)習(xí)。在第二階段我們使用混合數(shù)據(jù)源進(jìn)行SFT,其中包括通用數(shù)據(jù)和一定比例k的特定能力數(shù)據(jù)(k = 1, 1/2, 1/4, 1/8, 1/16, 1/32),這有助于緩解模型對(duì)特定能力的災(zāi)難性遺忘。

核心結(jié)論(表1):

8f74b542-739b-11ee-939d-92fbcf53809c.png

? 多任務(wù)學(xué)習(xí)在盡可能保留了特有能力,但是通用能力性能下降顯著。

? 兩種順序訓(xùn)練保留了通用能力能力,但是由于多階段的微調(diào)產(chǎn)生災(zāi)難性遺忘,使得他失去了太多的特定能力(尤其是數(shù)學(xué))。

? 在不同的模型參數(shù)量下(7B,13B,33B),DMT (k = 1/256)策略在特定能力方面(數(shù)學(xué),代碼)均有顯著改善,甚至對(duì)于通用能力也有一定程度的優(yōu)化。

Discussion

D1:不同能力的語義表示的可視化

8f82162e-739b-11ee-939d-92fbcf53809c.png

實(shí)驗(yàn)發(fā)現(xiàn):如上圖所示,通過對(duì) LLaMA-13b [左]和 DMT-13b (k=1/256) [右]策略下 LLaMA-13b 的第15層的語義表示進(jìn)行可視化,我們發(fā)現(xiàn)雖然這兩個(gè)模型可以分離開數(shù)學(xué)能力的語義表示,但是在代碼數(shù)據(jù)與通用能力數(shù)據(jù)的語義表示間,仍存在一定程度的坍縮重疊現(xiàn)象。

D2: 消融通用能力數(shù)據(jù)中的代碼和數(shù)學(xué)樣本

8f9064c2-739b-11ee-939d-92fbcf53809c.png

實(shí)驗(yàn)設(shè)計(jì):為了消融通用能力數(shù)據(jù)中的特定能力數(shù)據(jù),我們使用InsTag[1]工具對(duì)通用能力數(shù)據(jù)中的樣本標(biāo)注標(biāo)簽。并通過正則匹配過濾掉“數(shù)學(xué)”,“代碼”相關(guān)數(shù)據(jù)(從90K減少到63K)。與RQ2中的設(shè)置對(duì)齊,我們從數(shù)學(xué),代碼,與過濾后的通用能力數(shù)據(jù)集中抽樣不同比例的訓(xùn)練數(shù)據(jù)(1, 1/4, 1/16, 1/64, 1/256),并按照相應(yīng)的比例直接混合后來微調(diào)LLaMA。

實(shí)驗(yàn)結(jié)論:如圖6所示,移除通用能力數(shù)據(jù)中的代碼和數(shù)學(xué)后,低資源設(shè)置下依舊保持了穩(wěn)定的增益。這個(gè)消融實(shí)驗(yàn)也表明通用能力中的代碼和數(shù)學(xué)樣本不是導(dǎo)致低資源性能增益的關(guān)鍵因素,而是數(shù)據(jù)的多樣性和可變性。

D3:雙階段混合微調(diào)(DMT)中第二階段特定能力數(shù)據(jù)的比例K

8f9e5d52-739b-11ee-939d-92fbcf53809c.png

實(shí)驗(yàn)發(fā)現(xiàn):如上圖所示,當(dāng)我們將k從0調(diào)整到1/256(k = 0等于混合順序訓(xùn)練)時(shí),發(fā)現(xiàn)模型在特定能力和通用能力方面都表現(xiàn)出顯著的提升。相反,當(dāng)k從1/4增加到1時(shí),模型的通用能力出現(xiàn)下降。我們認(rèn)為這與RQ2的發(fā)現(xiàn)一致,即高資源環(huán)境會(huì)導(dǎo)致沖突,而低資源環(huán)境會(huì)導(dǎo)致混合來源的增益。此外,當(dāng)k從1/256增加到1/4時(shí),特定能力與通用能力呈現(xiàn)此消彼長的趨勢(shì)。這表明需要根據(jù)具體大模型SFT需求調(diào)整k值,以在多種能力之間實(shí)現(xiàn)平衡。

總結(jié)

大模型混合多種能力項(xiàng)數(shù)據(jù)進(jìn)行微調(diào)時(shí),會(huì)呈現(xiàn)高資源沖突,低資源增益的現(xiàn)象。我們提出的DMT策略通過在第一階段微調(diào)特定能力數(shù)據(jù),在第二階段微調(diào)通用數(shù)據(jù)+少量的特定能力數(shù)據(jù),可以在保留通用能力的同時(shí),極大程度地挽救大模型對(duì)特定能力的災(zāi)難性遺忘,這為SFT的數(shù)據(jù)組成問題提供了一個(gè)簡單易行的訓(xùn)練策略。值得注意的是,第二階段微調(diào)時(shí)混合的特定能力數(shù)據(jù)量需要根據(jù)需求而定。

一句話概括:訓(xùn)通用大模型就少混點(diǎn),訓(xùn)特定能力就著重多混合點(diǎn)!

編輯:黃飛

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    6754

    瀏覽量

    88612
  • 語言模型
    +關(guān)注

    關(guān)注

    0

    文章

    490

    瀏覽量

    10225
  • SFT
    SFT
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    6795
  • 大模型
    +關(guān)注

    關(guān)注

    2

    文章

    2206

    瀏覽量

    2227

原文標(biāo)題:總結(jié)

文章出處:【微信號(hào):zenRRan,微信公眾號(hào):深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Waiting for SFT on the OMAP-L138... 問題?

    OMAP-L138\Common\src\device.c, 串口改DEVICE_UART_PERIPHNUM為0,然后編譯生成sft_OMAP-L138.exe,在windows下執(zhí)行
    發(fā)表于 06-21 14:08

    停留在Waiting for SFT on the OMAP-L138

    執(zhí)行sft_OMAP-L138.exe 后一直停留在:Waiting for SFT on theOMAP-L138... ,再也不能進(jìn)行下去。用BSL測(cè)試程序發(fā)現(xiàn)是我們的板子上面的spiflash
    發(fā)表于 04-21 10:16

    請(qǐng)問有什么策略可以提高芯片的性能?

    請(qǐng)問有什么策略可以提高芯片的性能?
    發(fā)表于 06-23 13:08

    如何進(jìn)行高效的時(shí)序圖神經(jīng)網(wǎng)絡(luò)的訓(xùn)練

    提高多GPU訓(xùn)練性能,包括局部性感知的數(shù)據(jù)劃分策略以及高效的任務(wù)調(diào)度策略。首先,本文使用高效的數(shù)據(jù)劃分策略將圖數(shù)據(jù)以及點(diǎn)的特征向量進(jìn)行有效
    發(fā)表于 09-28 10:37

    探索一種降低ViT模型訓(xùn)練成本的方法

    探索了一種減少序列長度(即patch數(shù))以加速訓(xùn)練的方法。作者開發(fā)了一種基于小到大圖像尺寸的課程學(xué)習(xí)策略,其中在訓(xùn)練開始時(shí)使用較短的patch序列。課程學(xué)習(xí)的關(guān)鍵思想是從小處開始,學(xué)
    發(fā)表于 11-24 14:56

    SFT指令應(yīng)用小車循環(huán)運(yùn)行控制程序

    SFT指令應(yīng)用小車循環(huán)運(yùn)行控制程序
    發(fā)表于 07-07 12:00 ?14次下載

    訓(xùn)練中基于自適應(yīng)副本策略的容錯(cuò)研究

    訓(xùn)練中基于自適應(yīng)副本策略的容錯(cuò)研究_陳志佳
    發(fā)表于 01-03 18:00 ?0次下載

    FSB50760SFT Motion SPM

    電子發(fā)燒友網(wǎng)為你提供ON Semiconductor(ti)FSB50760SFT相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有FSB50760SFT的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,F(xiàn)SB50760SFT真值表,F(xiàn)SB50760
    發(fā)表于 07-31 06:02

    FSB50660SFT Motion SPM

    電子發(fā)燒友網(wǎng)為你提供ON Semiconductor(ti)FSB50660SFT相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有FSB50660SFT的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,F(xiàn)SB50660SFT真值表,F(xiàn)SB50660
    發(fā)表于 07-31 06:02

    CAT-D48-SFT273 DEUTSCH 沖壓成型端子

    電子發(fā)燒友網(wǎng)為你提供TE(ti)CAT-D48-SFT273相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有CAT-D48-SFT273的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,CAT-D48-SFT273真值表,CAT-D48-
    發(fā)表于 12-15 00:00

    小米在預(yù)訓(xùn)練模型的探索與優(yōu)化

    導(dǎo)讀:預(yù)訓(xùn)練模型在NLP大放異彩,并開啟了預(yù)訓(xùn)練-微調(diào)的NLP范式時(shí)代。由于工業(yè)領(lǐng)域相關(guān)業(yè)務(wù)的復(fù)雜性,以及工業(yè)應(yīng)用對(duì)推理性能的要求,大規(guī)模預(yù)訓(xùn)練模型往往不能簡單直接地被應(yīng)用于NLP業(yè)務(wù)
    的頭像 發(fā)表于 12-31 10:17 ?2519次閱讀
    小米在預(yù)<b class='flag-5'>訓(xùn)練</b>模型的<b class='flag-5'>探索</b>與優(yōu)化

    面向K近鄰分類性能的遺傳訓(xùn)練集優(yōu)化算法

    K近鄰的分類性能依賴于訓(xùn)練集的質(zhì)量。設(shè)計(jì)高效的訓(xùn)練集優(yōu)化算法具有重要意義。針對(duì)傳統(tǒng)的進(jìn)仳訓(xùn)練集優(yōu)化算法效率較低、誤刪率較高的不足,提岀了一種遺傳訓(xùn)練
    發(fā)表于 05-13 14:20 ?6次下載

    設(shè)計(jì)模式最佳實(shí)踐探索策略模式

    根據(jù)不同的應(yīng)用場(chǎng)景與意圖,設(shè)計(jì)模式主要分為創(chuàng)建型模式、結(jié)構(gòu)型模式和行為型模式三類。本文主要探索行為型模式中的策略模式如何更好地應(yīng)用于實(shí)踐中。
    的頭像 發(fā)表于 10-31 14:24 ?893次閱讀

    微軟開源“傻瓜式”類ChatGPT模型訓(xùn)練工具

    DeepSpeed-RLHF 模塊:DeepSpeed-RLHF 復(fù)刻了 InstructGPT 論文中的訓(xùn)練模式,并確保包括 a) 監(jiān)督微調(diào)(SFT),b) 獎(jiǎng)勵(lì)模型微調(diào)和 c) 基于人類反饋
    的頭像 發(fā)表于 04-14 09:36 ?1010次閱讀

    YOLOv5網(wǎng)絡(luò)結(jié)構(gòu)訓(xùn)練策略詳解

    前面已經(jīng)講過了Yolov5模型目標(biāo)檢測(cè)和分類模型訓(xùn)練流程,這一篇講解一下yolov5模型結(jié)構(gòu),數(shù)據(jù)增強(qiáng),以及訓(xùn)練策略。
    的頭像 發(fā)表于 09-11 11:15 ?1943次閱讀
    YOLOv5網(wǎng)絡(luò)結(jié)構(gòu)<b class='flag-5'>訓(xùn)練</b><b class='flag-5'>策略</b>詳解