前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >大模型LLaMA及其Finetune方法

大模型LLaMA及其Finetune方法

作者头像
圆圆的算法笔记
发布于 2023-08-17 00:39:05
发布于 2023-08-17 00:39:05
1.3K0
举报

这篇文章介绍了近年最火的预训练大模型之一LLaMA,以及如何对它进行finetune,以应用到下游NLP、多模态等任务中,也包括如何降低finetune的资源开销,实现高性价比的大模型应用。

1、LLaMA大模型

LLaMA是今年2月份由MetaAI提出的一组预训练大模型,相关论文为LLaMA: Open and Efficient Foundation Language Models。LLaMA完全基于开源数据进行训练,实现了超越GPT3的效果。LLaMA包括多种尺寸的大模型,从7B到65B。

LLaMA的模型结构主体仍然是Transformer,基于Transformer融合了一些之前工作的优化点。这些优化点包括如下几个方面:

Pre-normalization:对Transformer每层的输入使用RMSNorm进行标准化

SwiGLU activation function:使用SwiGLU激活函数替代原来的ReLU激活函数

Rotary Embeddings:使用rotary positional embeddings(旋转式位置编码)替代原来的绝对位置编码

在优化器上,使用AdamW,并且使用了cosine learning rate schedule,学习结束阶段的学习率为初始的10%,使用梯度裁剪小于1,以及2000的warmup step。

2、Instruction Tuning LLaMA

Stanford alpaca对LLaMA采用Instruction Tuning的方式对LLaMA进行finetune,让其适配下游任务。Instruction Tuning的核心是将各类NLP任务转换成自然语言的形式,构造任务的Instruction-output对,将其输入大模型中finetune大模型参数。

具体的样本构造上,首先生成175个基础的Instruction-output对,然后将其输入到GPT-3.5中,让GPT-3.5对这些数据进行扩展,最终得到52k的训练数据,使用这些数据finetuenLLaMA-7B,最终得到的模型效果达到了接近GPT-3.5的效果。

3、高效LLaMA Finetune

上面方法的finetune效果非常惊人,能够利用GPT-3.5的数据让finetune后的LLaMA取得近乎持平的效果。但是存在的问题是这种finetune方式仍然代价较高,需要对大模型的全量参数进行finetune,运行效率较低,一般的组织也没有这种finetune大模型全量参数的资源。

高效finetune的方法已经有很多历史研究,利用Adapter系列方法,在之前的文章中也进行过详细介绍。LLaMA-Adapter: Efficient Fine-tuning of Language Models with Zero-init Attention这篇文章提出利用Adapter的思路进行LLaMA的finetune,只用8个A100 GPU,finetune1.2M的参数,就能达到接近全量finetune的效果。

LLaMA-Adapter仍然使用和Stanford alpaca相同的52k的Instruction-Output对进行finetune。区别在于,本文会将预训练LLaMA的参数冻结,通过增加prefix-prompt的方式进行finetune。这里增加的prefix-prompt是可学习的参数,也是finetune要优化的参数,它们被拼接到输入token的起始位置。这里只在最后的几层Transformer使用这些prompt,以此提升对高阶语义的理解能力。

由于增加的Prompt向量是随机初始化的,训练的开始阶段这些prompt向量训练不充分,在进行attention时可能会对后续token的信息造成负面影响。为了解决这个问题,文中提出了一种Zero-init Attention的方式。Zero-init Attention在计算attention时,使用一个门控网路对prompt向量的信息进行选择,在初始时使用较小的权重,减少其对整个序列的影响。

4、多模态LLaMA Finetune

本文还进一步将LLaMA应用到多模态任务中。应用方法为,使用一个Visual Encoder,例如CLIP,对输入的图像进行编码。然后将这个编码通过一个projection层映射后,加到Adapter中的prompt向量上,再利用上述的方法进行LLaMA的finetune。通过这种方式,可以让LLaMA适应多模态任务,根据图像信息进行表示生成。

下面是本文进行多模态LLaMA finetune后的效果case,可以看到能够比较好的解决多模态问题。

5、总结

本文介绍了大模型LLaMA以及它的finetune方法。大模型是目前NLP发展的趋势,如何在自己的业务场景上finetune大模型,让其对齐下游任务,也是业内目前的一个研究重点。在LLaMA大模型上的finetune技术探索工作,可以帮助我们进行广泛的大模型应用实践。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-05-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 圆圆的算法笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
盘点!Instruction Tuning 时代的大模型(下)
Alpaca,ChatGLM 6B 等模型的效果可以接受,下文总结部分笔记,为训练自定义小型化(7B)模型提供点知识储备。
NewBeeNLP
2023/08/29
4700
盘点!Instruction Tuning 时代的大模型(下)
NLP中的绿色Finetune方法
NLP中,预训练大模型Finetune是一种非常常见的解决问题的范式。利用在海量文本上预训练得到的Bert、GPT等模型,在下游不同任务上分别进行finetune,得到下游任务的模型。然而,这种方式的代价也很大,经常要对所有任务都保存一个完整的task-specific模型,随着预训练模型体积越来越大,这种方式会占用很多存储空间,当下游任务很多的时候要存储大量的预训练模型。同时,为每个任务finetune一个如此庞大的模型,训练资源的消耗也比较大。
圆圆的算法笔记
2022/09/22
5440
NLP中的绿色Finetune方法
大模型迎来「开源季」,盘点过去一个月那些开源的LLM和数据集
选自Ahead of AI 机器之心编译 编译:杜伟、泽南 开源的力量正在源源不断地影响着整个 AI 社区,无论是 LLM 还是数据集。本文作者 Sebastian Raschka 对相关资源进行了汇总,并分享了自己的洞见。 前段时间,谷歌泄露的内部文件表达了这样一个观点,虽然表面看起来 OpenAI 和谷歌在 AI 大模型上你追我赶,但真正的赢家未必会从这两家中产生,因为有一个第三方力量正在悄然崛起。这个力量就是「开源」。 围绕 Meta 的 LLaMA 开源模型,整个社区正在迅速构建与 OpenAI、谷
机器之心
2023/05/22
5080
大模型迎来「开源季」,盘点过去一个月那些开源的LLM和数据集
最强英文开源模型LLaMA架构探秘,从原理到源码
读完本文,你可能觉得LLaMA会开源并不令人惊讶,因为它的架构可以说是站在巨人肩膀上摘苹果——基本上可以说使用其他模型的组件作为“积木”搭了一个新模型出来,并没有太多实质意义上的创新,但这种敢于开源的勇气和做法使得LLaMA足以在大语言模型上的开源发展历程上成为一个标志性的里程碑。
Steve Wang
2023/10/23
4.5K0
最强英文开源模型LLaMA架构探秘,从原理到源码
如何将大模型应用到自己的业务中?7种大模型应用方式和代表论文总结
如何将大模型应用落地到自己的业务或工作中?这篇文章整理了7种目前业内最常用的大模型应用方法,以及各个方法的代表论文。通过对各种应用大模型方法的特点对比,找到最适合自己场景的应用方法。
圆圆的算法笔记
2023/08/17
3.9K0
如何将大模型应用到自己的业务中?7种大模型应用方式和代表论文总结
详解各种LLM系列|LLaMA 1 模型架构、预训练、部署优化特点总结
LLaMA 是Meta在2023年2月发布的一系列从 7B到 65B 参数的基础语言模型。LLaMA作为第一个向学术界开源的模型,在大模型爆发的时代具有标志性的意义。
NewBeeNLP
2024/02/06
3K0
详解各种LLM系列|LLaMA 1 模型架构、预训练、部署优化特点总结
大模型微调方法总结
paper:LoRA: Low-Rank Adaptation of Large Language Models(https://arxiv.org/pdf/2106.09685.pdf)
腾讯技术工程官方号
2023/07/26
2.5K0
大模型微调方法总结
详解各种LLM系列|LLaMA 2模型架构、 预训练、SFT内容详解 (PART1)
大家好,这里是 NewBeeNLP。之前我们分享了详解各种LLM系列|LLaMA 1 模型架构、预训练、部署优化特点总结
NewBeeNLP
2024/03/27
3.7K0
详解各种LLM系列|LLaMA 2模型架构、 预训练、SFT内容详解 (PART1)
调教LLaMA类模型没那么难,LoRA将模型微调缩减到几小时
选自Lightning AI 作者:Sebastian Raschka 机器之心编译 编辑:赵阳 LoRA 微调方法,随着大模型的出现而走红。 最近几个月,ChatGPT 等一系列大语言模型(LLM)相继出现,随之而来的是算力紧缺日益严重。虽然人人都想打造专属于自己的大模型,但是能负担得起上亿参数模型训练的机构却寥寥无几。 在快速发展的人工智能领域,以高效和有效的方式使用大型语言模型正变得越来越重要。 LoRA(Low-Rank Adaption,低秩自适应) 作为微调 LLMs 一种比较出圈的技术,其额外
机器之心
2023/05/31
1.8K0
调教LLaMA类模型没那么难,LoRA将模型微调缩减到几小时
ChatGenTitle:使用百万arXiv论文信息在LLaMA模型上进行微调的论文题目生成模型
科研论文写作中,生成一个有吸引力的、准确的论文标题需要综合考虑多个因素,这是论文作者面临的一个重要挑战。生成一个论文标题的难点有:
汀丶人工智能
2023/08/05
5190
ChatGenTitle:使用百万arXiv论文信息在LLaMA模型上进行微调的论文题目生成模型
熔岩羊驼LLaVA来了:像GPT-4一样可以看图聊天,无需邀请码,在线可玩
机器之心报道 编辑:赵阳 尽管 LLaVA 是用一个小的多模态指令数据集训练的,但它在一些示例上展示了与多模态模型 GPT-4 非常相似的推理结果。 GPT-4 的识图能力什么时候能上线呢?这个问题目前依然没有答案。 但研究社区已经等不及了,纷纷自己上手 DIY,其中最火的是一个名为 MiniGPT-4 的项目。MiniGPT-4 展示了许多类似于 GPT-4 的能力,例如生成详细的图像描述并从手写草稿创建网站。此外,作者还观察到 MiniGPT-4 的其他新兴能力,包括根据给定的图像创作故事和诗歌,提供
机器之心
2023/05/01
2810
熔岩羊驼LLaVA来了:像GPT-4一样可以看图聊天,无需邀请码,在线可玩
【LLM系列之底座模型对比】LLaMA、Palm、GLM、BLOOM、GPT模型结构对比
GPT 使用 Transformer 的 Decoder 结构,并对 Transformer Decoder 进行了一些改动,原本的 Decoder 包含了两个 Multi-Head Attention 结构,GPT 只保留了 Mask Multi-Head Attention,如下图所示:
致Great
2023/08/25
1.3K0
【LLM系列之底座模型对比】LLaMA、Palm、GLM、BLOOM、GPT模型结构对比
开源大语言模型LLMs汇总
大语言模型(LLM)是指使用大量文本数据训练的深度学习模型,可以生成自然语言文本或理解语言文本的含义。大语言模型可以处理多种自然语言任务,如文本分类、问答、对话等,是通向人工智能的一条重要途径。
机器学习AI算法工程
2023/09/04
2.5K0
开源大语言模型LLMs汇总
从统一视角看各类高效finetune方法
随着预训练模型参数量越来越大,迁移学习的成本越来越高,parameter-efficient tuning成为一个热点研究方向。在以前我们在下游任务使用预训练大模型,一般需要finetune模型的所有参数。随着parameter-efficient tuning技术的发展,一些注入adaptor、prefix tuning、LoRA等成本更低的finetune方法被提出。那么各种各样的parameter-efficient tuning方法之间是否存在某些潜在的关系呢?ICLR 2022就有一篇相关的研究,从统一的视角理解现有的各类parameter-efficient tuning方法,并提出了一套迁移框架,可以实现更接近全量参数finetune效果的部分参数finetune。
圆圆的算法笔记
2022/12/19
2.4K0
从统一视角看各类高效finetune方法
四两拨千斤,训练大模型的PEFT方法
自然语言处理进入大语言模型(Large Language Model, LLM)时代之后,模型的参数量级越来越庞大,以稍早之前的GPT-3为例,它有175B即1亿7千5百万参数,而ChatGPT及后续模型则更大。一方面大语言模型解决自然语言处理任务所需的涌现能力确实需要如此量级的参数,另一方面如此巨大的参数会引起训练成本的急剧增加,甚至从消费级硬件角度来讲,用户全量训练大语言模型的参数的成本令人望而却步。大语言模型已经过pre-training阶段,于是就有学者提出是否能通过finetune一部分少量参数实现下游任务的精调,这催生了一系列PEFT(Parameter-Efficient Fine Tuning,PEFT,可译为参数高效精调)方法。
Steve Wang
2023/10/12
1.1K0
四两拨千斤,训练大模型的PEFT方法
训练时间减少71.4%,存储成本节省99.9%,厦大指令调优新方案MMA让羊驼模型实现多模态
机器之心报道 编辑:陈萍、小舟 本文提出了一种新颖且经济实惠的解决方案,用于有效地将 LLMs 适应到 VL(视觉语言)任务中,称为 MMA。MMA 不使用大型神经网络来连接图像编码器和 LLM,而是采用轻量级模块,即适配器,来弥合 LLMs 和 VL 任务之间的差距,同时也实现了图像模型和语言模型的联合优化。同时,MMA 还配备了一种路由算法,可以帮助 LLM 在不损害其自然语言理解能力的情况下,在单模态和多模态指令之间实现自动切换。 最近几个月,ChatGPT 等一系列大型语言模型(LLM)相继出现,随
机器之心
2023/05/31
5320
训练时间减少71.4%,存储成本节省99.9%,厦大指令调优新方案MMA让羊驼模型实现多模态
从零详细地梳理一个完整的 LLM 训练流程
在这篇文章中,我们将尽可能详细地梳理一个完整的 LLM 训练流程。包括模型预训练(Pretrain)、Tokenizer 训练、指令微调(Instruction Tuning)等环节。
zenRRan
2023/08/22
6.5K0
从零详细地梳理一个完整的 LLM 训练流程
CVPR2023 Tutorial Talk | 大型多模态模型:构建和超越多模态GPT-4
GPT-4现在很流行。今天我将试图帮助大家构建一个最小版本的多模态GPT-4。我将介绍不同的方式来利用大型语言模型(LLM)进行多模态任务。我将重点讲解端到端训练的模型,以便我们可以构建大型语言模型,保存图像并以合理的速率进行理解。
用户1324186
2023/09/09
1.2K0
CVPR2023 Tutorial Talk | 大型多模态模型:构建和超越多模态GPT-4
王小川的大模型打造秘籍首次曝光:五步走,两个月炼成
70亿参数、一经发布就开源可商用,百川智能的中英文大模型baichuan-7B,近期在圈内备受瞩目。
量子位
2023/08/05
3930
王小川的大模型打造秘籍首次曝光:五步走,两个月炼成
用GPT4进行指令微调
代码:https://instruction-tuning-with-gpt-4.github.io/
西西嘛呦
2023/04/08
1.5K0
用GPT4进行指令微调
推荐阅读
相关推荐
盘点!Instruction Tuning 时代的大模型(下)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档