![]()
新智元報(bào)道
編輯:LRS
【新智元導(dǎo)讀】關(guān)于語言模型,你的問題可能已經(jīng)有了答案。
過去幾個(gè)月里,Meta的LLaMA引領(lǐng)了一場語言模型的開源狂潮,并且隨著大眾對語言模型訓(xùn)練研究的深入,很多問題也都有了答案。
比如需要人類反饋和強(qiáng)化學(xué)習(xí)來對齊語言模型嗎?語言模型在ChatGPT模擬數(shù)據(jù)上的效果怎么樣?是否可以用多個(gè)epoch訓(xùn)練語言模型?
最近,lighting.AI的首席教研員、前威斯康星大學(xué)麥迪遜分校統(tǒng)計(jì)學(xué)助理教授Sebastian發(fā)布了一篇博客,介紹了一些解決上述疑問的研究成果。
![]()
在特定任務(wù)上微調(diào)語言模型
Goat模型是一個(gè)基于7B LLaMA微調(diào)的模型,在算術(shù)任務(wù)上的性能優(yōu)于GPT-4,在零樣本設(shè)置中還超越了75倍參數(shù)量的540B PaLM
![]()
論文鏈接: https://arxiv.org/pdf/2305.14201.pdf
Goat相當(dāng)于是一個(gè)專有用途的微調(diào)LLM,從直覺來看也肯定會(huì)優(yōu)于GPT-4等通用聊天機(jī)器人。
![]()
不過對業(yè)務(wù)來說,這篇論文也打開了專用模型的大門,畢竟大部分公司追求的都是在某一領(lǐng)域超越GPT-4即可。
雖然Goat并不是第一個(gè)針對特定任務(wù)進(jìn)行微調(diào)的語言模型,還有大量的基于FLAN微調(diào)的工作,但Goat取得成功的兩個(gè)要素在于:
1. 在一個(gè)更好的基礎(chǔ)語言模型上,在目標(biāo)任務(wù)(相對于通用預(yù)訓(xùn)練或指令微調(diào))上進(jìn)行有監(jiān)督微調(diào);
2. LLaMA對數(shù)字的分詞技術(shù)(將每個(gè)數(shù)字單獨(dú)分配一個(gè)token)
從實(shí)驗(yàn)結(jié)果可知二者的結(jié)合是很重要的,第一點(diǎn)是因?yàn)樵? B LLaMA基礎(chǔ)型號不如GPT-4;第二點(diǎn)是因?yàn)閷PT,GPT-J等模型的微調(diào)結(jié)果不如Goat好,因?yàn)槠渌P偷臄?shù)字分詞技術(shù)不統(tǒng)一。
也有人有疑問,為什么不用Wolfram Alpha或常規(guī)計(jì)算器等工具進(jìn)行算數(shù)計(jì)算,而非要用語言模型算數(shù)?
對這篇論文來說,算術(shù)任務(wù)可以很容易地合成數(shù)據(jù)集,評估也更方便,方便測試微調(diào)性能。
從Goat到Gorilla
另一個(gè)微調(diào)LLM以提高某一特定功能的例子是Gorilla,一個(gè)專門用于生成API調(diào)用的LLM。
![]()
論文鏈接: https://arxiv.org/abs/2305.15334
研究人員使用LLaMA-7 B基礎(chǔ)模型,并對來自Torch Hub、TensorFlow Hub和HuggingFace的1645個(gè)API調(diào)用進(jìn)行了微調(diào),發(fā)現(xiàn)經(jīng)過微調(diào)的Gorilla在API調(diào)用上優(yōu)于其他未進(jìn)行微調(diào)的LLM。
![]()
讓微調(diào)更高效
之前提到的Goat模型使用低秩自適應(yīng)(LoRA)技術(shù)以提高微調(diào)的效率,可以在單個(gè)24GB顯存GPU上對70億參數(shù)LLaMA模型進(jìn)行微調(diào)。
![]()
論文鏈接: https://arxiv.org/abs/2305.14314
而最近發(fā)布的一個(gè)新技術(shù)QLoRA(量化LoRA)可以在單個(gè) 48GB顯存的GPU上訓(xùn)練650億參數(shù)的LLaMA模型,量化的4位參數(shù)設(shè)置下,訓(xùn)練后得到的65B Guanaco模型保持了完整的16位微調(diào)任務(wù)性能,并且僅在微調(diào)24小時(shí)后就達(dá)到了ChatGPT性能的99.3%。
![]()
微調(diào)語言模型需要多少數(shù)據(jù)?
對于想要定制語言模型的從業(yè)者和研究人員來說,起步難題就是獲得足夠的數(shù)據(jù)進(jìn)行微調(diào)。
最近發(fā)布的LIMA論文可能是一次微調(diào)上的突破,研究結(jié)果表明,僅在1000個(gè)示例上進(jìn)行微調(diào)的65 B LLaMA模型(以有監(jiān)督的方式)并不落后于ChatGPT / GPT3.5等更大的模型。
![]()
論文鏈接: https://arxiv.org/abs/2305.11206
研究人員發(fā)現(xiàn),在57%的情況下,GPT-4仍然更好,但他們觀察到,在43%的情況下,LIMA優(yōu)于或相當(dāng)于GPT-4,已經(jīng)非常強(qiáng)了;或者從另一個(gè)角度來看,大約有一半的情況,LIMA可以優(yōu)于GPT-4的前身ChatGPT/GPT3.5(也叫DaVinci 003)。
![]()
不過還有一個(gè)問題是,同樣是有監(jiān)督微調(diào)后的LLaMA模型,為什么LIMA的表現(xiàn)比Alpaca好這么多?
首先,LIMA基于65B LLaMA模型,而原始Alpaca模型基于7B LLaMA基礎(chǔ)模型。
為了公平對比,作者使用65B基礎(chǔ)模型復(fù)刻了Alpaca的訓(xùn)練過程,即使用原始Alpaca項(xiàng)目中描述的52000個(gè)樣本進(jìn)行訓(xùn)練。
所以可以得出結(jié)論,差異實(shí)際上來源于作者為LIMA精心策劃的訓(xùn)練集的質(zhì)量,使得LIMA可以擊敗在52倍數(shù)據(jù)上訓(xùn)練的相同的65B LLaMA基礎(chǔ)模型。
不過還缺少的一個(gè)基線對比和消融研究是LIMA與使用RLHF而非有監(jiān)督學(xué)習(xí)進(jìn)行微調(diào)的65B LLaMA基礎(chǔ)模型。
![]()
雖然LIMA的實(shí)驗(yàn)結(jié)果非常有前景,不過有一篇論文的研究結(jié)果也需要注意,模仿學(xué)習(xí)得到的語言模型可能并沒有想象中的那么強(qiáng)。
![]()
論文鏈接: https://arxiv.org/abs/2305.15717
最近幾個(gè)月,根據(jù)來自其他語言模型(如ChatGPT)的數(shù)據(jù)對LLM進(jìn)行微調(diào)已成為常見做法,不過研究人員發(fā)現(xiàn),眾包工作者對這些所謂的模仿模型評價(jià)很高。但事實(shí)證明,這些模仿模型只傾向于模仿上游語言模型的風(fēng)格,而非真實(shí)性。
![]()
LIMA論文雖然沒有使用模仿數(shù)據(jù),而是使用精心設(shè)計(jì)的數(shù)據(jù)集,但仍然值得強(qiáng)調(diào)的是,評估結(jié)果有時(shí)似乎好得令人難以置信,我們需要更好的基準(zhǔn)測試。
人類反饋強(qiáng)化學(xué)習(xí)的替代方案
最近幾個(gè)月,有監(jiān)督微調(diào)成了微調(diào)語言模型的新范式,比如LIMA論文也是使用有監(jiān)督微調(diào),但也存在其他方法來替代基于人類反饋的強(qiáng)化學(xué)習(xí)。
直接偏好優(yōu)化(DPO,Direct Preference Optimization)也是一種全新的、可替代強(qiáng)化學(xué)習(xí)的方法,使用接近策略優(yōu)化(PPO)的人類反饋,用于ChatGPT等指令微調(diào)模型。
研究人員表明,在RLHF中擬合獎(jiǎng)勵(lì)模型的交叉熵?fù)p失可以直接用于微調(diào)語言模型,而且根據(jù)基準(zhǔn)測試,使用DPO更有效,并且在回復(fù)質(zhì)量方面通常也優(yōu)于RLHF/PPO
![]()
多個(gè)epoch訓(xùn)練會(huì)怎么樣?
微調(diào)模型需要一個(gè)預(yù)訓(xùn)練的基礎(chǔ)模型,所以一個(gè)很自然的需求就是獲得更好的基礎(chǔ)模型。
對經(jīng)典的機(jī)器學(xué)習(xí)模型、深度神經(jīng)網(wǎng)絡(luò)以及最新的視覺Transformer模型訓(xùn)練數(shù)百個(gè)epoch是很常見的操作,不過大型語言模型通常指訓(xùn)練1個(gè)epoch,如果訓(xùn)練超過一個(gè)epoch會(huì)發(fā)生什么?
![]()
論文鏈接: https://arxiv.org/pdf/2305.13230.pdf
事實(shí)證明,互聯(lián)網(wǎng)上的高質(zhì)量文本數(shù)據(jù)比想象中的更少,此外,如果受版權(quán)保護(hù)的材料在未來被要求刪除,可能會(huì)進(jìn)一步縮小數(shù)據(jù)集的規(guī)模。
論文實(shí)驗(yàn)結(jié)果表明,要是因?yàn)閿?shù)據(jù)量少就訓(xùn)練多個(gè)epoch,可能會(huì)導(dǎo)致模型過擬合。
![]()
另一個(gè)有趣的結(jié)論是:dropout可以幫助減少過度擬合,但其他技術(shù)如權(quán)重衰減卻并不能。
不過現(xiàn)在常用的大型語言模型模型,如LLaMA,Gopher,C hinchilla,GPT-3和PaLM都沒有使用dropout,因?yàn)闀?huì)減慢學(xué)習(xí)速度。
三個(gè)開放問題
1. 只重復(fù)訓(xùn)練像LIMA這樣的高質(zhì)量數(shù)據(jù)怎么樣?
從直覺上來看,這是有意義的,可能會(huì)對模型質(zhì)量提升有所幫助,不過壞消息是,從實(shí)際來看沒有多大幫助。
研究人員對維基百科的數(shù)據(jù)進(jìn)行了一項(xiàng)相關(guān)實(shí)驗(yàn),相比C4來說他們認(rèn)為維基百科是高質(zhì)量的,不過事實(shí)證明,當(dāng)維基百科數(shù)據(jù)在訓(xùn)練期間重復(fù)多個(gè)epoch后也發(fā)生了類似的退化現(xiàn)象。
2. 數(shù)據(jù)增強(qiáng)有用嗎?
目前有幾種數(shù)據(jù)增強(qiáng)技術(shù),包括回譯、同義詞替換、句子重排以及使用模型合成數(shù)據(jù)(例如GPT-4),但還沒有數(shù)據(jù)增強(qiáng)對模型訓(xùn)練效果的全面分析。
3. 微調(diào)是什么樣的?同樣的規(guī)則適用嗎?
根據(jù)作者的經(jīng)驗(yàn),訓(xùn)練3-5個(gè)小epoch是值得的,但目前也沒有相關(guān)研究全面分析。
更高效的視覺Transformer
EfficientViT是一種全新的視覺Transformer,在速度和準(zhǔn)確性之間提供了良好的平衡,其性能優(yōu)于其他高效架構(gòu),如Mobil.NETV3和MobileViT,同時(shí)速度更快。
![]()
論文鏈接: https://arxiv.org/abs/2305.07027
研究人員使用級聯(lián)組注意力,并為每個(gè)注意力頭提供完整特征的不同分割(類似于組卷積)來減少多頭自注意力層中的冗余。
![]()
之前的研究主要關(guān)注最佳的數(shù)據(jù)集大小和模型參數(shù)量,最近研究人員提出了推斷計(jì)算最佳模型形狀的方法,例如寬度和深度,實(shí)驗(yàn)中的視覺Transformer性能優(yōu)于大兩倍的模型。
![]()
論文鏈接: https://arxiv.org/abs/2305.13035
此外,如果使用相同的計(jì)算資源預(yù)算來訓(xùn)練較小的計(jì)算優(yōu)化模型,其推理成本不到較大模型的一半。
![]()
參考資料:
https://magazine.sebastianraschka.com/p/ahead-of-ai-9-llm-tuning-and-dataset






