GPT-2 论文阅读笔记

GPT-2模型来源于OpenAI 在2019年2月发布的论文《Language Models are Unsupervised Multitask Learners》

论文摘要翻译:自然语言处理任务,如问答、机器翻译、阅读理解和摘要,通常是在特定任务的数据集上进行监督学习的。我们证明,当在名为WebText的包含数百万网页的新数据集上训练时,语言模型开始在没有任何显式监督的情况下学习这些任务。当输入文档和问题时,语言模型生成的答案在CoQA数据集上达到55的F1---在不使用127,000多个训练实例的情况下,性能相当或超过4个基线系统中的3个。语言模型的容量对于zero-shot任务迁移的成功至关重要,增加语言模型的容量会以对数线性的方式提高不同任务的性能。我们最大的模型GPT-2是一个有15亿参数的Transformer,它在8个测试语言模型数据集的7个上实现了最先进的结果,但仍然对WebText数据集处于欠拟合状态。模型得到的样本反映了这些改进,并包含连贯的文本段落。这些发现表明,建立语言处理系统来自然学习执行任务是一条很有希望的途径。

GPT-2的模型参数多达15亿,与GPT-1和Bert不一样,它对下游任务不再需要微调,可以直接将模型应用于下游任务(所以是zero-shot),但是为了让模型理解要做的任务,会对输入的格式做一些要求(在后来就被称为prompt),也即目标是估算p(output|input, task):

  • 生成型任务可以直接应用模型
  • 对于翻译任务,会写成类似(translate to Chinese, english text, Chinese text) 的形式, 即求概率  P(? | I like sleep late. = 我喜欢睡懒觉。 The weather is good. = 天气很好。I'm very happy. =")
  • 对于阅读理解,可写成类似(answer the question, document, question, answer)的形式
  • 对于摘要,在文章后面添加标志TL;DR:

为了训练GPT-2, 作者们构建了 超过800万个文档,大小为40GB的数据即WebText, 其数据来源于Reddit上的karma至少为3的链接。 并指出没有直接使用Commom Crawl 是因为它的质量不高。

对于模型的输入数据,与GPT-1一样使用BPE(Byte Pair Encoding),同时使用utf-8 bytes。 因为BPE使用贪心方式来构建词表,作者们发现会使数据中出现如 dog., dog!, dog? 等不同的数据,所以构建BPE的时候不允许不同类别的字符合并(空格字符例外)。

GPT-2 于GPT-1的模型类似,只是做了一些小的修改:

  • 子模块的layer normalization被移到了子模块的输入, 就像最早的残差网络论文一样
  • 在最后一个self-attention 块后添加了一个layer normalization
  • 修改了权重初始化,考虑模型深度(A modified initialization which accounts for the accumulation on the residual path with model depth is used)
  • 设N是残差层的个数,初始化时对残差层权重乘以因子1/\sqrt{N} 
  • 词汇表的大小变为50257
  • 将输入token的个数从512变为1024, batch size 变为512

论文中一共训练了4个模型,第一个模型的参数大小对应于GPT-1的大小, 第二个的参数大小对应于Bert的大小

在论文第4部分使用Bloom filters 来检查数据集的训练集和测试集部分的重合度来讨论模型泛化性或记忆,并说明GPT-2在数据集WebText上仍然是欠拟合的。

参考资料:

1. Radford, Alec, Jeffrey Wu, Rewon Child, David Luan, Dario Amodei, and Ilya Sutskever. n.d. “Language Models Are Unsupervised Multitask Learners.”

2. 论文下载地址:https://d4mucfpksywv.cloudfront.net/better-language-models/language_models_are_unsupervised_multitask_learners.pdf , 代码地址:GitHub - openai/gpt-2: Code for the paper "Language Models are Unsupervised Multitask Learners"

3. Open AI 模型发布博客: Better language models and their implications (openai.com)

4. Generalized Language Models | Lil'Log (lilianweng.github.io)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值