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

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

3天内不再提示

领域迁移一种简单而有效的方法Alter

深度学习自然语言处理 来源:哈工大SCIR 作者:朱海潮 2022-04-07 09:31 次阅读

1. 介绍

机器阅读理解旨在根据给定上下文来回答相关问题,近年来在工业界与学术界均得到了广泛的关注,目前最先进的系统都是基于预训练模型构建的。即便如此,仍然需要大量标注数据才能达到比较理想的结果,对于一些缺乏大规模有标注数据领域和场景,现有模型的迁移效果往往并不令人满意。相关工作[1,2]探索利用无标注的目标领域文本进行领域迁移,但这种方法无法使模型对目标领域的问题进行有效建模。在本文中,我们利用少量的标注数据,通过对在大规模有标注领域上训练过的模型进行迁移,来提高在目标领域上的表现。另一方面,基于Transformer的预训练模型通常包含至少上亿个参数,如BERT Base的大小为110M。鉴于目标领域只有少量的标注数据,调整全部参数以适应目标领域非常困难,而且也是不必要的。另外,有研究[6]表明大规模稠密的神经网络模型有过参数化(over-parameterized)的趋势。我们探索只利用一小部分参数进行领域迁移,这些参数对应原稠密神经网络模型中的一个稀疏子网络。此外,我们还引入对自注意力模块的分析,来找到更具迁移性的稀疏子网络。最后,我们在多个目标领域上进行了实验,取得超过多种基线方法的效果,我们还对提出的方法进行了仔细的分析。

f28744a0-b60b-11ec-aa7f-dac502259ad0.png

图1. 基于稀疏子网络的领域迁移方法

2. 背景

2.1 Transformer架构

如图2所示,Transformer模型一般由输入嵌入层、输出层和若干结构相同的Transformer层堆叠组成。更具体地,每层由一个多头自注意力模块和前馈模块组成,共包含6个参数矩阵。

f29ce2c4-b60b-11ec-aa7f-dac502259ad0.png

图2. Transformer模型

2.2 自注意力分析

有许多工作[3,4]尝试分析解释Transformer模型的行为,最近,Hao[5]等人提出一种新的分析方法AttAttr可以估计每个自注意力头对模型输出的贡献。本文采用此方法对在不同阅读理解领域数据集上微调过的BERT模型进行分析,如图3所示,我们发现重要的注意力头在不同的领域上呈强正相关分布,即在一个领域上重要的自注意力头,也极有可能在其它领域上也非常重要。基于这一发现,我们提出了本文的面向阅读理解任务的少样本领域迁移方法。

f2b2e966-b60b-11ec-aa7f-dac502259ad0.png

图3. (a)在SQuADv1.1上的自注意力头重要性分布。(b)-(d)不同领域上的自注意力头相关性分析。每个点对应同一个自注意力头在两个对应的领域上的重要性。

3. 方法

我们在大规模标注数据的源领域上训练过的Transformer模型迁移到只有少量标注数据的目标领域上。在迁移时,我们通过减枝来识别只包含少量参数的稀疏子网络,并只对子网络的参数进行更新来适应目标领域,在寻找子网络时,通过引入自注意力归因,来同时考虑参数的结构化与非结构化的重要性。

3.1 子网络识别

Magnitude Pruning是一种简单有效的非结构化减枝方法,这个方法根据参数的绝对值大小进行减值。我们以该方法为基础,通过迭代的方式分若干步来逐渐删减参数到目标数量,并且每次删减部分参数后,都会对网络进行一定步数的训练,恢复模型在源领域上的效果,然后再进行下一步的参数删减。在本文中,我们只对每层Transformer层中的6个参数矩阵进行删减,其余的参数矩阵和偏置完全保留。

此外,在进行参数的重要性比较以选择要删减的参数时,通常有两种策略,一种是所有参数一起进行全局比较,另一种是只在参数矩阵内部进行局部比较。在我们对参数矩阵的分析中发现,不同的参数矩阵的绝对值均值分布有较大的差异,若采用全局减枝,最后的结果会很大程度上被均值差异影响,而局部比较则最后所有参数矩阵具有相同的稀疏度,并且忽略了参数矩阵本身的所在模块的重要性。所以,我们提出一种分组比较策略,根据不同参数矩阵的均值进行分组,在组内进行全局比较,具体地,将均值相当的参数矩阵分为一组,最后划分为三组。

根据之前对阅读理解任务的自注意力分析发现,Transformer中的不同自注意力头对于模型最后的预测并不是同等重要的,并且重要性的分布在不同的领域上高度正相关。所以,我们引入自注意力归因来补充Magnitude Pruning,以期得到能够更好的迁移到目标领域的子网络。具体地,在进行每一步减枝时,我们先估计出当前模型中不同注意力的重要性得分并进行归一化,以此作为对参数绝对值进行缩放,需要注意的是,同一个注意力头中的参数矩阵共享同一个重要性得分。此外,还通过超参数来控制归因得分对最后参数重要性的影响。总体来说,通过这种方式,我们同时考虑到了参数的非结构化与结构化重要性,整体算法如图4所示。

f2d9b8ca-b60b-11ec-aa7f-dac502259ad0.png

图4. 稀疏子网络识别算法

3.2 子网络迁移

通过上述步骤后,最后剩下的参数即为找到的子网络的结构,在进行领域适应时,我们保留得到的结构,但将参数回滚到减枝前,即源领域模型上的状态,在后续的参数更新时只更新子网络对应的参数,其余参数不进行梯度更新。但需要注意的是,所有的参数均参与前向计算过程。

4. 实验及分析

4.1 数据集

在我们的实验中,以SQuAD为源领域数据集,通过对五个目标领域数据集采样来模拟少样本领域迁移的场景,具体的领域数据集信息如表1所示。

表1. 数据集特征及统计信息

f31fc306-b60b-11ec-aa7f-dac502259ad0.png

4.2 基线方法

Zero-Shot 不进行迁移,直接在目标领域上进行预测。

Fine-tuning 微调源领域模型的全部参数进行领域适应。

EWC(Elastic Weight Consolidation) 一种正则化算法,使得参数在更新时不至大幅偏离原始参数。

Layer Freeze 只调整Tranformer模型接近输出层的若干层的参数,其余参数则保持不动。

Adapter 保持源领域模型的参数不动,通过添加并调整额外的adapter模块来进行领域适应。

4.3 实验结果与分析

如表2所示,当使用1024条目标领域标注数据,并将用于领域迁移的参数数量限定在21M时,本文提出的Alter在4个目标领域上取得了超过基线方法的效果。其中,我们的方法和Layer Freeze还有Adapter调整数量相当的参数量来进行领域适应。在NQ数据集上,当使用42M参数时,我们的方法与Fine-tuning表现相当。进一步地,当不对参数数量进行限制时的实验结果如图5-8所示,除NQ外我们的方法也均取得了超过基线方法的效果,并且通常只需要完整模型的20%-30%的参数即可。

表2. 使用1024条目标领域标注数据时的EM与F1得分

f3391a86-b60b-11ec-aa7f-dac502259ad0.png

f3530f9a-b60b-11ec-aa7f-dac502259ad0.png

图5. NewsQA实验结果

f36ce8c0-b60b-11ec-aa7f-dac502259ad0.png

图6. TriviaQA实验结果

f38a0284-b60b-11ec-aa7f-dac502259ad0.png

图7. TweetQA实验结果

f3ad3b96-b60b-11ec-aa7f-dac502259ad0.png

图8. NQ实验结果

图9展示了引入自注意力头来帮助寻找稀疏子网络的结果,通过对比可以发现,在使用不同数量的目标领域标注数据及不同规模的参数进行领域迁移时,自注意力头均能够帮助找到迁移效果更好的子网络。

f3ca33d6-b60b-11ec-aa7f-dac502259ad0.png

图9. 引入自注意力归因与否的领域迁移结果

为了探究不同的子网络识别方法得到的结构对迁移效果的影响,我们进行尝试了以下四种候选方法:

Random 随机选取目标数量的参数

Magnitude 只根据参数的绝对值大小进行选择

Salvage 采用与本文提出的相同的流程,但采用相反的策略选择参数,即使用原本被减掉的参数进行迁移

AttrHead 采用结构化减枝的方式得到,将若干自注意力头的参数整体剪掉,对于前馈层的参数则仍采用非结构化的方式减枝

实验结果如表3所示,使用不同方法得到的子网络大小一致,不同的方法的效果差别并不明显,但均超过了调整全部参数的方法。对比Salvage和Alter,我们发现使用对模型输出影响更大的参数的效果更好。通过与AttrHead方法进行比较,我们可以发现,重要性得分较低的自注意力头中绝对值较大的参数对领域迁移也有用。

表3. 不同子网络识别方法的领域迁移结果

f3e6d00e-b60b-11ec-aa7f-dac502259ad0.png

5. 结论

在本文中,我们针对少样本阅读理解领域迁移提出了一种简单而有效的方法Alter,该方法只使用过参数化的源领域模型中的一部分参数进行目标领域迁移,我们还引入了自注意力归因来识别子网络以取得更好的迁移效果,通过进一步探索不同的子网络识别方法,发现除了使用更少的参数以外,子网络的结构也非常重要。

审核编辑 :李倩

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

    关注

    4

    文章

    1205

    浏览量

    24641
  • Transformer
    +关注

    关注

    0

    文章

    141

    浏览量

    5981

原文标题:6. 参考文献

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

收藏 人收藏

    评论

    相关推荐

    一种简单高效配置FPGA的方法

    本文描述了一种简单高效配置FPGA的方法,该方法利用微处理器从串行外围接口(SPI)闪存配置FPGA设备。这种方法减少了硬件组件、板空间和成
    的头像 发表于 10-24 14:57 370次阅读
    <b class='flag-5'>一种</b><b class='flag-5'>简单</b>高效配置FPGA的<b class='flag-5'>方法</b>

    一种利用wireshark对远程服务器/路由器网络抓包方法

    一种利用wireshark对远程服务器/路由器网络抓包方法
    的头像 发表于 09-21 08:03 1984次阅读
    <b class='flag-5'>一种</b>利用wireshark对远程服务器/路由器网络抓包<b class='flag-5'>方法</b>

    一种无透镜成像的新方法

    使用OAM-HHG EUV光束对高度周期性结构进行成像的EUV聚光显微镜 为了研究微电子或光子元件中的纳米级图案,一种基于无透镜成像的新方法可以实现近乎完美的高分辨率显微镜。 层析成像是一种强大的无
    的头像 发表于 07-19 06:20 320次阅读
    <b class='flag-5'>一种</b>无透镜成像的新<b class='flag-5'>方法</b>

    rup是一种什么模型

    RUP(Rational Unified Process,统建模语言)是一种软件开发过程模型,它是一种迭代和增量的软件开发方法。RUP是由Rational Software公司(现为
    的头像 发表于 07-09 10:13 1148次阅读

    迁移学习的基本概念和实现方法

    迁移学习(Transfer Learning)是机器学习领域中的个重要概念,其核心思想是利用在个任务或领域中学到的知识来加速或改进另
    的头像 发表于 07-04 17:30 1341次阅读

    伺服电机最简单控制方法是什么

    伺服电机是一种高精度、高响应速度的电机,广泛应用于工业自动化、机器人、航空航天等领域。伺服电机的控制方法有很多种,这里我们将介绍一种简单
    的头像 发表于 06-05 15:49 677次阅读

    一种简单的降压式开关稳压器LM2575数据表

    电子发烧友网站提供《一种简单的降压式开关稳压器LM2575数据表.pdf》资料免费下载
    发表于 04-23 11:23 0次下载
    <b class='flag-5'>一种</b><b class='flag-5'>简单</b>的降压式开关稳压器LM2575数据表

    江西萨瑞微独家研发【一种LDMOS场效应管及其制备方法

    一种LDMOS场效应管及其制备方法本发明涉及半导体器件设计领域,具体涉及一种LDMOS场效应管及其制备方法。在当前半导体行业竞争日趋激烈的背
    的头像 发表于 04-13 08:38 384次阅读
    江西萨瑞微独家研发【<b class='flag-5'>一种</b>LDMOS场效应管及其制备<b class='flag-5'>方法</b>】

    一种隔绝银迁移的超长寿命轻触开关

    一种隔绝银迁移的轻触开关
    的头像 发表于 04-09 14:40 316次阅读

    简单而有效的晶体管/二极管测试电路

    晶体管和二极管是电子产品的基本组件,在许多电路设计中发挥着重要作用。在将这些有源元件集成到电路中时,确保它们正常工作至关重要。因此,必须有一种可靠的方法来测试晶体管和二极管。
    的头像 发表于 02-25 15:21 650次阅读
    <b class='flag-5'>一</b>个<b class='flag-5'>简单</b><b class='flag-5'>而有效</b>的晶体管/二极管测试电路

    一种简单易行的可编程振荡器构建方法

    本文介绍一种简单易行的可编程振荡器构建方法,其中振荡频率和幅度可以通过使用digiPOT来彼此独立地调节。
    发表于 01-15 10:05 221次阅读
    <b class='flag-5'>一种</b><b class='flag-5'>简单</b>易行的可编程振荡器构建<b class='flag-5'>方法</b>

    一种锂电池内水去除工艺方法

    一种锂电池内水去除工艺方法
    的头像 发表于 01-04 10:23 460次阅读
    <b class='flag-5'>一种</b>锂电池内水去除工艺<b class='flag-5'>方法</b>

    一种产生激光脉冲新方法

    等离子体中脉冲压缩的概念 英国和韩国的科学家提出了一种产生激光脉冲的新方法,其功率是现有激光脉冲的1000多倍。 科学家们使用计算机模拟联合研究,展示了一种压缩光的新方法,以充分提高光
    的头像 发表于 12-07 06:32 466次阅读
    <b class='flag-5'>一种</b>产生激光脉冲新<b class='flag-5'>方法</b>

    还在为数据库迁移烦恼?五高效方案帮你解决!

    数据库迁移是许多企业在数字化转型过程中不可避免的任务。然而,面对市面上众多的数据库迁移工具,我们可能会陷入纠结。今天,我将介绍五常见的数据库迁移
    的头像 发表于 12-06 17:05 4555次阅读
    还在为数据库<b class='flag-5'>迁移</b>烦恼?五<b class='flag-5'>种</b>高效方案帮你解决!

    一种大功率PCB散热管理的方法

    一种大功率PCB散热管理的方法
    的头像 发表于 12-05 14:28 563次阅读
    <b class='flag-5'>一种</b>大功率PCB散热管理的<b class='flag-5'>方法</b>