成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA

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

一、背景

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

目前NLP主流范式是在大量通用數(shù)據(jù)上進(jìn)行預(yù)訓(xùn)練語(yǔ)言模型訓(xùn)練,然后再針對(duì)特定下游任務(wù)進(jìn)行微調(diào),達(dá)到領(lǐng)域適應(yīng)(遷移學(xué)習(xí))的目的。

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

Context Learning v.s. SFT

指令微調(diào)是預(yù)訓(xùn)練語(yǔ)言模型微調(diào)的主流范式,其目的是盡量讓下游任務(wù)的形式盡量接近預(yù)訓(xùn)練任務(wù)。

從而減少下游任務(wù)和預(yù)訓(xùn)練任務(wù)之間的Gap, 實(shí)現(xiàn)預(yù)訓(xùn)練語(yǔ)言模型適應(yīng)下游任務(wù),而非下游任務(wù)去適應(yīng)模型

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

指令微調(diào)的效果要優(yōu)于基于Zero/Few-shot的提示詞工程的上下文學(xué)習(xí)。


但隨著預(yù)訓(xùn)練語(yǔ)言模型進(jìn)入LLM時(shí)代,其參數(shù)量愈發(fā)龐大。全量微調(diào)模型所有參數(shù)所需的顯存早已水漲船高。


例如:

全參微調(diào)Qwen1.5-7B-Chat預(yù)估要2張80GB的A800,160GB顯存 全參微調(diào)Qwen1.5-72B-Chat預(yù)估要20張80GB的A800,至少1600GB顯存

而且,通常不同的下游任務(wù)還需要LLM的全量參數(shù),對(duì)于算法服務(wù)部署來(lái)說(shuō)簡(jiǎn)直是個(gè)災(zāi)難(當(dāng)然,一種折衷做法就是全量微調(diào)后把增量參數(shù)進(jìn)行SVD分解保存,推理時(shí)再合并參數(shù) )。

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

為了尋求一個(gè)不更新全部參數(shù)的廉價(jià)微調(diào)方案,之前一些預(yù)訓(xùn)練語(yǔ)言模型的高效微調(diào)(Parameter Efficient, PEFT)工作,要么插入一些參數(shù)或?qū)W習(xí)外部模塊來(lái)適應(yīng)新的下游任務(wù)。

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

接下來(lái)將介紹如下4個(gè)PEFT方法(重點(diǎn)是主流的LoRA):

  • Adatper Tuning
  • Prompt Tuning
  • Prefix Tuning
  • LoRA

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

二、參數(shù)高效微調(diào)

2.1 Adapter Tuning

Adapter Tuning試圖在Transformer Layer的Self-Attetion+FFN之后插入一個(gè)先降維再升維的MLP(以及一層殘差和LayerNormalization)來(lái)學(xué)習(xí)模型微調(diào)的知識(shí)。

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

Adapter即插入的FF up + FF Down。

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

在微調(diào)時(shí),Transformer Layer原有的所有參數(shù)凍結(jié),反向傳播后僅更新Adapter參數(shù)。

缺點(diǎn):需要修改原有模型結(jié)構(gòu),同時(shí)還會(huì)增加模型參數(shù)量。

2.2 Promot Tuning

Prompt Tuning設(shè)計(jì)了一種prefix prompt方法,即在模型輸入的token序列前添加前綴prompt token,而這個(gè)前綴prompt token的embedding是由網(wǎng)絡(luò)學(xué)到。


Prompt Tuning可以看做token已經(jīng)確定,但是embedding是可以學(xué)的。

它相當(dāng)于僅用prompt token的embedding去適應(yīng)下游任務(wù),相比手工設(shè)計(jì)或挑選prompt,它是一種Soft的prompt(軟提示)


LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

在針對(duì)下游任務(wù)微調(diào)時(shí),Prompt Tuning將凍結(jié)原始LLM的參數(shù),只學(xué)習(xí)獨(dú)立的prompt token參數(shù)(參數(shù)化的prompt token加上輸入的token送入模型進(jìn)行前向傳播,反向傳播只更新prompt token embedding的參數(shù))。


在針對(duì)不同的下游任務(wù)微調(diào)時(shí),就可以分別學(xué)習(xí)不同的Task Specifical的Prompt Token參數(shù)。

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

  • Soft Prompt Tuning在模型增大時(shí)可以接近Model Tuning(fine-tuning)的效果
  • 離散Prompt Tuning(Prompt Design)基本不能達(dá)到Model Tuning的效果

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

Promot Tuning方法的參數(shù)成本是,其中是提示長(zhǎng)度,是token嵌入維度。

提示越短,必須調(diào)整的新參數(shù)就越少,那么調(diào)參的目標(biāo)是就是找到表現(xiàn)仍然良好的最小prefix prompt長(zhǎng)度。

2.3 Prefix-Tuning

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

為了避免人為的離散Prompt選取優(yōu)化,Prefix-Tuning提出可學(xué)習(xí)的Prefix Prompt。

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

Prefix-Tuning提出可學(xué)習(xí)的Prompt,即:

learns a sequence of prefixes that are prepended at every transformer layer

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

Prefix tuning為層的Transformer Layer的每層多頭注意力的鍵和值都配置了可學(xué)習(xí)的prefix vectors.

Two sets of prefix vectors ,  are concatenatedwith the original key  and value

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

看到這里可以知道,Prefix-Tuning可以算是Promot Tuning的一個(gè)特例(Promot Tuning只在輸入側(cè)加入可學(xué)習(xí)的Prefix Prompt Token)

2.4 LoRA

為緩解該問(wèn)題,LoRA(Low-Rank Adaption of LLMs),即LLMs的低秩適應(yīng),被提出用于高效參數(shù)微調(diào)。


LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

相關(guān)論文表明訓(xùn)練學(xué)到的過(guò)度參數(shù)化的模型實(shí)際上存在于一個(gè)較低的內(nèi)在維度上

類似于機(jī)器學(xué)習(xí)中的降維算法,假設(shè)高維數(shù)據(jù)實(shí)際是在低維的流形上一樣


LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)


其具體操作是,凍結(jié)了預(yù)訓(xùn)練的模型權(quán)重,并將可訓(xùn)練的LoRA秩分解矩陣注入到LLM的每個(gè)Transformer Decoder層中,從而大大減少了下游任務(wù)的可訓(xùn)練參數(shù)數(shù)量。


LoRA 方法的計(jì)算流程如下圖:

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)


對(duì)于使用LoRA的模型來(lái)說(shuō),由于可以將原權(quán)重與訓(xùn)練后權(quán)重合并,因此在推理時(shí)不存在額外的開銷。

Prefix Tuning是指在輸入序列前綴添加連續(xù)可微的軟提示作為可訓(xùn)練參數(shù)。由于模型可接受的最大輸入長(zhǎng)度有限,隨著軟提示的參數(shù)量增多,實(shí)際輸入序列的最大長(zhǎng)度也會(huì)相應(yīng)減小,影響模型性能。

三、適用范圍

近來(lái)LLM主要是指,Decoder-Only架構(gòu)的大規(guī)模預(yù)訓(xùn)練語(yǔ)言模型。

畢竟,同等參數(shù)規(guī)模和訓(xùn)練數(shù)據(jù)量,Encoder-Decoder架構(gòu)的T5和Bart在生成任務(wù)熵,相比Decoder-Only架構(gòu)并不具備優(yōu)勢(shì)。更不用說(shuō),Encoder-Only架構(gòu)的BERT了。


但是,所有使用Transformer架構(gòu)的算法都可以使用上述PEFT方法。


針對(duì)主流的Decoder Only的生成式因果語(yǔ)言模型,其訓(xùn)練范式具體是:

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

圖片源自:《大規(guī)模語(yǔ)言模型:從理論到實(shí)踐》


LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

  • 有監(jiān)督微調(diào)(Supervised Finetuning):基于高質(zhì)量的指令數(shù)據(jù)(用戶輸入的提示詞 + 對(duì)應(yīng)的理想輸出結(jié)果)微調(diào)LLM,從而得到有監(jiān)督微調(diào)模型(SFT模型)。SFT模型將具備初步的指令理解能力和上下文理解能力(預(yù)訓(xùn)練得到的LLM在指令微調(diào)的過(guò)程中被引導(dǎo)如何使用其學(xué)到的知識(shí))進(jìn)一步基于結(jié)果有排序指令樣本,
  • 獎(jiǎng)勵(lì)建模(Reward Modeling):獎(jiǎng)勵(lì)階段試圖構(gòu)建一個(gè)文本質(zhì)量對(duì)比模型(相當(dāng)于一個(gè)Critor)。對(duì)同一個(gè)提示詞,它將對(duì)SFT模型給出的多個(gè)不同輸出的質(zhì)量做排序。獎(jiǎng)勵(lì)模型可通過(guò)二分類模型,對(duì)輸入的兩個(gè)結(jié)果之間的優(yōu)劣進(jìn)行判斷。
  • 強(qiáng)化學(xué)習(xí)(Reinforcement Learning):強(qiáng)化學(xué)習(xí)階段將根據(jù)給定的提示詞樣本數(shù)據(jù),利用在前一階段訓(xùn)練的獎(jiǎng)勵(lì)模型,給出SFT模型對(duì)用戶提示詞補(bǔ)全結(jié)果的質(zhì)量評(píng)估,并與語(yǔ)言模型建模目標(biāo)綜合得到更好的效果。強(qiáng)化學(xué)習(xí)微調(diào)將在SFT模型基礎(chǔ)上,它將使LLM生成的結(jié)果文本能獲得更高的獎(jiǎng)勵(lì)。


除了預(yù)訓(xùn)練,增量預(yù)訓(xùn)練、有監(jiān)督微調(diào)、有監(jiān)督微調(diào)、獎(jiǎng)勵(lì)建模、強(qiáng)化學(xué)習(xí)階段都可以采用PEFT方式。

LLM高效微調(diào)詳解-從Adpter、PrefixTuning到LoRA-AI.x社區(qū)

本文轉(zhuǎn)自 AI生成未來(lái) ,作者:LeonYi


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

標(biāo)簽
收藏
回復(fù)
舉報(bào)
回復(fù)
相關(guān)推薦
主站蜘蛛池模板: 国产日韩欧美在线 | 国产综合精品一区二区三区 | 男女羞羞视频在线观看 | 99久久婷婷国产亚洲终合精品 | 中文字幕日韩av | 国产日韩电影 | 成人精品视频在线观看 | 成人欧美一区二区三区在线观看 | 国产成人免费视频 | 日韩精品一区二区三区 | av片毛片| 91av导航 | 亚洲一区视频 | 精品1区2区3区| 久久久久av | 91欧美| 国产综合在线视频 | 国产成人免费视频网站高清观看视频 | 国产一区视频在线 | 日韩成人一区二区 | 日韩在线资源 | 日韩在线播放中文字幕 | 国产一区二区三区在线 | 国产精品久久久久久久久久 | 欧美日韩中文国产一区发布 | 久久久久国产精品人 | 国产三级电影网站 | 日本久久精品视频 | 日本精品一区二区三区视频 | 日韩综合色 | 国产精品美女久久久久久免费 | 九九在线精品视频 | 天堂在线一区 | 欧美精品一二三 | 午夜三区 | h在线免费观看 | 逼逼视频| 久久精品二区亚洲w码 | 久久久久国产精品一区二区 | 在线观看免费国产 | 亚洲一区二区久久久 |