ALBERT论文笔记

1. 论文研读笔记

1.1 研究动机

Bert系列近期又一篇值得去看的论文,相比于RoBerta对于调参的偏向,Albert出发点其实是模型的压缩,即减少模型参数的同时,尽可能保证Bert模型对于下游任务的性能。减小模型参数的好处文章给出了明晰的归纳:1)降低显存压力 2)提高训练速度 3)增加模型泛化能力(类比正则) 。 其实,从文章的实验思路,还有一条非常很强烈的动机,即如何把bert模型做的更深更宽,因为硬件和算力的限制,所以压缩现有模型的参数,是一个必要的步骤。

1.2 研究方法

Albert对于bert的改进,可以归纳为两个参数减少方法和两个模型优化调整。下面一一进行介绍:

参数减少方法一 Embedding矩阵分解 (Factorized embedding parameterization)

作者认为词向量用的维度太高,而且之前的配置一般词向量的维度和模型层大小相同。这一点其实无可厚非。作者这里其实就是把原来的词向量矩阵,映射成一个较小维度的矩阵,再通过网络做一个线性提升,这样其实就将嵌入层参数由O(V × H) 减少到O(V × E + E × H)的规模。实验证明,嵌入矩阵分解可以在保证下游任务性能的同时,大大减少模型的参数量。
embedding

参数减少方法二 跨层参数共享(Cross-layer parameter sharing)

这个操作其实很自然,bert用了多层读transformer作为特征提取器,其实是为了保证模型的容量和鲁棒性,那反之,如果需要压缩模型,首先想到的也是跨层参数共享。 这里作者的思路还是比较严谨的,在方案中也不是全部层参数共享和完全不共享之外,还提出区分FFN层和attention层。还测试了更折中的方案,即将层分组,然后同组参数共享,并测量取不同组大小的情况。其实,参数共享,从最原始的CNN 开始,就是各类深度学习框架进行参数压缩的一个基本手段。实验也证明,attention层全部共享参数,对于下游任务的影响极小,甚至某些任务还略有提升。
cross parameter

性能优化策略一 将Bert的NSP loss改为SOP loss

对于原始Bert中下一句预测这个任务(NSP),很多工作都提出异议,比如RoBertA中就通过对比实验,直接任务这个任务对于模型性能没有提升,就删除了。 作者这里深入分析了这个任务,得出结论是该任务太简单了。因为,NSP 的负样本设计,是选择不同文档中的句子。这样虽然两个句子,没有前后逻辑关系,但是也不是同一个主题,所以模型其实只要识别不同主题即可,这就使得模型完成这个任务过于简单,无法提升模型对于语言模型的理解和更多隐式语义模式的发现。作者这里修改了这个任务,改成预测两个语句的顺序,选取的正负样本都是连续的句子,只是是否调整正确的顺序作为正负样本的依据。实验的结果,sop任务确实对下游任务有提升。
SOP

性能优化策略二 去掉dropout层

作者在文章还作了一系列的实验去研究bert模型,加深和加宽对于模型性能提升的收益。基本的结论是,加深模型,24层收益最大。保持3层,4096个隐藏层大小收益最大。保持4096这个最大宽大,加深模型层数收益不大。 作者说明了,增加数据,确实可以提升模型。
从模型优化角度,albert的一个大胆的改动就是去掉dropout层。作者表示,根据实验,训练了一百万步,模型完全没有过拟合迹象,所以去掉dropout层,其实对于模型性能会有提升,实验也确实如此。
dropout

最后,给出Albert的总体对比bert的改善。
general

1.3 个人点评

Albert这篇文章,个人认为是bert改进系列中,比较值得仔细研究的文章,压缩模型,不仅是对于减轻资源的限制,更是对于加深加宽模型探究的基础。作者减少参数的方法虽然不是特别出奇,但分析和实验扎实细致。我个人特别欣赏的还是作者对于SOP 和 NSP 任务调整时,所展现的洞察力,不是一味的放弃这个任务,而是找出这个任务不起效果的原因。当时,正如作者讨论中提到的,其实bert系列远远不是最终版本,关于预训练更多任务的探索和理论解释,都可以促进整个无监督预训练语言模型的发展。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值