LLama2詳細(xì)解讀 | Meta開源之光LLama2是如何追上ChatGPT的?
一、概述
Title: Llama 2: Open Foundation and Fine-Tuned Chat Models
論文地址:Llama 2: Open Foundation and Fine-Tuned Chat Models
代碼:??https://github.com/facebookresearch/llama??
官網(wǎng):??https://ai.meta.com/llama/??
1 Motivation
- 開源的LLM chat模型效果還不太好,還沒(méi)一個(gè)開源大模型能和閉源模型(例如chatgpt)能比的。
- ChatGPT是閉源的,LLM的有用性和安全性如何改進(jìn)這一類論文還不是特別多。
2 Methods
2.1 整體架構(gòu)
總結(jié)1: 參考InstructGPT[1],主要還是分為三個(gè)步驟(預(yù)訓(xùn)練、SFT、RLHF),其中RLHF用了兩個(gè)Reward Model(Safety Reward Model、Helpful Reward Model),創(chuàng)新性地引入兩個(gè)Reward模型,在保證安全性的同時(shí),保持很好的有用性。
總結(jié)2: 在RLHF階段,不斷迭代優(yōu)化獎(jiǎng)勵(lì)模型與增強(qiáng)模型能力對(duì)于確保獎(jiǎng)勵(lì)模型保持在分布范圍內(nèi)至關(guān)重要,本文后面的實(shí)驗(yàn)中,看到從最開始與chatgpt對(duì)比只有10%的勝率,用了本文提到的SFT和迭代RLHF后,勝率可高達(dá)60%。
總結(jié)3:Rejection Sampling(拒絕采樣):強(qiáng)化學(xué)習(xí)方法的一種,每次采樣多個(gè)結(jié)果,選取最佳的k個(gè)結(jié)果構(gòu)建新的訓(xùn)練數(shù)據(jù),更新梯度,同時(shí)迭代優(yōu)化模型效果。
2.2 發(fā)布LLAMA2和LLAMA2-CHAT
總結(jié)1:本次同時(shí)發(fā)布了基座模型LLAMA2和Chat模型LLAMA2-CHAT,參數(shù)在7B、13B、70B都有。
總結(jié)2:在新的公開的混合數(shù)據(jù)來(lái)訓(xùn)練,語(yǔ)料庫(kù)的大小增加了40%,將型的上下文長(zhǎng)度增加了一倍,采用了分組查詢注意力機(jī)制。
2.3 LLAMA2和LLMA1訓(xùn)練情況對(duì)比
說(shuō)明:Llama 2系列模型。所有模型都使用4M token進(jìn)行訓(xùn)練。其中更大的模型34B和70B模型使用分組查詢注意力(GQA)來(lái)提高推理可擴(kuò)展性,7B和13B還是通用的注意力機(jī)制。
總結(jié)1: 相對(duì)于llama1,llama2的窗口長(zhǎng)度翻倍,訓(xùn)練tokens翻倍。
總結(jié)2: 使用分組查詢注意(GQA)來(lái)提高推理可擴(kuò)展性。
Grouped Query Attention:在常規(guī)的注意力機(jī)制中,我們通常將一個(gè)查詢與一組鍵(key)和值(value)進(jìn)行匹配,以便在執(zhí)行各種任務(wù)(如翻譯、問(wèn)答等)時(shí)聚焦于相關(guān)信息。而在 "grouped query attention" 中,將多個(gè)查詢作為一個(gè)組一起進(jìn)行處理,從而引入了查詢組之間的交互。這種注意力機(jī)制的一個(gè)應(yīng)用場(chǎng)景是在多輪對(duì)話理解中,例如問(wèn)答系統(tǒng)或?qū)υ捝赡P?。在多輪?duì)話中,每一輪對(duì)話可以被視為一個(gè)查詢組,其中每個(gè)查詢表示一個(gè)輪次的輸入。通過(guò)引入 "grouped query attention",模型可以更好地捕捉到不同輪次之間的信息流動(dòng)和上下文關(guān)聯(lián),從而更準(zhǔn)確地理解和生成響應(yīng)??傊?,"grouped query attention" 是一種注意力機(jī)制的變種,用于處理多組查詢之間的交互,特別適用于多輪對(duì)話理解等場(chǎng)景,有助于提高模型的上下文理解和信息交互能力。
3 Conclusion
3.1 整體情況:遠(yuǎn)超開源大模型,除代碼能力外追上了ChatGPT
- 與開源模型對(duì)比:發(fā)布了7B,13B,34B,70B的模型,在大多數(shù)評(píng)測(cè)基準(zhǔn)上,LLaMA2模型優(yōu)于開源聊天模型,詳情如下圖:
大模型評(píng)價(jià)維度:一般從代碼,常識(shí)推理,世界知識(shí),閱讀理解,數(shù)學(xué),比較熱的幾個(gè)數(shù)據(jù)集包括MMLU,BBH,AGI Eval等方面來(lái)評(píng)估。
- 與閉源模型對(duì)比:有用性和安全性都不錯(cuò),除了代碼能力,其他能力接近ChatGPT,可能是ChatGPT的合適替代品:
- 詳細(xì)描述了我們對(duì)Llama 2-Chat進(jìn)行微調(diào)和安全改進(jìn)的方法,以使社區(qū)能夠在我們的工作基礎(chǔ)上再接再厲,并為L(zhǎng)LM的負(fù)責(zé)任的發(fā)展做出貢獻(xiàn)。
3.2 LLAMA2的Helpfulness表現(xiàn)
總結(jié)1:LLama-2 70b模型與chatgpt-0301的GSB評(píng)分為35.9:31.5:32.5,Llama2-70b有用性比ChatGPT-0301還要好點(diǎn)。
總結(jié)2: GPT4自動(dòng)評(píng)估,綠色區(qū)域表明,LLama-2的模型更好,為了消除平局,使用了贏/(贏+輸)來(lái)計(jì)算分?jǐn)?shù)。
3.3 LLAMA2的Safety表現(xiàn)
總結(jié):Llama-2 70b-chat違反安全的比例低于5%,比ChatGPT0301高于5%還要好,盡管評(píng)測(cè)有一定局限性。
二、預(yù)訓(xùn)練和Fine-tuning
1 預(yù)訓(xùn)練訓(xùn)練loss變化情況
總結(jié)1: 對(duì)比Llama1,PPL最終是到1.6左右,這里L(fēng)lama2-70B到1.5了。
總結(jié)2: 觀察到進(jìn)行2T tokens預(yù)訓(xùn)練后,模型仍然沒(méi)有任何飽和跡象,還能繼續(xù)加數(shù)據(jù)繼續(xù)訓(xùn)?。?!
總結(jié)3: tokenizer方法和LLAMA1一樣,包括:BPE編碼,SentencePiece切詞,32K。
2 有監(jiān)督SFT關(guān)鍵是高質(zhì)量的數(shù)據(jù)
總結(jié): SFT數(shù)據(jù)的質(zhì)量比數(shù)量更重要,本文發(fā)現(xiàn)開源的一些數(shù)據(jù)量比較大,但是多樣性和質(zhì)量都不太好,本文最終收集了27540條高質(zhì)量的數(shù)據(jù)來(lái)訓(xùn)練,效果有明顯的改善。
3 人類偏好數(shù)據(jù)收集(百萬(wàn)級(jí)別)
總結(jié)1:收集了現(xiàn)有的開源的和meta收集的數(shù)據(jù)集,總共290萬(wàn),其中Meta整理了141萬(wàn)。
總結(jié)2:人類偏好的標(biāo)簽包括2種反饋,chosen或者rejected,感覺不是特別細(xì)。
總結(jié)3:還分析了各種偏好數(shù)據(jù)的比較的次數(shù)、每個(gè)對(duì)話的平均輪次、每個(gè)例子、每個(gè)提示和每個(gè)回答的平均token數(shù)等指標(biāo)。
4 各種大模型在Meta偏好數(shù)據(jù)上的表現(xiàn)
總結(jié)1: GPT4在人類偏好數(shù)據(jù)集上效果都比較高。GPT4沒(méi)有在Meta數(shù)據(jù)集上訓(xùn)練過(guò),但是效果也是比較好的,但是比經(jīng)過(guò)Meta數(shù)據(jù)訓(xùn)練的RM的效果還是要差一些。
總結(jié)2: 經(jīng)過(guò)人類偏好數(shù)據(jù)集訓(xùn)練的Reward model能大幅提升在該領(lǐng)域的偏好效果。在Meta Safety以及Meta Helpful數(shù)據(jù)集上,經(jīng)過(guò)對(duì)應(yīng)場(chǎng)景數(shù)據(jù)訓(xùn)練的RM,Safety RM和Helpfulness RM在各自的領(lǐng)域都是最好的,比GPT4都要好。
5 Reward model效果和模型尺寸的關(guān)系
總結(jié):數(shù)據(jù)越多,模型越大效果越好,70b的Reward模型更好的概率在80%+,13b的Reward模型更高的概率在75%-76%左右。
6 RL迭代訓(xùn)練(PPO和Rejection sampling fine-tuning)是關(guān)鍵的制勝法寶
總結(jié)1: 在強(qiáng)化學(xué)習(xí)階段,不斷迭代優(yōu)化模型效果,主要探索了兩種不同的RL算法來(lái)迭代優(yōu)化,PPO和Rejection Sampling fine-tuning算法。
總結(jié)2: Rejection Sampling fine-tuning是一種從模型生成多個(gè)候選輸出,通過(guò)獎(jiǎng)勵(lì)機(jī)制選擇最佳輸出,并將選定的輸出用于梯度更新和微調(diào)的方法。這個(gè)方法在之前的研究基礎(chǔ)上進(jìn)行了拓展,使得模型可以通過(guò)選擇的輸出來(lái)進(jìn)一步優(yōu)化自身。
總結(jié)3: 拒絕采樣和ppo的不同。寬度:在拒絕采樣中,該模型為給定的提示探索K個(gè)樣本,而PPO只探索1個(gè)樣本。深度:在PPO中,在步驟t的訓(xùn)練期間,樣本是上一步梯度更新后t-1的更新模型策略的函數(shù)。在拒絕采樣微調(diào)中,我們?cè)趹?yīng)用類似于SFT的微調(diào)之前,根據(jù)模型的初始策略對(duì)收集新數(shù)據(jù)集的所有輸出進(jìn)行采樣。由于應(yīng)用了迭代模型更新,兩個(gè)RL算法之間的基本差異不那么明顯。
結(jié)論:拒絕采樣可以從多個(gè)樣本中,選擇更好的樣本來(lái)訓(xùn)練迭代模型,采樣的個(gè)數(shù)越多,效果越好。同時(shí)溫度系數(shù)越高,多樣性越高效果越越好。
總結(jié)1: 只在70B的LLAMA2-CHAT上使用了拒絕采樣,其他小模型都是從大模型蒸餾過(guò)去。
總結(jié)2: 總共RL迭代了5輪,在RLHF(V4)之前,只使用拒絕采樣微調(diào),之后,我們按順序?qū)烧呓Y(jié)合起來(lái),在再次采樣之前在結(jié)果的拒絕采樣checkpoint上應(yīng)用PPO。
7 利用GAtt方法來(lái)提升多輪問(wèn)答中對(duì)系統(tǒng)指令的遵循能力
說(shuō)明:在多輪問(wèn)答中,經(jīng)常會(huì)忘記系統(tǒng)指令,如左圖所示忘記用emojis來(lái)回答的指令,后面用GAtt技術(shù)優(yōu)化后,右邊有明顯改善。
GAtt方法:感覺是一種新的attention方法,對(duì)于第一條指令或者系統(tǒng)指令提供的注意力更強(qiáng)。
8 LLAMA2-CHAT的演變過(guò)程(RLHF迭代5輪的變化情況),效果非常強(qiáng)!
總結(jié)1: RLHF總共迭代了5次,每次迭代都有提升,其中前4次用的是拒絕采樣來(lái)訓(xùn)練,v5用上了ppo提升更大。
總結(jié)2: RLHF帶來(lái)的提升是比較明顯的,從對(duì)chatgpt10%的勝率提升到了60%+。
9 人工評(píng)估有用性
總結(jié): 在helpfulness prompts上,比其他開源模型效果要更好,甚至比閉源的chatgpt都要好一點(diǎn)。
三、Safety
1 在訓(xùn)練數(shù)據(jù)中引入更安全的數(shù)據(jù)
總結(jié)1: 安全的數(shù)據(jù)越多,效果越好,helpfulness保持穩(wěn)定
總結(jié)2: 隨著更多安全訓(xùn)練數(shù)據(jù)的添加,較低的安全RM分?jǐn)?shù)(即最不安全的回答)逐漸消失,代表安全分非常低的結(jié)果越來(lái)越少。
2 利用Context distillation方法提升安全性
Context distillation方法:指在上下文中引入額外限制提升安全性的方法,這里提供了兩種方法如下:
方法1: Generic Preprompt:提升回答中不應(yīng)該包括任何有害的、不道德、或者有偏見的內(nèi)容。
方法2: Preprompt with Answer Template:給出答案的模版,指導(dǎo)可能不安全的行為該如何回答。
結(jié)論1: 采取通用的預(yù)提示方法(Generic Preprompt)會(huì)提高安全RM分?jǐn)?shù),但帶有定制答案模板的預(yù)提示(Preprompt with answer Template)會(huì)更有幫助。
結(jié)論2: 隨著原始安全分的增加,Context Distillation帶來(lái)的提升越來(lái)越小,甚至對(duì)高分?jǐn)?shù)的樣本帶來(lái)負(fù)面影響,所以本文只在能提升安全分的樣本上使用context distillation技術(shù)。
3 Red Teaming
目的1:被動(dòng)風(fēng)險(xiǎn)識(shí)別可能不太夠,這里還提出要主動(dòng)風(fēng)險(xiǎn)識(shí)別來(lái)優(yōu)化,本文把他叫做Red Teaming,主要用于分析哪些情況下可能會(huì)造成毒性的結(jié)果。
目的2: 安全是一個(gè)長(zhǎng)尾問(wèn)題,即使非常不頻繁的case也會(huì)導(dǎo)致嚴(yán)重的后果。
發(fā)現(xiàn)的llm攻擊特點(diǎn):
? [早期模型]更有可能生成不安全的響應(yīng),而沒(méi)有注意到它們包含有問(wèn)題的內(nèi)容。[稍晚的模型]能夠發(fā)現(xiàn)有問(wèn)題的內(nèi)容,但是還是無(wú)法避免不輸出。[最新模型]能夠解決這些問(wèn)題。
? 創(chuàng)意寫作請(qǐng)求(歌曲、故事、詩(shī)歌等)可能會(huì)讓他生成之前會(huì)強(qiáng)烈反對(duì)的內(nèi)容(逃避監(jiān)管機(jī)制,生成不安全的內(nèi)容)。
? 在積極的上下文中嵌入有問(wèn)題的請(qǐng)求,例如使用積極、進(jìn)取、富有能量的問(wèn)題進(jìn)行掩蓋,是最有效的攻擊方法。
4 Safety Evaluation of Llama 2-Chat
總結(jié):不同尺寸的LLAMA2系列模型中,都有更好的安全性,同時(shí)有用性也非常不錯(cuò)。
總結(jié):多輪問(wèn)答的有害性比單輪問(wèn)答的有害性對(duì)別,增加比較多,但是LLAMA2系列模型都比其他模型好,34b的模型有點(diǎn)奇怪,本文也沒(méi)有開源。
總結(jié):比較了多個(gè)角度,包括有害的,非法的,低質(zhì)量三大類情況下個(gè)模型的違反比例,LLAMA2系列表現(xiàn)都不錯(cuò),34b的模型表現(xiàn)有點(diǎn)奇怪沒(méi)有開源。
四、Discussion
1 SFT模型到RLHF方法給Reward model score分布帶來(lái)的變化
總結(jié):最還是的mix數(shù)據(jù)訓(xùn)練的SFT,低分?jǐn)?shù)的比較多,隨著利用標(biāo)注數(shù)據(jù),效果有了明顯的提升,同時(shí)利用RLHF,獲得高分?jǐn)?shù)的樣本越來(lái)越多,說(shuō)明效果越來(lái)越好。
2 RLHF降低模型結(jié)果的了多樣性
總結(jié)1:溫度越高,多樣性越好,但是做了RLHF后,多樣性有了明顯的下降。
總結(jié)2: Creative Prompts還能維持較高的多樣性,同時(shí)上文也提到,可能更容易被攻擊,所以感覺多樣性和有毒性確實(shí)是一個(gè)需要權(quán)衡的過(guò)程。
五、思考與總結(jié)
總結(jié):本文主要從預(yù)訓(xùn)練、Fine-tuning、Safety這幾個(gè)角度來(lái)介紹了LLAMA2,其中引入高質(zhì)量的數(shù)據(jù),多次迭代優(yōu)化Reward Model是非常關(guān)鍵的一步。
總結(jié)1: 訓(xùn)練數(shù)據(jù)質(zhì)量非常重要。相對(duì)于多而質(zhì)量不高的數(shù)據(jù),SFT過(guò)程中,收集27540條高質(zhì)量的數(shù)據(jù)就能有非常大的提升。
總結(jié)2: RLHF對(duì)對(duì)齊人類觀念還是非常重要的。LLAMA2使用RLHF迭代訓(xùn)練后,對(duì)chatgpt的勝率從開始的10%的勝率提升到了60%+。
總結(jié)3: 模型越大,數(shù)據(jù)量越多,Reward Model的效果就越好。
總結(jié)4: 提升安全性可以在訓(xùn)練數(shù)據(jù),SFT,RLHF多個(gè)方面進(jìn)行優(yōu)化。引入更安全的數(shù)據(jù),可以降低毒性非常高的結(jié)果。引入RLHF,可以進(jìn)一步提高輸出結(jié)果的Reward Model分?jǐn)?shù)。
總結(jié)5: 引入Context distillation方法也可以有效的提升安全性。通用的不能輸出毒性結(jié)果的指令能夠帶來(lái)一定提升,同時(shí)對(duì)毒性結(jié)果進(jìn)行后處理,能夠更進(jìn)一步提升安全性。
總結(jié)6: 多輪問(wèn)答比單論問(wèn)答有更高的出現(xiàn)毒性回答的概率。本文利用GAtt方法來(lái)優(yōu)化多輪問(wèn)答的安全性。
總結(jié)7: 安全性和多樣性是需要權(quán)衡的。在看到RLHF對(duì)齊人類觀念的同時(shí),也要看到其多樣性犧牲比較大。同時(shí)如果多樣性比較高,也使其更有可能產(chǎn)生不安全的內(nèi)容。
本文轉(zhuǎn)載自 ??NLP PaperWeekly??,作者: NLP PaperWeekly
