赞
踩
©PaperWeekly 原创 · 作者 | 胡翔
单位 | 中国人寿研发中心
研究方向 | 对话系统、LLM
2024 是大模型落地应用的关键年,接下来会看到更多从硬件、架构、算法等方面极限挖掘大模型效率的探索。众人拾柴火焰高,相信在大家共同的开源努力下,我们可以更快奔向 AGI 的目标。
——摘自刘知远老师最近对 Google 发布 Gemma 后发的一条朋友圈
本文对国内外几个代表性的 sLLMs 进行调研分析,主要解决心中的一些疑惑:
1. 有哪些策略可以充分挖掘 sLLM 的潜能?
2. sLLM 的天花板能到哪?
3. 对于 sLLM 我们有哪些期待?
清华MiniCPM
MiniCPM-2B 参数量为 2.4B,主打端侧部署,其特点是采用了很多策略充分挖掘了 sLLM 的潜力,MiniCPM-2B 的模型在综合性榜单上与 Mistral-7B 相近,整体性能超越了 Llama2-13B、MPT-30B、Falcon-40B 等模型。在 MTBench 榜单上,MiniCPM-2B 也超越了多个代表性开源大模型。
其挖掘小模型性能的主要策略如下,详情可参考 [1]:
模型沙盒实验:在小模型上进行广泛的实验,通过可迁移的配置,获得大模型的最优训练方法。其在 Hyper-parameters、Batch size、Learning Rate、Learning Rate Scheduler、Data Strategy 五个方面进行了模型沙盒研究,充分挖掘了 sLLM 的潜能。
更细致的数据策略:在预训练阶段只使用通用、量大的预训练粗质量数据,而在退火阶段,使用非常广泛的高质量知识和能力数据以及 SFT 的高质量数据,混合入预训练数据进行退火。实验结果表明在退火开始时加入高质量数据的收益远高于在退火完成后的 sft 阶段加入。
sLLM 的上限在哪?
MiniCPM 在实验的过程中,尝试对模型性能与计算量进行拟合,分析并预测模型里的理论 loss 值。其认为如果用他们 WSD 调度器训练策略,在消耗等量计算量时,可以达到约 5 倍模型参数量的 Chinchilla-Optimal 模型(训练数据量为模型参数量的 20 倍)。而持续训练下去,有可能超越更大的 Chinchilla-Optimal 模型。
Github OpenBMB/MiniCPM
https://github.com/OpenBMB/MiniCPM
MiniCPM:揭示端侧大语言模型的无限潜力
https://shengdinghu.notion.site/MiniCPM-c805a17c5c8046398914e47f0542095a
微软phi系列
2.1 Phi-1.5
Phi-1.5 展现出许多大模型才有的能力,例如一步步思考,多步推理,进行基本的上下文学习等。训练上其特点是数据上用了现有大模型,生成教科书级的合成数据,同时对网络少的数据做了非常细致的筛选,总的数据量只用了 30B tokens,远小于 Llama-7B 的 1T tokens,就取得了非常不错的效果。
再次说明高质量数据的重要性。另外发现在 Coding 上,phi-1.5 在 HumanEval 的分数为 41.4,也远超 Llama-65B 的 23.7,说明 LLama-65B 的 coding 潜能确实还没完全挖掘出来。Phi-1.5 的缺点是可能会出现幻觉以及安全性还不太好,可能会产生有毒的内容。
Phi-1.5 只有 1.3B 参数,但是在自然语言任务上可以和比其大 5 倍的模型相比较,在更复杂的小学数学和基础 coding 能力上,超过了大多数 sLLM。
Phi-2 参数量达到 2.7B,数据量用了 1.4T 的 tokens,主要由合成的数据和网络数据组成。用 96 块 A100 训练了 14 天。它是一个 base 模型,没有经过 RLHF 对齐,因为在数据侧做了非常多的清洗工作,发现其安全性表现还不错,比 Llama2-7B 都要好不少。
效果上,与 Mistral 和 Llama-2 进行比较,平均来看,Phi-2 的表现优于 Mistral-7B,并且后者的性能又优于 Llama-2 模型(7B,13B,和 70B)。
微软 Phi 系列挖掘 sLLMs 潜能的秘诀是什么?
Phi 系列中,其中 Phi1 的参数量只有 1.3B,其在 HumanEval 的表现就以超过50的得分超过了众多比他大数 10 倍的模型。而且其使用的数据量少于 7B,能取得此分数的关键因素就是数据集。作者认为,噪音、歧义、逻辑不清晰、分布不均衡的代码数据集无法让模型真正学会编码能力,因此专门训练了一个分类器来过滤 The stack 和 stackOverflow 数据集。
另外使用 ChatGPT3.5 生成教科书级别的合成数据,为了提高合成数据的多样性,通过在 prompt 中加入从固定词表中随机选择的词汇,或者针对代码数据设置不同的函数名称,在 prompt 中加入随机性,从而产生多样性的数据集。最终它的数据集主要包括过滤的 code-language 数据集、人造教科书、小型人造 python 习题数据集。
而后续的 Phi-1.5、Phi-2 在 Phi-1 的基础上,充分发挥了其数据工程的优势,总体性能已经优于Mistral-7B,是一个非常不错的 sLLM 了。
一个好的教科书可以让学生更好的学习相关知识,一个精心打造的教科书级别的数据集,可以让 sLLM 以非常少的数据,训练较小的模型,取得非常好的效果。也再次让我们看到数据工程对 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/
阿里Qwen-1.8B
Qwen-1.8B 是阿里出品,使用了超过 2.2 万亿 tokens 来训练,数据上覆盖高质量的中、英、多语言、代码、数学等数据。同时其支持 8192 上下文长度,词表以中英文为主,量级约 15 万,对多语言支持还不错。Qwen 似乎在 1.8B 的模型上做过多优化,但是其中文支持友好,可以作为一个基础的 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
Google Gemma
Gemma 发布了 2B 和 7B 两个版本,2B 版本也主打端侧应用。Gemma 在 18 个基于文本的任务中的 11 个上优于相似参数规模的开放模型。其特点是在数学/科学、Coding 能力上有比较大的优势。另外 Google 也做了详细的评测,其安全性,指令遵循能力都非常强。
先谈谈看看数学能力和编码能力。如下图所示:在 MATH 评测集上,Gemma-7B分数达到 24.3,超过其他模型达到 10 分以上,Gemma-2B 模型的 MATH 上也达到 11.8,几乎追上其他 7B、13B 的模型,另外观察到清华 MiniCPM-2B 也达到了 10.24。
代码能力:在 MBPP 数据集,Gemma-7B(44.4)甚至超过了专门利用代码数据优化的 CodeLLaMA-7B(41.4)模型。另外发现 Gemma-2B(29.2)对比清华 Mini CPM-2B(47.31),还是有比较大的优化空间。说明 Google 的 Gemma 模型也确实还有一些潜力可以挖掘。
指令遵循能力以及 Safety 安全性上表现都不错。与 Mistral v0.2 7B Instruct 对比,在 Safety 安全性上,Gemma 2B 和 Gemma 7B 分别以 56.5%、58% 的胜率胜出。指令遵循能力上,Gemma 7B 以 51.7% 的正胜率胜出,而 Gemma-2B 的正胜率为 41%,表现也不错。
训练细节上:
首先其数学和代码能力表现出色。Google 这边可能用了更多比例的代码以及数学推理数据。另外在其他提升数学以及代码能力上,或许也可以参考 5 甚至引入 [6] 等策略,充分挖掘小模型的数学以及推理能力。
SFT 和 RLHF 对提高下游评测集得分和人类价值观对齐非常重要。这个和 LLaMA2 提到的细节一致。另外 Google 在 SFT 过程中提到利用规模更大的模型来选择响应偏好,在 RLHF 的过程中,Bradley-Terry 模型下训练了奖励函数。说明在挖掘小模型潜力的过程中,考虑类似蒸馏的策略,从知识侧或者模型侧将知识蒸馏到小模型上,也可以继续提升小模型的天花板。
Gemma官网:
https://ai.google.dev/gemma/Gemma
技术报告:
https://storage.googleapis.com/deepmind-media/gemma/gemma-report.pdf
如何提升小模型的潜力?
数据工程:增大数据规模、提升数据质量、添加更多代码、数学方面的数据。Google gemma 7B 用了 6T tokens 来训练,增加了代码、数学相关的数据,效果表现非常不错。微软 Phi 系列提到其也可以做到步步思考,多步推理,进行基本的上下文学习等,其在数据质量提高上做了非常多的工作。另外我们也可以利用 [3] 和 [6] 等思路从数据构造和建模等方面继续优化 sLLM 的推理效果。
蒸馏:微软 Phi 系列利用更大的模型 ChatGPT3.5 合成高质量数据,带来的提升也令人印象深刻,这也算一种知识蒸馏的方式将大模型能力迁移到 sLLM上。另外也可以参考 Gemma 利用更大的模型辅助来做 RLHF,更高的对齐人类价值观、提升安全性等。
参数优化:更细致的训练策略,像清华 MiniCPM 在预训练的退火阶段加入高质量的数据,引入 WSD 学习率优化器等策略带来比较大的提升都令人印象深刻,借助更多沙盒实验,或许像 Gemma 等模型还可以继续带来一些突破。
小模型的天花板在哪?
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 还没有充分挖掘出模型参数的能力上限。
清华 MiniCPM 提到用他们 WSD 调度器训练策略,在消耗等量计算量时,可以达到约 5 倍模型参数量的 Chinchilla-Optimal 模型(训练数据量为模型参数量的 20 倍)。而持续训练下去,有可能超越更大的 Chinchilla-Optimal模型。
Phi-1.5 只有 1.3B 参数,但是在自然语言任务上可以和比其大 5 倍的模型相比较,在更复杂的小学数学和基础 coding 能力上,超过了大多数 sLLM。
目前 sLLMs 取得不错进展,但是对比顶尖 GPT4、gemini1.5 等闭源大模型,还有着非常大的差距!短期看目前还无法直接弥补,当然后续希望 Meta 以及清华等机构,给我们更大的惊喜!
对于sLLM我们可以有哪些期待?
sLLM 效果提升加速 LLM 真正落地:毫无疑问,如果 2B 左右、以及 7B、13B 左右的模型,都能够充分的挖掘其潜力,甚至也能与其大 5 倍的模型相比较,这对于垂类应用是非常利好的消息,大模型对于很多人都不再是遥不可及的。
多模态能力:Google 的 Gemma 架构与 gemini 相同,但是没有利用多模态的数据训练,暂时还不具备多模态能力。一方面可能是多模态小模型表现目前还比较差,另外一方面可能也在等着狙击友商的模型。可以期待的是,随着 Sora 等视频领域的模型的爆火,开源的视觉以及多模态的模型或许也将在今年热闹起来。
坐等 Llama3 发布!被精确狙击后的 Llama3 会如何进行反击,先来期待下吧!
参考文献
[1] An Initial Exploration of Theoretical Support for Language Model Data Engineering. Part 1: Pretraining https://yaofu.notion.site/An-Initial-Exploration-of-Theoretical-Support-for-Language-Model-Data-Engineering-Part-1-Pretraini-dc480d9bf7ff4659afd8c9fb738086eb
[2] MiniCPM:揭示端侧大语言模型的无限潜力 https://shengdinghu.notion.site/MiniCPM-c805a17c5c8046398914e47f0542095a
[3] let's verify step by step https://arxiv.org/abs/2305.20050
[4] LLaMA2 https://github.com/facebookresearch/llama
[5] 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/
[6] Symbolic Chain-of-Thought Distillation: Small Models Can Also “Think” Step-by-Step https://arxiv.org/pdf/2306.14050.pdf
[7] Gemma技术报告 https://storage.googleapis.com/deepmind-media/gemma/gemma-report.pdf
[8] 张俊林:关于Google开源Gemma的一些零散的看法 https://www.zhihu.com/question/645303968/answer/3404606348
[9] Phi-1.5 Paper https://arxiv.org/pdf/2309.05463.pdf
[10] Video generation models as world simulators https://openai.com/research/video-generation-models-as-world-simulators
更多阅读
#投 稿 通 道#
让你的文字被更多人看到
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析、科研心得或竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。