對比近期發(fā)布的幾個小模型,sLLM的天花板在哪里?
2024 是大模型落地應用的關鍵年,接下來會看到更多從硬件、架構、算法等方面極限挖掘大模型效率的探索。眾人拾柴火焰高,相信在大家共同的開源努力下,我們可以更快奔向 AGI 的目標。
——摘自劉知遠老師最近對 Google 發(fā)布 Gemma 后發(fā)的一條朋友圈
寫在前面:Google 最近也勁爆放出 Gemma 模型,盡管體量較小,但對比的包括 Llama-2 7B 和 13B,以及風頭正勁的 Mistral 7B,其已經(jīng)在關鍵基準測試中明顯超越了更大的模型。大家都在感嘆最強的開源模型易主了。
本文對國內外幾個代表性的 sLLMs 進行調研分析,主要解決心中的一些疑惑:
1. 有哪些策略可以充分挖掘 sLLM 的潛能?
2. sLLM 的天花板能到哪?
3. 對于 sLLM 我們有哪些期待?
01 清華MiniCPM
MiniCPM-2B 參數(shù)量為 2.4B,主打端側部署,其特點是采用了很多策略充分挖掘了 sLLM 的潛力,MiniCPM-2B 的模型在綜合性榜單上與 Mistral-7B 相近,整體性能超越了 Llama2-13B、MPT-30B、Falcon-40B 等模型。在 MTBench 榜單上,MiniCPM-2B 也超越了多個代表性開源大模型。
其挖掘小模型性能的主要策略如下,詳情可參考 [1]:
模型沙盒實驗:在小模型上進行廣泛的實驗,通過可遷移的配置,獲得大模型的最優(yōu)訓練方法。其在 Hyper-parameters、Batch size、Learning Rate、Learning Rate Scheduler、Data Strategy 五個方面進行了模型沙盒研究,充分挖掘了 sLLM 的潛能。
更細致的數(shù)據(jù)策略:在預訓練階段只使用通用、量大的預訓練粗質量數(shù)據(jù),而在退火階段,使用非常廣泛的高質量知識和能力數(shù)據(jù)以及 SFT 的高質量數(shù)據(jù),混合入預訓練數(shù)據(jù)進行退火。實驗結果表明在退火開始時加入高質量數(shù)據(jù)的收益遠高于在退火完成后的 sft 階段加入。
sLLM 的上限在哪?
MiniCPM 在實驗的過程中,嘗試對模型性能與計算量進行擬合,分析并預測模型里的理論 loss 值。其認為如果用他們 WSD 調度器訓練策略,在消耗等量計算量時,可以達到約 5 倍模型參數(shù)量的 Chinchilla-Optimal 模型(訓練數(shù)據(jù)量為模型參數(shù)量的 20 倍)。而持續(xù)訓練下去,有可能超越更大的 Chinchilla-Optimal 模型。
Github OpenBMB/MiniCPM
??https://github.com/OpenBMB/MiniCPM ??
MiniCPM:揭示端側大語言模型的無限潛力
??https://shengdinghu.notion.site/MiniCPM-c805a17c5c8046398914e47f0542095a??
02 微軟phi系列
2.1 Phi-1.5
?
Phi-1.5 展現(xiàn)出許多大模型才有的能力,例如一步步思考,多步推理,進行基本的上下文學習等。訓練上其特點是數(shù)據(jù)上用了現(xiàn)有大模型,生成教科書級的合成數(shù)據(jù),同時對網(wǎng)絡少的數(shù)據(jù)做了非常細致的篩選,總的數(shù)據(jù)量只用了 30B tokens,遠小于 Llama-7B 的 1T tokens,就取得了非常不錯的效果。
再次說明高質量數(shù)據(jù)的重要性。另外發(fā)現(xiàn)在 Coding 上,phi-1.5 在 HumanEval 的分數(shù)為 41.4,也遠超 Llama-65B 的 23.7,說明 LLama-65B 的 coding 潛能確實還沒完全挖掘出來。Phi-1.5 的缺點是可能會出現(xiàn)幻覺以及安全性還不太好,可能會產(chǎn)生有毒的內容。
Phi-1.5 只有 1.3B 參數(shù),但是在自然語言任務上可以和比其大 5 倍的模型相比較,在更復雜的小學數(shù)學和基礎 coding 能力上,超過了大多數(shù) sLLM。
2.2 Phi-2
Phi-2 參數(shù)量達到 2.7B,數(shù)據(jù)量用了 1.4T 的 tokens,主要由合成的數(shù)據(jù)和網(wǎng)絡數(shù)據(jù)組成。用 96 塊 A100 訓練了 14 天。它是一個 base 模型,沒有經(jīng)過 RLHF 對齊,因為在數(shù)據(jù)側做了非常多的清洗工作,發(fā)現(xiàn)其安全性表現(xiàn)還不錯,比 Llama2-7B 都要好不少。
效果上,與 Mistral 和 Llama-2 進行比較,平均來看,Phi-2 的表現(xiàn)優(yōu)于 Mistral-7B,并且后者的性能又優(yōu)于 Llama-2 模型(7B,13B,和 70B)。
微軟 Phi 系列挖掘 sLLMs 潛能的秘訣是什么?
Phi 系列中,其中 Phi1 的參數(shù)量只有 1.3B,其在 HumanEval 的表現(xiàn)就以超過50的得分超過了眾多比他大數(shù) 10 倍的模型。而且其使用的數(shù)據(jù)量少于 7B,能取得此分數(shù)的關鍵因素就是數(shù)據(jù)集。作者認為,噪音、歧義、邏輯不清晰、分布不均衡的代碼數(shù)據(jù)集無法讓模型真正學會編碼能力,因此專門訓練了一個分類器來過濾 The stack 和 stackOverflow 數(shù)據(jù)集。
另外使用 ChatGPT3.5 生成教科書級別的合成數(shù)據(jù),為了提高合成數(shù)據(jù)的多樣性,通過在 prompt 中加入從固定詞表中隨機選擇的詞匯,或者針對代碼數(shù)據(jù)設置不同的函數(shù)名稱,在 prompt 中加入隨機性,從而產(chǎn)生多樣性的數(shù)據(jù)集。最終它的數(shù)據(jù)集主要包括過濾的 code-language 數(shù)據(jù)集、人造教科書、小型人造 python 習題數(shù)據(jù)集。
而后續(xù)的 Phi-1.5、Phi-2 在 Phi-1 的基礎上,充分發(fā)揮了其數(shù)據(jù)工程的優(yōu)勢,總體性能已經(jīng)優(yōu)于Mistral-7B,是一個非常不錯的 sLLM 了。
一個好的教科書可以讓學生更好的學習相關知識,一個精心打造的教科書級別的數(shù)據(jù)集,可以讓 sLLM 以非常少的數(shù)據(jù),訓練較小的模型,取得非常好的效果。也再次讓我們看到數(shù)據(jù)工程對 sLLM 性能提升的重要性。
?
Phi1: Textbooks Are All You Need
??https://arxiv.org/pdf/2306.11644.pdf ??
Phi-1.5 HF
https://huggingface.co/microsoft/phi-1_5 Phi-1.5
Textbooks Are All You Need II
??https://arxiv.org/pdf/2309.05463.pdf ???
Phi-2: The surprising power of small language models
??https://www.microsoft.com/en-us/research/blog/phi-2-the-surprising-power-of-small-language-models/???
03 阿里Qwen-1.8B
Qwen-1.8B 是阿里出品,使用了超過 2.2 萬億 tokens 來訓練,數(shù)據(jù)上覆蓋高質量的中、英、多語言、代碼、數(shù)學等數(shù)據(jù)。同時其支持 8192 上下文長度,詞表以中英文為主,量級約 15 萬,對多語言支持還不錯。Qwen 似乎在 1.8B 的模型上做過多優(yōu)化,但是其中文支持友好,可以作為一個基礎的 Baseline。
Qwen Github
??https://github.com/QwenLM/Qwen ??
Qwen HF
??https://huggingface.co/Qwen/Qwen-1_8B ??
Qwen Paper
??https://arxiv.org/pdf/2309.16609.pdf??
04 Google Gemma
Gemma 發(fā)布了 2B 和 7B 兩個版本,2B 版本也主打端側應用。Gemma 在 18 個基于文本的任務中的 11 個上優(yōu)于相似參數(shù)規(guī)模的開放模型。其特點是在數(shù)學/科學、Coding 能力上有比較大的優(yōu)勢。另外 Google 也做了詳細的評測,其安全性,指令遵循能力都非常強。
先談談看看數(shù)學能力和編碼能力。如下圖所示:在 MATH 評測集上,Gemma-7B分數(shù)達到 24.3,超過其他模型達到 10 分以上,Gemma-2B 模型的 MATH 上也達到 11.8,幾乎追上其他 7B、13B 的模型,另外觀察到清華 MiniCPM-2B 也達到了 10.24。
代碼能力:在 MBPP 數(shù)據(jù)集,Gemma-7B(44.4)甚至超過了專門利用代碼數(shù)據(jù)優(yōu)化的 CodeLLaMA-7B(41.4)模型。另外發(fā)現(xiàn) Gemma-2B(29.2)對比清華 Mini CPM-2B(47.31),還是有比較大的優(yōu)化空間。說明 Google 的 Gemma 模型也確實還有一些潛力可以挖掘。
指令遵循能力以及 Safety 安全性上表現(xiàn)都不錯。與 Mistral v0.2 7B Instruct 對比,在 Safety 安全性上,Gemma 2B 和 Gemma 7B 分別以 56.5%、58% 的勝率勝出。指令遵循能力上,Gemma 7B 以 51.7% 的正勝率勝出,而 Gemma-2B 的正勝率為 41%,表現(xiàn)也不錯。
訓練細節(jié)上:
?
首先其數(shù)學和代碼能力表現(xiàn)出色。Google 這邊可能用了更多比例的代碼以及數(shù)學推理數(shù)據(jù)。另外在其他提升數(shù)學以及代碼能力上,或許也可以參考 5 甚至引入 [6] 等策略,充分挖掘小模型的數(shù)學以及推理能力。
SFT 和 RLHF 對提高下游評測集得分和人類價值觀對齊非常重要。這個和 LLaMA2 提到的細節(jié)一致。另外 Google 在 SFT 過程中提到利用規(guī)模更大的模型來選擇響應偏好,在 RLHF 的過程中,Bradley-Terry 模型下訓練了獎勵函數(shù)。說明在挖掘小模型潛力的過程中,考慮類似蒸餾的策略,從知識側或者模型側將知識蒸餾到小模型上,也可以繼續(xù)提升小模型的天花板。
Gemma官網(wǎng):
??https://ai.google.dev/gemma/Gemma??
技術報告:
??https://storage.googleapis.com/deepmind-media/gemma/gemma-report.pdf??
05 如何提升小模型的潛力?
數(shù)據(jù)工程:增大數(shù)據(jù)規(guī)模、提升數(shù)據(jù)質量、添加更多代碼、數(shù)學方面的數(shù)據(jù)。Google gemma 7B 用了 6T tokens 來訓練,增加了代碼、數(shù)學相關的數(shù)據(jù),效果表現(xiàn)非常不錯。微軟 Phi 系列提到其也可以做到步步思考,多步推理,進行基本的上下文學習等,其在數(shù)據(jù)質量提高上做了非常多的工作。另外我們也可以利用 [3] 和 [6] 等思路從數(shù)據(jù)構造和建模等方面繼續(xù)優(yōu)化 sLLM 的推理效果。
蒸餾:微軟 Phi 系列利用更大的模型 ChatGPT3.5 合成高質量數(shù)據(jù),帶來的提升也令人印象深刻,這也算一種知識蒸餾的方式將大模型能力遷移到 sLLM上。另外也可以參考 Gemma 利用更大的模型輔助來做 RLHF,更高的對齊人類價值觀、提升安全性等。
參數(shù)優(yōu)化:更細致的訓練策略,像清華 MiniCPM 在預訓練的退火階段加入高質量的數(shù)據(jù),引入 WSD 學習率優(yōu)化器等策略帶來比較大的提升都令人印象深刻,借助更多沙盒實驗,或許像 Gemma 等模型還可以繼續(xù)帶來一些突破。
06 小模型的天花板在哪?
SLLM 模型的性能天花板目前還沒有到頭!張俊林和劉知遠老師都提到 Gemma 似乎還沒真正挖掘出所有潛能。例如 Gemma 2B 模型在部分指標上與清華 MiniCPM 2B 模型還有一些差距(均分 MiniCPM-2B 56.6 vs Gemma-2B 46.4),MiniCPM 則通過「模型沙盒」實驗從學習效率提速。學習 token 量僅為 Gemma-2B 的 1/2、Gemma-7B 的 1/6,也可見 Gemma 還沒有充分挖掘出模型參數(shù)的能力上限。
清華 MiniCPM 提到用他們 WSD 調度器訓練策略,在消耗等量計算量時,可以達到約 5 倍模型參數(shù)量的 Chinchilla-Optimal 模型(訓練數(shù)據(jù)量為模型參數(shù)量的 20 倍)。而持續(xù)訓練下去,有可能超越更大的 Chinchilla-Optimal模型。
?
Phi-1.5 只有 1.3B 參數(shù),但是在自然語言任務上可以和比其大 5 倍的模型相比較,在更復雜的小學數(shù)學和基礎 coding 能力上,超過了大多數(shù) sLLM。
?
目前 sLLMs 取得不錯進展,但是對比頂尖 GPT4、gemini1.5 等閉源大模型,還有著非常大的差距!短期看目前還無法直接彌補,當然后續(xù)希望 Meta 以及清華等機構,給我們更大的驚喜!
07 對于sLLM我們可以有哪些期待?
?
sLLM 效果提升加速 LLM 真正落地:毫無疑問,如果 2B 左右、以及 7B、13B 左右的模型,都能夠充分的挖掘其潛力,甚至也能與其大 5 倍的模型相比較,這對于垂類應用是非常利好的消息,大模型對于很多人都不再是遙不可及的。
多模態(tài)能力:Google 的 Gemma 架構與 gemini 相同,但是沒有利用多模態(tài)的數(shù)據(jù)訓練,暫時還不具備多模態(tài)能力。一方面可能是多模態(tài)小模型表現(xiàn)目前還比較差,另外一方面可能也在等著狙擊友商的模型??梢云诖氖牵S著 Sora 等視頻領域的模型的爆火,開源的視覺以及多模態(tài)的模型或許也將在今年熱鬧起來。
坐等 Llama3 發(fā)布!被精確狙擊后的 Llama3 會如何進行反擊,先來期待下吧!
本文轉自 PaperWeekly ,作者:胡翔
