8B尺寸達到GPT-4級性能!北大等提出醫(yī)療專家模型訓練方法
大規(guī)模語言模型(LLMs)的持續(xù)預訓練是提升其在特定領域性能的重要方法。通過在新領域的語料庫上預訓練大語言模型,這一過程能夠顯著增加模型的領域知識儲備和任務能力。
然而,盡管已有許多研究探討了從頭預訓練的LLMs的學習機制和性質(zhì),關于持續(xù)預訓練過程中LLMs行為的研究卻相對較少。
最近北京大學、香港科技大學等開源了一個8B醫(yī)學大模型,通過測試模型在連續(xù)預訓練和指令微調(diào)實驗過程中的表現(xiàn)變化,發(fā)現(xiàn)了許多有趣的現(xiàn)象。
圖片
論文鏈接:https://arxiv.org/abs/2406.14833
開源地址:https://huggingface.co/YiDuo1999/Llama-3-Physician-8B-Instruct
先下降后上升: 模型訓練中存在的穩(wěn)定性缺失問題
本文首先選取TinyLLaMa-1b 和OpenLLaMA-3b模型作為基座模型,并在5百億醫(yī)療tokens上做做連續(xù)單輪預訓練。在預訓練過程中,作者每隔5b測試一次模型在醫(yī)療維基語料上的困惑度(PPL)和下游醫(yī)療任務的平均表現(xiàn)。
如圖1 所示,盡管模型在醫(yī)療維基語料上的困惑度持續(xù)下降(圖1b),但在連續(xù)預訓練初期,模型在醫(yī)學任務上的表現(xiàn)卻出現(xiàn)了下降 (圖1a)。隨著更多數(shù)據(jù)的訓練,任務表現(xiàn)逐漸恢復并超過了原始模型的水平 。
圖片
圖1:(a)預訓練過程中模型在四個醫(yī)療QA任務上的平均表現(xiàn)(b)預訓練過程中模型在醫(yī)療維基語料上的困惑度
為了解釋表現(xiàn)先下降后上升的行為,我們借鑒了持續(xù)學習中的穩(wěn)定性差距概念。基于它的解釋,醫(yī)療任務表現(xiàn)最初下降是因為學習新領域的可塑性梯度超過了維持通用任務能力的穩(wěn)定性梯度,導致未能維持醫(yī)療任務的性能。隨后,任務損失增強了穩(wěn)定性梯度,這一前后穩(wěn)定性差距最終導致性能恢復并上升。
為了驗證以上假設,我們進一步測試了模型在醫(yī)療持續(xù)預訓練中的通用任務表。如圖2顯示,一般任務性能呈現(xiàn)類似的V形曲線,表明一般指令跟隨能力在最初下降后恢復。
圖片
圖2:預訓練過程中模型在10個常識和閱讀理解任務上的平均表現(xiàn)
三個針對穩(wěn)定性差距的訓練策略
為了克服持續(xù)預訓練中存在的穩(wěn)定性差距問題,本文提出了三種有效策略:
策略1:在適當大小的數(shù)據(jù)子集上進行多輪預訓練,而不是在大數(shù)據(jù)集上進行單輪預訓練。這種策略減少了每次預訓練所需的高可塑性梯度,促進了穩(wěn)定性梯度的上升,進而加速了性能恢復。
策略2:僅在高質(zhì)量的子語料庫上進行預訓練,以快速提升特定領域的性能。
策略3:按照預訓練數(shù)據(jù)分布采取其它來源的數(shù)據(jù)并和醫(yī)療高質(zhì)量數(shù)據(jù)混合訓練,減少預訓練分布和連續(xù)預訓練差距,促進模型穩(wěn)定性梯度的形成。
表1:在醫(yī)療預訓練完成后模型在四個醫(yī)療任務上的zero-shot表現(xiàn)
實驗結果:本文通過對比多種基線方法來驗證提出的三條策略的有效性, 其中包括500億醫(yī)療數(shù)據(jù)單輪訓練、學習率Re-warming and Re-decaying、重采樣和參數(shù)固定等基線。
如下表1所示,基于本文的策略,OpenLLaMa模型只需要在高質(zhì)量50億數(shù)據(jù)上訓練4個輪次(即原計算預算的40%),便可以在醫(yī)療任務平均表現(xiàn)上顯著超越了所有基線,尤其在PubMedQA等醫(yī)學問答任務中表現(xiàn)突出。
面向GPT4水平的8B醫(yī)療專家模型
連續(xù)預訓練:本文按照提出的三種策略對Llama-3-8B模型做進一步的醫(yī)療連續(xù)預訓練。在這個過程中使用了50億高質(zhì)量醫(yī)學數(shù)據(jù),并對模型做四個輪次的重復訓練。
指令微調(diào):連續(xù)預訓練完成后,本文采用多個類型的醫(yī)療任務指令對模型做指令微調(diào),包括問答任務、分類任務、關系提取任務、自然語言推理任務和總結任務。
微調(diào)過程中,研究團隊繼續(xù)采用提出的三種策略來優(yōu)化指令微調(diào)效果。首先是多輪次訓練,這在醫(yī)學指令微調(diào)過程中是常見的。其次,利用Deita自動指令數(shù)據(jù)選擇器,選擇高質(zhì)量的醫(yī)學指令數(shù)據(jù)子集。最后,使用高質(zhì)量的通用指令數(shù)據(jù)集,如Airoboros-3.2,以緩解模型在通用任務完成能力上的遺忘。
圖片
圖3:指令微調(diào)過程中模型的醫(yī)療平均表現(xiàn)
如圖3所示,在指令微調(diào)過程中,使用所有數(shù)據(jù)做微調(diào)仍然可能在初始訓練階段時面臨表現(xiàn)下降問題。而通過我們的三種策略,模型僅需25%的指令數(shù)據(jù)就能達到最佳性能,這降低了計算資源的消耗。
實驗比較:本文進一步將達到最佳表現(xiàn)的指令微調(diào)模型Llama-3-Physician-8B-insturct與其它醫(yī)療模型比較。如表2所示,Llama-3-Physician-8B-insturct在醫(yī)療問答任務上明顯優(yōu)于其它同尺寸的開源模型,并且超過了閉源的GPT-3.5-turbo模型。同時,它的平均醫(yī)療問答任務表現(xiàn)也接近GPT-4.
圖片
表2:指令微調(diào)結束后各模型在四個醫(yī)療問答任務上的zero-shot表現(xiàn)
本文進一步考慮Llama-3-Physician-8B-insturct在其它類型(非問答)的醫(yī)療任務上的表現(xiàn)。如表3所示,Llama-3-Physician-8B-insturct在醫(yī)療分類,關系抽取,推理和總結任務上都取得了優(yōu)異表現(xiàn),且明顯超過GPT-4表現(xiàn)。
圖片
表3:指令微調(diào)結束后各模型在醫(yī)療分類,關系抽取,推理和總結任務上的zero-shot表現(xiàn)
總結
1. 本論文研究了在對LLMs(大語言模型)進行新領域語料庫的連續(xù)預訓練時的行為,并觀察到模型初始性能下降,隨后緩慢恢復的現(xiàn)象。本文使用穩(wěn)定性差距這一概念來描述這一現(xiàn)象,并從可塑性和穩(wěn)定性梯度的角度對此解釋
2. 本文進一步提出了三種有效提高LLM在特定領域表現(xiàn)并降低計算成本的策略,從而克服穩(wěn)定性差距。這些策略包括:在適當大小的數(shù)據(jù)子集上進行多輪預訓練,選取高質(zhì)量子集和按預訓練數(shù)據(jù)分布混合采樣數(shù)據(jù)。
3. 本文將這些策略應用于最新的Llama-3-8B模型的連續(xù)預訓練和指令微調(diào)過程中,所得到的Llama-3-Physician-8B-insturct不僅在同規(guī)模開源模型中表現(xiàn)最強,并且優(yōu)于閉源的GPT-3.5模型,接近GPT-4的表現(xiàn)。
參考資料:
https://arxiv.org/abs/2406.14833