首頁 >科技週邊 >人工智慧 >CMU&清華新作:讓LLM自己合成資料來學習,特定任務表現同樣大幅提升

CMU&清華新作:讓LLM自己合成資料來學習,特定任務表現同樣大幅提升

王林
王林原創
2024-08-01 18:29:411070瀏覽

CMU&清華新作:讓LLM自己合成資料來學習,特定任務表現同樣大幅提升

AIxiv專欄是本站發布學術、技術內容的欄位。過去數年,本站AIxiv專欄接收通報了2,000多篇內容,涵蓋全球各大專院校與企業的頂尖實驗室,有效促進了學術交流與傳播。如果您有優秀的工作想要分享,歡迎投稿或聯絡報道。投稿信箱:liyazhou@jiqizhixin.com;zhaoyunfeng@jiqizhixin.com本文主要作者來自清華大學和卡內基美隆大學(CMU)。共同一作為清華大學電腦系大學畢業生趙晨陽,卡內基美隆大學碩士生賈雪瑩。
雖然大規模語言模型(LLM)在許多自然語言處理任務中表現優異,但在具體任務中的效果卻不盡如人意。為了提升模型在特定自然語言任務上的表現,現有的方法主要依賴高品質的人工標註資料。這類資料的收集過程既耗時又費力,對於資料稀缺的任務尤其困難。
為了解決這個問題,一些研究嘗試透過強大的 Teacher Model 產生訓練數據,來增強 Student Model 在特定任務上的表現。然而,這種方法在成本、可擴展性和法律合規性方面仍面臨許多挑戰。在無法持續獲得高品質人類監督訊號的情況下,如何持續迭代模型的能力,成為了亟待解決的問題。
來自卡內基美隆大學和清華大學的研究團隊提出了 SELF-GUIDE 方法。此方法透過語言模型本身產生任務特定的資料集,並在該資料集上進行微調,從而顯著提升模型在特定任務上的能力,無需依賴大量外部高品質資料或更強大的 Teacher Model。具體來說,在外部輸入大約 3 個範例的情況下,SELF-GUIDE 採用多階段的生成和過濾機制,利用模型產生的合成資料進行微調,使模型在特定任務上的表現更加出色。

CMU&清華新作:讓LLM自己合成資料來學習,特定任務表現同樣大幅提升

論文地址:https://arxiv.org/abs/2407.12874程式碼倉庫:https://github.com/zhaochenyang20/Prompt2Model- SELF-GUIDE 

CMU&清華新作:讓LLM自己合成資料來學習,特定任務表現同樣大幅提升

                                          下中使用

方法

具體來說,研究團隊將 SELF-GUIDE 方法分解為三個主要階段:輸入資料產生、輸出資料產生和品質最佳化。

輸入資料產生

在 SELF-GUIDE 框架的設計與實作過程中,研究者首先根據任務類型(產生型任務或分類型任務)指定不同的提示範本。對於生成型任務,SELF-GUIDE 框架使用相對簡單的提示範本。而對於分割類型任務,SELF-GUIDE 框架則採用了另一種策略。對於分類任務,SELF-GUIDE 框架首先從全部標籤空間中隨機選擇一個標籤,並將其作為條件生成的偽標籤,指導輸入資料的產生。選定偽標籤後,SELF-GUIDE 框架使用較為複雜的條件產生模板,引導模型產生與所選偽標籤相對應的輸入內容。 CMU&清華新作:讓LLM自己合成資料來學習,特定任務表現同樣大幅提升

圖 2:SELF-GUIDE 的核心在於一個高效的多階段產生機制,其中語言模型逐步產生輸入-輸出資料組合。經過生成和過濾後,自生成的數據進一步用於微調語言模型本身。此圖描述了 SELF-GUIDE 針對生成任務的流程。

選定範本並填入範例(few-shot examples)後,完整的提示會傳遞給 LLM,以產生輸入資料。每輪提示後,新產生的輸入會被加入到輸入庫中。從這個庫中隨機抽取一部分輸入,並與初始範例中的輸入合併,形成新的提示,逐步擴展 LLM 產生的輸入集並且減少重複。 SELF-GUIDE 僅進行一輪輸入生成,隨後在品質優化階段,應用基於規則的過濾器來去除低品質的輸入。 CMU&清華新作:讓LLM自己合成資料來學習,特定任務表現同樣大幅提升


圖 3:此圖描述了 SELF-GUIDE 完成分類任務的過程。對於分類任務的數據,SELF-GUIDE 首先產生偽標籤,然後產生對應的輸入,最後重新產生真實標籤。
輸出資料產生
輸出資料產生階段採用了典型的上下文學習方法:研究者向模型提供任務指令和原始範例,使模型對輸入產生階段產生的每一個輸入進行標註。在取得所有輸出後,再進行一輪基於規則的過濾,以選擇最終的合成資料集。
品質最佳化
產生資料的品質對於下游訓練的成功至關重要。 SELF-GUIDE  採用了兩種策略來提高品質:調整生成參數以提高生成品質並基於規則過濾掉低品質樣本。
調整溫度:調整溫度是一種平衡多樣性和品質的常見策略。 SELF-GUIDE 框架在輸入生成階段使用較高的溫度以鼓勵多樣性,在其他階段透過使用較低的溫度確保得到機率最高的輸出,從而確保整體資料品質。然而,僅依靠溫度調整不足以實現所需的平衡。因此, SELF-GUIDE 還在輸入生成後和輸出註釋後分別進行了兩輪基於規則的資料過濾。
噪音過濾(Noise Filter):研究者手動整理了一份噪音術語列表,包括常見的問候語和噪音字元(例如,產生內容中的」」)。如果在生成範例的輸入或輸出中出現了任何來自此清單的雜訊術語, SELF-GUIDE 將丟棄整個範例。
長度過濾(Length Filter):雖然範例的長度可能存在偏差,但研究者認為這些範例在特定任務的長度分佈方面仍然具有代表性。 SELF-GUIDE 假設範例的長度遵循常態分佈,並計算出輸入樣例的均值μ 和標準差σ,研究者假定產生範例的輸入和輸出長度應符合同一常態分佈,並要求長度在(μ − 2σ, μ + 2σ) 範圍內。
整體參數微調(One Parameter Fits All):為了使SELF-GUIDE 產生符合指令和範例指定目標分佈的訓練數據,需要在標註數據點上優化各種超參數,包括產生輸入輸出的數量、輸入資料產生的溫度、輸出資料產生的溫度、微調參數等。研究者將實驗測試任務分為兩部分:一部分可以利用所有數據進行驗證以調整生成參數,稱為驗證任務;另一部分的數據僅用於測試而不可用於調整參數,稱為測試任務。研究者在驗證任務上搜尋 「最大化最差任務表現」 的參數,並將其固定用於測評 SELF-GUIDE 在測試任務上的表現。
實驗結果
為了評估 SELF-GUIDE 的有效性,研究者從 Super-NaturalInstructions V2 基準中選擇了 14 個分類任務和 8 個生成任務。研究者隨機選擇了一半任務用於超參數搜索,剩餘的一半用於評估。在模型方面,研究者選擇了 Vicuna-7b-1.5 作為輸入產生、輸出產生和微調的基礎模型。在評估指標方面,研究者採用了與 Super-NaturalInstructions 基準相同的評估指標,即分類任務的 Exact Match 和生成任務的 ROUGE-L。
為了體現SELF-GUIDE 的效果,研究者將SELF-GUIDE 與其他指令跟隨和上下文學習方法進行了比較:
1.Few-Shot ICL:作為主要基準,研究者與直接提示語言模型進行了比較。這種方法直接依賴模型固有的指令跟隨能力。
2.Self-ICL:Self-ICL 使用自產生的範例來提高零樣本指令跟隨。研究者在 Self-ICL 工作的基礎上進行了修改,透過自生成盡可能多的範例(而不是固定個數的範例)填充提示詞,從而增加參考樣本數目。
3.Few-Shot Finetuning:直接利用輸入的少量範例進行微調。
SELF-GUIDE 原文主要實驗結果如下圖所示。在基準的評估指標上,分類任務的絕對提升達到了 14.5%,而生成任務的絕對提升則達到了 17.9%。這些結果表明, SELF-GUIDE 在指導 LLM 向任務特定專業化方向發展方面具有顯著效果,即使在數據極其有限的情況下。這突顯了自我生成數據在大規模適應 LLM 到特定任務的潛力。更多實驗結果和消融實驗請參考論文原文。

CMU&清華新作:讓LLM自己合成資料來學習,特定任務表現同樣大幅提升

圖4:對於每類任務(分類和生成任務),研究者將任務隨機分成兩半,一半用於調試“One Parameter Fits All” 策略的參數,另一半用於使用這些調試好的參數測試SELF-GUIDE 的性能。我們使用相同的解碼參數和提示範本來評估模型在 SELF-GUIDE 前後的表現。

總結

SELF-GUIDE 框架鼓勵模型自主產生訓練資料並在此資料上進行微調。實驗結果表明,這種方法在提升大規模語言模型特定任務的專業能力方面具有巨大潛力,尤其是在資料有限的情況下,SELF-GUIDE 可以有效解決缺少訓練資料的問題。同時,這也為探索自主模型適應和持續學習的技術提供了參考。研究者希望這項工作能推動 AI 系統在自主對齊和改進機制方面的發展,使其更加符合人類的意圖。

以上是CMU&清華新作:讓LLM自己合成資料來學習,特定任務表現同樣大幅提升的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn