GPT2--Language Models are Unsupervised Multitask Learners

  • Abstact
    • GPT2的核心思想就是认为可以用无监督的预训练模型去做有监督任务。
  • Introduction:
    • 典型应用:最著名的语言模型就是手机上面的输入法,根据当前输入词推荐下一个词
    • 目标上想构造一个通用的NLP模型,可以执行很多任务,不需要为每个任务手动创建和标记数据集
    • 多任务学习:把多个相关的任务放在一起学习,同时学习多个任务。
      • 基于共享表示,把多个相关的任务放在一起学习的机器学习方法

        GPT2--Language Models are Unsupervised Multitask Learners_第1张图片

      • 多个相关任务同时并行学习,梯度同时反向传播,多个任务通过底层的共享表示、互相补充学习到的领域相关的信息,互相帮助学习任务,提升泛化效果。

        GPT2--Language Models are Unsupervised Multitask Learners_第2张图片

    • 把多任务学习和非监督学习联系起来。在没有进行微调的情况下,也取得了很好的效果。说明了泛化能力进一步增强 训练集和测试集同分布
  • Approach
    • 2.1 Training Dataset 
      • 抓了800万个文档 40G数据
    • 2.2 Input Representation 
      • BPE
        • 基本词汇表13W 常用3.2-6.4W 字节层面词典大小256
        • 防止Bpe字符类别合并任何序列
        • 不需要分词预处理 字节
    • 2.3 Model
      • GPT2模型是48层单向transformer 15亿参数 训练数据集 Webtext 模型结果表明现在的结果仍然只是欠拟合 多任务形式 保证每个任务上都是能收敛
      • 考虑到模型深度对当前层影响 初始化权重时,将剩余层的权值乘上1/根号N (经验值) N为剩余层数量 词典扩展到50257 context维度从512-->1024 batchsize 512
    • 工作过程:
      • 所以运行GPT提供一个预先定义的起始单词 ,即提示单词 ;输入这个提示单词后,这个单词对词汇表所有单词计算一个概率。比如得出最高概率单词The
        • 可能出现的问题 只选第一个。可能回陷入推荐同一个词的循环中,只有点击第二个或第三个才能跳出循环。 GPT2有个选topk参数。k选的是40
        • 演示:https://gpt2.apps.allenai.org/?text=%0A%22
    • Zero-shot的概念:你们在一个很小的语料库训练一个语言模型然后大家比赛,俺不这么跟你玩。俺用很大的语料训练一个模型,然后不用你的数据,效果还能超过你们在小数据上的效果。
    • 核心上语言建模。语言建模上将一组可变长度的语言组成的无监督分布,由于语言具有自然的顺序分布。因此将联合概率分解成条件概率的乘积。
    • 监督学习和非监督学习的目标上一样的。非监督学习的全局最优解也是监督学习的全局最优解。
    • 这种模型之所以效果好是因为在每个新单词产生后,该单词就被添加在之前生成的单词序列后面,这个序列会成为模型下一步的新输入。这种机制叫做自回归(auto-regression),同时也是令 RNN 模型效果拔群的重要思想。
  • 3.Experiments
    • Result:

      GPT2--Language Models are Unsupervised Multitask Learners_第3张图片

    • 四个模型最小的跟GPT 一样第二小的跟bert一样
    • 每个模型的learn-rate是在5%数据量上手工调最佳值

      GPT2--Language Models are Unsupervised Multitask Learners_第4张图片

  • 4. Generalization vs Memorization 
    • Bloom filters 采用8-gram方法,在WebText训练集上面训练 字符串只包括小写字母和数字 并且使用空格作为分割
    • 常见的语言模型数据集 测试集1%-6%he WebTextc重叠,平均早3.2% 很多数据集在自己的训练集上面很大重复率 平均在5.9%
    • 推荐采用n-gram作为重复率的验证步骤
  • 5. Related Work 
    • 采用大数据集训练的相关论文
    • 生成式模型的论文
    • 构造大型文本语料库论文
    • 回顾了预训练+微调 论文
    • 使用语言模型进行encoder decoder论文
  • 6. Discussion 
    • 证明无监督学习任务是有待挖掘的领域,极限情况下不需要对预训练微调
    • GPT2还没达到实际可应用性
    • 对于GPT2微调还有很多工作做
  • 7:Conclution
    • 大LM训练在大数据集它的泛化能力很好。可以在无监督学习下表现出很好的效果。
  • Apply
    • 机器翻译:
      • 进行翻译时,模型不需要编码器。同样的任务可以通过一个只有解码器的 transformer 来解决:

        GPT2--Language Models are Unsupervised Multitask Learners_第5张图片

    • 自动摘要生成:
      • 这是训练只包含解码器的 transformer 的任务,该模型被训练来阅读维基百科的文章(没有目录前的开头部分),然后生成摘要。文章实际的开头部分被用作训练数据集的标签:

        GPT2--Language Models are Unsupervised Multitask Learners_第6张图片

    • 音乐生成:
      • 音乐 transformer(https://magenta.tensorflow.org/music-transformer)采用了只包含解码器的 transformer (https://magenta.tensorflow.org/music-transformer%EF%BC%89%E9%87%87%E7%94%A8%E4%BA%86%E5%8F%AA%E5%8C%85%E5%90%AB%E8%A7%A3%E7%A0%81%E5%99%A8%E7%9A%84transformer) 「音乐建模」就是让模型以一种无监督的方式学习音乐,然后让它输出样本
      • 语言建模不仅要表征这些音符,还要表征速度——衡量钢琴按键力度的指标。

        GPT2--Language Models are Unsupervised Multitask Learners_第7张图片

      • 一段演奏可以被表征为一系列的 one-hot 向量。一个 MIDI 文件可以被转换成这样的格式。论文中展示了如下所示的输入序列的示例:

        GPT2--Language Models are Unsupervised Multitask Learners_第8张图片

      • 这个输入序列的 one-hot 向量表征:

        GPT2--Language Models are Unsupervised Multitask Learners_第9张图片

你可能感兴趣的:(NLP论文)