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

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

3天内不再提示

从统一视角看各类高效finetune方法实现最优tuning框架设计

深度学习自然语言处理 来源:圆圆的算法笔记 作者:圆圆的算法笔记 2022-11-29 11:13 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

随着预训练模型参数量越来越大,迁移学习的成本越来越高,parameter-efficient tuning成为一个热点研究方向。在以前我们在下游任务使用预训练大模型,一般需要finetune模型的所有参数。随着parameter-efficient tuning技术的发展,一些注入adaptor、prefix tuning、LoRA等成本更低的finetune方法被提出。那么各种各样的parameter-efficient tuning方法之间是否存在某些潜在的关系呢?ICLR 2022就有一篇相关的研究,从统一的视角理解现有的各类parameter-efficient tuning方法,并提出了一套迁移框架,可以实现更接近全量参数finetune效果的部分参数finetune。

1各类tuning方法回顾

比较经典的高效finetune方法主要包括adaptor、prefix-tuning、LoRA这三类,这里进行一个简单的回顾。

Adaptor核心是在原Bert中增加参数量更小的子网络,finetune时固定其他参数不变,只更新这个子网络的参数。Adaptor是最早的一类高效finetune方法的代表,在Parameter-Efficient Transfer Learning for NLP(ICML 2019)这篇文章中被提出。在原来的Bert模型的每层中间加入两个adapter。Adapter通过全连接对原输入进行降维进一步缩小参数量,经过内部的NN后再将维度还原,形成一种bottleneck的结构。在finetune过程中,原预训练Bert模型的参数freeze住不更新,只更新adapter的参数,大大减少了finetune阶段需要更新和保存的参数量。

b60e7bc4-6f24-11ed-8abf-dac502259ad0.png

Prefix-tuning的核心是为每个下游任务增加一个prefix embedding,只finetune这些embedding,其他参数freeze。Prefix-tuning对应的论文是Prefix-Tuning: Optimizing Continuous Prompts for Generation(2021),这类方法的思想来源于prefix prompt,prefix embedding相当于一个上下文信息,对模型最终产出的结果造成影响,进而只finetune这个embedding实现下游任务的迁移。

b6af57e2-6f24-11ed-8abf-dac502259ad0.png

LoRA的核心是通过引入参数量远小于原模型的可分解的两小矩阵建立一个旁路,通过finetune这个旁路来影响预训练模型。LoRA于LoRA: Low-rank adaptation of large language models(2021)论文中被提出,利用低秩矩阵替代原来全量参数的训练,提升finetune效率。

b75a2758-6f24-11ed-8abf-dac502259ad0.png

2统一视角看高效finetune方法

ICLR 2022的这篇文章从统一的视角来看各类不同的parameter-efficient tuning方法。首先对于prefix tuning,Transformer的每个head的结果可以进行如下的公式推导变换:

b76eb9f2-6f24-11ed-8abf-dac502259ad0.png

其中,第一行的P就是prefix embedding,C对应着key和value的序列向量,x代表query。经过中间的变换后,可以发现prefix tuning的attention计算可以分为两个部分的加权求和,第一部分是原始的attention,第二部分是和key或value无关的一项,只用query和prefix embedding进行self-attention的计算。而权重则是根据prefix embedding的attention权重。通过上述公式,我们可以从另一个视角来看prefix-tuning:即在原始attention的输出结果上,对位相加一个由prefix embedding得到的attention值,实现对原始attention score的修正。

我们再来看Adaptor和LoRA两种tuning方式的数学表示。Adaptor和LoRA方法可以分别表示为如下公式:

b780c99e-6f24-11ed-8abf-dac502259ad0.png

我们把prefix embedding也可以转换成相同的表达形式:

b7a5b77c-6f24-11ed-8abf-dac502259ad0.png

可以发现这些finetune方法都具有相似的表达形式。并且,prefix-tuning中prefix embedding的数量其实和Adapter中降维的维度具有相似的功能。三种方法在这个视角下的对比如下图所示:

b7c173ea-6f24-11ed-8abf-dac502259ad0.png

3统一的高效finetune框架

既然上述几类方法表达形式相似,并且主要学的都是如何修改原来attention的输出结果,那么我们可以建立一个统一的框架,涵盖上述各类finetune方法。这个框架的核心是如何生成修改原始attention score的向量。为了生成这个向量,需要考虑以下4个核心模块:

Functional Form:用什么样的函数生成,上述方法基本都是全连接降维+激活函数+全连接升维的形式,当然也可以设计更复杂的函数形式;

Modified Representation:对哪个位置的信息进行直接修改;

Insertion Form:向量引入的形式,Adapter采用的是串联的方式,根据上一层的隐状态生成向量;而prefix tuning和LoRA采用并联的方式,直接根据输入序列生成向量;

Composition Function:向量的使用方式,利用adapter中采用简单的对位相加的形式。

Adapter、Prefix-tuning、LoRA等方法按照 上面4个维度拆分,各自的实现形式如下表:

b7f18ad0-6f24-11ed-8abf-dac502259ad0.png

接下来,文中基于上述4个模块设计了一些新的方法:

Parallel Adapter:将Adapter的串联形式修改为并联形式;

Multi-head Parallel Adapter:在Parallel Adapter基础上修改了Modified Representation,使用旁路向量修改attention输出结果;

Scaled Parallel Adapter:将LoRA的scaling引入进来。

b80cc340-6f24-11ed-8abf-dac502259ad0.png

4实验结果

本文由于站在了更高的视角,看到了parameter-efficient tuning的统一形式,因此可以实现更加灵活的建模方式,基于这个框架寻找最节省参数量、最能达到更好效果的结构。从下图可以看出,本文提出的方法实现接接近全量参数finetune的效果,参数量也比Adapter、LoRA等方法有所减少。

b8268032-6f24-11ed-8abf-dac502259ad0.png

文中通过大量的实验对比各个模块采用什么样的形式能带来最好的效果-效率的这种,并最终提出最优的模型MAM-Adapter。核心的实验发现包括:并联的方式比串联的好;对FFN输出结果的修改比对Attention输出结果修改要好等。

b880989c-6f24-11ed-8abf-dac502259ad0.png

5总结

本文从统一视角看parameter-efficient tuning,实现了更高视角的最优tuning框架设计。这也启发我们寻找同类问题不同建模方式背后原理的统一性,能够跳出一种模型结构去看各类建模方式的相似性,实现更高视角下对问题的理解。

审核编辑:郭婷

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

    关注

    354

    文章

    1853

    浏览量

    237229

原文标题:从统一视角看各类高效finetune方法

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

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    系统视角选时钟:张“应用分层地图”讲清 TCXO / OCXO / SAW 的正确打开方式

    ,强调相位噪声、抖动、老化与 Holdover 的关键性,并提出“天线到主时钟”的预算联动方法,适用于 GNSS 授时、卫星通信、电信同步及相干系统的架构规划与器件
    的头像 发表于 12-08 15:03 2008次阅读
    <b class='flag-5'>从</b>系统<b class='flag-5'>视角</b>选时钟:<b class='flag-5'>一</b>张“应用分层地图”讲清 TCXO / OCXO / SAW 的正确打开方式

    请问芯源的时钟检测系统一般怎么实现的?

    芯源的时钟检测系统一般怎么实现的?
    发表于 12-01 08:25

    汽车800V高压储能电池管理系统设计框架

    整 个生命周期内高效、健康地使用。 BMS 采用主从式结构,主控盒可以独立使用,也可 以搭配多个 24S、36S、48S、60S 的 BMU 主多架构使用。 最多可扩展应用到 300 串的动力电池
    发表于 08-20 16:39

    开发工程师视角TTS语音合成芯片

    开发工程师视角TTS语音合成芯片 在语音交互领域,TTS 语音合成芯片作为关键角色,正不断革新着人机对话的体验。开发工程师角度深入剖析,TTS 语音合成芯片与传统播报芯片相比,犹
    的头像 发表于 08-13 14:52 648次阅读

    信捷电气Motion-API重构工业控制形态框架

    在工业自动化领域,“高效” “灵活” “稳定” 始终是核心追求。而Motion-API作为信捷电气推出的集成化解决方案,正以 “硬实力+软创新” 的双重优势,重新定义工业控制的边界。框架设计到硬件配置,
    的头像 发表于 08-07 16:22 697次阅读
    信捷电气Motion-API重构工业控制形态<b class='flag-5'>框架</b>

    工业相机多视角成像 高效解决瓶体检测难题

    广角式侧面多视角成像系统通过成像和照明体式设计,解决了多相机布局复杂、反光干扰及异形瓶检测适应性差等痛点。
    的头像 发表于 07-17 15:16 592次阅读
    工业相机多<b class='flag-5'>视角</b>成像 <b class='flag-5'>高效</b>解决瓶体检测难题

    RDMA over RoCE V2设计2:ip 整体框架设计考虑

    )多队列并行管理及控制。支持系统运行过程中进行创建队列、删除队列、队列更改等操作。 6)DMA 传输。通过配置 DMA 寄存器实现直接的数据传输请求,同时使用突发传输来提高数据传输性能。 系统框架
    发表于 07-16 08:51

    Hyperabrupt Junction Tuning 变容二极管芯片 skyworksinc

    电子发烧友网为你提供()Hyperabrupt Junction Tuning 变容二极管芯片相关产品参数、数据手册,更有Hyperabrupt Junction Tuning 变容二极管芯片的引脚
    发表于 07-11 18:31
    Hyperabrupt Junction <b class='flag-5'>Tuning</b> 变容二极管芯片 skyworksinc

    Hyperabrupt Junction Tuning 变容二极管 skyworksinc

    电子发烧友网为你提供()Hyperabrupt Junction Tuning 变容二极管相关产品参数、数据手册,更有Hyperabrupt Junction Tuning 变容二极管的引脚图
    发表于 07-10 18:32
    Hyperabrupt Junction <b class='flag-5'>Tuning</b> 变容二极管 skyworksinc

    Hyperabrupt Junction Tuning Varactor skyworksinc

    电子发烧友网为你提供()Hyperabrupt Junction Tuning Varactor相关产品参数、数据手册,更有Hyperabrupt Junction Tuning Varactor
    发表于 07-09 18:34
    Hyperabrupt Junction <b class='flag-5'>Tuning</b> Varactor skyworksinc

    开源鸿蒙统一互联分论坛圆满举办

    万物互联时代到来,物联网设备数量及设备连接数高速增长,如何实现高效、稳定的设备间通信,成为行业重要的研究方向。作为开源操作系统,开源鸿蒙带来了全新的技术架构和解决方案,其统一互联的技术底座为设备间的无缝协作提供了更
    的头像 发表于 06-05 15:33 835次阅读

    百度飞桨框架3.0正式版发布

    、推理等任务都离不开深度学习框架的优化与支撑。 飞桨框架3.0,设计理念上实现底层硬件适配到顶层开发体验的全面进化,在训练效率、性能、
    的头像 发表于 04-02 19:03 1043次阅读
    百度飞桨<b class='flag-5'>框架</b>3.0正式版发布

    基于事件相机的统一帧插值与自适应去模糊框架(REFID)

    )的解决方案。团队提出了种基于事件相机的统一帧插值与自适应去模糊框架(REFID)。该框架基于双向递归网络,结合事件流和图像信息,自适应地融合来自不同时间点的信息,从而能够在模糊的输
    的头像 发表于 03-14 11:48 1289次阅读
    基于事件相机的<b class='flag-5'>统一</b>帧插值与自适应去模糊<b class='flag-5'>框架</b>(REFID)

    探索 RK3576 方案:卓越性能与灵活框架,诚邀开发定制合作!

    组合分辨率的视频显示,配合多种图像处理算法,可提供极为清晰的视觉体验,提升了监控的灵活性和便捷性,满足不同用户对于多画面监控展示的需求2。RK3576 框架优势RK3576 的框架设计灵活且高效,为
    发表于 02-05 15:21

    详解框架设

    后台程序(控制中心),是程序的核心。它实现各类RPC接口(远程调用接口),供前台程序、MQTT程序使用。
    的头像 发表于 01-09 16:48 1061次阅读
    详解<b class='flag-5'>框架设</b>计