成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

LLM成功不可或缺的基石:RLHF及其替代技術

人工智能 新聞
關于訓練大模型常用的 RLHF 技術,這篇文章幫你逐步解讀了其工作過程,還總結了一些其他替代方法。

在討論 LLM 時,我們總是會涉及一個名為「使用人類反饋的強化學習(RLHF)」的過程。RLHF 是現代 LLM 訓練流程中不可或缺的一部分,因為它可以將人類偏好整合到優化圖景中,從而提升模型的有用性和安全性。

在這篇文章中,機器學習和 AI 研究者 Sebastian Raschka 將逐步解讀 RLHF 的工作過程,以幫助讀者理解其核心思想和重要性。這篇文章也會比較 ChatGPT 和 Llama 2 執行 RLHF 的方式。

文章最后還將簡單介紹一些最近出現的可替代 RLHF 的技術。

本文的目錄如下:

  • 使用人類反饋的強化學習(RLHF)
  • Llama 2 中的 RLHF
  • RLHF 的替代技術

典型的 LLM 訓練流程

ChatGPT 或 Llama 2 等基于 transformer 的現代 LLM 的訓練流程一般分為三大步驟:

  • 預訓練;
  • 監督式微調;
  • 對齊。

在最初的預訓練階段,模型會從海量的無標簽文本數據集中吸收知識。后續的監督式微調階段會對這些模型進行微調,使之能更好地遵守特定指令。最后的對齊階段則是對 LLM 進行打磨,使之在響應用戶 prompt 時能給出更有用且更安全的結果。

請注意,這個訓練流程基于 OpenAI 的 InstructGPT 論文《Training language models to follow instructions with human feedback》,該論文詳述了 GPT-3 的訓練過程。人們普遍認為 ChatGPT 的訓練也使用了此種方法。后面我們還會比較一下該方法與 Meta 最新的 Llama 2 所采用的方法。

首先從最初的預訓練步驟開始吧,如下圖所示。

LLM 的預訓練步驟

預訓練通常需要使用一個超大型的文本語料庫,其中包含數十億乃至數萬億 token。預訓練階段的訓練任務很簡單直接,就是根據前文預測下一個詞。

值得強調的一點是,這種類型的預訓練讓我們可以利用大型的無標注數據集。只要我們能夠在不侵犯版權或無視創作者偏好的情況下使用數據,我們就可以使用大型數據集,而無需人來手動標記。事實上,在這個預訓練步驟中,其「標簽」就是文本中的后一個詞,而這本身就已經是數據集的一部分了(因此,這種預訓練方法通常被稱為自監督學習)。

接下來的步驟是監督式微調,其過程如下圖所示。

根據指令數據對預訓練后的模型進行微調

監督式微調階段涉及到另一輪對下一 token 的預測。但是,不同于之前的預訓練階段,模型現在處理的是成對的「指令 - 輸出」,如上圖所示。在這里,指令是指提供給模型的輸入(根據任務的不同,指令中有時候會帶有可選的輸入文本)。輸出則是模型給出的接近我們期望的響應。

這里給出一個具體示例,對于下面這一對「指令 - 輸出」:

指令:"Write a limerick about a pelican."

輸出:"There once was a pelican so fine..."

模型將指令文本(Write a limerick about a pelican)作為輸入,執行下一 token 預測獲得輸出文本(There once was a pelican so fine...)。

盡管預測下一 token 這個訓練目標是相似的,但監督式微調使用的數據集通常比預訓練所用的小得多。這是因為它需要的是指令 - 輸出對,而不只是原始文本。為了構建這樣一個數據集,必需有一個人類(或另一個高質量 LLM)來根據給定指令寫出所需輸出 —— 創建這樣一個數據集非常費力。

在這個監督式微調階段之后,還有另一個微調階段,該階段通常被稱為「對齊」步驟,其主要目標是將 LLM 與人類偏好對齊。這就是 RLHF 的用武之地。

對齊,右側圖表來自 InstructGPT 論文

下一節將深入介紹基于 RLHF 的對齊步驟。但是,如果你想對比一下其與預訓練的基礎模型和步驟 2 的監督式微調,可以看看來自 InstructGPT 論文的上圖。

上圖比較了經過監督式微調后的以及使用其它方法的 GPT-3 模型(1750 億參數)。圖中最下方是基礎 GPT-3 模型。

可以看到,如果采用 prompt 工程設計方法,即多次查詢并選取其中的最佳響應(GPT-3 + prompting),則能獲得比基礎模型更好的表現,這符合我們的預期。

而如果將監督式微調用于 GPT-3 基礎模型,則還能取得甚至更優的表現(GPT-3 + supervised finetuning)。

但是,這里表現最佳的還是使用了監督式微調及 RLHF 的 GPT-3 模型(GPT-3 + supervised finetuning + RLHF)—— 即圖中最上面的兩條線。(注意,這里之所以有兩條線,是因為研究者實驗了兩種不同的采樣方法。)

下面將更詳細地介紹 RLHF 步驟。

使用人類反饋的強化學習(RLHF)

前一節討論了 ChatGPT 和 Llama-2-chat 等現代 LLM 背后的三步式訓練流程。這一節將更為詳細地描述微調階段,并重點關注 RLHF 部分。

RLHF 工作流程是通過一種監督式的方式來對預訓練模型進行微調(前一節的第 2 步),然后再通過近端策略優化(PPO)來對齊它(前一節的第 3 步)。

為了簡單起見,我們可將 RLHF 工作流程再分為三步:

  • RLHF 第 1 步:對預訓練模型進行監督式微調;
  • RLHF 第 2 步:創建一個獎勵模型;
  • RLHF 第 3 步:通過近端策略優化進行微調。

如下所示,RLHF 第 1 步是監督式微調步驟,目的是創建用于進一步 RLHF 微調的基礎模型。

RLHF 第 1 步,圖片來自 InstructGPT 論文

在 RLHF 第 1 步,我們創建或采樣 prompt(比如從一個數據庫中采樣),然后讓人類編寫質量優良的響應。然后使用這個數據集通過一種監督式方式來微調預訓練模型。

要注意,RLHF 第 1 步類似于前一節的第 2 步,即「典型的 LLM 訓練流程」。這里再次列出它,因為這是 RLHF 不可或缺的一部分。

然后在 RLHF 第 2 步,使用經過監督式微調的模型創建一個獎勵模型,如下所示。

RLHF 第 2 步,圖片來自 InstructGPT 論文

如上圖所示,用上一步中創建的已微調 LLM 為每個 prompt 生成 4-9 個響應。然后再讓人基于自己的偏好對這些響應進行排名。盡管這個排名過程非常耗時,但相比于創建用于監督式微調的數據集,其勞動力密集程度可能要低一些。這是因為對響應進行排名多半比編寫響應更簡單。

然后基于使用這些排名構建的數據集,我們可以設計一個獎勵模型,其輸出的是用于 RLHF 第 3 步后續優化階段的獎勵分數。這個獎勵模型通常源自之前的監督式微調步驟創建的 LLM。下面將獎勵模型簡稱為 RM,將經過監督式微調后的 LLM 簡稱為 SFT。為了將 RLHF 第 1 步的模型變成獎勵模型,需要將其輸出層(下一 token 分類層)替換成一個回歸層,其具有單個輸出節點。

RLHF 工作流程的第 3 步是使用這個獎勵模型(RM)來微調之前監督式微調的模型(SFT),如下圖所示。

RLHF 第 3 步,圖片來自 InstructGPT 論文

在 RLHF 第 3 步,這也是最后一步,需要根據 RLHF 第 2 步創建的 RM 的獎勵分數,使用近端策略優化(PPO)來更新 SFT 模型。

有關 PPO 的更多細節超出了本文的范圍,但感興趣的讀者可以在 InstructGPT 論文之前的這四篇論文中找到相關數學細節:

(1) 《Asynchronous Methods for Deep Reinforcement Learning》引入了策略梯度方法來替代基于深度學習的強化學習中的 Q 學習。

(2) 《Proximal Policy Optimization Algorithms》提出了一種基于修改版近端策略的強化學習流程,其數據效率和可擴展性均優于上面的基礎版策略優化算法。

(3) 《Fine-Tuning Language Models from Human Preferences》闡釋了 PPO 的概念以及對預訓練語言模型的獎勵學習,包括 KL 正則化,以防止策略偏離自然語言太遠。

(4) 《Learning to Summarize from Human Feedback》引入了現在常用的 RLHF 三步流程,后來的 InstructGPT 論文也使用了該流程。

Llama 2 中的 RLHF

上一節介紹了 OpenAI 的 InstructGPT 論文中描述的 RLHF 流程。人們也普遍相信 ChatGPT 的開發中也使用了該流程。但它與 Meta AI 最新的 Llama 2 模型相比如何呢?

Meta AI 在創造 Llama-2-chat 模型時也使用了 RLHF。盡管如此,這兩種方法之間還是有些差異,如下圖所示。

兩種 RLHF 的差異,圖片改編自 Llama-2 論文

總結起來,Llama-2-chat 遵循與 InstructGPT 的 RLHF 第 1 步相同的基于指令數據的監督式微調步驟。然而,在 RLHF 第 2 步,Llama-2-chat 是創建兩個獎勵模型,而不是一個。此外,Llama-2-chat 模型會經歷多個演進階段,獎勵模型也會根據 Llama-2-chat 中涌現的錯誤而獲得更新。它還有一個額外的拒絕采樣步驟。

邊際損失

還有另一個區別未在上圖中給出,其涉及到生成獎勵模型時對模型響應排序的方式。在之前討論的 InstructGPT 所用的標準 RLHF PPO 中,研究者會根據自己創建的「k 選 2」比較方法來收集排名 4-9 的輸出響應。

舉個例子,如果一位人類標注者要對 4 個響應(A-D)進行排名,比如 A < C < D < B,這會有「4 選 2」=6 次比較。

  • A < C
  • A < D
  • A < B
  • C < D
  • C < B
  • D < B

類似地,Llama 2 的數據集基于對響應的二元比較,例如 A < B。然而,每位人類標記者在每輪標記時僅會比較 2 個響應(而不是 4-9 個響應)。

此外,Llama 2 方法的另一個不同之處是在每次二元排名時會收集一個「邊際」標簽(范圍從「優勢顯著」到「優勢可忽略」),這可以通過一個附加的邊際參數被用于二元排名損失(可選)以計算兩個響應之間的差距。

在訓練獎勵模型方面,InstructGPT 使用的是以下基于交叉熵的排名損失:

Llama 2 則添加了一個邊際量 m (r) 作為偏好評級的離散函數,如下所示:

其中:

  • r_θ(x,y) 是對于 prompt x 和生成的響應 y 的標量分數輸出;
  • θ 是模型權重;
  • σ 是 logistic sigmoid 函數,作用是把層輸出轉換為 0 到 1 之間的分數;
  • y_c 是人類標注者選擇的偏好響應;
  • y_r 是人類標注者選擇的被拒響應。

舉個例子,通過 m (r) 返回一個更高的邊際量會讓偏好響應和被拒響應的獎勵之差更小,這會讓損失更大,又進一步導致梯度更大,最終導致模型在策略梯度更新過程中發生變化。

兩個獎勵模型

如前所述,Llama 2 中有兩個獎勵模型,而不是一個。一個獎勵模型基于有用性,另一個則是基于安全性。而用于模型優化的最終獎勵函數是這兩個分數的一種線性組合。

Llama 2 的排名方法和獎勵模型創建,改編自 InstructGPT 論文的圖片

拒絕采樣

此外,Llama 2 的作者還采用了一種可以迭代式產生多個 RLHF 模型(從 RLHF-V1 到 RLHF-V5)的訓練流程。他們沒有僅僅依賴于之前討論的使用 PPO 方法的 RLHF,而是使用了兩種用于 RLHF 微調的算法:PPO 和拒絕采樣(rejection sampling。

在拒絕采樣中,會先抽取 K 個輸出,然后在優化步驟選取其中獎勵最高那個用于梯度更新,如下圖所示。

Llama 2 的拒絕采樣步驟,即創建多個響應然后選取其中獎勵最高的那個,改編自 InstructGPT 論文的圖片

拒絕采樣的作用是在每次迭代中選取獎勵分數高的樣本。由此造成的結果是,模型可以使用獎勵更高的樣本進行微調,相比之下,PPO 每次只能基于一個樣本進行更新。

在經過監督式微調的最初階段后,再專門使用拒絕采樣訓練模型,之后再將拒絕采樣和 PPO 組合起來。

研究者繪出了隨 RLHF 各階段的模型性能變化情況,可以看到經過 RLHF 微調的模型在安全性和有用性方面都有提升。

RLHF 確實有效,改編自 Llama 2 論文的圖片

請注意,研究者在最后一步中使用了 PPO,之前則是用拒絕采樣更新過的模型。對比圖中 RLHF-v5 (with PPO) 和 RLHF-v5 (no PPO) 的位置可以看到,如果在拒絕采樣之后的最后階段使用 PPO,模型的表現會更好一些。

RLHF 的替代技術

現在我們已經討論并定義了 RLHF 過程,這個過程相當復雜,人們可能會問這么麻煩是否值得。前文中來自 InstructGPT 和 Llama 2 論文的圖表(下面再次給出)證明 RLHF 值得這樣麻煩。

但是,有很多研究關注的重點是開發更高效的替代技術。其中最有趣的方法總結如下。

論文 1:《Constitutional AI: Harmlessness from AI Feedback》

論文地址:https://arxiv.org/abs/2212.08073

在這篇 Constitutional AI 論文中,作者提出了一種自訓練機制,其基于人類提供的規則列表。類似于之前提到的 InstructGPT 論文,這里提出的方法也使用了一種強化學習。

來自 Constitutional AI 論文

上圖中的「red teaming(紅隊)」這一術語指的是一種源于冷戰軍事演習的測試方法,原本是指扮演蘇聯角色的演習隊伍,用于測試美國的戰略和防御能力。

在 AI 研究的網絡安全語境中,紅隊現在描述的是這樣一個過程:外部或內部的專家模仿潛在的對手,通過模仿真實世界打擊者的戰術、技術和工作流程來挑戰、測試并最終提升給定的相關系統。

論文 2:《The Wisdom of Hindsight Makes Language Models Better Instruction Followers》

圖片

論文地址:https://arxiv.org/abs/2302.05206

這篇論文用于 LLM 微調的監督式方法實際上可以發揮出很好的效果。這里,研究者提出了一種基于重新標注的監督式微調方法,其在 12 個 BigBench 任務上的表現優于 RLHF。

這種新提出的 HIR(Hindsight Instruction Labeling)是如何工作的?簡單來說,HIR 方法包含兩個步驟:采樣和訓練。在采樣步驟,prompt 和指令被輸入到 LLM 中以收集響應。然后基于對齊分數,在訓練階段適當的地方對指令進行重新標注。然后,使用經過重新標注的指令和原始 prompt 對 LLM 進行微調。使用這種重新標注方法,研究者可以有效地將失敗案例(LLM 的輸出與原始指令不匹配的情況)轉變成對監督學習有用的訓練數據。

圖片

來自上述論文的方法及實驗結果比較

注意這項研究不能直接與 InstructGPT 中的 RLHF 工作進行比較,因為它似乎使用啟發式方法(「但是,由于大多數人類反饋數據都難以收集,所以我們采用了一個腳本化的反饋函數……」)不過 HIR 的事后高見方法的結果依然非常引人注目。

論文 3:《Direct Preference Optimization:Your Language Model is Secretly a Reward Model》


圖片

論文地址:https://arxiv.org/abs/2305.18290

直接偏好優化(DPO)是一種「使用 PPO 的 RLHF」的替代技術,作者在論文中表明在 RLHF 用于擬合獎勵模型的交叉熵損失也可用于直接微調 LLM。根據他們的基準測試,使用 DPO 的效率更高,而且在響應質量方面也通常優于 RLHF/PPO。

圖片

來自對應論文的 DPO 及其效果展示

有關這項研究的更多介紹可參看機器之心報道《RLHF 中的「RL」是必需的嗎?有人用二進制交叉熵直接微調 LLM,效果更好》。

論文 4:《Reinforced Self-Training (ReST) for Language Modeling》 

論文地址:https://arxiv.org/abs/2308.08998

ReST 也是 RLHF 的一種替代方法,其能用于對齊 LLM 與人類偏好。ReST 使用一種采樣方法來創建一個改進版數據集,然后在質量越來越高的子集上不斷迭代訓練,從而實現對獎勵函數的微調。據作者描述,ReST 的效率高于標準的在線 RLHF 方法(比如使用 PPO 的 RLHF),因為其能以離線方式生成訓練數據集,但他們并未全面地比較這種方法與 InstructGPT 和 Llama 2 等中使用的標準 RLHF PPO 方法。

圖片

ReST 方法圖示

有關這項研究的更多介紹可參看機器之心報道《DeepMind 新研究:ReST 讓大模型與人類偏好對齊,比在線 RLHF 更有效》。

論文 5:《RLAIF:Scaling Reinforcement Learning from Human Feedback with AI Feedback》

圖片

論文地址:https://arxiv.org/abs/2309.00267

近期的根據人工智能反饋的強化學習(RLAIF)研究表明,在 RLHF 中用于訓練獎勵模型的評分并不一定非要由人類提供,也可以使用 LLM(這里是 PaLM 2)生成。在人類評估者看來,用傳統 RLHF 方法和 RLAIF 方法訓練的模型得到的結果都差不多。

另一個有趣的發現是:RLHF 和 RLAIF 模型都顯著優于單純使用監督式指令微調訓練的模型。

圖片

RLHF 和 RLAIF 方法以及它們的勝率比較

這項研究的結果非常有用而且很有意思,因為這基本上意味著我們可以讓 RLHF 訓練更加高效并且成本更低。但是,在有關信息內容的安全性和可信性(人類偏好研究只能部分地體現)的定性研究中,這些 RLAIF 模型究竟表現如何還有待觀察。

有關這項研究的更多介紹可參看機器之心報道《RLHF vs RL「AI」F,谷歌實證:大模型訓練中人類反饋可被 AI 替代》。

結語

這些替代技術是否值得投入應用實踐?這個問題還有待解答,因為目前 Llama 2 和未使用 RLHF 訓練的 Code Llama 系列模型都還沒有真正的競爭者。

責任編輯:張燕妮 來源: 機器之心
相關推薦

2019-08-05 10:00:13

LinuxBash命令

2017-03-27 17:53:45

Linux

2013-01-04 09:53:32

大數據技術大數據

2013-07-30 14:27:14

IT領導

2020-05-07 18:20:52

Git腳本Linux開源

2013-09-18 09:40:32

企業BYOD企業應用商店

2021-11-30 05:51:46

React開發工具

2020-11-09 06:51:46

開源工具開源

2024-12-03 10:55:56

微服務架構注冊中心

2012-12-04 18:11:46

LanSecS堡壘主機堡壘機

2011-02-22 08:55:42

Chrome企業瀏覽器

2012-04-18 17:06:41

PhoneGap

2014-01-09 14:25:19

MacOS X工具

2015-05-07 13:38:15

2024-01-10 08:02:03

分布式技術令牌,

2009-07-08 14:24:43

Java日志系統跟蹤調試

2023-05-04 12:37:24

2024-10-17 16:01:02

2010-06-05 22:52:33

UML

2014-06-24 09:31:02

信息安全IT安全首席安全官
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 二区av| 天天搞天天操 | 完全免费av在线 | 国产乱码久久久久久 | 亚洲精品免费观看 | 91资源在线 | 国产91亚洲精品一区二区三区 | 亚洲高清在线 | 欧美精品一区二区在线观看 | 爱综合 | 欧美日韩国产高清 | 亚洲精品天堂 | 久草成人 | 亚洲欧美一区二区三区情侣bbw | 亚洲成人一区二区 | 四虎成人免费视频 | 欧美三级在线 | 成人精品一区二区三区 | 国产成人综合网 | 午夜小视频免费观看 | 日韩中文字幕第一页 | 久久一二 | 精品av久久久久电影 | 亚洲 欧美 综合 | 九九免费在线视频 | 99资源站 | 91精品久久久久久久 | 91在线电影 | 欧美成人一区二免费视频软件 | 91国内精品久久 | 九九99九九精彩46 | 亚洲欧洲精品成人久久奇米网 | 日本一区二区高清视频 | 欧美性网站| 国产精品高清一区二区三区 | 亚洲国产精品99久久久久久久久 | 成人亚洲视频 | caoporn地址| 国产一级在线 | 成人黄在线观看 | 天天干天天爱天天操 |