AIxiv專欄是本站發(fā)布學(xué)術(shù)、技術(shù)內(nèi)容的欄目。過去數(shù)年,本站AIxiv專欄接收?qǐng)?bào)道了2000多篇內(nèi)容,覆蓋全球各大高校與企業(yè)的頂級(jí)實(shí)驗(yàn)室,有效促進(jìn)了學(xué)術(shù)交流與傳播。如果您有優(yōu)秀的工作想要分享,歡迎投稿或者聯(lián)系報(bào)道。投稿郵箱:liyazhou@jiqizhixin.com;zhaoyunfeng@jiqizhixin.com本文主要作者來自清華大學(xué)和卡內(nèi)基梅隆大學(xué)(CMU)。共同一作為清華大學(xué)計(jì)算機(jī)系本科畢業(yè)生趙晨陽,卡內(nèi)基梅隆大學(xué)碩士生賈雪瑩。
雖然大規(guī)模語言模型(LLM)在許多自然語言處理任務(wù)中表現(xiàn)優(yōu)異,但在具體任務(wù)中的效果卻不盡如人意。為了提升模型在特定自然語言任務(wù)上的表現(xiàn),現(xiàn)有的方法主要依賴于高質(zhì)量的人工標(biāo)注數(shù)據(jù)。這類數(shù)據(jù)的收集過程既耗時(shí)又費(fèi)力,對(duì)于數(shù)據(jù)稀缺的任務(wù)尤為困難。
為了解決這個(gè)問題,一些研究嘗試通過強(qiáng)大的 Teacher Model 生成訓(xùn)練數(shù)據(jù),來增強(qiáng) Student Model 在特定任務(wù)上的性能。然而,這種方法在成本、可擴(kuò)展性和法律合規(guī)性方面仍面臨諸多挑戰(zhàn)。在無法持續(xù)獲得高質(zhì)量人類監(jiān)督信號(hào)的情況下,如何持續(xù)迭代模型的能力,成為了亟待解決的問題。
來自卡內(nèi)基梅隆大學(xué)和清華大學(xué)的研究團(tuán)隊(duì)提出了 SELF-GUIDE 方法。該方法通過語言模型自身生成任務(wù)特定的數(shù)據(jù)集,并在該數(shù)據(jù)集上進(jìn)行微調(diào),從而顯著提升模型在特定任務(wù)上的能力,無需依賴大量外部高質(zhì)量數(shù)據(jù)或更強(qiáng)大的 Teacher Model。具體來說,在外部輸入大約 3 個(gè)樣例的情況下,SELF-GUIDE 采用多階段的生成和過濾機(jī)制,利用模型生成的合成數(shù)據(jù)進(jìn)行微調(diào),使模型在特定任務(wù)上的表現(xiàn)更加出色。
論文地址:https://arxiv.org/abs/2407.12874代碼倉庫:https://hub.com/zhaochenyang20/Prompt2Model- SELF-GUIDE
圖 1:SELF-GUIDE 利用模型自主合成數(shù)據(jù)的能力提升模型執(zhí)行特定任務(wù)的能力。
方法
具體來說,研究團(tuán)隊(duì)將 SELF-GUIDE 方法分解為三個(gè)主要階段:輸入數(shù)據(jù)生成、輸出數(shù)據(jù)生成和質(zhì)量?jī)?yōu)化。
輸入數(shù)據(jù)生成
在 SELF-GUIDE 框架的設(shè)計(jì)和實(shí)現(xiàn)過程中,研究者首先根據(jù)任務(wù)類型(生成型任務(wù)或分類型任務(wù))指定不同的提示模板。對(duì)于生成型任務(wù),SELF-GUIDE 框架使用一個(gè)相對(duì)簡(jiǎn)單的提示模板。而對(duì)于分類型任務(wù),SELF-GUIDE 框架則采用了另一種策略。對(duì)于分類任務(wù),SELF-GUIDE 框架首先從全部標(biāo)簽空間中隨機(jī)選擇一個(gè)標(biāo)簽,將其作為條件生成的偽標(biāo)簽,指導(dǎo)輸入數(shù)據(jù)的生成。選定偽標(biāo)簽后,SELF-GUIDE 框架使用較為復(fù)雜的條件生成模板,引導(dǎo)模型生成與所選偽標(biāo)簽相對(duì)應(yīng)的輸入內(nèi)容。
圖 2:SELF-GUIDE 的核心在于一個(gè)高效的多階段生成機(jī)制,其中語言模型逐步生成輸入-輸出數(shù)據(jù)組合。經(jīng)過生成和過濾后,自生成的數(shù)據(jù)進(jìn)一步用于微調(diào)語言模型本身。此圖描述了 SELF-GUIDE 針對(duì)生成任務(wù)的流程。
選定模板并填充示例(few-shot examples)后,完整的提示被傳遞給 LLM,以生成輸入數(shù)據(jù)。每輪提示后,新生成的輸入會(huì)被添加到輸入庫中。從這個(gè)庫中隨機(jī)抽取一部分輸入,并與初始示例中的輸入合并,形成新的提示,逐步擴(kuò)展 LLM 生成的輸入集并且減少重復(fù)。SELF-GUIDE 僅進(jìn)行一輪輸入生成,隨后在質(zhì)量?jī)?yōu)化階段,應(yīng)用基于規(guī)則的過濾器來去除低質(zhì)量的輸入。
圖 3:此圖描述了 SELF-GUIDE 完成分類任務(wù)的過程。對(duì)于分類任務(wù)的數(shù)據(jù),SELF-GUIDE 首先生成偽標(biāo)簽,然后生成對(duì)應(yīng)的輸入,最后重新生成真實(shí)標(biāo)簽。
輸出數(shù)據(jù)生成
輸出數(shù)據(jù)生成階段采用了典型的上下文學(xué)習(xí)方法:研究者向模型提供任務(wù)指令和原始示例,使模型對(duì)輸入生成階段產(chǎn)生的每一個(gè)輸入進(jìn)行標(biāo)注。在獲取所有輸出后,再進(jìn)行一輪基于規(guī)則的過濾,以選擇最終的合成數(shù)據(jù)集。
質(zhì)量?jī)?yōu)化
生成數(shù)據(jù)的質(zhì)量對(duì)于下游訓(xùn)練的成功至關(guān)重要。SELF-GUIDE 采用了兩種策略來提高質(zhì)量:調(diào)整生成參數(shù)以提高生成質(zhì)量并基于規(guī)則過濾掉低質(zhì)量樣本。
調(diào)整溫度:調(diào)整溫度是一種平衡多樣性和質(zhì)量的常見策略。SELF-GUIDE 框架在輸入生成階段使用較高的溫度以鼓勵(lì)多樣性,在其他階段通過使用較低的溫度確保得到概率最高的輸出,從而保證整體數(shù)據(jù)質(zhì)量。然而,僅依靠溫度調(diào)整不足以實(shí)現(xiàn)所需的平衡。因此, SELF-GUIDE 還在輸入生成后和輸出注釋后分別進(jìn)行了兩輪基于規(guī)則的數(shù)據(jù)過濾。
噪聲過濾(Noise Filter):研究者手動(dòng)整理了一份噪聲術(shù)語列表,包括常見的問候語和噪聲字符(例如,生成內(nèi)容中的”\”)。如果生成示例的輸入或輸出中出現(xiàn)了任何來自這份列表的噪聲術(shù)語, SELF-GUIDE 將丟棄整個(gè)示例。
長度過濾(Length Filter):雖然示例的長度可能存在偏差,但是研究者認(rèn)為這些示例在特定任務(wù)的長度分布方面仍然具有代表性。SELF-GUIDE 假設(shè)示例的長度遵循正態(tài)分布,并計(jì)算出輸入樣例的均值 μ 和標(biāo)準(zhǔn)差 σ,研究者假定生成示例的輸入和輸出長度應(yīng)符合同一正態(tài)分布,并要求長度在 (μ ? 2σ, μ + 2σ) 范圍內(nèi)。
整體參數(shù)微調(diào)(One Parameter Fits All):為了使 SELF-GUIDE 生成符合指令和示例指定目標(biāo)分布的訓(xùn)練數(shù)據(jù),需要在標(biāo)注數(shù)據(jù)點(diǎn)上優(yōu)化各種超參數(shù),包括生成輸入輸出的個(gè)數(shù)、輸入數(shù)據(jù)生成的溫度、輸出數(shù)據(jù)生成的溫度、微調(diào)參數(shù)等。研究者將實(shí)驗(yàn)測(cè)試任務(wù)分為兩部分:一部分可以利用所有數(shù)據(jù)進(jìn)行驗(yàn)證以調(diào)整生成參數(shù),稱為驗(yàn)證任務(wù);另一部分的數(shù)據(jù)僅用于測(cè)試而不可用于調(diào)整參數(shù),稱為測(cè)試任務(wù)。研究者在驗(yàn)證任務(wù)上搜索 “最大化最差任務(wù)性能” 的參數(shù),并將其固定用于測(cè)評(píng) SELF-GUIDE 在測(cè)試任務(wù)上的表現(xiàn)。
實(shí)驗(yàn)結(jié)果
為了評(píng)估 SELF-GUIDE 的有效性,研究者從 Super-NaturalInstructions V2 基準(zhǔn)中選擇了 14 個(gè)分類任務(wù)和 8 個(gè)生成任務(wù)。研究者隨機(jī)選擇了一半任務(wù)用于超參數(shù)搜索,剩余的一半用于評(píng)估。在模型方面,研究者選擇了 Vicuna-7b-1.5 作為輸入生成、輸出生成和微調(diào)的基礎(chǔ)模型。在評(píng)估指標(biāo)方面,研究者采用了與 Super-NaturalInstructions 基準(zhǔn)相同的評(píng)估指標(biāo),即分類任務(wù)的 Exact Match 和生成任務(wù)的 ROUGE-L。
為了體現(xiàn) SELF-GUIDE 的效果,研究者將 SELF-GUIDE 與其他指令跟隨和上下文學(xué)習(xí)方法進(jìn)行了比較:
1.Few-Shot ICL:作為主要基準(zhǔn),研究者與直接提示語言模型進(jìn)行了比較。這種方法直接依賴于模型固有的指令跟隨能力。
2.Self-ICL:Self-ICL 使用自生成的示例來提高零樣本指令跟隨。研究者在 Self-ICL 工作的基礎(chǔ)上進(jìn)行了修改,通過自生成盡可能多的示例(而不是固定個(gè)數(shù)的示例)填充提示詞,從而增加參考樣本數(shù)目。
3.Few-Shot Finetuning:直接利用輸入的少量示例進(jìn)行微調(diào)。
SELF-GUIDE 原文主要實(shí)驗(yàn)結(jié)果如下所示。在基準(zhǔn)的評(píng)估指標(biāo)上,分類任務(wù)的絕對(duì)提升達(dá)到了 14.5%,而生成任務(wù)的絕對(duì)提升則達(dá)到了 17.9%。這些結(jié)果表明, SELF-GUIDE 在指導(dǎo) LLM 向任務(wù)特定專業(yè)化方向發(fā)展方面具有顯著效果,即使在數(shù)據(jù)極其有限的情況下。這突顯了自我生成數(shù)據(jù)在大規(guī)模適應(yīng) LLM 到特定任務(wù)中的潛力。更多實(shí)驗(yàn)結(jié)果和消融實(shí)驗(yàn)請(qǐng)參考論文原文。
圖 4:對(duì)于每類任務(wù)(分類和生成任務(wù)),研究者將任務(wù)隨機(jī)分成兩半,一半用于調(diào)試 “One Parameter Fits All” 策略的參數(shù),另一半用于使用這些調(diào)試好的參數(shù)測(cè)試 SELF-GUIDE 的性能。我們使用相同的解碼參數(shù)和提示模板來評(píng)估模型在 SELF-GUIDE 前后的表現(xiàn)。
總結(jié)
SELF-GUIDE 框架鼓勵(lì)模型自主生成訓(xùn)練數(shù)據(jù)并在此數(shù)據(jù)上進(jìn)行微調(diào)。實(shí)驗(yàn)結(jié)果表明,這種方法在提升大規(guī)模語言模型特定任務(wù)的專業(yè)能力方面具有巨大潛力,尤其是在數(shù)據(jù)有限的情況下,SELF-GUIDE 可以有效解決缺少訓(xùn)練數(shù)據(jù)的問題。同時(shí),這也為探索自主模型適應(yīng)和持續(xù)學(xué)習(xí)的技術(shù)提供了參考。研究者希望這一工作能夠推動(dòng) AI 系統(tǒng)在自主對(duì)齊和改進(jìn)機(jī)制方面的發(fā)展,使其更加符合人類的意圖。
以上就是CMU&清華新作:讓LLM自己合成數(shù)據(jù)來學(xué)習(xí),特定任務(wù)性能同樣大幅提升的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注有卡有網(wǎng)