深入理解深度学习——BERT派生模型:SpanBERT(Improving Pre-training by Representing and Predicting Spans)
分类目录:《深入理解深度学习》总目录
MLM训练方法是BERT拥有自然语言理解能力的核心训练方法。然而,BERT在预训练过程中挑选掩码词的概率是独立计算的,即BERT掩码词的粒度是最小的,可能是单个词,也可能是一个词的部分子词。SpanBERT的核心思想是,扩大掩码范围会让模型有更好的性能。具体而言,SpanBERT的主要改进如下:
- 提出了Span Mask方案,扩大掩码词的粒度,即不再对单个词(子词)做掩码操作,而是对局部多个连续词做掩码操作。
- 将Span Boundary Objective(SBO)作为训练方法,利用掩码词附近的词信息,预测某个掩码词的内容,加强了局部上下文的信息利用,以此增强BERT在语义理解上的性能。
- 舍弃NSP训练方法,以获得更好的长文本语义理解能力。
SpanBERT没有修改BERT的结构,也没有使用更多的语料,仅仅通过设计更合理的预训练任务和目标,使模型有更好的性能表现,思路非常独特。
算法细节
掩码词的选择
相比于BERT随机挑选15%的词做掩码操作,SpanBERT在实施多个词的掩码操作时设计得更为精细。实施多词掩码操作的关键有二:
- 连续掩码词的个数。
- 连续掩码词的起点。
SpanBERT利用几何分布来决定连续掩码词的个数,计算公式如下:
I = Geo ( p ) I=\text{Geo}(p) I=Geo(p)
其中, Geo \text{Geo} Geo为几何分布采样函数, p p p为几何分布超参数,取值为0.2, l l l为连续掩码词的个数,限定在 [ 1 , 10 ] [1, 10] [1,10]。几何分布采样的概率分布如下图所示。 l l l取值为 k k k的概率计算公式如下:
P ( I = k ) = p ( 1 − p ) k − 1 ( 1 − p ) 10 P(I=k)=\frac{p(1-p)^{k-1}}{(1-p)^{10}} P(I=k)=(1−p)10p(1−p)k−1
几何分布采样决定了连续掩码词的个数。值得注意的是,掩码词的个数计算的是完整词的个数,并非子词的个数(通过分词工具,一些非常见词会被分割成若干子词),而掩码词的起点是随机选取的,唯一的要求是掩码词的起点必须是一个独立的词,或者是被分为若干子词的第一个子词(即掩码必须覆盖完整的词,以确保语义连贯性)。
SBO训练目标
除了以BERT原有的预测掩码词的交叉熵作为训练目标,对连续掩码词引入掩码边界词作为辅助训练目标,可以让模型具有更好的性能。具体而言,在训练时,取掩码词前后边界的两个词,且这两个词并不在掩码范围内,通过这两个词提取得到的特征向量,与掩码词的位置编码向量联合预测最终的词,即SBO训练方法。
如下图所示, x 5 , x 6 , x 7 , x 8 x_5, x_6, x_7, x_8 x5,x6,x7,x8是掩码词对应的特征向量,以预测向量 x 7 x_7 x7对应的词为例,该词被正确预测为“football”的概率为:
L ( football ) = L MLM ( football ) + L SBO ( football ) = − log P ( football ∣ x 7 ) − log P ( football ∣ x 5 , x 9 , p 3 ) \begin{aligned} L(\text{football}) &= L_\text{MLM}(\text{football})+L_\text{SBO}(\text{football}) \\ &= -\log P(\text{football}|x_7) - \log P(\text{football}|x_5, x_9, p_3) \end{aligned} L(football)=LMLM(football)+LSBO(football)=−logP(football∣x7)−logP(football∣x5,x9,p3)
其中, L MLM L_\text{MLM} LMLM的计算方法与BERT的MLM计算方法一致, L SBO L_\text{SBO} LSBO则是通过两层全连接网络计算得到的, p 3 p_3 p3表示待预测词在掩码词中的位置编码。
综上所述,SpanBERT的主要改进点在于优化了掩码策略,引入SBO训练方法。在绝大部分下游任务中,SpanBERT的表现均优于BERT。它在抽取式问答任务上的表现尤其优异,证明改进后的掩码策略和训练模式与此类任务强相关。
参考文献:
[1] Lecun Y, Bengio Y, Hinton G. Deep learning[J]. Nature, 2015
[2] Aston Zhang, Zack C. Lipton, Mu Li, Alex J. Smola. Dive Into Deep Learning[J]. arXiv preprint arXiv:2106.11342, 2021.
[3] 车万翔, 崔一鸣, 郭江. 自然语言处理:基于预训练模型的方法[M]. 电子工业出版社, 2021.
[4] 邵浩, 刘一烽. 预训练语言模型[M]. 电子工业出版社, 2021.
[5] 何晗. 自然语言处理入门[M]. 人民邮电出版社, 2019
[6] Sudharsan Ravichandiran. BERT基础教程:Transformer大模型实战[M]. 人民邮电出版社, 2023
[7] 吴茂贵, 王红星. 深入浅出Embedding:原理解析与应用实战[M]. 机械工业出版社, 2021.
深入理解深度学习——BERT派生模型:SpanBERT(Improving Pre-training by Representing and Predicting Spans)相关推荐
- 深入理解深度学习——BERT派生模型:XLM(Cross-lingual Language Model)
分类目录:<深入理解深度学习>总目录 BERT本应在语义理解上具有绝对优势,但其训练语料均为英语单语,受限于此,早期的BERT只在英语文本理解上有优势.随着全球化进程的加速,跨语言的预训练 ...
- 深入理解深度学习——BERT派生模型:BART(Bidirectional and Auto-Regressive Transformers)
分类目录:<深入理解深度学习>总目录 UniLM和XLNet都尝试在一定程度上融合BERT的双向编码思想,以及GPT的单向编码思想,同时兼具自编码的语义理解能力和自回归的文本生成能力.由脸 ...
- 线性Frequency Principle动力学:定量理解深度学习的一种有效模型
关于作者:本文的作者是来自上海交通大学致远学院 08 级理科班的四位研究人员.本文由许志钦执笔,张耀宇修改,罗涛和马征审阅校正.这个小组的研究兴趣主要是深度学习理论. 深度学习的广泛成功吸引了大量的科 ...
- 理解深度学习.PDF、国外AIGC各模态产品梳理.pdf、构建企业级的私有大模型.pdf
点击上方"Python与机器智能",选择"星标"公众号 第一时间获取价值内容 一.一本理解深度学习硬核书籍,下面是这本书的目录 Table of content ...
- 深入理解深度学习——Word Embedding(三):Skip-Gram模型
分类目录:<深入理解深度学习>总目录 相关文章: · Word Embedding(一):word2vec · Word Embedding(二):连续词袋模型(CBOW, The Con ...
- 深入理解深度学习——语境词嵌入(Contextual Word Embedding)
分类目录:<深入理解深度学习>总目录 前文介绍了因word2vec而流行的Word Embedding,这种表示方法比离散的独热编码要好很多,因为它不仅降低了维度,还可以反映出语义空间中的 ...
- 深度学习基础-经典模型总结
深度学习经典模型总结 卷积神经网络 介绍下转置卷积 循环神经网络 介绍下RNN 介绍下LSTM 一个LSTM cell的时间复杂度是多少 介绍下GRU RNN和LSTM的区别 注意力模型 介绍下Att ...
- 大白话聊聊“深度学习”和“大模型”
1950年图灵发表论文<计算机器与智能>( Computing Machinery and Intelligence),提出了"机器智能"(Machine Intell ...
- 深入理解深度学习——预训练模型
分类目录:<深入理解深度学习>总目录 近些年基于深度学习的NLP技术的重大进展主要包括NNLM(2003).Word Embedding(2013).Seq2Seq(2014).Atten ...
最新文章
- K近邻算法:以同类相吸解决分类问题!
- (仿头条APP项目)7.首页标签页完善和微头条页面设计实现
- linux oracle12c dbca,Linux下Oracle 12c R2图形化安装笔记
- 论接单报价管理与ERP信息化管理的重要性
- 改变世界,改善生活:我从科沃斯扫地机器人X1,看到了AI新的希望
- MongoDB工具介绍
- Memcached、MongoDB、Redis和tokyotyrant
- python37从零开始学_从零开始学Python【37】--朴素贝叶斯模型(理论部分)
- App引导页学习进阶临摹模板|UI界面设计步骤
- Spring源码之创建AOP代理
- 车型代号对照表_上海大众车型与VIN代号对照表
- pr怎么导出html格式的字幕,PR字幕怎么导出,导出只有视频。急急
- markdown编辑器Typora的使用方法(保姆级教程)
- cewl工具(URL字典生成器)
- 李嘉诚语录:成功没有必然方程式
- xftp无法取消被动模式
- 西瓜视频直播助手下载与安装过程 0523
- SQL中DATEADD和DATEDIFF的使用方法
- 传感器的应用/SurfaceView/制作简单的指南针
- vivos9设置定时开关机方法分享
热门文章
- 快要C语言考试了,大学生们收好这些经典程序案例,包你考试过关!
- 日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个嫌疑犯的一个。以下为4个嫌疑犯的供词。 A说:不是我。 B说:是C。 C说:是D。 D说:C在胡说 已知3个人说了真话,1个人说的是假话。 现
- unity2d 投影_unity2D解决阴影透明度叠加的问题
- 大部分中产阶级都只是靠工资过中产,如何增加睡后收入?
- Unity 事件系统
- vue- style行内样式
- 在mapbox 中使用特殊符号作为文字注记使用
- Linux之mysql安装及初始登录
- K1 Power Linux上Stream测试内存带宽
- Discuz如何删除内部插件