0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

1-2B参数规模大模型的使用心得

深度学习自然语言处理 来源:深度学习自然语言处理 2023-12-28 11:47 次阅读

来自:刘聪NLP

写在前面

大模型时代,根据大模型缩放定律,大家通常都在追求模型的参数规模更大、训练的数据更多,从而使得大模型涌现出更多的智能。但是,模型参数越大部署压力就越大。即使有gptq、fastllm、vllm等推理加速方法,但如果GPU资源不够也很难保证高并发。

那么如何在模型变小的同时,模型效果不明显下降,在指定任务上也可以媲美大模型的效果呢?

Google前几天发布的Gemini,在移动端采用1.8B参数模型面向低端手机,3.25B参数模型面向高端手机。

dd7000f8-a091-11ee-8b88-92fbcf53809c.png

An overview of the Gemini 1.0 model family

而微软最近也是推出了2.7B的Phi-2模型,评测效果绝群。

dd814c96-a091-11ee-8b88-92fbcf53809c.png

Averaged performance on grouped benchmarks compared to popular open-source SLMs

dd8e5508-a091-11ee-8b88-92fbcf53809c.png

Comparison between Phi-2 and Gemini Nano 2 Model on Gemini’s reported benchmarks

恰好笔者前段时间也在研究1-2B参数量左右的模型,因此写写心得体会;并汇总了一下现在市面上开源的1-2B参数量的大模型。

这波反向操作,佛曰:不可说。

如何使大模型变小

模型压缩的方法包括:用更多的数据硬训练小模型、通过大模型对小模型进行蒸馏、通过大模型对小模型进行剪枝、对大模型进行量化、对大模型进行低秩分解。

dd942064-a091-11ee-8b88-92fbcf53809c.png

Taxonomy of Model Compression methods for Large Language Models

但是模型参数量变小还是硬训练或蒸馏一个参数量小的模型,剪枝和量化只是对模型进行推理加速,本质上参数量没有变少。

对于预训练阶段来说,往往需要更多的数据硬训练。参数规模不够,只能数据质量和数据数量来凑。

ddd00b60-a091-11ee-8b88-92fbcf53809c.png

Textbooks Are All You Need

而在指令微调阶段,往往是蒸馏更优秀的大模型,来让小模型效果更好。利用GPT3.5、GPT4的数据直接指令微调是对闭源大模型蒸馏的方法之一,也是目前大家主流的做法。但也可以在蒸馏过程中,利用闭源大模型充当一个裁判来判别教师模型回答和学生模型回答的差异,让学生模型向老师模型(闭源)进行反馈,重点是找到困难数据让学生模型进行更好的学习。

dde1f2ee-a091-11ee-8b88-92fbcf53809c.png

Lion: Adversarial Distillation of Proprietary Large Language Models

当然如果你本身拥有更大更好的大模型,那么就可以用标准的知识蒸馏来进行模型蒸馏,利用KL散度,对教师模型和学生模型输出概率分布之间的差异进行训练学习。

将更大模型的效果蒸馏到小模型上,会比硬训练的效果要理想,但首先要有一个可获取网络各层logits的大&好&强的模型。

训练1-2B参数规模使我痛并快乐

训练1-2B模型让我又找到了全量调参的快乐,之前受显卡限制,都是Lora、QLora等方法训练。

模型部署阶段,再也不用为显存发愁,老卡也轻轻松松进行模型部署。对于2B模型,Float32进行参数部署也就8G、Float16就需要4G,如果再做量化的话更小,甚至CPU部署速度也可以接受。

同等数据情况下,效果确实不如更大的模型。以Qwen1.8B和7B为例,在自己任务上指标差了7-10个点。

在个人任务上,通过增加数据,将训练数据扩大2-4倍并提高数据质量之后,效果基本上可以媲美。

小模型在没有定制优化的任务上,就一言难尽了,泛化能力等都远不如更大的模型。

用了小模型之后,再也没被吐槽过速度了。

主流1-2B参数规模的大模型汇总

共整理了14个1-2B参数规模的大模型,按照参数量从大到小排序,如下所示。

ddec2c6e-a091-11ee-8b88-92fbcf53809c.png

PS: HF访问不了的小伙伴,可以看一下《大模型下载使我痛苦》。

Yuan2.0-2B

Yuan2.0-2B是浪潮发布的Yuan2.0大模型的2B版本,采用中英文的高质量资料,包括书籍、百科、论文等。Yuan2.0-2B模型层数24层,隐藏层维度2048,支持最大长度8192。

Qwen-1.8B

Qwen-1.8B是阿里发布的Qwen大模型的1.8B版本,采用2.2TB Token的数据进行预训练,包含高质量中、英、多语言、代码、数学等数据,涵盖通用及专业领域的训练语料。Yuan2.0-2B模型层数24层,隐藏层维度2048,支持最大长度8192,并且开源了对应的Chat模型。

Bloom-1.7B&1.1B

Bloom-1.7B&1.1B是Hugging Face牵头组织的BigScience项目开源的Bloom大模型的1.7B和1.1B版本。训练数据涉及46种自然语言和13种编程语言,共计1.6TB的文本数据。Bloom-1.7B模型层数24层,隐藏层维度2048,支持最大长度2048。Bloom-1.1B模型层数24层,隐藏层维度1536,支持最大长度2048。

Pythia-1.4B&1B

Pythia-1.4B&1B是EleutherAI开源的Pythia的1.4B和1B版本。主要使用300B Token的The Pile数据集进行训练。Pythia-1.4B模型层数24层,隐藏层维度2048。Pythia-1B模型层数16层,隐藏层维度2048。

Phi-1&Phi-1.5

Phi-1&Phi-1.5是微软开源的Phi大模型的两个不同版本,均有1.3B参数,模型层数24层,隐藏层维度2048。Phi-1模型训练54B Token的数据,而Phi-1.5模型训练150B Token的数据。

Deepseek-Coder-1.3B

Deepseek-Coder-1.3B是深度求索发布开源的Deepseek-Coder的1.3B版本,采用1TB Token的数据进行预训练,数据由87%的代码和13%的中英文自然语言组成,模型层数24层,隐藏层维度2048。

Galactica-1.3B

Galactica-1.3b是MetaAI开源的Galactica大模型的1.3B版本,采用106B Token数据进行训练,数据主要来自论文、参考资料、百科全书和其他科学来源等。模型层数24层,隐藏层维度2048。

GPT-Sw3-1.3B

GPT-Sw3-1.3B是AI Sweden开源的GPT-SW3大模型的1.3B版本,采用320B Token数据进行训练,数据主要由瑞典语、挪威语、丹麦语、冰岛语、英语和编程代码数据集组成。模型层数24层,隐藏层维度2048。

GPT-Neo-1.3B

GPT-Neo-1.3B是EleutherAI开源的GPT-Neo大模型的1.3B版本,GPT-Neo模型主要为了复现的GPT-3模型,采用380B Token数据进行训练,模型层数24层,隐藏层维度2048。

OPT-1.3B

OPT-1.3B模型是由MetaAI开源的OPT大模型的1.3B版本,采用180B Token数据进行训练,模型层数24层,隐藏层维度2048。

TinyLlama-1.1B

TinyLlama模型是一个1.1B参数的Llama模型,旨在3TB Token的数据上进行训练,目前训练到2.5TB Token数据,模型层数22层,隐藏层维度2048。

写到最后

如果领导非要部署大模型,但对效果要求没有那么高,又没有资源支持,那么选择一个1-2B的模型也是不错的呦。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 手机
    +关注

    关注

    34

    文章

    6684

    浏览量

    155002
  • gpu
    gpu
    +关注

    关注

    27

    文章

    4424

    浏览量

    126724
  • 参数
    +关注

    关注

    11

    文章

    1398

    浏览量

    31479
  • 开源
    +关注

    关注

    3

    文章

    2991

    浏览量

    41723
  • 大模型
    +关注

    关注

    2

    文章

    1543

    浏览量

    1140

原文标题:1-2B参数规模大模型使用心得及模型汇总

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    MPLAB ICD 3 及PICKIT3 使用心得及注意事项

    `MPLAB ICD 3 及PICKIT3 使用心得及注意事项,与发烧友们共同分享!`
    发表于 11-24 15:38

    【MATLAB使用心得汇总——Tips6 】

    本帖最后由 maxfiner 于 2013-12-12 12:48 编辑 MATLAB使用心得汇总——Tips6 变量使用前要预先定义大小。对于大变量来说,至关重要。如下例,仅仅是长度
    发表于 12-12 12:47

    滤波电容的使用心得

    图说滤波电容的使用心得,非常详细,不信你还不懂~
    发表于 07-18 15:23

    关于spartan6套件试用心得,不看肯定后悔

    求大神分享一些关于spartan6套件试用心得
    发表于 04-15 06:42

    关于Spartan6板子的使用心得

    给大家分享一下关于Spartan6板子的使用心得
    发表于 04-30 07:03

    NE555关于计数器的使用心得

    NE555关于计数器的使用心得1.一般使用定时器0作为计数器这时使用定时器0的模式2(这种无需人为重装,由硬件自动重装)2.使用定时器1作为
    发表于 07-22 06:50

    TFT LCD使用心得

    TFT LCD使用心得体会的原因是,最近一段时间工作上一直在使用TFT LCD,主要是3.5寸LCD,以SAMSUNG的LTV350QV及其一些台湾的兼容产品为主。工作的内容就是把这些屏在我们的产品上应用起
    发表于 10-16 13:04 43次下载

    详细谈谈TFT LCD 的使用心得

    深入谈谈TFT LCD 的使用心得最近一段时间工作上一直在使用TFT LCD,主要是3、5 寸LCD,以SAMSUNG 的LTV350QV 及其一些台湾的兼容产品为主。工作的内容就是把这些屏在我们的产品上
    发表于 03-18 17:49 3次下载

    CAD使用心得之五:图层控制、视图调整、图形选择

    CAD使用心得之五 图层控制命令、视图命令、图元选择方式 图层控制命令和视图命令都是辅助绘图的命令,但是运用这些命令的关键,在于是否熟练,这将会极大的影响绘图的效率。 先
    发表于 10-19 17:08 1913次阅读

    ADXL345芯片使用心得

    ADXL345芯片使用心得,介绍使用传感器过程的使用体会
    发表于 05-11 11:08 23次下载

    数字温湿度传感器DHT11使用心得

    一点温湿度传感器DHT11使用心得
    发表于 04-14 15:35 7次下载

    Django教程之Django的使用心得详细资料免费下载

    本文档的主要内容详细介绍的是Django教程之Django的使用心得详细资料免费下载。
    发表于 10-17 18:03 11次下载
    Django教程之Django的使<b class='flag-5'>用心得</b>详细资料免费下载

    Aultium Designer 的使用心得和基本电路图的搭建

    Aultium Designer 的使用心得和基本电路图的搭建总结一下我上学期学习AD的心得和见解。新手见谅,权当积累经验。关于版本的问题:我用过18和20的版本,个人感觉18的漏洞很大,20优化
    发表于 11-24 14:36 9次下载
    Aultium Designer 的使<b class='flag-5'>用心得</b>和基本电路图的搭建

    智慧服装工厂电子看板试用心得

    智慧服装工厂电子看板试用心得实现了企业生产的进度实时监控、现场拉式生产、生产节拍平衡和异常情况的反馈功能。而接下来我们主要讨论的是智慧服装工厂电子看板试用心得在生产线与仓库之间的物料配送体系,要谈到这个物料配送问题,则要首先考虑到物料的申请、准备、运输追踪和物料接收的流程
    的头像 发表于 02-17 18:02 768次阅读
    智慧服装工厂电子看板试<b class='flag-5'>用心得</b>

    HT for Web (Hightopo) 使用心得(5)- 动画的实现

    的相关概念请参考《Hightopo 使用心得(4)- 3D 场景 Graph3dView 与 Obj 模型》。 这里的主要工作分为:3D 场景配置以及模型加载。其中 3D 场景部分的设置代码
    的头像 发表于 11-29 11:04 323次阅读
    HT for Web (Hightopo) 使<b class='flag-5'>用心得</b>(5)- 动画的实现