大模型數(shù)據(jù)建設(shè)探索與實踐
一、從工程化視角看數(shù)據(jù)建設(shè)
在當(dāng)前大模型技術(shù)快速發(fā)展的背景下,數(shù)據(jù)對模型效果的影響力日益增強(qiáng)。對于希望從零開始訓(xùn)練一個具有千億參數(shù)規(guī)模的大型模型的團(tuán)隊來說,整個任務(wù)流程的規(guī)劃和執(zhí)行成為了一個重要議題。接下來詳細(xì)探討從工程化視角下的數(shù)據(jù)建設(shè)過程,包括數(shù)據(jù)準(zhǔn)備、預(yù)訓(xùn)練、后訓(xùn)練以及數(shù)據(jù)版本的動態(tài)調(diào)整。
1. 數(shù)據(jù)準(zhǔn)備與訓(xùn)練流程
理想情況下,大模型的訓(xùn)練流程可以分為三個階段:數(shù)據(jù)準(zhǔn)備、預(yù)訓(xùn)練與后訓(xùn)練。然而,實際情況遠(yuǎn)比這一理想化的模型復(fù)雜??梢詫⑵浔扔鳛椤鞍汛笙蠓胚M(jìn)冰箱”的問題,即分為三個步驟:數(shù)據(jù)收集、預(yù)訓(xùn)練及后訓(xùn)練。實際操作中,這一過程的復(fù)雜性主要體現(xiàn)在兩個方面:
- 預(yù)訓(xùn)練周期長:預(yù)訓(xùn)練階段不僅時間跨度長,而且涉及大量的數(shù)據(jù)和資源協(xié)調(diào)。一個模型從開始訓(xùn)練到結(jié)束,可能會經(jīng)歷季節(jié)的更迭。
- 數(shù)據(jù)版本動態(tài)調(diào)整:伴隨模型訓(xùn)練進(jìn)展,數(shù)據(jù)版本需要持續(xù)動態(tài)調(diào)整。初始的數(shù)據(jù)準(zhǔn)備可能無法完全滿足模型訓(xùn)練的需求,因此在整個訓(xùn)練過程中需要不斷地進(jìn)行微調(diào)。此外,在后訓(xùn)練階段,還需要對數(shù)據(jù)進(jìn)行篩選,以適應(yīng)模型訓(xùn)練的前進(jìn)方向。
2. 影響數(shù)據(jù)版本更新的因素
影響數(shù)據(jù)版本更新的主要因素包括:
- 數(shù)據(jù)來源變更:數(shù)據(jù)來源的變化直接影響數(shù)據(jù)的構(gòu)成與質(zhì)量。
- 新數(shù)據(jù)引入:隨著數(shù)據(jù)市場的不斷發(fā)展,引入新數(shù)據(jù)成為一種可能。通過分析不同數(shù)據(jù)來源和通用語料長度,可以得出實際的需求量與市場庫存量之間的差異。這一差異表明,盡管數(shù)據(jù)市場在繁榮發(fā)展,但要通過采購方式獲取足量的訓(xùn)練數(shù)據(jù)仍具有挑戰(zhàn)性。
- 數(shù)據(jù)配比差異:在訓(xùn)練過程中,數(shù)據(jù)的自然配比與理想的配比可能存在差異,需要根據(jù)訓(xùn)練情況適時調(diào)整。
3. 先導(dǎo)模型在工程實踐中的應(yīng)用
在工程實踐中,常用的方法是訓(xùn)練一個先導(dǎo)模型來監(jiān)控數(shù)據(jù)變化并及時作出調(diào)整。先導(dǎo)模型的規(guī)模通常較小,如 1B 參數(shù)級別。當(dāng)需要調(diào)整數(shù)據(jù)時,可通過先導(dǎo)模型進(jìn)行一系列實驗,包括數(shù)據(jù)去重、清洗及配比調(diào)整等,并對效果進(jìn)行評估。一旦確定可行方案,即可同步應(yīng)用于主模型。
在某些情況下,一級先導(dǎo)模型可能無法完全滿足數(shù)據(jù)調(diào)整的需求,這時可能需要二級甚至多級先導(dǎo)模型來進(jìn)行更細(xì)致的追隨訓(xùn)練。在多級先導(dǎo)模型的設(shè)置中,可能需要進(jìn)行二次甚至多次的先導(dǎo)實驗,以確保決策的準(zhǔn)確性。這種多級實驗雖然增加了時間和算力成本,但在減少 token 消耗的同時,提高了實驗結(jié)果的可靠性。
4. 評測指標(biāo)與數(shù)據(jù)版本更新
在訓(xùn)練過程中,通過對先導(dǎo)模型進(jìn)行評測,可以發(fā)現(xiàn)特定領(lǐng)域的不足之處(如數(shù)學(xué)或編程能力)?;谠u測結(jié)果,可以針對性地調(diào)整數(shù)據(jù)配置,從而改善模型性能。
5. 數(shù)據(jù)處理流程
不同的數(shù)據(jù)版本更新方式會觸發(fā)不同的數(shù)據(jù)處理流程。如果數(shù)據(jù)更新是由數(shù)據(jù)變化觸發(fā)的,則可能需要從頭到尾進(jìn)行數(shù)據(jù)處理的各個步驟;如果是通過評測引導(dǎo)的方法來觸發(fā),則只需調(diào)整數(shù)據(jù)配比和領(lǐng)域選擇。
二、預(yù)訓(xùn)練數(shù)據(jù)配比策略
在大模型的預(yù)訓(xùn)練過程中,數(shù)據(jù)配比對于模型性能有著至關(guān)重要的影響。通過采用 DoReMi 方法、雙層優(yōu)化算法以及在線領(lǐng)域采樣權(quán)重調(diào)整等策略,可以有效提高模型的訓(xùn)練效率與性能。在實際應(yīng)用中,還需考慮特定領(lǐng)域數(shù)據(jù)的重要性以及數(shù)據(jù)處理與解析的技術(shù)挑戰(zhàn)。
1. 數(shù)據(jù)配比策略概述
我們平常提到的“數(shù)據(jù)配比”, 是指在預(yù)訓(xùn)練階段對不同來源的數(shù)據(jù)配置不同權(quán)重,以期達(dá)到最優(yōu)訓(xùn)練效果的過程。論文中通常采用的對應(yīng)術(shù)語是 “數(shù)據(jù)混合”(Data Mixing)。
(1)DoReMi:一種經(jīng)典的配比方法
DoReMi 方法是一種不依賴于特定任務(wù)的、在小模型上尋找最優(yōu)數(shù)據(jù)混合比例的方法。該方法的基本流程如下:
- 訓(xùn)練參考模型:在數(shù)據(jù)的不同領(lǐng)域(domains)中設(shè)定一個歸一化的初始權(quán)重,在上述權(quán)重下訓(xùn)練一個小的參考模型。
- 訓(xùn)練代理模型:利用 Group DRO 算法訓(xùn)練一個代理模型。在此過程中,代理模型與參考模型之間的損失(loss)在不同領(lǐng)域上存在差異。使用 Mini Max Optimization 算法來優(yōu)化在代理模型與參考模型間差異最大的領(lǐng)域的權(quán)重。代理模型持續(xù)訓(xùn)練,而參考模型保持不變。通過代理模型與參考模型的交互過程,不斷調(diào)整不同領(lǐng)域的權(quán)重。
- 大模型訓(xùn)練:獲得優(yōu)化后的權(quán)重后,用于訓(xùn)練最終的大模型。
DoReMi 方法相較于原始權(quán)重,在預(yù)訓(xùn)練效果上有明顯提升。例如,下圖展示了采用 DoReMi 方法找到的最優(yōu)化權(quán)重與使用經(jīng)驗配比所得到的最終模型訓(xùn)練效果對比。藍(lán)線表示采用 DoReMi 方法的結(jié)果,紅線表示基線結(jié)果,可以看出,DoReMi 方法在下游任務(wù)上取得了顯著的提升,且隨著模型參數(shù)量的增加,依然穩(wěn)定提升。
(2)DoGE:雙層優(yōu)化算法
另一種方法是通過雙層優(yōu)化算法直接訓(xùn)練代理模型來調(diào)整預(yù)訓(xùn)練數(shù)據(jù)的權(quán)重。這種方法的核心在于通過兩步更新:第一步更新權(quán)重,第二步更新代理模型本身的權(quán)重。該算法更側(cè)重于學(xué)習(xí)對整體梯度貢獻(xiàn)較大的領(lǐng)域,即找出哪些領(lǐng)域的樣本對代理模型的影響最大。這種方法不需要單獨(dú)的參考模型,簡化了訓(xùn)練流程。
(3)ODM:在線領(lǐng)域采樣權(quán)重調(diào)整
更進(jìn)一步的方法是利用多臂老虎機(jī)(Multi-Armed Bandit)算法在線調(diào)整領(lǐng)域采樣權(quán)重。該算法在強(qiáng)化學(xué)習(xí)中較為常見,通過模擬拉取老虎機(jī)的不同手臂來獲得獎勵。在預(yù)訓(xùn)練模型場景中,大模型可以被視為老虎機(jī),不同的數(shù)據(jù)集對應(yīng)不同的手臂。訓(xùn)練過程中,根據(jù)獲得的獎勵(即單個樣本的損失)來調(diào)整采樣權(quán)重,以優(yōu)化整體訓(xùn)練效果。
2. 現(xiàn)有方法特點與局限
通過分析現(xiàn)有方法,可以總結(jié)出以下兩點特征:
- 更換數(shù)據(jù)集和領(lǐng)域會影響效果:不同的數(shù)據(jù)集和領(lǐng)域會對參數(shù)更新效果產(chǎn)生顯著影響。例如,DoReMi 方法在不同數(shù)據(jù)集上的效果差異較大,這表明數(shù)據(jù)集的多樣性對訓(xùn)練效果至關(guān)重要。
- 權(quán)重變更過程與下游評測無關(guān):權(quán)重變更過程通常不考慮下游任務(wù)的評測結(jié)果,而是側(cè)重于尋找最優(yōu)化的訓(xùn)練過程。這可能導(dǎo)致模型在某些特定任務(wù)上的表現(xiàn)不如預(yù)期。
3. 工程化實踐中的數(shù)據(jù)配比調(diào)整
在工程化實踐中,數(shù)據(jù)配比的調(diào)整是一個主動觸發(fā)的過程,主要思路如下:
- 主動觸發(fā)配比調(diào)整:在模型訓(xùn)練初期和中期,根據(jù)評測指標(biāo)主動觸發(fā)配比調(diào)整。
- 先導(dǎo)模型輔助:使用先導(dǎo)模型(如 DoReMi 方法)來優(yōu)化數(shù)據(jù)配比。
- 避免直接應(yīng)用算法:隨著模型訓(xùn)練進(jìn)展,避免直接應(yīng)用高成本的算法。
4. 經(jīng)驗總結(jié)
在實際應(yīng)用中,需要考慮以下幾點:
- 中文數(shù)據(jù)的重要性:增加中文數(shù)據(jù)比例可以顯著提高模型在文本理解、推理等方面的性能。例如,一些主流開源數(shù)據(jù)集中,中文數(shù)據(jù)比例較低,但在國內(nèi)應(yīng)用中,增加中文數(shù)據(jù)比例至 40% 左右,可以使模型在英文評測集上取得優(yōu)于純英文數(shù)據(jù)配比的效果。
- 數(shù)學(xué)與題庫數(shù)據(jù)的重要性:增大數(shù)學(xué)與題庫數(shù)據(jù)的比例有助于提高考試與代碼評測指標(biāo)的提升速率。例如,最新的 LLaMA3 模型中,數(shù)學(xué)占比達(dá)到 25%,代碼占比達(dá)到 17%,這表明在訓(xùn)練數(shù)據(jù)中加入更多數(shù)學(xué)和編程內(nèi)容有助于提高模型在這些領(lǐng)域的表現(xiàn)。
- 數(shù)據(jù)處理與解析:在公眾化實驗中,處理特定類型的數(shù)據(jù)(如數(shù)學(xué)題目)時,需要專門的文檔解析技術(shù)或多模態(tài)大模型來提取文本內(nèi)容。例如,從 PDF 文件中提取公式和表格,需要使用能夠處理這些元素的解析器。
三、后訓(xùn)練數(shù)據(jù)的質(zhì)量篩選
在大模型的訓(xùn)練過程中,后訓(xùn)練數(shù)據(jù)的選擇和篩選對于模型性能的提升至關(guān)重要。隨著訓(xùn)練數(shù)據(jù)從單純追求數(shù)量轉(zhuǎn)向重視質(zhì)量,如何高效篩選出高質(zhì)量的數(shù)據(jù)成為了一個關(guān)鍵議題。
1. 發(fā)展趨勢
后訓(xùn)練數(shù)據(jù)篩選的發(fā)展趨勢表現(xiàn)為從追求數(shù)據(jù)量的增加轉(zhuǎn)向關(guān)注數(shù)據(jù)質(zhì)量的提升。這意味著不僅要保證數(shù)據(jù)的多樣性,還要確保數(shù)據(jù)的質(zhì)量,使模型能夠在有限的數(shù)據(jù)集上達(dá)到最佳訓(xùn)練效果。
2. 數(shù)據(jù)篩選方法
為了實現(xiàn)這一目標(biāo),研究者們提出了多種數(shù)據(jù)篩選方法,旨在從海量數(shù)據(jù)中挑選出最具價值的部分。
(1)CherryLLM
- 基本思想:通過少量數(shù)據(jù)訓(xùn)練出一個初步模型,利用該模型評估數(shù)據(jù)的指令追隨難度,以此作為篩選依據(jù)。(指令追隨難度用于衡量答案與指令的匹配程度,包括直接答案得分和條件答案得分)
- 篩選流程:從全量數(shù)據(jù)中選取樣例訓(xùn)練經(jīng)驗?zāi)P停焕迷撃P秃Y選出指令追隨難度高的數(shù)據(jù)進(jìn)行后續(xù)訓(xùn)練。
(2)Superfiltering
- 基本思想:利用較小的模型進(jìn)行篩選減少時間開銷,盡管其困惑度較高,但指令追隨難度分布與大參數(shù)量模型結(jié)果類似,因此仍具有參考價值。
(3)MoDS
- 基本思想:利用獎勵模型對數(shù)據(jù)進(jìn)行評分,通過多層次篩選進(jìn)一步提升數(shù)據(jù)質(zhì)量。
- 流程:從高質(zhì)量數(shù)據(jù)中選取種子樣本訓(xùn)練初始模型,使用模型推理結(jié)果再次篩選并增強(qiáng)數(shù)據(jù)集。
(4)NUGGETS
- 基本思想:評估每條樣本作為 One-Shot 示例的價值增益。
- 優(yōu)點:能夠量化樣本對訓(xùn)練過程的價值,并可通過聚類等手段進(jìn)一步優(yōu)化。
(5)LESS
- 基本思想:利用模型梯度評估樣本對測試集損失降低的程度,從而篩選出最有價值的數(shù)據(jù)。
- 方法:
- 使用 LoRA 訓(xùn)練并保存樣本梯度。
- 從訓(xùn)練數(shù)據(jù)中挑選出與示例數(shù)據(jù)集樣本梯度相似度最高的部分。
3. 現(xiàn)有方法分類與特點
在后訓(xùn)練數(shù)據(jù)篩選的過程中,可以將方法大致分為兩大類:模型類方法與指標(biāo)類方法。
- 模型類方法:依賴外部模型能力,計算開銷大。
- 指標(biāo)類方法:計算效率高,潛在誤差大。
4. 理想指標(biāo)的探索
在現(xiàn)有篩選方法的基礎(chǔ)上,探索更為理想的篩選指標(biāo)。理想指標(biāo)應(yīng)當(dāng)具備以下特性:
- 精確性與確定性:既能準(zhǔn)確匹配答案,又能反映模型對生成內(nèi)容的不確定程度。
- 動態(tài)變化:隨著模型訓(xùn)練的深入,符合條件的數(shù)據(jù)量逐漸減少。
5. 工程化實踐
在實際應(yīng)用中,后訓(xùn)練數(shù)據(jù)篩選涉及多個層面的考量:
- 數(shù)據(jù)分類:將數(shù)據(jù)按邏輯、認(rèn)知、理解等多個層次分類。
- 能力提升:針對單項能力進(jìn)行優(yōu)化,隨后進(jìn)行跨類別的綜合優(yōu)化,以實現(xiàn)能力融合。
- 迭代優(yōu)化:通過多輪迭代優(yōu)化數(shù)據(jù)配比,逐步提升模型的整體性能。
6. 數(shù)學(xué)數(shù)據(jù)的重要性
使用少量數(shù)學(xué)相關(guān)的微調(diào)數(shù)據(jù),可以促進(jìn)模型在多項通用任務(wù)上獲得全面的能力提升。
四、問答環(huán)節(jié)
Q1:是否存在數(shù)據(jù)量維度的 scaling law,即數(shù)據(jù)量越大,模型效果越好?
A1:在數(shù)據(jù)量和模型效果之間存在類似于模型參數(shù)量維度的 scaling law。但關(guān)鍵在于數(shù)據(jù)質(zhì)量,高質(zhì)量的數(shù)據(jù)是提升模型效果的基礎(chǔ)。對于不同級別的模型,所需的高質(zhì)量數(shù)據(jù)量可能存在底線,這一底線需要通過實驗來探索。特別是對于大型模型,由于訓(xùn)練成本高昂,難以重復(fù)多次實驗,因此在實際操作中需通過追隨訓(xùn)練等方法逐步優(yōu)化。
Q2:數(shù)學(xué)數(shù)據(jù)的來源主要是什么?
A2:數(shù)學(xué)數(shù)據(jù)主要來源于各類題庫。市面上這類數(shù)據(jù)庫存有限,建議可通過小模型從網(wǎng)頁數(shù)據(jù)中提取數(shù)學(xué)知識相關(guān)內(nèi)容進(jìn)行擴(kuò)充。
Q3:不同領(lǐng)域的數(shù)據(jù)進(jìn)入模型訓(xùn)練的順序是否影響模型效果?
A3:數(shù)據(jù)進(jìn)入模型訓(xùn)練的順序確實有影響,但實際操作中難以全面評估所有可能的順序??梢酝ㄟ^領(lǐng)域細(xì)分和實驗來探究這一影響,但需要大量算力支持。
Q4:先導(dǎo)模型與主模型在結(jié)構(gòu)上需要怎樣的關(guān)聯(lián)?
A4:先導(dǎo)模型與主模型在結(jié)構(gòu)上可以有所差異,但需要先導(dǎo)模型能夠有效地反映數(shù)據(jù)質(zhì)量。目前尚無明確理論指導(dǎo)先導(dǎo)模型的選擇,但通常會選擇在較小參數(shù)量下訓(xùn)練效果較好的模型作為先導(dǎo)模型。
Q5:PDF 文件處理有哪些難點?在選擇或開發(fā) PDF 處理工具時應(yīng)注意什么?
A5:PDF 文件處理的難點在于需要同時處理公式、表格和不同版面等復(fù)雜元素。有效的 PDF 處理工具應(yīng)具備多種專用模型,如版面解析、表格處理和公式識別模型。特別需要注意的是,工具應(yīng)擅長處理公式與文本混排的情況。