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

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

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

大模型訓(xùn)練中RM分?jǐn)?shù)越來(lái)越高,那訓(xùn)出來(lái)LLM的效果一定好嗎?

深度學(xué)習(xí)自然語(yǔ)言處理 ? 來(lái)源:包包算法筆記 ? 2023-07-26 15:45 ? 次閱讀

之前在文章大模型面試八股中提到一個(gè)問(wèn)題,大模型訓(xùn)練中RM分?jǐn)?shù)越來(lái)越高,那訓(xùn)出來(lái)LLM的效果一定好嗎?

這么肯定的判斷肯定是有坑的,值得懷疑。

如果你動(dòng)手跑幾次ppo的過(guò)程就發(fā)現(xiàn)了,大模型的強(qiáng)化學(xué)習(xí)非常難以訓(xùn)練,難以訓(xùn)練不僅僅指的是費(fèi)卡,還是指的非常容易訓(xùn)崩。

第一,費(fèi)卡。假設(shè)你訓(xùn)llama 7b,SFT 和 RM 都用7B的模型,那么顯存耗費(fèi) = 2*7B(TRIAN MODE) + *7B(EVAL MODE), 分別對(duì)應(yīng) policy model / critic model,還有ref model/reward model

本來(lái)你能用幾張40GB A100的卡+deepspeed 做7b的全參數(shù)微調(diào),強(qiáng)化學(xué)習(xí)就得升級(jí)到80GB的A100了,勉勉強(qiáng)強(qiáng)能跑到7B。想跑更大的就得充錢了。

第二,容易崩。LLM訓(xùn)著訓(xùn)著就不聽(tīng)你話了,要么變成停不下來(lái)的復(fù)讀機(jī),輸出到后面沒(méi)有邏輯直到maxlen,要么變成啞巴,直接一個(gè)eosid躺平。

RLHF中的問(wèn)題其實(shí)在RL游戲訓(xùn)練里面很常見(jiàn)了,如果環(huán)境和參數(shù)設(shè)置不好的話,agent很容走極端,在 一頭撞死or循環(huán)鬼畜之間反復(fù)橫跳。

原始的ppo就是很難訓(xùn),對(duì)SFT基模型和RM的訓(xùn)練數(shù)據(jù)以及采樣prompt的數(shù)據(jù)要求很高,參數(shù)設(shè)置要求也很高。

自從openai帶了一波RLHF的節(jié)奏后,大家都覺(jué)得強(qiáng)化學(xué)習(xí)在對(duì)齊方面的無(wú)敵功力,但自己跑似乎又不是那么回事,這玩意也太有講究了吧。

更多的魔鬼在細(xì)節(jié)了,openai像拿了一個(gè)比賽的冠軍,告訴你了成功的solution,結(jié)果沒(méi)告訴你各個(gè)步驟的重要性和關(guān)鍵設(shè)置,更沒(méi)有告訴你失敗和無(wú)效的經(jīng)驗(yàn)。

在講trick之前,首先復(fù)旦-MOSS也對(duì)LLM的訓(xùn)練過(guò)程加了更多監(jiān)測(cè),其實(shí)這些都是實(shí)驗(yàn)中非常重要的監(jiān)控過(guò)程指標(biāo),能很清楚的發(fā)現(xiàn)你模型是否出現(xiàn)異常。

然后這個(gè)圖很好,非常清楚地講述了trick是如何作用在RLHF中的各個(gè)階段的,另外配套的開(kāi)源代碼實(shí)現(xiàn)也非常清晰易懂,典型的面條代碼沒(méi)有什么封裝,一碼到底,易讀性和魔改都很方便。

下面我們看看這7個(gè)trick,對(duì)應(yīng)圖中右側(cè)畫(huà)星號(hào)的部分。

54a58abc-2496-11ee-962d-dac502259ad0.png

1, token級(jí)別的KL散度懲罰

kl_penalty = (-self.kl_penalty_weight * (logprobs - ref_logprobs)).cpu()

這一步主要解決的問(wèn)題是訓(xùn)練穩(wěn)定性,防止步子太大扯著蛋,如果你輸出的和參考模型差別過(guò)大的話就減分。

2,Reward Normalization and Clipping

3,Value Function Loss Clipping

Clipping類似梯度裁剪,也是止步子太大扯著蛋,對(duì)一些異常的loss和reward做了限制,Normalization為了對(duì)reward做標(biāo)準(zhǔn)化。

這部分的代碼可以對(duì)應(yīng)開(kāi)源中的這些設(shè)置仔細(xì)查看,原理大同小異

self.use_reward_clip: bool = opt.use_reward_clip
self.use_reward_norm:bool=opt.use_reward_norm
self.use_advantage_norm:bool=opt.use_advantage_norm
self.use_advantage_clip: bool = opt.use_advantage_clip
self.use_critic_loss_clip:bool=opt.use_critic_loss_clip
self.use_policy_loss_clip:bool=opt.use_policy_loss_clip

4.Critic Model Initialization

用RM model初始化Critic可能不是一個(gè)必要的選擇,作者做了一些實(shí)驗(yàn)證明這個(gè)問(wèn)題,推薦使用critic model pre-training。代碼里這部分還沒(méi)有,還是使用rm初始化的,后續(xù)跟進(jìn)一下這個(gè)問(wèn)題。

5. Generalized Advantage Estimation

附錄里C.3有GAE的調(diào)參實(shí)驗(yàn)。

54cc5f48-2496-11ee-962d-dac502259ad0.png

6.Clipped Surrogate Objective

這個(gè)也是一種正則化方法,防止步子太大扯著蛋,確保訓(xùn)練過(guò)程的中的穩(wěn)定性,這個(gè)方法比一般policy gradient處理的更為高效。

54ebd882-2496-11ee-962d-dac502259ad0.png

7.Global Gradient Clipping

5507a0da-2496-11ee-962d-dac502259ad0.png

原理還是同上,所有的Clipping無(wú)非都是砍掉太大的步子。

另外作者還用了一個(gè)instruct gpt里面用到的方案,增加了訓(xùn)練過(guò)程使用 llm_pretrain_loss,參考代碼

if self.use_entropy_loss:
    loss1 = pg_loss + self.vf_loss_weight * vf_loss + self.entropy_loss_weight * entro_loss
else:
    loss1 = pg_loss + self.vf_loss_weight * vf_loss
loss2 = self.ppo_pretrain_loss_weight * pretrain_loss
loss = loss1 + loss2

總結(jié)下,整體ppo-max的改進(jìn)主要集中在訓(xùn)練過(guò)程的穩(wěn)定性上,用的東西還是模型的老三樣,訓(xùn)練過(guò)程裁剪,初始化,loss改進(jìn),主要集中在如何能讓RLHF更好調(diào),推薦參考作者的源碼進(jìn)行一些實(shí)驗(yàn)。

另外,作者在論文里留了一個(gè)彩蛋,技術(shù)報(bào)告的第二部分預(yù)告主要是講Reward Model的成功和踩坑經(jīng)驗(yàn),目前還沒(méi)有發(fā)布,靜待作者更新。之前大家一直的爭(zhēng)論點(diǎn)用什么scale的RM,說(shuō)要用遠(yuǎn)遠(yuǎn)大于SFT model的RM model,這到底是不是一個(gè)關(guān)鍵的問(wèn)題,是不是deberta 和 65B都行,期待作者第二個(gè)技術(shù)報(bào)告里給一個(gè)實(shí)驗(yàn)~






審核編輯:劉清

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

    關(guān)注

    68

    文章

    19396

    瀏覽量

    230714
  • SFT
    SFT
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    6823
  • GAE
    GAE
    +關(guān)注

    關(guān)注

    0

    文章

    5

    瀏覽量

    6780

原文標(biāo)題:大模型RLHF的trick

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

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ADAS比重越來(lái)越高 汽車電子或成半導(dǎo)體增長(zhǎng)重要?jiǎng)幽?/a>

    全球品牌車廠采用先進(jìn)駕駛輔助系統(tǒng)(ADAS)比重越來(lái)越高,更新娛樂(lè)信息系統(tǒng)愈益頻繁,加上無(wú)人駕駛、自動(dòng)駕駛等新應(yīng)用持續(xù)竄起,全球芯片供應(yīng)商紛將車用電子市場(chǎng)視為新波的主戰(zhàn)場(chǎng),可能扮演未來(lái)半導(dǎo)體產(chǎn)業(yè)成長(zhǎng)的重要?jiǎng)幽堋?/div>
    發(fā)表于 10-25 10:56 ?551次閱讀

    研發(fā)投入越來(lái)越高 什么樣的工具才能保障變現(xiàn)?

    芯片系統(tǒng)復(fù)雜度的增加使得芯片設(shè)計(jì)的投入越來(lái)越高——顆7nm芯片從設(shè)計(jì)到流片需要2億美金——因而保障它們被正確的設(shè)計(jì)和運(yùn)行最終得以變現(xiàn)的工具就愈發(fā)重要。
    的頭像 發(fā)表于 05-11 01:01 ?6631次閱讀

    為什么Web前端工程師薪資越來(lái)越高

    2019年,為什么Web前端工程師薪資越來(lái)越高?
    發(fā)表于 06-18 10:14

    LED展望:光效越來(lái)越高 價(jià)格越來(lái)越

    LED展望:光效越來(lái)越高 價(jià)格越來(lái)越低   LED照明使用的白色LED發(fā)光效率的提高非常明顯,最近1~2年的進(jìn)步尤為顯著。雖然數(shù)值超過(guò)了
    發(fā)表于 01-07 09:04 ?692次閱讀

    未來(lái)芯片的發(fā)展對(duì)FPGA的要求將會(huì)越來(lái)越高

    AI、5G技術(shù)的發(fā)展對(duì)芯片架構(gòu)和軟件支持提出了越來(lái)越高的要求,芯片設(shè)計(jì)更加復(fù)雜,業(yè)界需要更大容量的FPGA實(shí)現(xiàn)高效的仿真和功能驗(yàn)證。
    發(fā)表于 09-11 15:43 ?892次閱讀

    新能源汽車在市場(chǎng)的普及度越來(lái)越高

    路上跑的綠牌車越來(lái)越多,以純電動(dòng)汽車和插電混合動(dòng)力汽車為代表的新能源汽車,正在逐漸成為汽車生活的常客。不管是低廉的使用成本,還是免費(fèi)的牌照,身邊也有朋友開(kāi)始將新能源汽車作為個(gè)購(gòu)車選擇,這說(shuō)明新能源汽車在市場(chǎng)的普及度越來(lái)越高
    發(fā)表于 09-27 08:52 ?1096次閱讀

    動(dòng)力電池企業(yè)對(duì)工業(yè)相機(jī)的要求越來(lái)越高

    作為視覺(jué)檢測(cè)裝備的核心零部件,動(dòng)力電池企業(yè)對(duì)于工業(yè)相機(jī)的要求也越來(lái)越高。
    的頭像 發(fā)表于 09-05 09:38 ?1974次閱讀

    中國(guó)芯呼聲越來(lái)越高,國(guó)內(nèi)EDA龍頭華大九天新突破

     到了現(xiàn)在,相信大家都知道了芯片的重要性,對(duì)于擁有性能不錯(cuò)而且全程自研的“中國(guó)芯”的呼聲也越來(lái)越高了!
    發(fā)表于 09-23 16:42 ?6466次閱讀

    越來(lái)越高的帶寬需求要怎樣的通信衛(wèi)星來(lái)配合

    電子發(fā)燒友網(wǎng)站提供《越來(lái)越高的帶寬需求要怎樣的通信衛(wèi)星來(lái)配合.pdf》資料免費(fèi)下載
    發(fā)表于 11-26 16:58 ?14次下載
    <b class='flag-5'>越來(lái)越高</b>的帶寬需求要怎樣的通信衛(wèi)星來(lái)配合

    基于個(gè)完整的 LLM 訓(xùn)練流程

    ? ? 在這篇文章,我們將盡可能詳細(xì)地梳理個(gè)完整的 LLM 訓(xùn)練流程。包括模型預(yù)訓(xùn)練(Pre
    的頭像 發(fā)表于 06-29 10:08 ?2028次閱讀
    基于<b class='flag-5'>一</b>個(gè)完整的 <b class='flag-5'>LLM</b> <b class='flag-5'>訓(xùn)練</b>流程

    為何開(kāi)關(guān)頻率要大于30kHz,且有越來(lái)越高的趨勢(shì)?

    為何開(kāi)關(guān)頻率要大于30kHz,且有越來(lái)越高的趨勢(shì)?開(kāi)關(guān)頻率大小的限制因素是什么? 開(kāi)關(guān)頻率的大小是指開(kāi)關(guān)電路每秒鐘進(jìn)行開(kāi)關(guān)操作的次數(shù)。在電力電子設(shè)備,開(kāi)關(guān)頻率主要用于調(diào)節(jié)電路的響應(yīng)速度和功率傳輸
    的頭像 發(fā)表于 01-31 17:39 ?3116次閱讀

    llm模型訓(xùn)練般用什么系統(tǒng)

    LLM(Large Language Model,大型語(yǔ)言模型)是近年來(lái)在自然語(yǔ)言處理領(lǐng)域取得顯著成果的種深度學(xué)習(xí)模型。它通常需要大量的計(jì)算資源和數(shù)據(jù)來(lái)進(jìn)行
    的頭像 發(fā)表于 07-09 10:02 ?473次閱讀

    如何訓(xùn)練自己的LLM模型

    訓(xùn)練自己的大型語(yǔ)言模型LLM)是個(gè)復(fù)雜且資源密集的過(guò)程,涉及到大量的數(shù)據(jù)、計(jì)算資源和專業(yè)知識(shí)。以下是訓(xùn)練
    的頭像 發(fā)表于 11-08 09:30 ?722次閱讀

    什么是大模型、大模型是怎么訓(xùn)練出來(lái)的及大模型作用

    ,基礎(chǔ)模型。 ? 大模型個(gè)簡(jiǎn)稱,完整的叫法,應(yīng)該是“人工智能預(yù)訓(xùn)練模型”。預(yù)訓(xùn)練,是
    的頭像 發(fā)表于 11-25 09:29 ?2235次閱讀
    什么是大<b class='flag-5'>模型</b>、大<b class='flag-5'>模型</b>是怎么<b class='flag-5'>訓(xùn)練出來(lái)</b>的及大<b class='flag-5'>模型</b>作用

    小白學(xué)大模型:構(gòu)建LLM的關(guān)鍵步驟

    隨著大規(guī)模語(yǔ)言模型LLM)在性能、成本和應(yīng)用前景上的快速發(fā)展,越來(lái)越多的團(tuán)隊(duì)開(kāi)始探索如何自主訓(xùn)練LLM
    的頭像 發(fā)表于 01-09 12:12 ?310次閱讀
    小白學(xué)大<b class='flag-5'>模型</b>:構(gòu)建<b class='flag-5'>LLM</b>的關(guān)鍵步驟