首次:微軟用GPT-4做大模型指令微調(diào),新任務(wù)零樣本性能再提升
我們知道,從谷歌 T5 模型到 OpenAI GPT 系列大模型,大語言模型(LLMs)已經(jīng)展現(xiàn)出了令人印象深刻的泛化能力,比如上下文學(xué)習(xí)和思維鏈推理。同時為了使得 LLMs 遵循自然語言指令和完成真實世界任務(wù),研究人員一直在探索 LLMs 的指令微調(diào)方法。實現(xiàn)方式有兩種:一是使用人類標注的 prompt 和反饋在廣泛任務(wù)上微調(diào)模型,二是使用通過手動或自動生成指令增強的公共基準和數(shù)據(jù)集來監(jiān)督微調(diào)。?
在這些方法中,Self-Instruct 微調(diào)是一種簡單有效的方法,它從 SOTA 指令微調(diào)的教師 LLMs 生成的指令遵循數(shù)據(jù)中學(xué)習(xí),使得 LLMs 與人類意圖對齊。事實證明,指令微調(diào)已經(jīng)成為提升 LLMs 零樣本和小樣本泛化能力的有效手段。?
最近,ChatGPT 和 GPT-4 的成功為使用指令微調(diào)來改進開源 LLMs 提供了巨大的機遇。Meta LLaMA 是一系列開源 LLMs,其性能與 GPT-3 等專有 LLMs 相媲美。為了教 LLaMA 遵循指令,Self-Instruct 因其卓越性能和低成本被快速采用。比如斯坦福的 Alpaca 模型使用由 GPT-3.5 生成的 52k 指令遵循樣本,Vicuna 模型使用約 70k 來自 ShareGPT 的指令遵循樣本。?
為了推進 LLMs 指令微調(diào)的 SOTA 水平,微軟研究院在其論文《Instruction Tuning with GPT-4》中首次使用 GPT-4 作為教師模型進行 self-intruct 微調(diào)。
- 論文地址:https://arxiv.org/pdf/2304.03277.pdf
- 項目地址:https://instruction-tuning-with-gpt-4.github.io/
- GitHub 地址:https://github.com/Instruction-Tuning-with-GPT-4/GPT-4-LLM?
研究者一方面發(fā)布了 GPT-4 生成的數(shù)據(jù),包括中英文的 52k 指令遵循數(shù)據(jù)集、GPT-4 生成的對三種指令微調(diào)模型的輸出進行評級的反饋數(shù)據(jù)。 ?
另一方面基于 GPT-4 生成的數(shù)據(jù)開發(fā)了指令微調(diào)的 LLaMA 模型和獎勵模型。為了評估指令微調(diào) LLMs 的質(zhì)量,研究者使用三個指標對測試樣本進行評估:對三個對齊標準的人工評估、基于 GPT-4 反饋的自動評估以及非自然指令的 ROUGE-L(自動文摘評測方法之一)。?
實驗結(jié)果驗證了使用 GPT-4 生成的數(shù)據(jù)進行 LLMs 指令微調(diào)的有效性。GPT-4 生成的 52k 中英指令遵循數(shù)據(jù)在新任務(wù)上實現(xiàn)了較以往 SOTA 模型更好的零樣本性能。目前,研究者已經(jīng)公開了使用 GPT-4 生成的數(shù)據(jù)以及相關(guān)代碼。
數(shù)據(jù)集?
該研究使用 GPT-4 生成以下四個數(shù)據(jù)集:
- 英語指令遵循數(shù)據(jù)集(English Instruction-Following Data):對于從 Alpaca 收集到的 52K 指令,每個指令都提供了一個英文 GPT-4 答案。該數(shù)據(jù)集主要用來探索和比較 GPT-4 答案和 GPT-3 答案的數(shù)據(jù)統(tǒng)計。
- 中文指令遵循數(shù)據(jù)集(Chinese Instruction-Following Data):該研究使用 ChatGPT 將 52K 指令翻譯成中文,并要求 GPT-4 用中文回答。
- 比較數(shù)據(jù)(Comparison Data):讓 GPT-4 給自己的反應(yīng)打分,分數(shù)范圍從 1 到 10。此外,該研究還要求 GPT-4 對 GPT-4、GPT-3.5 和 OPT-IML 三種模型的響應(yīng)進行比較和評分。這一數(shù)據(jù)集主要用來訓(xùn)練獎勵模型。
- 非自然指令的回答(Answers on Unnatural Instructions):GPT-4 的回答在 68K 指令 - 輸入 - 輸出三組核心數(shù)據(jù)集上解碼。該子集用于量化 GPT-4 與指令微調(diào)模型之間的差距。?
圖 1 比較了 GPT-4 和 GPT-3.5 的英文輸出響應(yīng)集。圖 1 (a) 和 (b) 顯示了兩個輸出集合頻率高于 10 的動 - 名詞對(verb-noun pairs),圖 1 (c) 比較了兩個集合中出現(xiàn)頻率最高的 25 對單詞,圖 1 (d) 比較了序列長度的頻率分布,結(jié)果顯示,GPT-4 傾向于生成比 GPT-3.5 更長的序列。
指令微調(diào)語言模型?
該研究基于 LLaMA 7B checkpoint、并使用監(jiān)督微調(diào)訓(xùn)練了兩個模型:(i) LLaMA-GPT4 ,在 GPT-4 生成的 52K 英語指令遵循數(shù)據(jù)上訓(xùn)練。(ii) LLaMA-GPT4-CN,在來自 GPT-4 生成的 52K 中文指令遵循數(shù)據(jù)上訓(xùn)練完成。
獎勵模型
人類反饋強化學(xué)習(xí) (RLHF) 旨在使 LLM 行為與人類偏好保持一致,獎勵建模是其關(guān)鍵部分之一,這一問題被往往公式化為回歸任務(wù),以預(yù)測給定提示和響應(yīng)之間的獎勵。但這種方法通常需要大規(guī)模的比較數(shù)據(jù),現(xiàn)有開源模型如 Alpaca、Vicuna 和 Dolly 由于標注比較數(shù)據(jù)成本很高,因此不涉及 RLHF。與此同時,最近的研究表明,GPT-4 能夠識別和修復(fù)自己的錯誤,并準確判斷響應(yīng)的質(zhì)量。因此,為了促進 RLHF 的研究,該研究使用 GPT-4 創(chuàng)建了比較數(shù)據(jù),如上文所述。
為了評估數(shù)據(jù)質(zhì)量,該研究還訓(xùn)練了一個基于 OPT 1.3B 的獎勵模型進行該數(shù)據(jù)集的評估。比較數(shù)據(jù)的分布如圖 2 所示。
實驗?
該研究利用以下三種類型進行評估:人類評估、GPT-4 以及非自然指令評估。結(jié)果證實,與其他機器生成的數(shù)據(jù)相比,使用 GPT-4 生成的數(shù)據(jù)是進行 LLM 指令微調(diào)的一種高效且有效的方法。接下來我們看看具體實驗過程。
人類評估?
圖 3 (a) 為 LLaMA-GPT4 vs Alpaca 比較結(jié)果,實驗表明在 Helpfulness 這一指標下,GPT-4 以 54.12% 的得分勝出。圖 3 (b) 為 LLaMA-GPT4 vs GPT-4 比較結(jié)果,表明 GPT-4 指令微調(diào)的 LLaMA 的性能與原始的 GPT-4 類似。
與使用自動求值的 SOTA 進行比較?
該研究使用 GPT-4 對不同模型在 80 個未見問題上的回答進行自動評估。首先從 LLaMA-GPT-4 (7B) 和 GPT-4 兩個聊天機器人中收集答案,并使用其他聊天機器人發(fā)布答案,包括 LLaMA (13B),Alpaca (13B),Vicuna (13B),Bard (谷歌,2023) 和 ChatGPT。對于每次評估,該研究要求 GPT-4 對兩個模型之間的響應(yīng)質(zhì)量進行評分,評分范圍從 1 到 10。結(jié)果如圖 4 所示。
圖 4 (c,d) 比較了所有聊天機器人。LLaMA_GPT4 性能更高:7B LLaMA GPT4 的性能優(yōu)于 13B Alpaca 和 LLaMA。然而,LLaMA_GPT4 與 GPT-4 等大型商業(yè)聊天機器人相比,仍有差距。?
研究者在下圖 5 中進一步研究了所有聊天機器人的性能。首先使用 GPT-4 將聊天機器人的英文響應(yīng)翻譯成中文,接著使用 GPT-4 將英文問題翻譯成中文以獲得答案。與 GPT-4 翻譯和生成的中文響應(yīng)的比較如 5 (a) 和 5 (b) 所示,5 (c) 中顯示了所有被要求用中文回答的模型結(jié)果。
在下圖 6 中,研究者將 LLaMA-GPT4 與 GPT-4、Alpaca 非自然指令進行比較。結(jié)果顯示,LLaMA-GPT4 和 GPT-4 隨 ground truth 響應(yīng)長度的增加表現(xiàn)更好。這意味著當(dāng)場景更具創(chuàng)意時,它們可以更好地遵循指令。當(dāng)序列長度較短時,LLaMA-GPT4 和 GPT-4 都能生成包含簡單 ground truth 答案的響應(yīng),并且添加額外單詞可以使響應(yīng)更像聊天。
更多技術(shù)和實驗細節(jié)請參閱原論文。