albert-相对于bert的改进点

参考文献:

https://zhuanlan.zhihu.com/p/87562926

https://blog.csdn.net/weixin_37947156/article/details/101529943

bert参数太大怎么办:

1、词表大小是V,向量维度是H,假定H维度较大,而V本身又非常大,V*H就非常非常大(占了整个模型20%的参数),需要巨额的参数量,而实际上,H只是一个查表操作,H之后才是NN的学习与上下文相关的表示,所以这里可以将V*H拆成 V*E + E*H,E的大小可以远远小于H,这样的话,就是先降维再升维,类似于一种矩阵分解的感觉,可以有效解决参数量过大的问题。

2、一说到参数量大,势必会有共享参数的想法,attention层和ffn层整个多头占了80%的参数,共享参数的话,在这个过程中其实就两点,一个是self-attention层的共享,另一个是feed forward的共享,实验表明,可视化之后,发现各个层的attention layer都长的差不多,所以可以将各个层的encoder进行共享,即共享self attention和feed forward,但是这样的好处:参数量极速变小,且层数可以无限叠加,不影响参数量,但是影响infer。效果的降低主要是来源于FFN的共享,而不是attention layer,参数变少之后可以对模型变宽变深,强化效果。

3、NSP不太行了怎么办,预测的主题性大于句子的连续性。那就改成SOP,调换两个句子的顺序作为负样本,让学习难度变难,且能够学习到句子的连续性信息。

4、dropout没啥用,反而占用了1/3到1/2的临时变量,浪费参数,因为MLM这个学习任务实在是太难了,所以去掉dropout反而让模型效果提高了。其实前两个参数共享的改动一定意义上是一种正则化的意思,可以提高泛化。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • BERT 模型是 2018 年提出的,并在很多自然语言处理任务有前所未有的提升。因此 2019 年就有很多工作是围...
    NLP与人工智能阅读 3,775评论 0 2
  • Albert,xlnet,bert,word2vec 通过预训练模型实现迁移学习,迁移学习本质上是在一个数据集上训...
    zelda2333阅读 5,445评论 2 5
  • 离开深度学习瞎折腾了一段时间后,我终于又回来了。 于是赶紧回顾了下18年之后NLP的发展,基本就是将迁移学习更广泛...
    金色暗影阅读 2,145评论 0 1
  • 机器翻译的思想由来已久,约500年前,著名数学家笛卡尔提出了一种在统一的数字代码基础上编写字典的理念,不同语言中的...
    郭少悲阅读 1,111评论 0 1
  • 久违的晴天,家长会。 家长大会开好到教室时,离放学已经没多少时间了。班主任说已经安排了三个家长分享经验。 放学铃声...
    飘雪儿5阅读 7,588评论 16 22