GPT-2是一个大规模无监督语言模型,它可以生成连贯的文本段落,在许多语言建模基准上实现最先进的性能,并执行基本的阅读理解、机器翻译、问答和总结——所有这些都不需要针对特定任务的训练。
GPT-2 是 GPT-1 的直接扩展,其参数是 GPT-1 的 10 倍以上,并且在超过 10 倍的数据量上进行训练。GPT-2的训练目的很简单,就是预测 40GB 互联网文本中的下一个单词。接下来分为四部分:摘要、引言、模型、实验,一起来精读论文:GPT-2:Language Models are Unsupervised Multitask Learners(语言模型是无监督多任务学习者)GPT-2:语言模型是无监督多任务学习者
如何应对BERT超过GPT-1?自从BERT模型由Google提出并超越GPT-1后,OpenAI需要新的策略来反击。GPT-2不仅加大了模型和数据量,还引入了zero-shot设定,这意味着在下游任务中无需标签信息或重新训练模型,展现了其在更难设定下的新意。GPT-1的开始符[Start],分隔符[Delim],抽取符[Extract],GPT-2通通不需要了。 -- 架构师带你玩转AIGPT-2引入了zero-shot设定,就是在做下游任务是,不需要下游任务的任何标签信息,也不需要重新训练一个模型,即在更难的一个设定上体现他的一个新意度。GPT-2亮点一:更大数据集(百万级网页WebText)自然语言处理任务,如问答、机器翻译、阅读理解以及摘要生成等,通常是通过在特定任务的数据集上进行监督学习来解决的。我们证明,当在一个名为WebText的包含数百万个网页的新数据集上进行训练时,语言模型开始在没有任何明确监督的情况下学习这些任务。GPT-2亮点二:zero-shot + 更大模型参数(15亿参数)我们最大的GPT-2模型是一个拥有15亿参数的Transformer,它在8个测试的语言建模数据集中的7个上,在零样本设置下达到了最先进的结果,但仍然未能充分拟合WebText数据集。传统机器学习系统训练方式是什么?创建机器学习系统的主流方法是收集一个包含正确行为示例的训练数据集,针对所需任务训练一个系统来模仿这些行为,然后在独立且同分布的保留示例上测试其性能。这种方法在培养狭义专家方面取得了很好的进展。但是在应对多样化和多变的输入时(阅读理解系统)表现出的往往是不稳定的行为。
多任务学习是什么?多任务学习是一种训练模型的方法,旨在通过同时处理多个数据集和采用多个损失函数,使一个模型能够在多个任务上均表现出色。
在自然语言处理(NLP)领域,主要采用的是预训练+微调的方式。当应用预训练模型到具体的下游任务时,通常需要根据该任务的特点对模型进行微调,而微调模型通常需要大量的有标注数据。
zero-shot的设定是什么?不需要下游任务的标注信息,不引入模型没有见过的特殊符号(开始符[Start],分隔符[Delim],抽取符[Extract])。
GPT-2采用了不同的策略。它主要关注于语言模型的训练,并在下游任务中采用zero-shot的设定。这种设定下,GPT-2不需要下游任务的标注信息,也不引入模型没有见过的特殊符号。
狭义的专家 or 能力全面的通才?当前的系统更适合被描述为狭义的专家,而非能力全面的通才。我们希望能够朝着构建能够执行多项任务的系统迈进——最终无需为每个任务手动创建和标注训练数据集。机器学习系统如今在结合大型数据集、高容量模型和监督学习的条件下,对于它们所训练的任务表现出色。然而,这些系统很脆弱,对数据分布和任务规范的微小变化都很敏感。
GPT-2有更宏大的目标,争当能力全面的通才,虽然AGI很遥远,但梦想还是要有的,一个开箱即用,能够执行多任务的GPT,不断进化,朝着目标前进。 -- 架构师带你玩转AI
GPT-2模型是什么?该模型在很大程度上遵循了OpenAI GPT-1模型的细节,但做了一些修改。我们将层归一化移动到了每个子块的输入处,类似于预激活残差网络,并在最后的自注意力块之后添加了一个额外的层归一化。GPT-1和GPT-2的区别是什么?GPT-1和GPT-2在处理下游任务时的输入方式有所不同。
GPT-1需要引入额外的符号(开始符、分隔符、结束符)来标识输入的不同部分,并通过微调来学习如何处理这些符号。而GPT-2则采用了更为简洁的zero-shot设定,直接使用与预训练阶段相同的输入格式,从而简化了任务处理的流程。英语翻译为法语:在GPT-2中,可能直接输入“translate to french, english text”,然后模型会尝试生成对应的法语翻译,而不需要额外的分隔符或结束符。
阅读理解:对于阅读理解任务,GPT-2可能接受“answer the question, document, question”作为输入,并尝试生成答案,同样不需要额外的分隔符。
GPT-2的训练范式是什么?GPT-2采用预训练+zero-shot的训练范式。为实现zero-shot,GPT2在做下游任务时,输入就不能像GPT-1那样在构造输入时加入开始、中间和结束的特殊字符,因为这些特殊字符是模型在预训练时没有见过的。正确的输入应该和预训练模型看到的文本一样,更像一个自然语言。
比如在做机器翻译时,直接可以输入“请将下面一段英文翻译成法语,英文文本”,由于在训练时可能已经存在很多这样的翻译文本样例,因此模型就可以实现输出一段法语。是不是感觉很熟悉,没错,Zero-Shot就是Prompt的前身,虽然大家现在已经很习惯通过Prompt跟LLM模型进行交互,但是当时提出这个概念还是非常具有前瞻性。-- 架构师带你玩转AI零样本任务迁移使用什么数据集?WebText,包含4500w个链接的文本信息,总计800w的文本和40GB的文字。这是一个包含大量网页文本的数据集,通常用于自然语言处理(NLP)领域的模型训练和评估。例如,OpenWebText是一个开源的Web文本数据集,旨在复现和提供Giant OCR'd Web Text(即WebText)数据集,广泛用于预训练语言模型如GPT-2等。模型的规格有多大?GPT2也是基于Transformer解码器的架构,作者设计了4种大小的模型。GPT-2模型的四个版本(Small、Medium、Large、XL)分别具有约1.17亿、3.45亿、7.62亿和15亿参数,