偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

LoRA數(shù)學(xué)編程任務(wù)不敵全量微調(diào) | 哥大&Databricks新研究

發(fā)布于 2024-5-21 09:27
瀏覽
0收藏

大數(shù)據(jù)巨頭Databricks與哥倫比亞大學(xué)最新研究發(fā)現(xiàn),在數(shù)學(xué)和編程任務(wù)上,LoRA干不過全量微調(diào)。


具體來說,在這兩種任務(wù)中,LoRA模型的精確度只有后者的八到九成左右。


不過,作者也發(fā)現(xiàn),LoRA雖然學(xué)得少,但是“記憶力”卻更好,遺忘現(xiàn)象要比全量微調(diào)少得多。

LoRA數(shù)學(xué)編程任務(wù)不敵全量微調(diào) | 哥大&Databricks新研究-AI.x社區(qū)

究其原因,作者認(rèn)為是數(shù)學(xué)和代碼任務(wù)的特性與LoRA的低秩“八字不合”,遺忘更少也與相關(guān)。


但LoRA的一個公認(rèn)的優(yōu)勢是訓(xùn)練成本更低;而且相比全量微調(diào),能夠更好地保持原有模型性能


于是,網(wǎng)友們的看法也自然地分成了兩派:


一波人認(rèn)為,單純考慮降低成本用LoRA,表現(xiàn)卻顯著降低,這是不可接受的。

LoRA數(shù)學(xué)編程任務(wù)不敵全量微調(diào) | 哥大&Databricks新研究-AI.x社區(qū)

更具針對性的,有人指出,對于數(shù)學(xué)和代碼這樣對精度要求高的任務(wù),一定要最大程度地保證性能,哪怕犧牲一些訓(xùn)練成本。

LoRA數(shù)學(xué)編程任務(wù)不敵全量微調(diào) | 哥大&Databricks新研究-AI.x社區(qū)

另一波機(jī)器學(xué)習(xí)工程師則認(rèn)為,作者的一些實(shí)驗(yàn)參數(shù)設(shè)置不當(dāng),造成這種現(xiàn)象的原因不一定是LoRA本身。


質(zhì)疑的具體理由我們放到后面詳細(xì)講解,先來看看作者的研究都有哪些發(fā)現(xiàn)。

學(xué)的更少,但忘的也少

實(shí)驗(yàn)中,作者使用7B參數(shù)的Llama2作為基礎(chǔ)模型,在持續(xù)預(yù)訓(xùn)練監(jiān)督微調(diào)兩種模式下分別應(yīng)用LoRA和全量微調(diào),并比較了它們的表現(xiàn),使用的數(shù)據(jù)集如下表:

LoRA數(shù)學(xué)編程任務(wù)不敵全量微調(diào) | 哥大&Databricks新研究-AI.x社區(qū)

持續(xù)預(yù)訓(xùn)練實(shí)驗(yàn)中,作者在2.5-200億token之間共選擇了8個點(diǎn)進(jìn)行了測試;監(jiān)督微調(diào)實(shí)驗(yàn)則是在訓(xùn)練1、2、4、8、16個epochs時取樣;LoRA的rank取值為16和256,適配對象包括Attention、MLP和All。


結(jié)果不難看出,無論是持續(xù)預(yù)訓(xùn)練還是監(jiān)督微調(diào),LoRA在編程上的表現(xiàn)從未追上過全量微調(diào),而且在持續(xù)預(yù)訓(xùn)練中,隨著token數(shù)量的增加,差距越來越懸殊。


而在數(shù)學(xué)任務(wù)上的持續(xù)預(yù)訓(xùn)練實(shí)驗(yàn)中,LoRA起初表現(xiàn)略勝于全量微調(diào),但也是隨著token數(shù)量的增加,這種優(yōu)勢逐漸被反超。


這一系列結(jié)果表明,LoRA在讓模型學(xué)習(xí)新知識的工作中,表現(xiàn)不及全量微調(diào)。

LoRA數(shù)學(xué)編程任務(wù)不敵全量微調(diào) | 哥大&Databricks新研究-AI.x社區(qū)

不過盡管在性能上比不過全量微調(diào),但LoRA的遺忘現(xiàn)象更少,更有利于保持原有模型的能力。


換言之,如果把原始模型比作剛畢業(yè)的小學(xué)生,那么用LoRA能學(xué)到的初中知識更少,但之前的小學(xué)知識忘得也更少。


對應(yīng)到應(yīng)用當(dāng)中,則主要在語言理解、嘗試推理等基礎(chǔ)能力中體現(xiàn)。


作者使用了相同的實(shí)驗(yàn)配置,把測試數(shù)據(jù)集更換成了HellaSwag、ARC-Challenge和Winogrande,分別測試經(jīng)過代碼和數(shù)學(xué)微調(diào)后的Llama2在基礎(chǔ)任務(wù)上的表現(xiàn)。


結(jié)果,用代碼來微調(diào)造成的“遺忘”現(xiàn)象更加嚴(yán)重,LoRA從整體上看更接近基礎(chǔ)模型,即遺忘現(xiàn)象更輕。

LoRA數(shù)學(xué)編程任務(wù)不敵全量微調(diào) | 哥大&Databricks新研究-AI.x社區(qū)

秩是模型表現(xiàn)關(guān)鍵

作者分析了這些現(xiàn)象背后的原因,結(jié)果發(fā)現(xiàn),在其中扮演了重要的角色。


在線性代數(shù)中,一個矩陣的秩是指其線性無關(guān)的行或列的最大數(shù)量,秩越高,所能表示的變換或關(guān)系就越復(fù)雜。


同理,在深度學(xué)習(xí)中,模型的權(quán)重矩陣可以看作是將輸入信息轉(zhuǎn)換為輸出信息的一種映射關(guān)系,這些矩陣的秩反映了模型在學(xué)習(xí)時所需的自由度或復(fù)雜度。


對于LoRA來說,其學(xué)習(xí)的矩陣秩較小,對原始權(quán)重矩陣的影響也就越小,因此在適應(yīng)新任務(wù)時更易保留原有知識。


而在作者的實(shí)驗(yàn)中,低秩矩陣的特性還體現(xiàn)為了更強(qiáng)的正則化能力和生成多樣性。

LoRA數(shù)學(xué)編程任務(wù)不敵全量微調(diào) | 哥大&Databricks新研究-AI.x社區(qū)

至于為什么LoRA在學(xué)習(xí)新知識上表現(xiàn)不如全量微調(diào),原因同樣和秩相關(guān)。


作者對在Llama2上用StarCoder-Python數(shù)據(jù)集進(jìn)行持續(xù)預(yù)訓(xùn)練過程中各個階段的權(quán)重矩陣進(jìn)行了奇異值分解。


結(jié)果發(fā)現(xiàn),即使在訓(xùn)練的早期階段,全面微調(diào)學(xué)到的權(quán)重擾動矩陣的秩就是LoRA常用秩的10-100倍,這表明在編程任務(wù)上,全面微調(diào)需要學(xué)習(xí)高秩的權(quán)重擾動以適應(yīng)目標(biāo)領(lǐng)域;而且隨著訓(xùn)練的進(jìn)行,權(quán)重擾動矩陣的秩還會持續(xù)增長。


也就是說,此類任務(wù)的高秩需求,注定無法與LoRA的低秩特性相匹配,表現(xiàn)不佳也就不是什么意外之事了。

LoRA數(shù)學(xué)編程任務(wù)不敵全量微調(diào) | 哥大&Databricks新研究-AI.x社區(qū)

實(shí)驗(yàn)中的另一個現(xiàn)象是,雖然同樣比不過全量微調(diào),但數(shù)學(xué)任務(wù)中兩者的差距相比代碼任務(wù)更小,作者推測可能有兩方面原因:

  • 首先還是和秩相關(guān),作者認(rèn)為數(shù)學(xué)任務(wù)相比于代碼更接近于預(yù)訓(xùn)練數(shù)據(jù),因此秩也相對更低。
  • 另一個原因,則是目前的GSM8K數(shù)據(jù)集可能挑戰(zhàn)性不夠,對模型考察不充分,這可能也是導(dǎo)致出現(xiàn)一開始LoRA超過全量微調(diào)的原因。

ML工程師提出質(zhì)疑

不過對作者的實(shí)驗(yàn),有人指出了實(shí)驗(yàn)的參數(shù)設(shè)置存在不合理之處。


首先提出質(zhì)疑的,是模型微調(diào)和訓(xùn)練平臺UnslothAI創(chuàng)始人、前英偉達(dá)ML工程師Daniel Han。

LoRA數(shù)學(xué)編程任務(wù)不敵全量微調(diào) | 哥大&Databricks新研究-AI.x社區(qū)

Daniel首先指出,論文中的LoRA實(shí)驗(yàn)只適配了QKVO、up和down矩陣,沒有適配gate_proj矩陣。


如果LoRA沒有對gate_proj進(jìn)行適配,那么FFN模塊的大部分權(quán)重實(shí)際上沒有被優(yōu)化,這可能限制了LoRA在編程任務(wù)上的表現(xiàn)。


至于數(shù)學(xué)能力好一些而在編程任務(wù)上表現(xiàn)不佳的原因,可能是lm_head和embed_tokens層沒有進(jìn)行適配訓(xùn)練,因此領(lǐng)域轉(zhuǎn)移沒有被很好地建模。


lm_head和embed_tokens層分別對應(yīng)了語言模型的輸出和輸入嵌入,它們與具體領(lǐng)域的詞匯和表達(dá)密切相關(guān)。如果這兩個層沒有被LoRA適配,那么模型在新領(lǐng)域的詞匯和表達(dá)習(xí)慣上的適應(yīng)能力就會受限。


另一方面,Daniel認(rèn)為編程任務(wù)的超參數(shù)設(shè)置也有問題,比如秩為256時α值設(shè)得太小了,導(dǎo)致適配矩陣的值可能難以得到有效更新。

LoRA數(shù)學(xué)編程任務(wù)不敵全量微調(diào) | 哥大&Databricks新研究-AI.x社區(qū)

總結(jié)一下就是,LoRA在這些任務(wù)上的表現(xiàn)不如全量微調(diào)的原因,可能不是出在LoRA本身。


同時Daniel還表示,有論文指出LoftQ和PiSSA使用奇異值分解(SVD)來初始化LoRA矩陣,據(jù)稱可以使LoRA達(dá)到與全面微調(diào)相當(dāng)?shù)男阅堋?/p>


另一名ML工程師附和了Daniel的觀點(diǎn),同時還針對LoRA的應(yīng)用給出了一些具體建議:

  • LoRA更適用于監(jiān)督微調(diào)而不是持續(xù)預(yù)訓(xùn)練
  • 對于LoRA來說,0.0005(代碼)或0.0002(數(shù)學(xué))的學(xué)習(xí)率是最佳的
  • 應(yīng)用LoRA時,優(yōu)先選擇同時適配MLP和Attention,其次單獨(dú)MLP,最后單獨(dú)Attention

LoRA數(shù)學(xué)編程任務(wù)不敵全量微調(diào) | 哥大&Databricks新研究-AI.x社區(qū)

總之,雖然出現(xiàn)了論文中的結(jié)果,但LoRA仍然是一項重要的技術(shù),而且能夠顯著降低訓(xùn)練成本,所以做好性能和資源的權(quán)衡,該用還是得用。


論文地址:???https://arxiv.org/abs/2405.09673??


本文轉(zhuǎn)自 量子位 ,作者:量子位


原文鏈接:??https://mp.weixin.qq.com/s/hoYYMFH9nSB2tkNmGggquw??

收藏
回復(fù)
舉報
回復(fù)
相關(guān)推薦