在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

怎樣讓PPO訓(xùn)練更穩(wěn)定?早期人類征服RLHF的馴化經(jīng)驗(yàn)

深度學(xué)習(xí)自然語(yǔ)言處理 ? 來(lái)源:NLP工作站 ? 2023-11-16 11:41 ? 次閱讀

做一個(gè)專門面向年輕NLPer的每周在線論文分享平臺(tái)

寫在前面

今天給大家?guī)?lái)一篇“如何穩(wěn)定且有效地訓(xùn)練 PPO”的論文解讀,來(lái)自知乎@何枝(已授權(quán))。在這篇文章中我們將學(xué)習(xí):哪些技巧能夠穩(wěn)定訓(xùn)練過程、哪些指標(biāo)能夠代表著訓(xùn)練的順利進(jìn)行等內(nèi)容

作為 Reinforcement Learning 中的頂流算法,PPO 已經(jīng)統(tǒng)領(lǐng)這個(gè)領(lǐng)域多年。直到InstructGPT的爆火,PPO 開始進(jìn)軍 LLM 領(lǐng)域,憑借其 label-free 的特性不斷拔高基座的性能,在 Llama2 、 Baichuan 的工作中都能看到 RLHF 的身影。

于是你開始摩拳擦掌,躍躍欲試,準(zhǔn)備利用這項(xiàng)強(qiáng)大的技術(shù)來(lái)進(jìn)化自己的基座。但當(dāng)你信心滿滿地跑通訓(xùn)練任務(wù)時(shí),你看到的情況很有可能是這樣的:

5e8862de-82f6-11ee-939d-92fbcf53809c.png各種形形色色的失敗案例

盡管魯迅先生曾言:真的強(qiáng)化敢于直面慘淡的結(jié)果,敢于正視崩壞的曲線。但日復(fù)一復(fù)地開盲盒難免會(huì)讓人心臟承受不了,好在前人們留下了寶貴的馴化經(jīng)驗(yàn),今天讓我們一起看看“如何穩(wěn)定且有效地訓(xùn)練PPO”。

知乎:https://zhuanlan.zhihu.com/p/666455333
Paper:https://arxiv.org/pdf/2307.04964.pdf
Code:https://github.com/OpenLMLab/MOSS-RLHF/tree/main

1. Reward Model 訓(xùn)練

RL 的整個(gè)訓(xùn)練目標(biāo)都是圍繞著 reward 來(lái)進(jìn)行,傳統(tǒng) RM 的訓(xùn)練公式為拉開好/壞樣本之間的得分差:

5ea2d948-82f6-11ee-939d-92fbcf53809c.pngy_w 為 selected 樣本,y_l 為 rejecte 樣本

但是,僅僅是「拉開得分差」這一個(gè)目標(biāo)很有可能讓 RM 陷入到「鉆牛角尖」的困境中。

為了保持住 RM 的本質(zhì)還是一個(gè)「語(yǔ)言模型」,文章在原本的 loss 中加入了對(duì)「好樣本」的 LM loss:

5eb1d8ee-82f6-11ee-939d-92fbcf53809c.png在原來(lái)的 loss 基礎(chǔ)上順便學(xué)習(xí)寫出「優(yōu)秀樣本」,保持住模型能寫句子的能力

值得一提的是:文章中的 r' 是用了另外一個(gè) RM' 來(lái)算 loss 的,RM' 的結(jié)構(gòu)和 RM 一樣,只不過輸出的維度不是 1,而是 vocab_size。但其實(shí)我認(rèn)為也可以使用一個(gè)帶有 ValueHead 的模型來(lái)既訓(xùn)練打分又訓(xùn)練寫句子,畢竟這 2 個(gè)任務(wù)都需要模型知道什么的句子是「好句子」—— 還能省顯存。

以下是論文訓(xùn)練 RM 的詳細(xì)參數(shù)

5ec18b2c-82f6-11ee-939d-92fbcf53809c.png

一般的,我們會(huì)使用 prefered sample - disprefered sample 的分差來(lái)衡量 RM 的效果:

5ecb9770-82f6-11ee-939d-92fbcf53809c.png圖左為在中文標(biāo)注數(shù)據(jù)集上的分差分布,圖右為在英文數(shù)據(jù)集上的分差分布(區(qū)分度不如中文)

完全理想的狀況下,prefered - disprefered 應(yīng)該都在 0 的右邊(好樣本的分?jǐn)?shù)更高),但考慮到標(biāo)注中的噪聲、模型的擬合能力等,存在少小部分 0 左邊的樣本是合理的,拉出來(lái)人工評(píng)估下即可。

此外,文中還提到:只看 Acc 并不能夠很好的衡量 RM 的性能,但尚未給出其他可以衡量的指標(biāo)。

2. PPO 的穩(wěn)定訓(xùn)練方法

2.1 及時(shí)發(fā)現(xiàn)訓(xùn)練過程中的異常

PPO 訓(xùn)練中很常見的一個(gè)問題是「模式崩潰」,其典型特征為:長(zhǎng)度很長(zhǎng)且無(wú)意義的文字。

5ee7a942-82f6-11ee-939d-92fbcf53809c.png

而對(duì)于這種「崩潰的輸出」Reward Model 往往還容易打出一個(gè)很高的分?jǐn)?shù),這將導(dǎo)致我們無(wú)法在訓(xùn)練過程中及時(shí)的發(fā)現(xiàn)問題,等訓(xùn)完對(duì)著一個(gè)滿意分?jǐn)?shù)的 checkpoint 看生成結(jié)果的時(shí)候才發(fā)現(xiàn)空歡喜一場(chǎng)。

對(duì)于上述這種問題,我們可以通過 3 個(gè)指標(biāo)來(lái)監(jiān)控:KL、Response Length、Perplexity。

5eff1ffa-82f6-11ee-939d-92fbcf53809c.png訓(xùn)練過程中的各種指標(biāo),從約第 420 step 開始: 1. reward 出現(xiàn)驟增。2. KL 出現(xiàn)驟增。3. Perplexity 出現(xiàn)驟降。4. Response Length 出現(xiàn)驟增。5. 訓(xùn)練效果出現(xiàn)驟降(圖左上紅線)

因此我們可以總結(jié)出幾種指標(biāo)異常的情況:

  • Reward 出現(xiàn)驟增:很可能 Policy Model 找到了某條 shortcut,比如通過模式崩潰來(lái)獲得更高的分?jǐn)?shù)。
  • KL 出現(xiàn)驟增:同上,很可能此時(shí)的輸出模式已經(jīng)完全崩潰。
  • Perplexity 驟降:由于 PPL 是指代模式對(duì)當(dāng)前生成結(jié)果的「確定性」,一般來(lái)講,句子的生成都會(huì)帶有一定的不確定性,當(dāng) Policy Model 對(duì)某一個(gè)生成結(jié)果突然「非常確定」的時(shí)候(無(wú)論是什么樣的上文都很確定接下來(lái)應(yīng)該輸出什么),那么它大概率是已經(jīng)擬合到了一個(gè)確定的「崩壞模式」上了。
  • Response Length 驟增:這個(gè)對(duì)應(yīng)我們之前給的 bad case,回復(fù)長(zhǎng)度的驟增也可能代表當(dāng)前輸出已經(jīng)崩潰。

2.2 Score Normalization & Clipping

PPO 的整個(gè)訓(xùn)練都是圍繞優(yōu)化 Score 作為目標(biāo)來(lái)進(jìn)行的,和 Score 相關(guān)的變量有 2 個(gè):

  • Reward:由 RM(≈ Human) 直接給出的反饋。
  • Advantages:由 Reward 和 Critic Model 共同決定的優(yōu)勢(shì)值,最終用于 loss 計(jì)算。

對(duì)于這 2 個(gè)值,我們都可以對(duì)其進(jìn)行「歸一化」和「裁剪」。

Reward 的處理公式如下:

5f18e160-82f6-11ee-939d-92fbcf53809c.pngReward Normalization & Clipping

上述式子將 reward 化成了一個(gè)均值為 0 的標(biāo)準(zhǔn)分布,均值為 0 是為了保證在訓(xùn)練過程中得到的正負(fù)獎(jiǎng)勵(lì)能夠盡可能的均勻,如果一段時(shí)間內(nèi)全為負(fù)或全為正從直覺上來(lái)講不太利于模型學(xué)習(xí)。

文中提到,使用 clipping 可以限制模型進(jìn)化的「最終分?jǐn)?shù)」沒有那么高,鑒于之前「分?jǐn)?shù)越高,并不一定有更好的效果」的結(jié)論,作者認(rèn)為使用 clipping 對(duì)最終的效果是有益的。

至于 Advantages,在 PPO 的標(biāo)準(zhǔn)流程里已經(jīng)會(huì)對(duì)其進(jìn)行 Normalization,而 advantage clipping 和 reward clipping 在本質(zhì)上其實(shí)很相似,則只用在 reward 階段進(jìn)行截?cái)嗉纯桑詫?duì)于 Advantage 來(lái)講不需要做太多其他額外的操作。

2.3 Policy Loss 設(shè)計(jì)

在傳統(tǒng)的 PPO 流程中,我們通常會(huì)對(duì) Policy Molde 的 Loss 上做以下 2 種操作:

  • Importance Sampling:這是 PPO 中加快 On-Policy 算法訓(xùn)練速度的關(guān)鍵步驟,即一次采樣的數(shù)據(jù)可以進(jìn)行多次更新(通過系數(shù)補(bǔ)償)。這種方法通常和 KL 懲罰一起使用,實(shí)驗(yàn)表明這樣能夠更加穩(wěn)定 PPO 的訓(xùn)練,但對(duì)最終的效果會(huì)存在一定折損(所以最好的還是 1 輪 sample 只做一次 update,退化為原始的 PG 流程)。
  • Entropy Loss:一般為了鼓勵(lì) Policy 在進(jìn)化的同時(shí)保留「探索」的能力,我們會(huì)在 loss 中加入 entropy(確定性)loss,但在 RLHF 中這項(xiàng)設(shè)置對(duì)超參非常敏感,很容易就崩掉。鑒于 KL 和 Entropy 有著相似的效果,因此作者更推薦使用 KL 來(lái)代替 Entropy Loss。

除了上述 2 個(gè)傳統(tǒng)設(shè)置外,RLHF 中加入一個(gè)新的指標(biāo):Token Level KL-Penalty。

在傳統(tǒng)的 RL 流程中,agent 每采取一個(gè) action 后都會(huì)得到一個(gè) action reward,對(duì)比到文本生成任務(wù)中,每新生成一個(gè) token 就等于做出了一次 action,但實(shí)際上我們無(wú)法每生成一個(gè) token 就打出一個(gè)分?jǐn)?shù),我們只能在一個(gè)完整句子(Trajectory)生成完成之后打出一個(gè) Total Reward。

這就比較痛苦了,當(dāng)我們只有一個(gè)長(zhǎng)序列的最后得分時(shí),前面的每一個(gè) step 的得分估計(jì)就變得非常困難。因此,為了避免「sparse reward」的同時(shí)限制 Policy Model 朝著「相對(duì)合理的方向」進(jìn)化,我們會(huì)通過計(jì)算每個(gè)生成 token 與參考模型之間的 KL 來(lái)作為單個(gè) token 的 reward 分?jǐn)?shù)。

5f245072-82f6-11ee-939d-92fbcf53809c.png式子的前半部分為 reward(discounted)后半部分為 KL 懲罰分?jǐn)?shù)

2.4 模型初始化

PPO 繼承自 Actor-Critic 框架,因此算法中一共包含 2 個(gè)模型:Actor 和 Critic。

  • Actor Model(Policy Model)

Policy Model 是指我們最終訓(xùn)練后使用的生成模型,Policy Model 需要具備一定基本的能力才能保證訓(xùn)練的穩(wěn)定性,通常會(huì)選用 SFT 之后的模型。這個(gè)比較好理解,如果我們選用 Pretrained Model 為起點(diǎn)的話,探索空間會(huì)非常大,同時(shí)也更加的不穩(wěn)定(對(duì) Reward Model 要求更高)。

  • Critic Model

一種很直覺的想法是:同樣是「評(píng)判任務(wù)」,我們直接使用 Reward Model 來(lái)當(dāng)作 Critic Model 就好了。

但其實(shí)這種想法不完全正確,從本質(zhì)上來(lái)講 Critic 需要對(duì)每一個(gè) token 的狀態(tài)進(jìn)行打分,而 RM 是對(duì)整個(gè)句子進(jìn)行綜合得分評(píng)估,這兩個(gè)任務(wù)還是存在一定的區(qū)別。

因此,一種更好的方式是:先訓(xùn)練 Critic Model一段時(shí)間,直到 Critic Loss 降的相對(duì)較低為止。預(yù)先訓(xùn)練能夠幫助在正式訓(xùn)練的初期 Critic 能夠進(jìn)行較為正確的 value 預(yù)估,從而穩(wěn)定訓(xùn)練過程,至于使用 SFT 還是 RM 作為 Critic 的結(jié)構(gòu),實(shí)驗(yàn)結(jié)果顯示并沒有非常明顯的區(qū)別。

2.5 最優(yōu)策略集合(PPO-max)

文章的末尾給出了作者匯聚了各種實(shí)驗(yàn)結(jié)果給出的一套推薦的策略:

  • reward normalize:使用歷史獲得過的所有 reward 的均值和方差進(jìn)行標(biāo)準(zhǔn)化。
  • token KL penalty:限制模型更新方向。
  • Critic Model:使用 RM 初始化 Critic,并在 PPO 正式訓(xùn)練之前先進(jìn)行 Critic 預(yù)訓(xùn)練。
  • Global Gradient Clipping
  • 使用相對(duì)較小的 Experience Buffer。
  • Pretrain Loss:在 PPO 訓(xùn)練 loss 中加入 Pretrain Language Model Loss,和 [InstructGPT] 中保持一致。
5f3b6cc6-82f6-11ee-939d-92fbcf53809c.pngPPO-max 所使用的方法合集(標(biāo)星的方法)



聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 噪聲
    +關(guān)注

    關(guān)注

    13

    文章

    1122

    瀏覽量

    47420
  • 語(yǔ)言模型
    +關(guān)注

    關(guān)注

    0

    文章

    525

    瀏覽量

    10277
  • LLM
    LLM
    +關(guān)注

    關(guān)注

    0

    文章

    288

    瀏覽量

    343

原文標(biāo)題:怎樣讓 PPO 訓(xùn)練更穩(wěn)定?早期人類征服 RLHF 的馴化經(jīng)驗(yàn)

文章出處:【微信號(hào):zenRRan,微信公眾號(hào):深度學(xué)習(xí)自然語(yǔ)言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    拆解大語(yǔ)言模型RLHF中的PPO算法

    由于本文以大語(yǔ)言模型 RLHFPPO 算法為主,所以希望你在閱讀前先弄明白大語(yǔ)言模型 RLHF 的前兩步,即 SFT Model 和 Reward Model 的訓(xùn)練過程。另外因
    的頭像 發(fā)表于 12-11 18:30 ?2263次閱讀
    拆解大語(yǔ)言模型<b class='flag-5'>RLHF</b>中的<b class='flag-5'>PPO</b>算法

    tas5711 DRC Time Constants怎樣配置出合理的時(shí)間使功率壓出更穩(wěn)定

    tas5711DRC Time Constants怎樣配置出合理的時(shí)間使功率壓出更穩(wěn)定,有可參考的參數(shù)嗎?
    發(fā)表于 10-21 07:25

    altium designer 哪個(gè)版本更穩(wěn)定好用?

    各位高手覺得altium designer 哪個(gè)版本更穩(wěn)定好用啊?推薦一個(gè)唄、、
    發(fā)表于 05-09 10:38

    C-Load TM運(yùn)算放大器征服穩(wěn)定

    DN107-C-Load TM運(yùn)算放大器征服穩(wěn)定
    發(fā)表于 06-24 10:08

    請(qǐng)問怎么組件更穩(wěn)定

    嗨!我們有一些不穩(wěn)定的元件,例如電容器*“pF”*和電阻器*“M Ohm”*。您是否有任何提示可以這種類型的組件更穩(wěn)定?有誰(shuí)知道如何做這樣的事情,在調(diào)試行中結(jié)合多個(gè)測(cè)試,以便更有可能測(cè)試該組件
    發(fā)表于 08-30 09:52

    STM32與PIC對(duì)比分析?哪個(gè)更穩(wěn)定

    有人做過:STM32與PIC比較嗎?那個(gè)更穩(wěn)定?我發(fā)現(xiàn)PIC經(jīng)常有程序飛出,STM32有嗎?
    發(fā)表于 10-19 07:27

    如何AGP顯卡工作得更穩(wěn)定

    如何AGP顯卡工作得更穩(wěn)定   隨著新顯示卡的不斷上市,顯卡和主板的兼容性問題時(shí)有發(fā)生, 其中采用非Intel芯片組的主板“發(fā)
    發(fā)表于 01-12 11:14 ?634次閱讀

    了解如何您的汽車電池更穩(wěn)定、運(yùn)行時(shí)間更長(zhǎng)

    了解如何您的汽車電池更穩(wěn)定、運(yùn)行時(shí)間更長(zhǎng)
    發(fā)表于 11-01 08:27 ?0次下載
    了解如何<b class='flag-5'>讓</b>您的汽車電池<b class='flag-5'>更穩(wěn)定</b>、運(yùn)行時(shí)間更長(zhǎng)

    微軟開源“傻瓜式”類ChatGPT模型訓(xùn)練工具

    DeepSpeed-RLHF 模塊:DeepSpeed-RLHF 復(fù)刻了 InstructGPT 論文中的訓(xùn)練模式,并確保包括 a) 監(jiān)督微調(diào)(SFT),b) 獎(jiǎng)勵(lì)模型微調(diào)和 c) 基于人類
    的頭像 發(fā)表于 04-14 09:36 ?1074次閱讀

    怎么直流調(diào)速更穩(wěn)

    直流調(diào)速的穩(wěn)定性。直流調(diào)速更穩(wěn)有多種方法,即可控硅調(diào)速、PWM場(chǎng)效管調(diào)速,直流斬波調(diào)速等等。根據(jù)實(shí)際要求來(lái)選配合適的直流調(diào)速最為必要。現(xiàn)以常規(guī)直流DC220V~440V/2000A以下為例。一、要有精
    的頭像 發(fā)表于 03-10 14:42 ?1142次閱讀
    怎么<b class='flag-5'>讓</b>直流調(diào)速<b class='flag-5'>更穩(wěn)</b>?

    RLHF實(shí)踐中的框架使用與一些坑 (TRL, LMFlow)

    我們主要用一個(gè)具體的例子展示如何在兩個(gè)框架下做RLHF,并且記錄下訓(xùn)練過程中我們踩到的主要的坑。這個(gè)例子包括完整的SFT,獎(jiǎng)勵(lì)建模和 RLHF, 其中RLHF包括通過 RAFT 算法(
    的頭像 發(fā)表于 06-20 14:36 ?1942次閱讀
    <b class='flag-5'>RLHF</b>實(shí)踐中的框架使用與一些坑 (TRL, LMFlow)

    大語(yǔ)言模型(LLM)預(yù)訓(xùn)練數(shù)據(jù)集調(diào)研分析

    model 訓(xùn)練完成后,使用 instruction 以及其他高質(zhì)量的私域數(shù)據(jù)集來(lái)提升 LLM 在特定領(lǐng)域的性能;而 rlhf 是 openAI 用來(lái)model 對(duì)齊人類價(jià)值觀的一
    的頭像 發(fā)表于 09-19 10:00 ?1167次閱讀
    大語(yǔ)言模型(LLM)預(yù)<b class='flag-5'>訓(xùn)練</b>數(shù)據(jù)集調(diào)研分析

    插卡路由器設(shè)置教程,家庭網(wǎng)絡(luò)更穩(wěn)定高速!

    插卡路由器設(shè)置,家庭網(wǎng)絡(luò)更穩(wěn)定高速!
    的頭像 發(fā)表于 11-29 17:17 ?2082次閱讀

    一種基于表征工程的生成式語(yǔ)言大模型人類偏好對(duì)齊策略

    學(xué)習(xí)算法RLHF[1]的代替方法之一,其性能上超過其他現(xiàn)有的替代方案,媲美RLHF。實(shí)現(xiàn)較為簡(jiǎn)單,訓(xùn)練時(shí)對(duì)于硬件資源要求也相對(duì)較低。
    的頭像 發(fā)表于 01-03 14:25 ?573次閱讀
    一種基于表征工程的生成式語(yǔ)言大模型<b class='flag-5'>人類</b>偏好對(duì)齊策略

    圖解大模型RLHF系列之:人人都能看懂的PPO原理與源碼解讀

    回想一下我們對(duì)NLP任務(wù)做強(qiáng)化學(xué)習(xí)(RLHF)的目的:我們希望給模型一個(gè)prompt,模型能生成符合人類喜好的response。再回想一下gpt模型做推理的過程:每個(gè)時(shí)刻只產(chǎn)生一個(gè)token,即token是一個(gè)一個(gè)蹦出來(lái)的,先
    的頭像 發(fā)表于 01-14 11:19 ?2646次閱讀
    圖解大模型<b class='flag-5'>RLHF</b>系列之:人人都能看懂的<b class='flag-5'>PPO</b>原理與源碼解讀
    主站蜘蛛池模板: vip影视免费观看| 黄a网站| 人人爽人人干| 一区二区三区四区在线视频| 女人成午夜大片7777在线| 国产精品伦理一区二区三区| 日本亚洲精品色婷婷在线影院| 天天摸夜夜摸成人免费视频| 亚洲综合激情网| 综合99| 久久精品伊人波多野结| 日本媚薬痉挛在线观看免费| 亚洲一级毛片在线观播放| 三级aa久久| 午夜在线播放视频在线观看视频| 天堂在线www| 国产h视频在线观看高清| 天天撸夜夜操| 午夜噜噜噜私人影院在线播放| 999色综合| 巨乳色在线观看| 韩漫免费网站无遮挡羞羞漫画| 免费高清视频在线观看| 一级一黄在线观看视频免费| 亚州色图欧美色图| 欧美黄色大片免费| tdg58在线观看| 亚洲国产七七久久桃花| 天天亚洲综合| 天天色综合2| 久久草在线看| 91午夜在线观看| sihu影院永久在线影院| 99热99操99射| 怡红院网址| 日韩毛片| 狠狠尻| 色456| 2018天天射| 国产色婷婷精品综合在线 | 九九福利|