【InstructGPT論文精讀】人機(jī)交互閉環(huán)開創(chuàng)AIGC新革命

InstrucrGPT 論文精讀
GPT的發(fā)展史

摘要
創(chuàng)新點(diǎn):基于人類強(qiáng)化學(xué)習(xí)的閉環(huán)模型
大家都知道模型越大,學(xué)到的東西越多,能力相對(duì)越強(qiáng),但是??大語言模型有可能會(huì)產(chǎn)生不真實(shí),有毒,沒有幫助的結(jié)果。這是因?yàn)槟P蜎]有能和用戶需要的目的達(dá)成一致。
所以這篇文章把用戶意圖和語言模型建立統(tǒng)一的關(guān)系,對(duì)大語言模型實(shí)施基于用戶的反饋的精調(diào)。
怎么做呢?分兩步實(shí)現(xiàn)
- 第一步是監(jiān)督式的學(xué)習(xí):基于prompt的提示學(xué)習(xí),in-context learning ,情景式學(xué)習(xí),將多輪對(duì)話限制在一個(gè)場(chǎng)景之中,對(duì)GPT3 微調(diào)。
- 第二步是強(qiáng)化學(xué)習(xí),RLHF。
事實(shí)證明這樣的效果還不錯(cuò),兩個(gè)方面:一是模型的參數(shù)降低,從GPT-3 175B的參數(shù),降到了InstructGPT1.3B的參數(shù),二是實(shí)驗(yàn)驗(yàn)證的效果還更好。
概述
大模型胡說八道的原因:很多模型是預(yù)測(cè)下一個(gè)token,并沒有遵循用戶的意圖,答非所問,怎么做才能讓模型實(shí)現(xiàn)有用,誠實(shí),且無害的答案。解決的核心在于對(duì)齊技術(shù) align,讓模型意圖和人類的意圖一致。
具體思想是Instruct 和 GPT-3 實(shí)現(xiàn)對(duì)齊,用強(qiáng)化學(xué)習(xí)去反饋,引入了人類反饋去實(shí)現(xiàn)reward函數(shù)。主要分為三個(gè)步驟:

1,監(jiān)督式學(xué)習(xí)微調(diào):prompt的QA 人工很貴,數(shù)據(jù)量有限,訓(xùn)練不足,泛化能力有限。這部分工作可以怎么優(yōu)化呢?目的是人意圖和模型意圖達(dá)成一致,那我讓人給機(jī)器自動(dòng)生成的答案去打分,這樣也可以讓機(jī)器知道人的意圖喜好。
2,訓(xùn)練獎(jiǎng)勵(lì)模型:首先讓機(jī)器對(duì)prompt,根據(jù)自己已有的模型算法生成多個(gè)答案,人負(fù)責(zé)給答案打分,再去訓(xùn)練一個(gè)reward model 去學(xué)到人類打分的模型,相當(dāng)于reward model就知道了人類的喜好。
3,訓(xùn)練強(qiáng)化學(xué)習(xí)模型:利用學(xué)到的打分模型到強(qiáng)化學(xué)習(xí)的框架中自學(xué),生成prompt,生成答案,去打分,更新生成的策略,不停的迭代。(PPO算法)
2,3步反復(fù)迭代
InstructGPT整個(gè)過程中付出了多余的計(jì)算,稱為tax,很有意思
核心方法
將RLHF用
如何遵循人類的意圖去訓(xùn)練模型
評(píng)價(jià)
如何修改語言模型的工作
三步走
訓(xùn)練數(shù)據(jù),驗(yàn)證,測(cè)試數(shù)據(jù)集
每個(gè)打分的標(biāo)注著ID最多只有200個(gè)提問
三種prompt:(附錄A2.1有)
plain:
few-shot:
user-based:已有的用例寫指令

任務(wù)是什么:
更看重真實(shí)性和無害性
Models
SFT--- 有監(jiān)督式的prompt微調(diào),訓(xùn)練16 epoch,因?yàn)橛?xùn)練數(shù)據(jù)不多,一遍之后就開始o(jì)verfit,但還好,對(duì)后面的RM和打分還有幫助
RM --- SFT網(wǎng)絡(luò)的最后一層,輸入式prompt 輸出是一個(gè)標(biāo)量的分?jǐn)?shù),

PPO --- 沒有看懂,可以進(jìn)這個(gè)鏈接,我會(huì)后期補(bǔ)充

實(shí)驗(yàn)結(jié)果
延伸討論
1,align,閉環(huán)系統(tǒng),align的投入產(chǎn)出比高,instruct 的泛化?
2,和誰align,人是誰?
3,局限性,數(shù)據(jù)的來源很關(guān)鍵
4,instructGPT還是有局限