【论文笔记】GPT-1:Improving Language Understanding by Generative Pre-Training

Abstract

核心思想: generative pre-training + discriminative fine-tuning

1 Introduction

为了获取更多annotation,利用linguistic info从unlabeled data中学习,这很有价值,减轻了对NLP中监督学习的依赖,毕竟许多domains缺乏annotated resources,并且用无监督学习学习到好的表示可以为监督学习提供一个很大的改进——pre-trained word embeddings有着光明前景,能广泛使用。

但是从unlabeled text中学习有2个挑战,这些不确定性使得开发有效的半监督学习approaches变得困难:

  1. 不清楚要使用哪种optimization objectives在学习到用于迁移的表示中最有用;
  2. 哪种方式来transfer这些learned representations to the target task还没达成共识,具体方式有:

    a combination of making task-specific changes to the model architecture
    using intricate learning schemes
    adding auxiliary(辅助的) learning objectives

这篇论文中,使用了半监督的方法:使用a combination of unsupervised pre-training and supervised fine-tuning.
目标是: learn a universal representation,它只需要一点adaptation就可以迁移到许多task上.
训练数据: a large corpus of unlabeled text + several datasets with manually annotated training examples(target tasks),两者不需要in the same domain
训练程序:1. 使用未标记数据上的语言模型对象去学习神经网络模型的初始参数;2. 使用相应的监督目标对这些参数进行调整,以适应目标任务。
模型结构:Transformer.
迁移过程中:使用从traversal-style approaches方法派生的特定于任务的输入自适应方法,该方法将结构化文本输入处理为单个连续序列。

2 相关工作

Semi-supervised learning: 在:sequence labeling, text classification上都有使用。但是以前的方式能捕获word-level or phrase-level statistic,以前的研究者还学到了word embeddings,现在的approaches要捕获higher-level semantics,比如 character-level, phrase-level or sentence-level embeddings.

Unsupervised pre-training:Unsupervised pre-training is a special case of semi-supervised learning where the goal is to 找到一个好的初始点 instead of modifying the supervised learning objective. 曾经pre-traning方法是一 regularization scheme,使得在深度NN中得到更好的泛化。现在被用于许多task:image classification, speech recognition, entity disambiguation and MT.
还有一些Unsupervised pre-training方式如ELMo是在训练一个supervised model钟把pre-trained得到的hidden representations作为一个auxiliary features 用于target task,这就会涉及到新参数需要change。

Auxiliary training objectives:Adding auxiliary unsupervised training objectives is an alternative form of semi-supervised learning. 早期工作用到了许多辅助NLPtasks比如:POS tagging, chunking, named entity recognition, language modeling来提高semantic role labeling. 现在,会添加auxiliary language modeling objective到目标任务中。

3 Framework

3.1 Unsupervised pre-training 无监督预训练

使用语言模型最大化下面的式子,k是上下文窗口大小,θ是语言模型参数,我们使用一个神经网络来模拟条件概率P。
使用multi-layer Transformer decoder作为语言模型。这是transformer的一个变体。将transformer decoder中Encoder-Decoder Attention层去掉作为模型的主体,然后将decoder的输出经过一个softmax层,来产生目标词的输出分布。
Unsupervised pre-training

3.2 Supervised fine-tuning 有监督微调

在这一步我们调整我们预训练语言模型的参数θ以适应特殊的任务。
在这里插入图片描述
此外我们发现将一些语言模型的损失加和特殊任务的损失一起进去微调有两点好处:

  • 提升监督模型的泛化性
  • 加速收敛

总之,在fine-tuning期间需要添加的参数只要Wy,然后需要embeddings for 定界符(delimiter)tokens.(如下图)

3.3 Task-specific input transformations

其他任务需要structured inputs, 比如:1. ordered sentence pairs, 2. triplets of documents, questions and answers.
在这里插入图片描述
论文使用traversal-style approach 遍历式方法),在这里我们将结构化输入转换成预训练语言模型能够处理的有序序列(见下图)All transformations include adding randomly initialized start and end tokens (< s>, < e>).在这里插入图片描述
Textual entailment :连接premise p和 hypothesis h,中间用delimiter token($)来连接

Similarity:对于相似度任务来说,两个被比较的句子没有固有的顺序。为了反映这一点,我们修改输入序列以包含两个可能的句子顺序(中间有一个分隔符),并分别处理每个序列,以生成两个序列表示hlm ,在送入线性输出层之前按元素宽度(element-wise)添加。

QA and Commonsense Reasoning:我们得到一个上下文文档Z、一个问题Q和一组可能的答案{Ak}。We concatenate the document context and question with each possible answer, adding a delimiter token in between to get [z; q; $; ak]. Each of these sequences are processed independently with our model and then normalized via a softmax layer to produce an output distribution over possible answers.

理解(参考)

  • GPT模型其实质是一个语言模型,它的主体使用的是Transform的decoder部分,因为decoder在逐词翻译的时候会mask掉当前位置以后的词,所以它也是一个天生的语言模型。
  • GPT堆叠了20层的decoder,而不包括encoder部分。因此在decoder中没有encoder-decoder attention的子层,但是仍然有self-attention layer子层,在该层会mask将来位置的词,这样可以使用它去做语言模型的任务:预测下一个词:
    词

4 实验

4.1 Setup

datasets要text with long range dependencies ,这样work best with this approach.
it contains long stretches of contiguous text, which allows the generative model to learn to condition on long-range information.

4.2 Supervised fine-tuning

在QA上的:
RACE 数据集,This corpus has been shown to contain more reasoning type questions that other datasets like CNN [19] or SQuaD [47], providing the perfect evaluation for our model which is trained to handle long-range contexts.
在这里插入图片描述

5 Analysis

转移层数的影响(Impact of number of layers transferred):This indicates that each layer in the pre-trained model contains useful functionality for solving target tasks.
在这里插入图片描述

Zero-shot Behaviors:一个假设是,底层生成模型学习执行我们评估的许多任务,以提高其语言建模能力,并且transformer的更结构化的注意力记忆与LSTM相比有助于传递。

Ablation studies

  1. 在fine-tuning期间没使用auxiliary LM objective:auxiliary objective有助于NLI, QQP,并且大数据集能从中受益
  2. Transformer与单层2048个unit的LSTM相比:提高了5.6 score
  3. 没有pre-trained,transformer直接训练在有监督的target tasks上:缺少预训练直接降低了14.8%
    在这里插入图片描述
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: GPT-NeoX是一个基于Deepspeed库的GPU上的类似于GPT-3的模型并行模型。该模型是由EleutherAI团队在2021年提出的。它采用的是大规模分布式训练的方式,使得模型可以处理更大规模的数据集,具有更强的泛化能力。 相比于传统的模型训练方式,GPT-NeoX采用Deepspeed库实现了模型并行训练,实现了多卡训练和多节点训练,从而更好地利用GPU资源加速模型的训练速度。此外,GPT-NeoX还引入了一些新的优化技术,如局部梯度累积和梯度Chip-Level Pruning,进一步提高了模型的训练效率和性能。 GPT-NeoX的另一个特点是它采用了与GPT-3类似的Transformer结构,可以处理各种NLP任务,如文本生成、问答系统、机器翻译、情感分析等。GPT-NeoX还提供了基于一种新型的自监督训练方式的Unsupervised Pretraining功能,可以在没有标注数据的情况下对模型进行预训练,从而更好地适应各种NLP任务。 总之,GPT-NeoX是一款基于Deepspeed库的GPU上的类似于GPT-3的模型并行模型,采用多卡和多节点训练的方式,实现了更高效的模型训练。同时,它还具有与GPT-3类似的Transformer结构和Unsupervised Pretraining功能,适用于各种NLP任务。 ### 回答2: GPT-NeoX是一个基于Deepspeed库的GPU上的类似于GPT-3的模型并行模。该模型采用了分布式训练的技术,使得大规模的预训练模型的训练成为可能。 GPT-3模型是当前自然语言处理领域中最先进的模型之一,但是在模型规模扩大后,面临着训练时间长,并且需要大量计算资源的问题。为了解决这个问题,GPT-NeoX使用了Deepspeed库,通过将模型划分成多个微迭代,实现了模型的分布式训练。 在GPT-NeoX模型中,微迭代的数量决定了模型的分布式训练的程度。越多的微迭代数表示模型的分布式训练程度越高,但同时也会增加训练的时间。因此,在GPT-NeoX模型的设计中,需要根据模型的规模选择适当的微迭代数,以充分利用计算资源,同时保证训练时间不过长。 通过使用Deepspeed库,GPT-NeoX模型不仅实现了大规模预训练模型的训练,也获得了很好的训练效果。这证明了分布式训练对于提高模型性能和训练效率的重要性。未来,GPT-NeoX模型的研究还将继续深入探索并发控制算法及单机扩展策略的优化,这些工作将进一步提高分布式训练的效率及模型的性能。 ### 回答3: GPT-NEOX是一种基于Deepspeed库的GPU上的类似于GPT-3的模型并行模型。这个模型的目标是让机器能够像人一样生成自然语言,使得机器能够自动地产生文本和对话,而这一过程是通过机器学习算法实现的。 GPT-NEOX采用了一种全新的架构,利用并行算法使得模型训练的速度更加的快捷和高效。同时,为了更好地提升模型的性能,GPT-NEOX在模型更新和内存使用方面也进行了优化,使得模型的训练和应用更加稳定。 GPT-NEOX的设计理念是通过模型并行来增加计算资源,提高模型的计算速度和效率。它与GPT-3一样,使用了大量的参数和数据来训练,并有着相似的自然语言处理技术,但它也进行了一些改进,例如采用了不同的架构和算法。 GPT-NEOX的模型精度和应用性能已经有了很大的提升,同时也得到了广泛的应用和推广。我们相信,在未来的日子里,GPT-NEOX还会继续深入研究和优化,成为更加高效、精准和可靠的自然语言处理算法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值