為優(yōu)化LLM為“小模型/少數(shù)據(jù)/好效果”,提供了一種新思路:”一步步蒸餾”(Distillingstep-by-step)
具體做法:訓(xùn)練出一個更小的模型,同時輸出推理過程和標簽
總結(jié)
大模型部署耗費內(nèi)存/算力,訓(xùn)練特定任務(wù)的小模型采用:
微調(diào)(BERT、T5)
蒸餾(Vicuna)
但仍需要大量數(shù)據(jù)
本文提出”一步步蒸餾”(Distillingstep-by-step)機制:
模型更小
數(shù)據(jù)更少
實驗證明效果更佳(770M的T5,效果優(yōu)于540B的PaLM)
引言
1. LLM的作用
以LLM作為粗標注,同時標注時會給出推理過程,如“思維鏈”CoT
e.g.:
“Agentlemaniscarryingequipmentforgolf,whatdoeshelikelyhave?
(a)club,(b)assemblyhall,(c)meditationcenter,(d)meeting,(e)church”
答案是(a),在上述選擇中,只有球桿用于高爾夫球。
上述邏輯會用于多任務(wù)訓(xùn)練的額外數(shù)據(jù)
2. 任務(wù)準確性&所需訓(xùn)練數(shù)據(jù)
相關(guān)工作
1. 知識蒸餾
從大的“老師模型”蒸餾出“學(xué)生模型”,缺點是“老師模型”產(chǎn)生的數(shù)據(jù)有噪聲
本文做法:蒸餾標簽、老師模型的推理過程,以降低對無標簽數(shù)據(jù)的需求量
2. 人類推理過程
規(guī)范模型行為
作為額外的模型輸入
作為高質(zhì)量標簽
缺點:代價高昂
3. 大模型推理過程
可用于產(chǎn)生高質(zhì)量的推理步驟,作為提示輸入到大模型
作為微調(diào)數(shù)據(jù),進行“self-improve”大模型
一步步蒸餾
概覽圖:
分為兩步:
已有LLM和無標簽數(shù)據(jù),利用推理過程,輸出標簽
以推理過程作為額外數(shù)據(jù)(細節(jié)信息較多),訓(xùn)練更小的模型
基于這樣一個特性:LLM產(chǎn)生的推理過程能夠用于它自身的預(yù)測
假設(shè)prompt是個三元組,其中是輸入,是標簽,是推理過程
數(shù)據(jù)集記作,x是輸入,y是標簽,且二者都是自然語言
這個文本到文本的框架包括的自然語言處理任務(wù)有:分類、自然語言推理、問答等等
常見的做法:用監(jiān)督數(shù)據(jù)微調(diào)預(yù)訓(xùn)練模型。
缺少人工標簽,特定任務(wù)的蒸餾是用LLM教師模型生成偽噪聲訓(xùn)練標簽,代替
待降低交叉熵損失:
其中hat{y_i}$是模型蒸餾得到的標簽
將推理過程hat{r_i}$融入訓(xùn)練過程的方式:
放到input后面,一同輸入到模型,此時的損失計算:
需要先用LLM產(chǎn)生推理過程,此時LLM是必要條件
(本文)轉(zhuǎn)化為多任務(wù)學(xué)習(xí)問題,訓(xùn)練模型:
同時產(chǎn)生標簽、推理過程
采用后者的方式,此時的損失計算為:
其中,推理過程生成的損失為:
推理過程生成是預(yù)測之前的中間一步,而不是測試過程中產(chǎn)生的(如同公式2),所以測試時不再需要LLM,這就是所謂的"一步步蒸餾"。
另外,預(yù)先定義任務(wù)前綴,如[label]是標簽,[rationale]是推理過程
實驗
從兩方面證明“一步步蒸餾”的有效性:
與傳統(tǒng)的微調(diào)和蒸餾對比,效果有所提升
模型更小、部署代價更小
以最小的模型規(guī)模、數(shù)據(jù)量作為標準,“一步步蒸餾”的模型優(yōu)于LLM
基準模型
LLM:540B的PaLM
下游模型:T5
T5-Base(220M)
T5-Large(770M)
T5-XXL(11B)
數(shù)據(jù)集
e-SNLI (自然語言推理):https://github.com/OanaMariaCamburu/e-SNLI
ANLI(自然語言推理):https://huggingface.co/datasets/anli
CQA(問答):https://www.tau-nlp.sites.tau.ac.il/commonsenseqa
SVAMP(算術(shù)數(shù)學(xué)詞問題):https://github.com/arkilpatel/SVAMP
與一步步蒸餾對比的其他方法
標準的微調(diào)(有標簽)
標準的任務(wù)蒸餾(無標簽)
減少訓(xùn)練數(shù)據(jù)
對比結(jié)果1
在標簽較少時,一步步蒸餾優(yōu)于標準微調(diào)
對比結(jié)果2
在標簽較少時,一步步蒸餾優(yōu)于標準蒸餾
降低模型大小
各種baseline模型大小不一時,一步步蒸餾都更優(yōu)
通過使用更小的特定任務(wù)模型一步步蒸餾逐步優(yōu)于LLM
對比結(jié)果3
在所有考慮的4個數(shù)據(jù)集上總是可以優(yōu)于少樣本CoT、PINTO調(diào)優(yōu)
對比結(jié)果4
在4個數(shù)據(jù)集中的3個上也優(yōu)于教師模型LLM
增強無標簽數(shù)據(jù),可進一步改進一步步蒸餾
使用最小模型大小和最小訓(xùn)練數(shù)據(jù)
對比結(jié)果5
用更小模型、更少數(shù)據(jù),一步步蒸餾優(yōu)于LLM
對比結(jié)果6
標準的微調(diào)和蒸餾需要更多的數(shù)據(jù)和更大的模型
總結(jié)
實驗證明,一步步蒸餾降低了訓(xùn)練數(shù)據(jù)量、特定任務(wù)的模型大小、優(yōu)于初始LLM的性能
局限性:
用戶需要提供帶標簽數(shù)據(jù)
LLM推理能力有限,尤其面對復(fù)雜推理和規(guī)劃問題
-
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
6909瀏覽量
88849 -
模型
+關(guān)注
關(guān)注
1文章
3178瀏覽量
48731
原文標題:小模型媲美2000倍體量大模型,谷歌提出新思路:蒸餾也能Step-by-Step
文章出處:【微信號:zenRRan,微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論