ALBERT-更小更少但并不快

2023-10-14 21:05
文章标签 不快 albert

本文主要是介绍ALBERT-更小更少但并不快,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

BERT模型的压缩大致可以分为:1. 参数剪枝;2. 知识蒸馏;3. 参数共享;4. 低秩分解。

其中,对于剪枝,比较简单,但是容易误操作降低精读;

对于知识蒸馏,之前我写个一系列的文章,重点可以看一下这里:

对于参数共享和低秩分解,就和今天分享的ALBERT息息相关;

它减少了BERT的参数,但是需要注意的一个细节点是,同等规格下,ALBERT速度确实变快,但是并不明显(和大量自媒体文章解读给大家的印象差距很大);

举个形象的例子就是,(这个例子并不严谨,只是帮助理解)参数共享让它训练的时候把多层压缩为一层去训练,但是在预测的时候,我们需要再展开多层去进行预测。

主要掌握以下的几个知识点:

  1. 词向量嵌入参数分解
  2. 跨层参数分享
  3. 取消NSP,使用SOP
  4. 预训练的时候采用更满的数据/n-gram mask方式

1.词向量嵌入分解

词向量嵌入参数分解,简单说就是将词向量矩阵分解为了两个小矩阵,将隐藏层的大小和词汇矩阵的大小分离开。

在Bert中,词汇表embedding大小是 V ∗ H V*H VH

Albert 的参数分解是这样的,将这个矩阵分解为两个小矩阵: V ∗ E V*E VE E ∗ H E*H EH

这样做有什么好处呢?

如果说,我觉得我的模型表达能力不够,我想要通过增大隐层H的大小来提升我们模型能力的表达能力,那么在提升H的时候,不仅仅隐层参数增多,词汇表的embedding矩阵维度也在增多,参数量也在增大。

矩阵分解之后,我们可以只是做到提升隐层大小,而不去改变表词汇表的大小。

2.跨层参数分享

跨层参数分享,这个操作可以防止参数随着网络层数的增大而增加。

跨层参数共享

分为三种形式,只是共享attentions,只是共享FFN,全部共享。

共享的意思就是我这部分结构只使用同样的参数,在训练的时候只需要训练这一部分的参数就可以了。

看表格我们可以发现一个细节,就是只是共享FFN比只是共享attention的参数,模型效果要降低的多。

小声嘀咕一下,这是不是说明FFN比attention在信息表达上要重要啊。或者说attention在学习信息表达的时候。attention层学习共性比较多。FFN学习到的差异性比较多。这只是我自己的猜测哈。

3. SOP

作者认为,NSP不必要。与MLM相比,NSP失效的主要原因是其缺乏任务难度。

NSP样本如下:

  • 从训练语料库中取出两个连续的段落作为正样本
  • 从不同的文档中随机创建一对段落作为负样本

NSP将主题预测和连贯性预测合并为一个单项任务;

但是,与连贯性预测相比,主题预测更容易学习,并且与使用MLM损失学习的内容相比,重叠性更大。

对于ALBERT,作者使用了句子顺序预测(SOP)损失,它避免了主题预测,而是着重于句间建模。

其实就是预测句子顺序,正样本是顺着,负样本是颠倒过来。都是来自同一个文档。

SOP

其他细节

  1. 数据格式:Segments-Pair

这个在RoBERTa中也有谈到,更长的序列长度可以提升性能。

  1. Masked-ngram-LM

Masked-ngram-LM

这就有点类似百度的ERINE和SpanBERT了

  1. 推测速度

ALBERT推理速度

从图中知道,同一规模ALBERT和BERT,比如同为Base:

BERT base: 4.7x;ALBERT base:5.6x;速度确实变快,但是确实加速并不明显

同等效果的情况下,比如BERT base(Avg=82.3)和ALBERT large(Avg=82.4):

BERT base:4.7x;ALBERT large:1.7x;速度变慢了

总结

总结一下可以学习的思路:

  1. 预训练的时候,数据填充的更满,到512这种,有利于提升模型效果,这点在RoBERTa有谈到
  2. mask n-gram有利于提升效果,这点类似百度的ERINE和SpanBERT了
  3. 词向量矩阵分解能减少参数,但是也会降低性能
  4. 跨层参数分享可以降低参数,也会降低性能,通过实验图知道,attention共享效果还好,FFN共享效果降低有点多
  5. 取消NSP,使用SOP,正负样本来自同一个文档,但是顺序不同。
  6. 推理速度来看,同等规格,ALBERT速度确实变快,但是并不明显,同等效果,速度变慢;https://kexue.fm/archives/7846)

这篇关于ALBERT-更小更少但并不快的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/213154

相关文章

翻译 Albert Julian Mayer 关于虚拟纹理的论文(3. 概述)

第3章:概述 本章介绍了整篇论文中使用的术语,并简要介绍了“虚拟纹理”及其挑战。 3.1 术语 目前,在纹理缓存领域存在术语不匹配的情况。一些论文将术语 “虚拟纹理” 应用于所有 “使用部分驻留在内存中的纹理的系统”,特别是类似 Clipmapping 的系统 [TSH09]、 [EC06]、 [Wei04]、 [SLT+07]。而其他论文和资源将这个术语应用于一种更新的、截然不同的大纹理支

翻译 Albert Julian Mayer 关于虚拟纹理的论文(1. 介绍)

译者前言 在搜寻关于虚拟纹理相关资料的时候,我发现了这篇论文: 这似乎是 维也纳科技大学计算机科学系 的学生 Albert Julian Mayer 的研究生学位论文。 这篇论文也出现在了 2014 GDC Adaptive Virtual Texture Rendering in Far Cry 4 的参考文献之中。 我希望通过翻译这篇论文来学习虚拟纹理的基础概念等知识。 摘要 在实时

albert每两层共享参数

1、albert的原始实现(brightmart实现) def transformer_model(input_tensor,attention_mask=None,hidden_size=768,num_hidden_layers=12,num_attention_heads=12,intermediate_size=3072,intermediate_act_fn=gelu,hidden_d

抖店哪种情况下会扣除保证金?违规最高扣2000块! 新手还不快看!

哈喽~我是电商月月 新手开抖店,前期担心店铺没流量,不出单 但深入抖音小店后,又要担心抖音小店保证金了 我们要知道,如果店铺违规,扣除保证金最高2000块呢 要想继续开抖店,还得把保证金补齐才能继续 而担心防范是没有用的,首先我们得知道,会扣保证金的原因 都有哪些! 今天我们就来聊一聊保证金的规则和保护问题: 一.最近发布的新规:低价引流 什么是低价引流?比如你发了一个一两块钱的低

快车道不快的现象与人类误判心理学

文/郑昀 20071018   人类的思想跟人类的卵子很相像。卵子有一个“关闭”机制。 当一个精子进入后,它就“关门”了,其余的精子就进不来了。 人类的思想普遍有这类特征。 ---貌似Charlie Munger说的   我一直在寻找一个答案。这个问题也许属于心理学,也许属于社会学范畴。 问题:为什么在北京的环路上多数人都挤在最内侧车道,即使最内侧车道速度明显慢于最外侧车道,即使所谓

毕业不吼不快十首经典歌曲(zz)

毕业不吼不快十首经典歌曲   毕业的百感,每一年都能交集出脍炙人口的歌,虽然年年岁岁人不同,但岁岁年年歌相似。“记下懵懂岁月的痕迹,铭刻青春相聚的日子”。 -----------------------题记   《祝你一路顺风》(吴奇隆)   [推荐理由]:唱给那些即将为理想而远行的好友,无奈、寂寞、悲凉背后是深深的祝福。 列车进站,它将把带走同窗好友,并将带走我们共同拥有的岁月。

华为鸿蒙再次公测,新增7款机型!鸿蒙第二轮公测开启:还不快去申请

原标题:新增7款机型!鸿蒙第二轮公测开启:还不快去申请 早在上个月月底,鸿蒙2.0的手机版公测系统就发布,虽然我们的机器还没有得到官方的回馈,但网上已经有不少用户收到并升级了。 从他们的升级情况来看,鸿蒙系统在华为手机上还是非常给力的。虽然界面设计和交互逻辑的变化不大,但还是新增了不少新功能,比如图标上划弹出快捷操作、通知栏左右下划弹出不同层级等等。 而且内存占用也变得少了,同时流畅度也十分优

关于BERT PART1 ALBERT

【论文阅读】ALBERT - 知乎

职场你跑得快不快,关键看你有没有找对马

为你自己找匹马骑。 你内心可能很难接受这一点,但人生的成功更多是要靠别人为你做些什么,而不是你能为自己做些什么。 l、第一匹马是你所在的公司     你公司的发展方向是什么?或者问得不那么礼貌些,它究竟有没有发展方向? 2、第二匹马是你的上司     你心里对你的公司是怎么问的,同样对你的上司再问一遍。          他或她有没有前程?如果没有,谁会有出息?要永远争取在你能

60分钟带你了解ALBERT

ALBERT原文:《ALITE BERT FOR SELF-SUPERVISED LEARNING OF LANGUAGE REPRESENTATIONS》 中文预训练ALBERT模型来了:小模型登顶GLUE,Base版模型小10倍速度快1倍。 Google一出手就是不一样,不再是BERT+的模式,而是做了个大改动。ALBERT模型是BERT的改进版,与最近其他State of the art