【新智元導(dǎo)讀】剛剛,英偉達(dá)全新發(fā)布的開源模型 Nemotron-4 340B,有可能徹底改變訓(xùn)練 LLM 的方式!從此,或許各行各業(yè)都不再需要昂貴的真實(shí)世界數(shù)據(jù)集了。而且,Nemotron-4 340B 直接超越了 Mixtral 8x22B、Claude sonnet、Llama3 70B、Qwen 2,甚至可以和 GPT-4 掰手腕!
就在剛剛,英偉達(dá)再一次證明了自己的 AI 創(chuàng)新領(lǐng)域的領(lǐng)導(dǎo)地位。
它全新發(fā)布的 Nemotron-4 340B,是一系列具有開創(chuàng)意義的開源模型,有可能徹底改變訓(xùn)練 LLM 的合成數(shù)據(jù)生成方式!
論文地址:https://d1qx31qr3h6wln.cloudfront.net/publications/Nemotron_4_340B_8T_0.pdf
這一突破性進(jìn)展,標(biāo)志著 AI 行業(yè)的一個(gè)重要里程碑 ——
從此,各行各業(yè)都無(wú)需依賴大量昂貴的真實(shí)世界數(shù)據(jù)集了,用合成數(shù)據(jù),就可以創(chuàng)建性能強(qiáng)大的特定領(lǐng)域大語(yǔ)言模型!
現(xiàn)在,Nemotron-4 340B 已經(jīng)取得了輝煌戰(zhàn)績(jī),直接超越了 Mixtral 8x22B、Claude sonnet、Llama3 70B、Qwen 2,甚至可以和 GPT-4 一較高下!
具體來(lái)說(shuō),Nemotron-4 340B 包括基礎(chǔ)模型 Base、指令模型 Instruct 和獎(jiǎng)勵(lì)模型 Reward,并構(gòu)建了一個(gè)高質(zhì)量合成數(shù)據(jù)生成的完整流程。
模型支持 4K 上下文窗口、50 多種自然語(yǔ)言和 40 多種編程語(yǔ)言,訓(xùn)練數(shù)據(jù)截止到 2023 年 6 月。
訓(xùn)練數(shù)據(jù)方面,英偉達(dá)采用了高達(dá) 9 萬(wàn)億個(gè) token。其中,8 萬(wàn)億用于預(yù)訓(xùn)練,1 萬(wàn)億用于繼續(xù)訓(xùn)練以提高質(zhì)量。
值得一提的是,指令模型的訓(xùn)練是在 98% 的合成數(shù)據(jù)上完成的。
結(jié)果顯示,Nemotron-4-340B-Base 在常識(shí)推理任務(wù),如 ARC-Challenge、MMLU 和 BigBench Hard 基準(zhǔn)測(cè)試中,可以和 Llama-3 70B、Mixtral 8x22B 和 Qwen-2 72B 模型媲美。
而 Nemotron-4-340B-Instruct,在指令跟隨和聊天能力方面也超越了相應(yīng)的指令模型。
Nemotron-4-340B-Reward 在發(fā)表時(shí),在 RewardBench 上實(shí)現(xiàn)了最高準(zhǔn)確性,甚至超過(guò)了 GPT-4o-0513 和 Gemini 1.5 Pro-0514 這樣的專有模型。
在 BF16 精度下,模型的推理需要 8 塊 H200,或 16 塊 H100 / A100 80GB。如果是在 FP8 精度下,則只需 8 塊 H100。
除此之外,Nemotron-4 340B 還有一個(gè)非常顯著的特點(diǎn) —— 對(duì)商用十分友好的許可。
高級(jí)深度學(xué)習(xí)研究工程師 Somshubra Majumdar 對(duì)此表示大贊:「是的,你可以用它生成你想要的所有數(shù)據(jù)」
無(wú)與倫比的合成數(shù)據(jù)生成
LLM 無(wú)法獲得大規(guī)模、多樣化標(biāo)注數(shù)據(jù)集,怎么破?
Nemotron-4 340B 指令模型,可以幫助開發(fā)者生成合成訓(xùn)練數(shù)據(jù)。
這些多樣化的合成數(shù)據(jù),模仿了真實(shí)世界的數(shù)據(jù)特征,因而數(shù)據(jù)質(zhì)量明顯提升,從而提升了各領(lǐng)域定制 LLM 的性能和穩(wěn)定性。
而且,為了進(jìn)一步提高 AI 生成數(shù)據(jù)的質(zhì)量,開發(fā)者還可以用 Nemotron-4 340B 獎(jiǎng)勵(lì)模型,來(lái)篩選高質(zhì)量的響應(yīng)。
它會(huì)根據(jù)有用性、正確性、一致性、復(fù)雜性和冗長(zhǎng)性這 5 個(gè)屬性,對(duì)響應(yīng)評(píng)分。
另外,研究者可以使用自己的專用數(shù)據(jù),再結(jié)合 HelpSteer2 數(shù)據(jù)集,定制 Nemotron-4 340B 基礎(chǔ)模型,以創(chuàng)建自己的指令或獎(jiǎng)勵(lì)模型。
用 NeMo 微調(diào),用 TensorRT-LLM 優(yōu)化推理
利用開源的 NVIDIA NeMo 和 NVIDIA TensorRT-LLM,開發(fā)者可以優(yōu)化指令模型和獎(jiǎng)勵(lì)模型的效率,從而生成合成數(shù)據(jù),并對(duì)響應(yīng)進(jìn)行評(píng)分。
所有 Nemotron-4 340B 模型都利用張量并行性經(jīng)過(guò) TensorRT-LLM 優(yōu)化,這種模型并行性可以將單個(gè)權(quán)重矩陣分割到多個(gè) GPU 和服務(wù)器上,從而實(shí)現(xiàn)大規(guī)模高效推理。
其中,基礎(chǔ)模型可以使用 NeMo 框架進(jìn)行定制,以適應(yīng)特定的用例或領(lǐng)域。廣泛的預(yù)訓(xùn)練數(shù)據(jù)使得我們可以對(duì)它進(jìn)行微調(diào),并且為特定的下游任務(wù)提供更準(zhǔn)確的輸出。
通過(guò) NeMo 框架,英偉達(dá)提供了多種定制方法,包括監(jiān)督微調(diào)和參數(shù)高效微調(diào)方法,如低秩適應(yīng)(LoRA)。
為了提高模型質(zhì)量,開發(fā)者可以使用 NeMo Aligner 和由 Nemotron-4 340B 獎(jiǎng)勵(lì)模型標(biāo)注的數(shù)據(jù)集來(lái)對(duì)齊模型。
在各行業(yè)的潛在影響:從醫(yī)療到金融及其他領(lǐng)域
顯然,Nemotron-4 340B 對(duì)各行業(yè)的潛在影響是巨大的。
在醫(yī)療領(lǐng)域,如果能生成高質(zhì)量合成數(shù)據(jù),可能會(huì)帶來(lái)藥物發(fā)現(xiàn)、個(gè)性化醫(yī)療和醫(yī)學(xué)影像方面的突破。
在金融領(lǐng)域,基于合成數(shù)據(jù)訓(xùn)練的定制大語(yǔ)言模型,則可能會(huì)徹底改變欺詐檢測(cè)、風(fēng)險(xiǎn)評(píng)估和客戶服務(wù)。
在制造業(yè)和零售業(yè)方面,特定領(lǐng)域的 LLM 可以實(shí)現(xiàn)預(yù)測(cè)性維護(hù)、供應(yīng)鏈優(yōu)化和個(gè)性化客戶體驗(yàn)。
不過(guò),Nemotron-4 340B 的發(fā)布,也提出了一些隱憂,比如數(shù)據(jù)隱私和安全怎樣保證?
隨著以后合成數(shù)據(jù)的普及,企業(yè)是否有防護(hù)措施來(lái)保護(hù)敏感信息,并防止濫用?
如果用合成數(shù)據(jù)訓(xùn)練 AI 模型,是否會(huì)引發(fā)倫理問題,比如數(shù)據(jù)中的偏見和不準(zhǔn)確可能引發(fā)意料外的后果?
但至少在目前,越來(lái)越多跡象表明,只有合成數(shù)據(jù)才是未來(lái)。
預(yù)訓(xùn)練
下面,我們就來(lái)看看,英偉達(dá)都提出了哪些創(chuàng)新的方法:
數(shù)據(jù)
預(yù)訓(xùn)練數(shù)據(jù)是基于三種不同類型的混合,共有 9T token。其中,前 8T 用于正式預(yù)訓(xùn)練階段,最后 1T 用于繼續(xù)預(yù)訓(xùn)練階段。
英語(yǔ)自然語(yǔ)言(70%):由不同來(lái)源和領(lǐng)域的精選文檔組成,包括網(wǎng)頁(yè)文檔、新聞文章、科學(xué)論文、書籍等。
多語(yǔ)種自然語(yǔ)言(15%):包含 53 種自然語(yǔ)言,由單語(yǔ)語(yǔ)料庫(kù)和平行語(yǔ)料庫(kù)中的文檔構(gòu)成。
代碼(15%):包含 43 種編程語(yǔ)言。
架構(gòu)
與 Nemotron-4-15B-Base 類似,Nemotron-4-340B-Base 基于的也是僅解碼器 Transformer 架構(gòu)。
具體來(lái)說(shuō),模型使用因果注意力掩碼來(lái)確保序列的一致性,并采用旋轉(zhuǎn)位置嵌入(RoPE)、SentencePiece 分詞器、分組查詢注意力(GQA),以及在 MLP 層中使用平方 ReLU 激活。
此外,模型沒有偏置項(xiàng),丟棄率為零,輸入輸出嵌入不綁定。
模型超參數(shù)如表 1 所示,有 94 億個(gè)嵌入?yún)?shù)和 3316 億個(gè)非嵌入?yún)?shù)。
訓(xùn)練
Nemotron-4-340B-Base 使用 768 個(gè) DGX H100 節(jié)點(diǎn)進(jìn)行訓(xùn)練,每個(gè)節(jié)點(diǎn)包含 8 個(gè)基于 NVIDIA Hopper 架構(gòu)的 H100 80GB SXM5 GPU。
每個(gè) H100 GPU 在進(jìn)行 16 位浮點(diǎn)(BF16)運(yùn)算時(shí),峰值吞吐量為 989 teraFLOP / s(不含稀疏運(yùn)算)。
英偉達(dá)采用了 8 路張量并行、12 路交錯(cuò)流水線并行和數(shù)據(jù)并行相結(jié)合的方法,并使用了分布式優(yōu)化器,將優(yōu)化器狀態(tài)分片到數(shù)據(jù)并行副本上,以減少訓(xùn)練的內(nèi)存占用。
表 2 總結(jié)了批大小增加的 3 個(gè)階段,包括每次迭代時(shí)間,以及 GPU 利用率(MFU)等,其中 100% 是理論峰值。
評(píng)估
在這一部分,我們報(bào)告了 Nemotron-4-340B-Base 的評(píng)估結(jié)果。我們將該模型
表 3 是 Nemotron-4-340B-Base 與 Llama-3 70B、Mistral 8x22 和 Qwen-2 72B 三款開源模型的比較結(jié)果。
可以看到,Nemotron-4-340B-Base 在常識(shí)推理任務(wù)以及像 BBH 這樣的流行基準(zhǔn)測(cè)試中拿下了 SOTA,并在 MMLU 和 HumanEval 等代碼基準(zhǔn)測(cè)試中位列第二。
對(duì)齊
獎(jiǎng)勵(lì)模型構(gòu)建
獎(jiǎng)勵(lì)模型在模型對(duì)齊中起著至關(guān)重要的作用,是訓(xùn)練強(qiáng)指令跟隨模型時(shí)用于偏好排序和質(zhì)量過(guò)濾的重要評(píng)判者。
為了開發(fā)一個(gè)強(qiáng)大的獎(jiǎng)勵(lì)模型,英偉達(dá)收集了一個(gè)包含 10k 人類偏好數(shù)據(jù)的數(shù)據(jù)集 ——HelpSteer2。
與成對(duì)排名模型不同,多屬性回歸獎(jiǎng)勵(lì)模型在區(qū)分真實(shí)有用性和無(wú)關(guān)偽影(如僅因長(zhǎng)度而偏好較長(zhǎng)但無(wú)用的回復(fù))方面更有效。此外,回歸模型在預(yù)測(cè)細(xì)粒度獎(jiǎng)勵(lì)、捕捉相似回復(fù)之間的有用性細(xì)微差別方面表現(xiàn)更好。
回歸獎(jiǎng)勵(lì)模型建立在 Nemotron-4-340B-Base 模型之上,通過(guò)用一個(gè)新的獎(jiǎng)勵(lì)「頭」替換模型的最終 softmax 層。
這個(gè)「頭」是一個(gè)線性投影,將最后一層的隱藏狀態(tài)映射到一個(gè)包含 HelpSteer 屬性(有用性、正確性、一致性、復(fù)雜性、冗長(zhǎng)性)的五維向量。
在推理過(guò)程中,這些屬性值可以通過(guò)加權(quán)求和聚合為一個(gè)總體獎(jiǎng)勵(lì)。
數(shù)據(jù)對(duì)齊
值得注意的是,在整個(gè)對(duì)齊過(guò)程中,英偉達(dá)僅使用了大約 20K 的人工標(biāo)注數(shù)據(jù),而數(shù)據(jù)生成管線則生成了用于監(jiān)督微調(diào)和偏好微調(diào)的 98% 以上的數(shù)據(jù)。
提示生成準(zhǔn)備
生成合成提示,是合成數(shù)據(jù)生成(SDG)的第一步。
這些提示在不同維度上的多樣性至關(guān)重要,包括任務(wù)多樣性(如寫作、開放問答、封閉問答)、主題多樣性(如 STEM、人文、日常生活)和指令多樣性(如 JSON 輸出、段落數(shù)量、是或否回答)。
對(duì)此,英偉達(dá)使用 Mixtral-8x7B-Instruct-v0.1 作為生成器,分別對(duì)這些任務(wù)的合成提示進(jìn)行了生成。
單輪合成提示
為了收集多樣化的主題,英偉達(dá)先引導(dǎo)生成器輸出一組多樣化的宏觀主題,然后再為每個(gè)合成的宏觀主題生成相關(guān)的子主題。
加上人工收集的,最終得到的主題達(dá)到了 3K 個(gè)。
用于合成提示生成的提示如下:
合成指令跟隨提示
為了提升對(duì)于對(duì)齊模型至關(guān)重要的指令跟隨能力,就需要生成合成的指令跟隨提示(例如,「寫一篇關(guān)于機(jī)器學(xué)習(xí)的文章,你的回答應(yīng)包含三個(gè)段落」)。
具體來(lái)說(shuō),先隨機(jī)選擇一些合成提示。對(duì)于每個(gè)合成提示,從「可驗(yàn)證」指令模板中隨機(jī)生成一個(gè)合成指令(例如,「你的回答應(yīng)包含三個(gè)段落」)。然后,使用手動(dòng)定義的模板將提示和指令連接在一起。
除了單輪指令跟隨提示外,英偉達(dá)還構(gòu)建了多輪指令跟隨提示,這些指令適用于所有未來(lái)的對(duì)話(例如「根據(jù)以下指令回答問題和所有后續(xù)問題:[指令開始] 用三個(gè)段落回答。[指令結(jié)束]」)。
此外,英偉達(dá)還構(gòu)建了第二輪指令跟隨提示,可以根據(jù)給定的指令修改之前的回答。
合成兩輪提示
為了在偏好微調(diào)中提高模型的多輪對(duì)話能力,英偉達(dá)構(gòu)建了兩輪提示來(lái)建立偏好數(shù)據(jù)集。
具體來(lái)說(shuō),提示包含一個(gè)用戶問題,一個(gè)助手回答,和另一個(gè)用戶問題,形式為「用戶:XXX;助手:XXX;用戶:XXX;」。
英偉達(dá)從 ShareGPT 中獲取第一個(gè)用戶提示,并使用中間指令模型生成助手回答和下一輪問題。
真實(shí)世界的 LMSYS 提示
為了更好地模擬真實(shí)世界的用戶請(qǐng)求,英偉達(dá)將 LMSYS-Chat-1M 中的提示按平衡比例進(jìn)行組合,并將其分為兩個(gè)不同的集合,一個(gè)用于監(jiān)督學(xué)習(xí),另一個(gè)用于偏好學(xué)習(xí)。
在監(jiān)督學(xué)習(xí)部分,英偉達(dá)移除了 LMSYS 中被標(biāo)記為潛在不安全的提示,以避免引發(fā)不良對(duì)話。但在偏好學(xué)習(xí)部分則進(jìn)行了保留,以便模型能夠?qū)W習(xí)如何區(qū)分安全和不安全的響應(yīng)。
從圖 3 中可以看到,合成提示的平均有用性高于 LMSYS 提示。由于簡(jiǎn)單提示更容易「有用」,這意味著 LMSYS 提示比合成單輪提示平均來(lái)說(shuō)更難且更復(fù)雜。
合成對(duì)話生成
通過(guò)監(jiān)督微調(diào),模型就可以學(xué)習(xí)到,如何以對(duì)話形式與用戶互動(dòng)。
英偉達(dá)通過(guò)提示指令模型生成基于輸入提示的響應(yīng),來(lái)啟動(dòng)合成對(duì)話。
為了培養(yǎng)多輪對(duì)話能力,他們把每個(gè)對(duì)話設(shè)計(jì)成包含三輪,好讓對(duì)話流程更加動(dòng)態(tài)、更有互動(dòng)性。
通過(guò)迭代角色扮演,模型會(huì)交替模擬助手和用戶的角色。
英偉達(dá)發(fā)現(xiàn),為了在用戶回合中引導(dǎo)所需的行為,就需要提供明確的提示來(lái)定義不同的用戶個(gè)性。
并且,附上對(duì)話歷史是至關(guān)重要的。
他們對(duì)用戶回合進(jìn)行了后處理,排除了禮貌陳述(如「謝謝你...」,「當(dāng)然,我很高興...」)來(lái)模擬真實(shí)世界的用戶問題。
生成演示數(shù)據(jù),是采用的貪婪采樣方法。
此外,英偉達(dá)會(huì)使用 Nemotron4-340B-Reward 評(píng)估對(duì)話質(zhì)量,為每個(gè)樣本分配一個(gè)分?jǐn)?shù),并過(guò)濾掉那些低于預(yù)定閾值的樣本。
這就提供了額外的質(zhì)量控制層,保證保留下來(lái)的都是高質(zhì)量數(shù)據(jù)。
合成偏好數(shù)據(jù)生成
英偉達(dá)使用了 10K 人工標(biāo)注的 HelpSteer2 偏好數(shù)據(jù),來(lái)訓(xùn)練 Nemotron-4-340B-Reward。
不過(guò),他們還需要具有更廣泛提示領(lǐng)域、更高質(zhì)量響應(yīng)的偏好數(shù)據(jù),這些響應(yīng)來(lái)自頂級(jí)的中間模型,并在可能的情況下包含額外的真實(shí)信號(hào)。
因此,英偉達(dá)生成了三元組形式的合成偏好數(shù)據(jù)(提示,選擇的響應(yīng),被拒絕的響應(yīng))。
生成響應(yīng)
偏好數(shù)據(jù)包含合成的單輪提示、指令跟隨提示、雙輪提示,以及來(lái)自真實(shí)世界的提示,包括 ShareGPT 提示、LMSYS 提示、GSM8K 和 MATH 訓(xùn)練數(shù)據(jù)集中的提示。
對(duì)于每個(gè)提示,英偉達(dá)都使用了隨機(jī)的中間模型生成響應(yīng)。
通過(guò)多個(gè)模型生成響應(yīng),就能確保偏好數(shù)據(jù)集具有多樣化的響應(yīng),以供模型學(xué)習(xí)。
此外,他們還生成了更具挑戰(zhàn)性的合成偏好示例,這些示例是根據(jù) MT-Bench 從表現(xiàn)最好的模型中多次隨機(jī)生成的響應(yīng),這樣就可以進(jìn)一步提升模型的性能。
以基準(zhǔn)真相作為判斷標(biāo)準(zhǔn)
對(duì)于每個(gè)提示給出的多個(gè)響應(yīng),英偉達(dá)都需要對(duì)其偏好排序進(jìn)行判斷,并選擇出被選中的響應(yīng)和被拒絕的響應(yīng)。
一些任務(wù)可以使用基準(zhǔn)真相(例如 GSM8K 和 MATH 訓(xùn)練數(shù)據(jù)集中的答案)或驗(yàn)證器(例如指令跟隨響應(yīng)可以用 Python 程序驗(yàn)證)來(lái)評(píng)估。
以 LLM / 獎(jiǎng)勵(lì)模型為裁判
大多數(shù)提示,是沒有客觀答案的。因此,英偉達(dá)嘗試了以大語(yǔ)言模型為裁判和以獎(jiǎng)勵(lì)模型為裁判。
在第一種情況中,英偉達(dá)向裁判的大語(yǔ)言模型提供提示和兩個(gè)響應(yīng),并要求其比較這兩個(gè)響應(yīng)。
為了避免位置偏差,他們會(huì)交換響應(yīng)順序后,再次詢問大語(yǔ)言模型。當(dāng)大語(yǔ)言模型兩次判斷一致時(shí),就會(huì)選出有效的三元組(提示、被選中的、被拒絕的)。
另外,為了進(jìn)一步探索了以獎(jiǎng)勵(lì)模型為裁判的情況,英偉達(dá)要求 Nemotron-4-340B-Reward 預(yù)測(cè)每個(gè)(提示、響應(yīng))對(duì)的獎(jiǎng)勵(lì),并根據(jù)獎(jiǎng)勵(lì)決定偏好排序。
獎(jiǎng)勵(lì)基準(zhǔn)得分顯示以,獎(jiǎng)勵(lì)模型為裁判的準(zhǔn)確性,要高于以大語(yǔ)言模型為裁判。
特別是在 Chat-Hard 類別中,選擇的響應(yīng)和被拒絕的響應(yīng)難以區(qū)分,以獎(jiǎng)勵(lì)模型為裁判的表現(xiàn),要遠(yuǎn)優(yōu)于以大語(yǔ)言模型為裁判,平均準(zhǔn)確率為 0.87 對(duì) 0.54。
在這個(gè)過(guò)程中,英偉達(dá)注意到:Chat-Hard 類別的評(píng)分對(duì)于合成數(shù)據(jù)生成中的偏好排序特別重要。
因此,在后來(lái)的數(shù)據(jù)集迭代中,他們轉(zhuǎn)而使用以獎(jiǎng)勵(lì)模型為裁判。
從弱到強(qiáng)的迭代對(duì)齊
如前所述,高質(zhì)量的數(shù)據(jù)對(duì)于模型的對(duì)齊至關(guān)重要。
在數(shù)據(jù)合成過(guò)程中,需要一個(gè)對(duì)齊的大語(yǔ)言模型來(lái)準(zhǔn)確遵循指令。
這就引發(fā)了一系列重要的問題:哪個(gè)模型最適合作為生成器?生成器的強(qiáng)度與數(shù)據(jù)質(zhì)量之間有何關(guān)系?如何改進(jìn)數(shù)據(jù)生成器?
受到弱到強(qiáng)泛化的啟發(fā),英偉達(dá)開發(fā)了一種新穎的迭代方法,逐步優(yōu)化數(shù)據(jù)。這種方法結(jié)合了對(duì)齊訓(xùn)練與數(shù)據(jù)合成的優(yōu)勢(shì),使它們能夠相互增強(qiáng),并且持續(xù)改進(jìn)。
圖 4 展示了從弱到強(qiáng)的迭代對(duì)齊的工作流程。
首先,使用一個(gè)初始對(duì)齊模型來(lái)生成對(duì)話和偏好數(shù)據(jù)。然后,通過(guò)監(jiān)督微調(diào)和偏好調(diào)優(yōu),利用它們對(duì)更好的基礎(chǔ)模型進(jìn)行對(duì)齊。
有趣的是,英偉達(dá)發(fā)現(xiàn),教師模型并不會(huì)限制學(xué)生模型的上限 ——
隨著基礎(chǔ)模型和對(duì)齊數(shù)據(jù)的改進(jìn),新對(duì)齊的模型能夠顯著超過(guò)初始對(duì)齊模型。注意,對(duì)齊過(guò)程與基礎(chǔ)模型的預(yù)訓(xùn)練是并行進(jìn)行的。
在第一次迭代中,英偉達(dá)選擇了 Mixtral-8x7B-Instruct-v0.1 作為初始對(duì)齊模型,因?yàn)樗且粋€(gè)具有許可的強(qiáng)大模型。
生成的數(shù)據(jù)用于訓(xùn)練 Nemotron-4-340B-Base 的一個(gè)中間檢查點(diǎn),稱為 340B-Interm-1-Base。
值得注意的是,340B-Interm-1-Base 的表現(xiàn)優(yōu)于 Mixtral 8x7B 基礎(chǔ)模型,這反過(guò)來(lái)使得最終的 340B-Interm-1-Instruct 模型,能夠超過(guò) Mixtral-8x7B-Instruct-v0.1 模型。
這就證明,可以通過(guò)弱監(jiān)督引出模型強(qiáng)大的能力。
在第二次迭代中,英偉達(dá)使用生成的 340B-Interm-1-Instruct 模型,作為新的數(shù)據(jù)生成器。
由于它比 Mixtral-8x7B-Instruct-v0.1 更強(qiáng),第二次迭代生成的合成數(shù)據(jù)質(zhì)量就更高。
生成的數(shù)據(jù)用于訓(xùn)練 340B-Interm-2-Base 模型,使其升級(jí)為 340B-Interm-2-Chat 模型。
這個(gè)迭代過(guò)程形成了一個(gè)自我強(qiáng)化的飛輪效應(yīng),改進(jìn)主要來(lái)自兩個(gè)方面 ——
1)當(dāng)使用相同的數(shù)據(jù)集時(shí),基礎(chǔ)模型的強(qiáng)度直接影響指令模型的強(qiáng)度,基礎(chǔ)模型越強(qiáng),指令模型也越強(qiáng);
2)當(dāng)使用相同的基礎(chǔ)模型時(shí),數(shù)據(jù)集的質(zhì)量決定了指令模型的效果,數(shù)據(jù)質(zhì)量越高,指令模型也越強(qiáng)。
在整個(gè)對(duì)齊過(guò)程中,英偉達(dá)進(jìn)行了多輪數(shù)據(jù)生成和改進(jìn),不斷提升模型的質(zhì)量。
附加數(shù)據(jù)源
此外,英偉達(dá)還結(jié)合了多個(gè)補(bǔ)充數(shù)據(jù)集,以賦予模型特定的能力。
主題跟隨
主題連貫性和細(xì)粒度指令跟隨是,指令模型的重要能力。
因此,英偉達(dá)結(jié)合了 CantTalkAboutThis 訓(xùn)練集,其中包括了覆蓋廣泛主題的合成對(duì)話,并故意插入干擾回合以分散聊天機(jī)器人對(duì)主要主題的注意力。
這就能幫助模型,在任務(wù)導(dǎo)向的交互中更好地專注于預(yù)定的主題。
無(wú)法完成的任務(wù)
某些任務(wù)可能由于需要特定的能力(如互聯(lián)網(wǎng)訪問或?qū)崟r(shí)知識(shí))而無(wú)法由模型獨(dú)立完成。
為減少這種情況下的幻覺,英偉達(dá)采用少樣本方法,使用人類編寫的示例來(lái)提示大語(yǔ)言模型生成各種問題。
然后,他們會(huì)明確要求大語(yǔ)言模型以拒絕的方式回應(yīng),收集這些回應(yīng),并將其與相應(yīng)的問題配對(duì)。
這些配對(duì)數(shù)據(jù)就可以用于訓(xùn)練模型,讓它們能夠更好地處理無(wú)法完成的任務(wù)。
STEM 數(shù)據(jù)集
Open-Platypus 已被證明可以提高 STEM 和邏輯知識(shí)。因此,英偉達(dá)將具有許可的子集(如 PRM800K、SciBench、ARB 、openbookQA)納入訓(xùn)練數(shù)據(jù)中。
基于文檔的推理和問答
基于文檔的問答是大語(yǔ)言模型的重要用例。
英偉達(dá)利用 FinQA 數(shù)據(jù)集提高了數(shù)值的推理能力,使用人工標(biāo)注數(shù)據(jù)提高了上下文問答的準(zhǔn)確性,并使用 wikitablequestions 數(shù)據(jù)集,增強(qiáng)了模型對(duì)半結(jié)構(gòu)化數(shù)據(jù)的理解。
函數(shù)調(diào)用
此外,英偉達(dá)還使用了一部分來(lái)自 Glaive AI 的樣本,以增強(qiáng)模型在函數(shù)調(diào)用方面的能力。
對(duì)齊算法
分階段的監(jiān)督微調(diào)
監(jiān)督微調(diào)(Supervised Fine-tuning,SFT)是模型對(duì)齊的第一步。
為了改善傳統(tǒng) SFT 方法存在的缺陷,英偉達(dá)設(shè)計(jì)了一種兩階段的 SFT 策略,使模型能夠依次、有計(jì)劃地學(xué)習(xí)不同的行為。
結(jié)果顯示,這種方法在所有下游任務(wù)中都產(chǎn)生了更好的效果。
代碼 SFT
為了在不影響其他任務(wù)的情況下提高編碼和推理能力,英偉達(dá)選擇先在編碼數(shù)據(jù)上進(jìn)行 SFT。
為了獲得大量的數(shù)據(jù),英偉達(dá)開發(fā)了一種名為 Genetic Instruct 的全新方法 —— 通過(guò)對(duì)進(jìn)化過(guò)程的模擬,利用自我指令和向?qū)Ь幋a器突變,從少量高質(zhì)量種子生成大量合成樣本。
過(guò)程中,英偉達(dá)還引入了一種適應(yīng)度函數(shù),利用 LLM 評(píng)估生成指令及其解決方案的正確性和質(zhì)量。
然后,通過(guò)這些評(píng)估和檢查的樣本會(huì)被添加到種群池中,進(jìn)化過(guò)程會(huì)持續(xù)進(jìn)行,直到達(dá)到目標(biāo)種群規(guī)模。
最終,經(jīng)過(guò)廣泛的去重和過(guò)濾后,英偉達(dá)保留了大約 80 萬(wàn)條樣本用于代碼 SFT 訓(xùn)練。
通用 SFT
第二階段,就是通用 SFT 了。
這里,英偉達(dá)采用的是一個(gè)包含 20 萬(wàn)樣本的混合數(shù)據(jù)集。
為了減輕遺忘的風(fēng)險(xiǎn),數(shù)據(jù)混合中還包括了前一個(gè)代碼 SFT 階段的 2% 的代碼生成樣本。
偏好微調(diào)
在完成監(jiān)督微調(diào)后,英偉達(dá)繼續(xù)通過(guò)偏好微調(diào)來(lái)改進(jìn)模型。
在這個(gè)階段,模型將學(xué)習(xí)偏好示例,其形式是:提示,選擇的響應(yīng),被拒絕的響應(yīng)。
直接偏好優(yōu)化(DPO)
DPO 算法通過(guò)優(yōu)化策略網(wǎng)絡(luò),來(lái)最大化選擇和被拒絕響應(yīng)之間的隱含獎(jiǎng)勵(lì)差距。
在策略學(xué)習(xí)區(qū)分選擇和被拒絕的響應(yīng)時(shí),可以觀察到,隨著差距的增加,選擇和被拒絕響應(yīng)的概率都在一致地下降,即使選擇的響應(yīng)是高質(zhì)量的。
根據(jù)經(jīng)驗(yàn),當(dāng)訓(xùn)練時(shí)間足夠長(zhǎng)時(shí),策略網(wǎng)絡(luò)容易過(guò)擬合,一個(gè)指標(biāo)(例如,MT-Bench)的改進(jìn)通常伴隨著其他指標(biāo)(例如,零樣本 MMLU)的退化。
為了解決這些問題,英偉達(dá)在選擇的響應(yīng)上添加了加權(quán)的 SFT 損失,以補(bǔ)充原始的 DPO 損失。
額外的 SFT 損失有助于防止策略網(wǎng)絡(luò)大幅偏離偏好數(shù)據(jù),特別是因?yàn)槠脭?shù)據(jù)不是從參考策略生成的。
為了避免模型學(xué)習(xí)低質(zhì)量的選擇響應(yīng),當(dāng)沒有可用的真實(shí)值時(shí),英偉達(dá)使用了 Nemotron-4-340B-Reward 來(lái)挑選高質(zhì)量的選擇響應(yīng)示例。最終,這產(chǎn)生了一個(gè)包含 16 萬(wàn)示例的偏好數(shù)據(jù)集。
獎(jiǎng)勵(lì)感知偏好優(yōu)化(RPO)
為了解決 DPO 存在的過(guò)擬合問題,英偉達(dá)提出了一種新算法 —— 獎(jiǎng)勵(lì)感知偏好優(yōu)化(RPO)。它嘗試使用由策略網(wǎng)絡(luò)定義的隱含獎(jiǎng)勵(lì)近似獎(jiǎng)勵(lì)差距。
基于此,便得到了一個(gè)新的損失函數(shù):
結(jié)果顯示,隨著 RPO 迭代次數(shù)的增加,模型還可以持續(xù)地在所有任務(wù)上獲得提升。
經(jīng)過(guò)三次 RPO 訓(xùn)練迭代后的檢查點(diǎn),就是最終的 Nemotron-4-340B-Instruct。
指令模型評(píng)估
自動(dòng)基準(zhǔn)測(cè)試
英偉達(dá)對(duì) Nemotron-4-340B-Instruct 進(jìn)行了全面的自動(dòng)基準(zhǔn)測(cè)試評(píng)估:
單輪對(duì)話:AlpacaEval 2.0 LC 和 Arena Hard
多輪對(duì)話:MT-Bench(GPT-4-Turbo)。需要注意的是,這是原始 MT-Bench 的修正版本,得分平均要低 0.8 分。
綜合基準(zhǔn)測(cè)試:MMLU(零樣本)
數(shù)學(xué):GSM8K(零樣本)
代碼:HumanEval(零樣本)和 MBPP(零樣本)上的 Pass@1 得分
指令跟隨:IFEval
主題跟隨:TFEval
正如表 5 所示,Nemotron-4-340B-Instruct 在當(dāng)前可用的開源模型中表現(xiàn)出色,具備很強(qiáng)的競(jìng)爭(zhēng)力。
對(duì)齊訓(xùn)練包括:代碼 SFT、通用 SFT、DPO 和三輪 RPO。
表 6 展示了模型最終的成績(jī),并量化了每個(gè)對(duì)齊階段的中間模型的性能:
CodeSFT 階段顯著提高了 HumanEval 得分,從基礎(chǔ)模型的 57.3 提升到 70.7;
接下來(lái)的通用 SFT 階段大幅提升了其他類別的準(zhǔn)確性,如 MT-Bench 和 MMLU,盡管 HumanEval 得分略有下降;
DPO 階段進(jìn)一步提升了大多數(shù)指標(biāo),但 MT-Bench 的得分略有下降;
最后的 RPO 階段均勻地提升了所有指標(biāo)。特別是,MT-Bench 得分從 7.90 增加到 8.22,IFEval Prompt-Strict-Acc 的得分從 61.7 增加到 79.9。
人類評(píng)估
除了自動(dòng)評(píng)估外,英偉達(dá)模型進(jìn)行了人類評(píng)估。其中,標(biāo)注員被提供了 136 個(gè)提示,分為 10 個(gè)不同的任務(wù)類別。
基于「有用性」和「真實(shí)性」這兩個(gè)維度,英偉達(dá)詳細(xì)定義了 5 個(gè)質(zhì)量等級(jí)的具體內(nèi)容,從而在減少了主觀性的同時(shí),提升了可靠性。
在標(biāo)注設(shè)計(jì)中,每個(gè)提示都與固定模型集合中的三個(gè)不同響應(yīng)配對(duì)。每個(gè)提示的響應(yīng)順序是隨機(jī)的,所有提示和響應(yīng)都由同一組標(biāo)注員進(jìn)行評(píng)估。
標(biāo)注完成后,將評(píng)分轉(zhuǎn)換為相對(duì)于 GPT-4-1106-preview 的相對(duì)勝 / 平 / 負(fù)率。
從圖 5 中可以看到,除了提取和重寫任務(wù)外,Nemotron-4-340B-Instruct 的勝率與 GPT-4-1106-preview 相當(dāng)或更好,特別是在多輪對(duì)話中表現(xiàn)出色。
整體來(lái)說(shuō),Nemotron-4-340B-Instruct 的勝:平:負(fù)比率為 28.19%:46.57%:25.24%。
從表 7 中則可以看到,與 GPT-4-1106-preview 相比,標(biāo)注員認(rèn)為 Nemotron-4-340B-Instruct 的響應(yīng)長(zhǎng)度更為合適(79.41% 對(duì) 74.02%)。
值得注意的是,這一優(yōu)勢(shì)主要來(lái)自較低的長(zhǎng) / 冗長(zhǎng)響應(yīng)率(20.10% 對(duì) 25.74%)。
作者
參考資料:
https://blogs.nvidia.com/blog/nemotron-4-synthetic-data-generation-llm-training/
https://venturebeat.com/ai/nvidias-nemotron-4-340b-model-redefines-synthetic-data-generation-rivals-gpt-4/
本文來(lái)自微信公眾號(hào):新智元 (ID:AI_era)
廣告聲明:文內(nèi)含有的對(duì)外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時(shí)間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。