美文网首页
ALBERT 与ELECTRA,小排量的大飞机

ALBERT 与ELECTRA,小排量的大飞机

作者: 垮掉的一代人 | 来源:发表于2019-11-03 16:13 被阅读0次

    前言

    随着BERT的横空出世,目前越来越多优秀的预训练语言模型涌现出来,学习的步伐跟不上发展的速度。
    BERT 刚出来时,感觉,可预期的时间内,只要预训练目标任务足够好,相信效果会有更进一步提升。

    预训练语言模型

    名称 特点 机构
    ELMO 自回归语言模型,双层BiLSTM AllenNLP
    BERT 自编码语言模型,Transformer 谷歌
    GPT,GPT 2.0 自回归,Transformer OpenAI
    ERINE 结合知识图谱的BERT 百度
    MASS 联合训练encoder和decoder的模型 微软
    XLNet 排列语言模型,Transformer XL CMU & 谷歌
    RoBERTa 对比BERT,数据质量更优,剔除下一句预测任务 Facebook
    SG-Net 融入句法结构的BERT 上海交通大学
    ALBERT Embedding因式分解,跨层的参数共享,移除dropout,参数量相比于BERT下降了一个数量级(Base 110M->11M) 谷歌
    T5 整个 NLP 预训练模型领域提供了一个通用框架 ,以及预训练语料C4 谷歌
    ELECTRA 把生成式的Masked language model(MLM)预训练任务改成了判别式的Replaced token detection(RTD)任务,判断当前token是否被语言模型替换过。 斯坦福

    近期两篇

    下面分享最新的学术界两篇论文,他们有共同点:对比于BERT参数量少了一个量级,但是效果却反而提升了

    ELECTRA: Pre-training Text Encoders as Discriminators Rather Than Generators

    ALBERT: A LITE BERT FOR SELF-SUPERVISED LEARNING OF LANGUAGE REPRESENTATIONS

    1.ELECTRA

    摘要(原文)

    虽然像BERT这样的MASK语言建模(MLM)预训练方法在下游的NLP任务上产生了很好的结果,但是它们需要大量的计算才能有效。这些方法通过用[MASK]替换一些Token来破坏输入,然后训练一个模型来重构Token。作为一种替代方案,我们提出了一种更具效率的预训练,称为Replaced token detection(RTD)判断当前词是否被替换了。我们的方法不是屏蔽输入,而是用从小型GAN中提取的plausible alternatives sampled替换一些输入Token,从而破坏输入。然后,我们不是训练一个模型来预测[MASK],而是训练一个判别模型来[MASK]输入中的每个Token是否被生成器样本替换。实验表明,这种预训练模型更有效,因为它从所有的输入中学习,而不是仅仅从[MASK]中。结果,在相同的模型大小、数据和计算条件下,通过我们的方法学习的上下文表示大大优于通过BERT和XLNet等方法学习的上下文表示。例如,我们在一个GPU上训练一个模型4天,该模型在GLUE自然语言理解基准上的性能优于GPT(使用30倍以上的计算进行训练)。我们的方法在规模上也很有效,我们使用不到1/4的计算,就可以达到RoBERTa的性能。

    • 14M参数就能达到RoBERTa 的效果,训练语料更少,速度更快
    • 33M参数在GLUE很多任务上超过RoBERT和ALBERT,GLUE 榜单上还没有,所以很多比较结果不全
    • 尚未开源,斯坦福的个性,coming soon
    MNLI QQP
    XLNet 89.8 91.8
    RoBERTa 90.2 92.2
    ALBERT 88 *
    T5 92 90.2
    ELECTRA 90.5 92.4

    1.1GAN的引入

    GAN在CV中大火,但是在NLP中却一直差点意思,效果不是很突出。这篇文章一个突出贡献就是将GAN引入到预训练语言模型中,并且取得了SOTA(state of the art)的效果。

    Replaced Token Detection(RTD)

    RTD

    1.1.1Generator 生成器

    通过对MASK后的句子生成样本,这里使用的是MLM(maximum likelihood),而不是使用的 Adversarially。因为NLP和CV的差异性

    1.1.2Discriminator 判别器

    通过序列标注的方法,判断当前词是否是原文(original,replaced)

    • GAN生成的都是假的,但是该文的G会生成真实样本(部分词汇真实)
    • 梯度不能从D传到G,所以该文使用强化学习的方法来训练G

    1.2权重共享

    • 正常情况下,Generator 和Discriminator 使用相同的大小,但是 实验表明,Generator 更小效果会好点。

    • Generator 和Discriminator 只是对于 token embeddings 进行共享,如果将所有权重共享效果反而会差点。

    1.3Smaller Generators

    • 实验表明,Generator的大小为 Discriminator 1/4~1/2效果最好,作者假设,Generator太大会给Discriminator 造成困扰。

    1.4Training Algorithms

    • 将Generator 和Discriminator 进行联合训练

    • Train only the generator with MLM for n steps.
      开始只训练通过MLM去训练Generator

    • Initialize the weights of the discriminator with the weights of the generator. Then train the discriminator with Disc for n steps, keeping the generator’s weights frozen.
      然后用Generator 的参数去初始化 Discriminator,通过Disc 去训练Discriminator 同时冻结 Generator 的参数

    1.5 contrastive learning(对比学习)

    • 通过对比学习方法来区分虚构的负样本与正样本
    • 本文算是 contrastive learning 与GANs的一种结合

    2.ALBERT

    Other

    参考

    ELECTRA: Pre-training Text Encoders as Discriminators Rather Than Generators
    ALBERT: A LITE BERT FOR SELF-SUPERVISED LEARNING OF LANGUAGE REPRESENTATIONS
    XLNet: Generalized Autoregressive Pretraining for Language Understanding

    T5:Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer

    相关文章

      网友评论

          本文标题:ALBERT 与ELECTRA,小排量的大飞机

          本文链接:https://www.haomeiwen.com/subject/seflbctx.html