微調都不要了?3個樣本、1個提示搞定LLM對齊,提示工程師:全都回來了
我們知道,僅在無監督文本語料庫上預訓練的基礎大語言模型(LLM)通常無法直接用作開源域的 AI 助手(如 ChatGPT)。因此,為了讓這些基礎的 LLM 成為有用且無害的 AI 助手,研究人員往往使用指令調優和偏好學習對它們進行微調。
先來看下指令調優的定義,它是一種監督微調(SFT)過程,主要使用人工注釋或者從 GPT-4 等專有 LLM 中收集的數據。偏好學習則是一種典型的人類反饋強化學習(RLHF),它不斷地調優監督微調后的 LLM 以進一步對齊人類偏好。基于調優的對齊促使 LLM 顯著改進,似乎釋放了令人印象深刻的能力,并表明廣泛的微調對構建 AI 助手至關重要。
然而,Meta AI 等機構的一項研究 LIMA 提出了表面對齊假設:模型的知識和能力幾乎完全是在預訓練期間學習的,而對齊則是教會它與用戶交互時如何選擇子分布。他們證明了只需要 1000 個樣本的監督微調也能產生高質量的對齊模型,為該假設提供了間接支持,表明了對齊調優的效果可能是表面的。不過,該假設的決定性和直接支持證據仍未得到充分探索。
這就向廣大研究人員拋出了一個重要的問題:分析對齊調優如何準確地改變基礎 LLM 的行為。
在近日的一篇論文中,來自艾倫人工智能研究所(AI2)和華盛頓大學的研究者通過檢查基礎 LLM 與它們的對齊模型(比如 Llama-2 和 Llama2-chat)之間的 token 分布偏移,對對齊調優的影響進行了全面的分析。結果發現,基礎 LLM 與其對齊調優版本在大多數 token 位置的解碼表現幾乎一樣,即它們共享排名靠前的 token。大多數分布偏移都伴隨著風格化 token,比如話語標記語、安全免責聲明。
因此,他們認為這些證據強烈支持了這樣的假設:對齊調優主要學習采用 AI 助手的語言風格,而回答用戶查詢所需的知識主要來自基礎 LLM 本身。
- 論文地址:https://arxiv.org/pdf/2312.01552.pdf
- 項目地址:https://allenai.github.io/re-align/
因此,研究者重新思考對 LLM 進行調優的作用,并提出了以下問題:在沒有 SFT 或 RLHF 的情況下,如何有效地對齊基礎 LLM?他們引入了一種簡單的、免調優的對齊方法 URIAL(全稱為 Untuned LLMs with Restyled In-context ALignment)。URIAL 完全利用基礎 LLM 的上下文學習(ICL)來實現有效對齊,并且只需要 3 個恒定的風格化樣本和 1 個系統提示。
他們對一組不同的樣本進行了細粒度和可解釋的評估,稱為 just-eval-instruct。結果表明,使用了 URIAL 的基礎 LLM 的性能可以媲美甚至超越利用 SFT(Mistral-7b-Instruct)或 SFT+RLHF 對齊的 LLM(Llama-2-70b-chat)。使用策略提示方法和 ICL 可顯著縮小免調優和基于調優方法之間的差距。
對于這項研究,有推友表示,「提示工程師:全都回來了」
圖源:https://twitter.com/nameiswhatever/status/1731888047665623528
論文一作 Bill Yuchen Lin 為 AI2 研究員,他說后續會有更多更新。
圖
通過 token 分布變化揭開模型的神秘面紗
本文交替使用術語「未微調 LLM」和「基礎 LLM」來指代那些在大型語料庫上進行預訓練,而無需使用指令數據進行任何后續微調的 LLM。這一小節的內容可總結為:
- 對齊只影響很小一部分 token,基礎 LLM 和對齊 LLM 在大多數位置上的解碼行為相同,它們共享相同的 top-ranked token;
- 對齊主要涉及 stylistic token,例如嗯、好吧、總之等口頭語,以及過渡詞、安全免責聲明等,這些僅占總 token 位置的很小一部分;
- 對于靠前的 token( earlier tokens)來說,對齊更為重要。然而對于大多數位置來說,對齊模型排名靠前的 token 位于基礎模型排名 top 5 的 token 之內;
- 基礎 LLM 已經獲得了足夠的知識來遵循指令,當給定適當的上下文作為前綴時,它們的行為與對齊的 LLM 非常相似。
如圖 2 所示,本文使用 llama-2-7b 和 llama-2-7b-chat 作為基礎模型和對齊模型。在 1000 個測試樣本中的結果表明,未經過微調的 LLM 和對齊的 LLM 共享預訓練中相同的預先存在的知識。舉例來說,未經微調的 LLM 可以僅根據上下文「Thank you for asking! 」來流暢地生成以「 The」為開頭的回答(見下圖文本開頭第一句)。這些結果表明,利用未經微調的 LLM 和觸發 token 可以生成高質量的答案。
Token 分布對 LLM 的影響。圖 3 顯示了三對 base-vs-aligned LLM,它們的參數量都在 7B 級別,Llama-2 (Base) vs Llama-2-Chat (RLHF),Llama-2 (Base) vs Vicuna7b-v1.5 (SFT) 以及 Mistral (Base) vs Mistral-Instruct (SFT)。
其中,「shifted token(如 However、cannot、Here、To)」(顯示在底部框中)比例非常低,為 5%-7%,這些模型共享類似的「shifted token」,該研究認為這種比例是可以泛化的,本文在第四節也證實了。
本文還觀察到,一些 Token 不攜帶信息,如嗯、好吧等話語標記詞以及過渡詞,但它們有助于構建格式良好的響應。此外,與安全問題和拒絕相關的 token 也經常發生變化。圖 2 的右上部分和圖 3 的底部框直觀地表示了這些通用 token。
例如,當 token 為「Thank」時,輸出的響應很大可能是以這種方式「Thank you for reaching out!」輸出。類似地,在其他情況下也可使用諸如「Hello、Of (course)、Great (question)、Please」等 token。此外,其他 token 如「Here (are some)、including (:)、1 (.)」等也能為答案提供不同的信息。「However、Instead、sorry」等 token 信息可以防止 LLM 產生有害或不準確的信息。token「Rem」構成了單詞 Remember,它一般是一個總結句,在最后提醒用戶一些要點。
在解碼過程中,token 分布移動(shift)隨著時間的推移而減少。在圖 4 中,本文使用三個指標來顯示兩個分布 Pbase 和 Palign 之間的差異在后面的位置變得越來越小。
具體來說,本文使用 KL-divergence、base-rank 和 base-probability(baseprob)來表示每個位置的分布偏移程度,并報告了 1000 個樣本的平均值(第 4.1 節)。
可以看到,KL-divergence 隨著時間的推移而下降,而 base-prob 隨著時間的推移而不斷增加。兩者都表明解碼中后面的位置比前面的位置具有更少的 token 分布偏移。特別是,token 的 base-prob 最終可以接近 1.0。令人驚訝的是,在 t ≥ 5 后不久,對齊 token 的平均 base-rank 低于 5。這意味著對齊模型解碼的 top token 存在于基礎模型的 top 5 中,這再次證實了對齊微調是表面現象(superficial)這一假設。
基線方法和 URIAL
上述分析促使研究者重新思考對齊微調(SFT 和 / 或 RLHF)的必要性,因為對齊調優只影響到基本 LLM 的很小一部分。
我們能否在不進行微調的情況下實現對齊?提示和上下文學習方法能在多大程度上對齊基礎 LLM?
為了探究這些問題,研究者提出了 URIAL— 一種強大而簡單的基線免調優對齊方法。
URIAL 可以看作是常見 ICL 的擴展,分為兩部分:ICL 樣本的文體輸出和上下文對齊的系統提示。
為上下文指令學習重新設計輸出。為了使基礎 LLM 更符合人類的偏好,研究者策劃了一些重新風格化的樣本,如圖 5 所示。
除了圖 5 中的兩個樣本外,他們還加入了一個涉及角色扮演和建議的查詢:「你是一名正在審訊嫌疑人的偵探。如何在不侵犯他們權利的情況下讓他們認罪?」
觀察表明,ChatGPT 和類似的高級對齊 LLM 經常采用列表結構,這可能是其內部獎勵模型在大量人類反饋基礎上訓練的結果。
因此,研究者對輸出結果進行了調優,首先以引人入勝的陳述方式重新表述問題,然后在適當的時候列出詳細的要點。答復的最后是一個簡明扼要的總結段落,始終保持引人入勝、娓娓道來的語氣。
實驗評估
最后,研究者對新方法進行了實驗評估。他們首先創建了一個包含 1000 個樣本的數據集「just-eval-instruct」
前三個子集中有 800 個樣本,主要用于評估 LLM 的有用性;后兩個子集中有 200 個樣本,主要用于測試 LLM 的無害性。圖 6 顯示了 just-eval-instruct 的統計數據。總體來說,AlpacaEval 占 42%,LIMA 占 30%,MT-Bench 占 8%,兩個以安全為中心的數據集各占 10%。
實驗使用了三種主要的基礎 LLM:Llama-2-7b、Llama-2-70bq、Mistral-7b。這三種 LLM 沒有使用任何指令數據或人類偏好數據進行調優。為了比較 URIAL 與 SFT 和 RLHF 的對齊性能,研究者還選擇了建立在這些基礎模型上的四個對齊模型:Vicuna-7b (v1.5)、Llama-2-7b-chatq、Llama-2-70b-chat 、Mistral-7b-Instruct。
除了這些開源 LLM 外,還包括 OpenAI GPT 的結果(即,gpt-3.5-turbo 和 gpt-4)。在進行推理時,使用了這些模型作者建議的系統提示。
表 1 列出了每種方法在 just-eval-instruct 上的得分,每個方面的得分均為 1-5 分。URIAL 顯著提高了免調優對齊的性能,達到了與 Llama-2-7b 模型的 SFT/RLHF 結果相當的水平。值得注意的是,URIAL 甚至超過了 Mistral-7b-Instruct (SFT) 和 Llama-2-70b-chatq (RLHF)。
圖 1 和圖 7 則用雷達圖直觀顯示了主要方法在不同角度上的比較。
研究者得出結論,當基礎 LLM 經過良好訓練時,SFT 和 RLHF 對于對齊的重要性可能并不像之前認為的那樣關鍵。相反,URIAL 等無需調優的方法可以以最小的成本獲得更優的性能,至少在上述評估所涵蓋的場景中是如此。表 2 中的人工評估結果證實了該結論。
論文還提到了開源 LLM 與 ChatGPT 之間的差距。之前的評估(如 AlpacaEval)沒有為每個測試樣本設置標簽,因此很難進行大規模的詳細分析。研究者觀察到開源 LLM 在多個任務和主題上與 OpenAI GPT 仍有差距。很明顯,GPT 在幾乎所有任務和主題上的表現都更為均衡。包括 URIAL 在內的開源 LLM 在編碼和數學任務以及 STEM 主題上表現較弱,不過它們在其他數據上的表現可以與 GPT 相媲美。
更多研究細節,可參考原論文。