<论文>通过解耦注意力来增强Bert

embedded/2024/12/28 6:48:02/

一、摘要

        本文介绍的是来自微软团队的论文《DeBERTa: Decoding-enhanced BERT with Disentangled Attention》,翻译过来是“使用解耦注意力机制的解码增强型Bert”,看词就知道又是一篇炼丹大作。5994fd599c5549e6bea028ecc2e1c0e7.png

译文:

        预训练神经语言模型的最新进展显著提高了许多自然语言处理(NLP)任务的性能。在本文中,我们提出了一种新的模型架构 DeBERTa(具有解耦注意力的解码增强型 BERT),它使用两种新技术改进了 BERT 和 RoBERTa 模型。第一种是解耦注意力机制,其中每个单词分别用两个向量表示其内容和位置,单词之间的注意力权重分别使用基于其内容和相对位置的解耦矩阵计算。其次,使用增强的掩码解码器在解码层中合并绝对位置,以在模型预训练中预测被掩码的标记。此外,一种新的虚拟对抗训练方法用于微调,以提高模型的泛化能力。我们表明,这些技术显著提高了模型预训练的效率以及自然语言理解(NLU)和自然语言生成(NLG)下游任务的性能。与 RoBERTa - Large 相比,在一半训练数据上训练的 DeBERTa 模型在广泛的 NLP 任务上始终表现更好,在 MNLI 上提高了 +0.9%(90.2% 对 91.1%),在 SQuAD v2.0 上提高了 +2.3%(88.4% 对 90.7%),在 RACE 上提高了 +3.6%(83.2% 对 86.8%)。值得注意的是,我们通过训练一个由 48 个 Transformer 层和 15 亿参数组成的更大版本来扩展 DeBERTa。显著的性能提升使得单个 DeBERTa 模型在 SuperGLUE 基准测试中的宏平均得分方面首次超过人类表现(89.9 对 89.8),并且截至 2021 年 1 月 6 日,集成的 DeBERTa 模型在 SuperGLUE 排行榜上名列前茅,远远超过人类基线(90.3 对 89.8)。

二、核心创新点

1、解耦注意力机制

        对于序列中处于位置 i 的一个Token,作者选择使用两个向量来表示这个Token,分别是代表内容的向量eq?%5Cleft%20%5C%7B%20H_%7Bi%7D%20%5Cright%20%5C%7D和代表当前Token和处于位置 j 的Token之间相对位置的向量eq?%5Cleft%20%5C%7B%20P_%7Bi%7Cj%7D%20%5Cright%20%5C%7D。这样一来,可以通过四个部分来表示第 i 个Token和第 j 个Token之间的交叉注意力分数:

eq?A_%7Bi%2Cj%7D%20%3D%20%5Cleft%20%5C%7B%20H_%7Bi%7D%2CP_%7Bi%7Cj%7D%20%5Cright%20%5C%7D%20%5Ctimes%20%5Cleft%20%5C%7B%20H_%7Bj%7D%2CP_%7Bj%7Ci%7D%20%5Cright%20%5C%7D%5E%7BT%7D%20%3D%20H_%7Bi%7DH_%7Bj%7D%5E%7BT%7D%20+%20H_%7Bi%7DP_%7Bj%7Ci%7D%5E%7BT%7D%20+%20P_%7Bi%7Cj%7DH_%7Bj%7D%5E%7BT%7D%20+%20P_%7Bi%7Cj%7DP_%7Bj%7Ci%7D%5E%7BT%7D

        也就是说,一对词对的注意力权重可以通过对其内容和位置使用解耦矩阵计算为四个注意力分数的总和,分别是内容对内容eq?H_%7Bi%7DH_%7Bj%7D%5E%7BT%7D、内容对位置eq?H_%7Bi%7DP_%7Bj%7Ci%7D%5E%7BT%7D、位置对内容eq?P_%7Bi%7Cj%7DH_%7Bj%7D%5E%7BT%7D、位置对位置eq?P_%7Bi%7Cj%7DP_%7Bj%7Ci%7D%5E%7BT%7D。在实际的实现中,作者评估了个注意力分数并最终去除了位置对位置项。这样的分解能够包含更多的建模信息,从而实现更全面地考虑单词间的依赖关系,提高模型性能。

87200b224de74c74bb7589ed696ebc94.png

2、增强的掩码解码器(EMD)

        Deberta使用MLM进行的预训练,而解耦注意力机制在这个过程中已经考虑了上下文单词的内容和相对位置,作者还认为绝对位置对于模型训练也至关重要,因此需要考虑绝对位置信息的学习并举了一个例子:

        给定一个句子“a new store opened beside the new mall”,其中“store”和“mall”被Mask掉。仅使用局部上下文对于模型来说不足以在这个句子中区分“store”和“mall”,这是因为两者都在“new”这个词后面,具有相同的相对位置。为了解决这个问题,作者认为模型需要考虑绝对位置,例如,句子的主语是“store”而不是“mall”。

        这里作者的设计是 DeBERTa 在所有 Transformer 层之后、最后一层softmax 层之前引入绝对位置信息来预测被Mask掉的词,并称之为Enhanced Mask Decoder(EMD)。实验表明,这种方式能更好地捕捉相对位置信息,并在解码时利用绝对位置作为补充信息,从而提高模型在下游任务中的表现。

3、虚拟对抗训练方法(SiFT)

        在模型微调的过程中,作者还引入了一种虚拟对抗训练的方法——尺度不变微调(Scale-invariant-Fine-Tuning,SiFT),它通过提高模型对对抗样本的鲁棒性来提高模型的泛化能力。其中,对抗样本是通过对输入进行微小的扰动来创建的。

        另外,作者认为在NLP任务中,扰动应该应用于Word Embedding而不是原始的输入文本序列。具体来说,当将Deberta微调至下游的NLP任务时,SiFT首先将词嵌入向量归一化为随机向量,然后对归一化的嵌入向量应用扰动,这样可以避免不同单词和模型的词向量值范围(范数)不同所导致的对抗训练不稳定问题。

4、模型扩展与性能提升

        同样地,这篇论文也免不了堆参数和对数据。DeBERTa 模型的参数量达到了15亿,模型足足有48层。模型在 SuperGLUE 基准测试中取得了优异成绩,单模型首次在宏平均得分上超过人类表现。另外,相比同时期或者更早发布的其他参数更多的模型(如 110 亿参数的 T5),DeBERTa 在训练和维护上更节能高效,也更易于压缩和部署(毕竟参数量比上不足比下有余)。

50926d2af55f47a0b383bb144a4366ab.png

 

 

 


http://www.ppmy.cn/embedded/149387.html

相关文章

全国硕士研究生入学考试(考研)择校择专业之择专业主要因素

全国硕士研究生入学考试(考研)择校择专业之择专业主要因素 在中国,研究生入学考试(考研)不仅涉及选择合适的院校,更关键的是选择适合自身发展的专业。择专业的决策直接影响着未来的学术深造和职业发展。因…

AEO海关认证的注意事项

AEO海关认证的注意事项繁多且至关重要,企业需细致准备,确保万无一失。 首先,企业需深入研读相关政策文件,如《中华人民共和国海关注册登记和备案企业信用管理办法》及《海关高级认证企业标准》,以政策为指引&#xff0…

条件语句 - if, else, switch-case

引言 条件语句是编程中用于根据不同的条件执行不同代码块的重要工具。C 提供了 if、else 和 switch-case 等条件语句,帮助程序员实现逻辑分支。本文将详细介绍这些条件语句的用法,并通过实例帮助读者更好地理解和掌握这些概念。 一、if 语句 if 语句是…

VLP-16 安装全流程

一 、驱动安装 1.安装ROS依赖 sudo apt install ros-noetic-velodyne 2.安装VLP驱动 mkdir -p catkin_velodyne/src cd catkin_velodyne/src git clone https://github.com/ros-drivers/velodyne.git 这里因为ros2问世很久了,所以它的master其实是ros2版&#…

vue的动画引擎@vueuse/motion

在vue开发中,动画可以提升用户体验,这时候有一个强大的动画库,现在让我们来使用它吧 官网地址 vueuse/motionhttps://motion.vueuse.org/getting-started/introduction 1.第一步下载依赖 npm install vueuse/motion 2.第二步全局安装 i…

LabVIEW生物医学信号虚拟实验平台

介绍了一款基于LabVIEW的多功能生物医学信号处理实验平台的设计和实现。平台通过实践活动加强学生对理论的理解和应用能力,特别是在心电图(ECG)和脑电图(EEG)的信号处理方面。实验平台包括信号的滤波、特征提取和频谱分析等功能,能直观体验和掌握生物医学…

R语言的数据类型

标题:《探索R语言数据类型的奥秘》 引言: 在统计学和数据分析的世界里,R语言无疑是一颗璀璨的明星。它以其强大的数据处理能力和丰富的图形展示功能而受到广泛欢迎。然而,要熟练掌握并高效使用R语言,深入了解其数据类…

excel导入,使用注解对字段进行逻辑判断(字段是否为空,数据结构等)条件

1.创建一个工具类 package com.yj.utils;import cn.hutool.core.io.FileUtil; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.ExcelWriter; import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.write.metadata.WriteSheet; impor…