首页 > 公众号研报 > 华泰 | 计算机 · ChatGPT系列:产业复盘(2018)—GPT问世

华泰 | 计算机 · ChatGPT系列:产业复盘(2018)—GPT问世

作者:微信公众号【华泰睿思】/ 发布时间:2023-02-17 / 悟空智库整理
(以下内容从华泰证券《华泰 | 计算机 · ChatGPT系列:产业复盘(2018)—GPT问世》研报附件原文摘录)
  如果您希望第一时间收到推送,别忘了加“星标”! 复盘2017-2022年出现的自然语言处理模型,我们认为,2017年出现的Transformer模型为GPT的出现奠定了基础。2018年由OpenAI提出的GPT-1开启了新一轮自然语言模型发展的热潮。2018年,出现的主要自然语言模型包括GPT-1、ELMo、ULMFiT和BERT等。其中,GPT-1模型的单向训练特点,使得其特别适合文本生成类型的任务。ELMo为双向训练模型,更善于解决NLP中的一词多义问题。ULMFiT是一种适用于NLP中的迁移学习模型,更适合文本分类任务。除OpenAI外,Facebook、微软和谷歌等也在同步推进AI的相关研究。 核心观点 GPT-1:基于Transformer架构,在文本生成领域表现突出 架构上,GPT-1基于Transformer架构,但是仅保留了架构中的解码器(Decoder)部分。训练步骤上,分为两个阶段,1)无监督预训练:采用多层Transformer模型的解码器为语言模型,进行基于大文本语料库的高容量无监督学习;2)有监督微调:当下游的问题具有结构化特征,例如有序的句子对或文档、问题和答案的三元组,首先将其转换成特定的序列结构,再根据针对性的数据集进行微调训练。GPT-1在自然语言推理、问题回答、语义相似性和文本分类等方面,性能均优于绝大多数相似模型。 GPT-1 vs ELMO/ULMFiT:不同模型擅长不同的任务类型 我们对2018年出现的其他主要NLP模型进行拆解分析。架构上,EMLo不同于GPT-1的Transformer架构,采用了双向的LSTM语言模型,由一个前向和一个后向语言模型构成,ULMFiT则采用了3层LSTM架构。擅长任务上,GPT-1采用单向架构,仅使用单词的上文进行预测,因此模型计算速度更快,更适合文本生成类的任务。ELMo改进了传统的词嵌入方法,结合上下文对多义词在当前语境的含义做出判断,解决了NLP中的一词多义问题。ULMFiT是一种可以应用NLP中任何任务的迁移学习模型,专门用于文本分类任务。 OpenAI持续在人工智能训练领域发力 2018年6月,OpenAI发表论文《Improving Language Understanding by Generative Pre-Training》,提出生成式预训练概念,标志着GPT-1的诞生。此外,OpenAI在人工智能训练领域持续保持研究,涉及机器学习、AI安全、物理机器人训练、游戏AI训练、图像生成等内容。例如,在游戏AI训练领域,搭建游戏强化学习研究平台—Gym Retro,组建神经网络战队OpenAI five并打败人类选手;在训练物理机器人方面,使用与OpenAI Five相同的通用强化学习算法训练了自由度为24的类人机器手。 Facebook、微软和谷歌等巨头积极布局人工智能领域 Facebook、微软和谷歌等互联网巨头同样重视AI领域投入。2018年,Facebook AI Research小组使用无监督机器翻译支持更多可翻译语言;升级Pytorch深度学习开源框架;部署了Rosetta的机器学习系统。微软搭建Microsoft AI Platform人工智能平台;推出Project Brainwave,利用芯片级FPGA技术实现的人工智能推理引擎。谷歌推出用于NLP的BERT;推出谷歌助理Google Duplex;推动其开源机器学习框架TensorFlow,并支持更多人工智能应用;推出AutoML,自动构建和训练机器学习模型。 风险提示:宏观经济波动,下游需求不及预期。本报告内容均基于客观信息整理,不构成投资建议。 正文 GPT发展之2017:Transformer架构为GPT奠定基础 Transformer:GPT模型的基础 Transformer模型是GPT模型的基础。2017年6月,Google Brain在神经信息处理系统大会(NeurIPS)发表论文“Attention is all you need”,首次提出了基于自我注意力机制(self-attention)来提高训练速度的Transformer模型,将其用于自然语言处理。此前,自然语言处理领域的主流模型是循环神经网络(RNN,recurrent neural network)。RNN能更好地处理有先后顺序的数据,但在处理较长序列时存在模型不稳定、过早停止有效训练、训练时间过长等问题。而Transformer模型能够同时并行进行数据计算和模型训练,训练时长更短,且训练得出的模型具有可解释性。 Transformer是一种基于注意力机制的编码器-解码器(Encoder-Decoder)模型。Transformer模型的核心思想是使用多头注意力机制,实现不同位置之间的跨越关系计算。Transformer模型可以完全并行化,不需要递归或循环,也不需要在训练过程中预测序列的长度,因此可以大大加快训练速度。Transformer模型中的编解码器各有6个相同的堆栈组成。其中,Encoder由两层组成,一层是多头自我注意机制,另一层为前馈网络。Decoder除了自我注意机制和前馈网络外,还插入了第三个子层,实现对编码器堆栈输出的多头关注。Google Brain团队使用了多种公开的语言数据集来训练Transformer模型,共设置6500万个可调参数,模型在翻译准确度、英语成分句法分析等各项评分上达到了当时的业内最好水平,成为当时最先进的大型语言模型(Large Language Model,LLM),常用于输入法和机器翻译。 自注意力机制是Transformer的核心理念 注意力机制帮助机器在学习过程中聚焦在重要信息上。深度学习中的注意力机制从本质上讲和人类的选择性视觉注意力机制类似,核心目标是从众多信息中选择出对当前任务目标更关键的信息,忽略大多不重要的信息。 注意力模型可以用Query、Key和Value模型进行描述。本质上Attention机制是对Source中元素的Value值进行加权求和,而Query和Key用来计算对应Value的权重系数。以大脑读图为例,Value可以理解为人眼视网膜对整张图片信息的原始捕捉,不受“注意力”所影响;Key与Value相关联(数据对),是图片原始信息所对应的关键性提示信息;读者大脑有意识地向图片获取信息,即发起了一次Query,包含了读者的意图等信息。在一次读图过程中,Query与Key之间计算出每个Key对应Value的权重系数,得到最具有吸引力的部分,然后对Value进行加权求和,即得到了最终的Attention Value数值。 Attention机制的具体计算过程包含两个步骤。1)根据Query和Key计算权重系数;2)根据权重系数对Value进行加权求和。其中,过程一又可以细分为两个阶段:第一个阶段根据Query和Key计算两者的相似性或者相关性;第二个阶段对第一阶段的原始分值进行归一化处理。 Transformer的自注意力机制是特殊情况下的注意力机制。在一般任务的Encoder - Decoder框架中,输入Source和输出Target内容是不一样的,例如对于英-中机器翻译来说,Source是英文句子,Target是对应的翻译出的中文句子。注意力机制发生在Target的元素Query和Source中的所有元素之间。而自注意指的不是Target和Source之间的注意力机制,而是Source内部元素之间或者Target内部元素之间发生的注意力机制,也可以理解为Target = Source这种特殊情况下的注意力计算机制。具体计算过程相同,只是计算对象发生变化。自注意力机制更容易捕获句子中长距离的相互依赖的特征,且对于增加计算的并行性也有直接帮助作用。 GPT发展之2018:GPT-1诞生,开启NLP新发展热潮 2018年GPT-1诞生开启了新一轮NLP研究的热潮。我们以GPT的不断迭代和发展为主线,对2017-2022年出现过的主要自然语言处理(NLP)模型进行了梳理。2018年,出现的主要自然语言模型包括GPT-1、ELMo、ULMFiT和BERT(BERT相关论文于2019年更新,故不在本报告讨论范围)。其中,GPT-1模型的单向训练特点,使得其特别适合文本生成类型的任务,为ChatGPT的成功奠定基础。ELMo为双向训练模型,更善于解决NLP中的一词多义问题。ULMFiT是一种适用于NLP中的迁移学习模型,更适合文本分类任务。 OpenAI发布了GPT-1,并持续在人工智能训练领域发力。2018年6月,论文《Improving Language Understanding by Generative Pre-Training》发表,标志着GPT-1的诞生。此外,2018年,OpenAI还在机器学习、AI安全、物理机器人训练、游戏AI训练、图像生成等领域持续保持研究和投入,不断精进训练模型。 2018年,Facebook、微软和谷歌也持续推进AI相关研究与应用。 1)Facebook:Facebook AI Research小组使用无监督机器翻译,通过减少对标记训练数据的依赖,支持更多可翻译语言。升级了Pytorch深度学习开源框架,并开发了新手支持接口。发布开源的、社区驱动的框架—Glow,支持机器学习的硬件加速。部署了Rosetta的机器学习系统,每天从超过十亿个公共图像和视频帧中提取文本,并使用文本识别模型一起理解文本和图像的上下文。 2)微软:搭建Microsoft AI Platform人工智能平台,帮助开发人员更容易地构建和部署人工智能应用程序。推出Project Brainwave,利用芯片级FPGA技术实现的人工智能推理引擎,专为深度学习而设计。发布帮助残疾人士改善生活的人工智能计划AI for Accessibility。积极投入人工智能在医疗保健领域的发展。 3)谷歌:推出BERT(Bidirectional Encoder Representations from Transformers)自然语言处理模型,在多种自然语言处理任务中取得了先进性能。推出Google Duplex,让谷歌助理模拟人类语音对话。继续推动其开源机器学习框架TensorFlow,并支持更多人工智能应用。推出AutoML,自动构建和训练机器学习模型。积极投入人工智能在医疗保健领域的发展。通过AI for Social Good计划,推动人工智能在社会公益领域的应用。 GPT-1:确定生成式预训练模型基本路线 GPT-1:基于Transformer的预训练+微调半监督模型 GPT-1是预训练+微调相结合的语言理解任务半监督模型。GPT全称生成式预训练(Generative Pre-training,GPT),于2018年6月由OpenAI在论文《Improving Language Understanding by Generative Pre-Training》中提出。从架构上看,GPT-1基于Transformer架构,但是仅保留了架构中的解码器(Decoder)部分。 模型特点:无监督训练+有监督微调 GPT-1的训练过程分为无监督训练和有监督微调。GPT-1的训练过程分为两个阶段:第一阶段为非监督预训练阶段,即在大型文本语料库上学习高容量语言模型。第二阶段为监督微调阶段,即在第一阶段训练的基础上,将参数调整为受监督的目标任务,进行进一步优化。 1)第一阶段:采用多层Transformer模型的解码器(Decoder)为语言模型,进行基于大文本语料库的高容量无监督学习。 2)第二阶段:在微调时,若输入的问题具有结构化特征,例如有序的句子对或文档、问题和答案的三元组,则需要首先将问题转化成特定的序列模块,再进行训练。例如,对于文本蕴涵任务,将前提和假设序列相连接,并在中间插入分隔符;对于相似性任务,则将两个需要比较的句子按照不同顺序排列,分别进行处理后再做比较;对于更复杂的问题回答和常识推理任务,则需要将文本、问题和可能的答案分别连接成不同序列,并对所有序列做独立的模型处理,将结果归一化得到可能答案的输出分布。 无监督训练采用大数据集,有监督微调采用针对任务的数据集。在无监督训练阶段,采用了12层解码器(Decoder)堆叠的Transformer模型,共包含12个掩蔽自注意力头(masked self-attention head)。训练数据集方面,采用BooksCorpus数据集,该数据集包括7000多本来自风格不同的未出版书籍,内含长段的连续文本。也可使用备选数据集1B Word Benchmark。在无监督训练阶段,提高解码器的层数能够有效提高训练效果。在有监督微调阶段,可根据不同任务类型选择不同的数据集。 论文结论:在多个下游任务中取得优于整体的结果 在有监督微调阶段,GPT-1在多个下游应用数据集的训练中均取得优于整体的结果。在自然语言推理、问题回答、语义相似性和文本分类方面,共测试了12个数据集,GPT-1在其中的9个取得了领先于现有方法的结果。此外,无论训练数据是如STS-B(≈5.7k训练示例)的小数据集,还是如SNLI(≈550k训练实例)的大数据集,GPT-1均能发挥较好的性能。 GPT-1在自然语言推理上的性能领先于同时期其他方法。1)自然语言推理:也称为识别文本蕴涵,包括阅读一对句子,并从蕴涵、矛盾或中性之一判断它们之间的关系。五个不同来源的数据集上进行评估,包括图像字幕(SNLI)、转录演讲、通俗小说和政府报告(MNLI)、维基百科文章(QNLI)、科学考试(SciTail)或新闻文章(RTE)。我们的方法在五个数据集中的四个数据集上显著优于基线,与之前的最佳结果相比,MNLI、SciTail、QNLI和SNLI的绝对改进分别高达1.5%、5%、5.8%和0.6%。模型能够更好地推理多个句子,并处理语言歧义方面的问题。 GPT-1在问题解答和常识推理上具有有效处理长距离上下文的能力。GPT-1在训练问题解答时使用了RACE数据集和Story Cloze测试。RACE数据集由英语段落和中高考中的相关问题组成。与CNN或SQuaD数据集相比,该数据集包含更多推理类型问题,能够很好的训练模型处理长距离上下文的能力。Story Cloze Test(故事完形测试)涉及从两个选项中选择多句故事的正确结尾。训练结果表明,GPT-1在RACE数据集和Story Cloze测试上均分别超过对比方法最高分的5.7%和8.9%,证明了GPT-1能有效处理长距离上下文。 GPT-1在处理语义相似性问题时表现突出。语义相似性(或意译检测)任务指的是预测两个句子在语义上是否相等,其难点在于识别概念改写、理解否定和处理句法歧义等。GPT-1在训练该能力时使用的数据集包括Microsoft Paraphrase语料库(MRPC)(从新闻来源收集)、Quora问题对(QQP)数据集和语义文本相似性基准(STS-B)。训练结果表明,GPT-1在处理语义相似性问题性能优异,尤其是在STS-B和QQP数据集上表现突出,QQP相关的性能比单任务BiLSTM+ELMo+Attn绝对提高(absolute improvement)了4.2%。 ? GPT-1在处理文本分类任务时同样具有较为先进的性能。GPT-1在训练文本分类任务时选取语言可接受性语料库(CoLA)、斯坦福情绪树库(SST-2)和通用语言理解评估(GLUE)基准。CoLA能够评估句子是否符合语法,并且能够测试被训模型的固有语言偏见情况。SST-2则是一项标准的二进制分类任务。GLUE基准是用于培训、评估和分析自然语言理解系统的资源集合。训练结果表明,GPT-1在CoLA上的得分远高于现有方法,在GLUE上的结果超过现有方法,在SST-2上的精度也达到了领先的水平。 GPT-2 vs ELMo/ULMFiT:各类模型有各自擅长的领域 ELMo:解决NLP中的一词多义问题 ELMo是一种预训练语言模型,解决了NLP中的一词多义问题。ELMo全称Embeddings from Language Models,于2018年由Peters等人在论文《Deep contextualized word representations》中提出。ELMo提出的动机是为了解决一词多义的问题。传统的词嵌入(word embedding)方法如word2vec,在训练完成后,每个单词的表示的意思会被固定下来,这就导致一词多义的单词会在不同的语境中被误读。而ELMo可以动态的更新word embedding,并结合上下文语境即做出正确选择。 ELMo是双向的LSTM语言模型。ELMo使用的是双向LSTM(Long short-term memory,是一种特殊的循环神经网络)语言模型,由一个前向和一个后向语言模型构成。ELMO的本质思想是:事先用语言模型在一个大的语料库上学习词的word embedding,此时多义词仍无法区分。随后利用训练数据的上下文信息来获得适合当前语境的word embedding,再将ELMo当成特征拼接到具体的有监督NLP模型的词向量输入或最高层上。 ELMo能够在多个NLP任务上提高输出结果。NLP任务包括问题解答(SQuAD)、文本蕴涵(SNLI)、语义角色标签(SRL)、共指消解(Coref)、命名实体提取(NER)、情绪分析(SST-5)。首先根据每个任务搭建模型的baseline,然后在每个任务中加入ELMo模型,得到的新结果比原结果均有提高,并且最后的结果都超过了之前的最好结果(SOTA)。 ULMFiT:专用于文本分类任务 ULMFiT是一种预训练语言模型,专门用于文本分类任务。ULMFiT全称Universal Language Model Fine-tuning(通用语言模型微调),于2018年由Howard在论文《Universal Language Model Fine-tuning for Text Classification》中提出。ULMFiT是一种可以应用NLP中任何任务的迁移学习模型,采用3层LSTM架构。ULMFiT在大型通用域语料库中预先训练语言模型,并在目标任务上对其进行微调。其特点在于:1)适用于不同文档大小、数量和标签类型的任务;2)使用单一的架构和训练过程;3)不需要定制特征工程或预处理;4)不需要额外的域内文档或标签。 ULMFiT包含通用域LM预训练、目标任务LM微调和目标任务分类器微调。 1)通用域LM预训练:在通用领域语料库上训练LM,以捕获不同层中语言的一般特征。ULMFiT使用包括28595篇预处理的维基百科文章和1.03亿个单词进行模型预处理。只需预处理一次即可满足下游模型的性能和收敛性。 2)目标任务LM微调:使用区分微调(Discr)和倾斜三角学习率(STLR)对目标任务数据进行微调,以学习任务特定特征。在实际使用中,即使用于预训练的通用域数据足够多样化,也可能存在无法覆盖目标任务数据的情况。因此,需要根据目标任务的数据微调LM。在预训练的基础上,目标任务LM微调能够较快收敛。在微调过程中,ULMFiT在每一层使用了不同的学习率(learning rate)。 3)目标任务分类器微调:分类器使用逐步解冻(gradual unfreezing)、Discr和STRR对目标任务进行微调,保留低级表示并调整高级表示。Discr和STRR与第二步目标任务LM微调中使用的方法相同。为了避免微调时幅度过大,ULMFiT提出了逐步解冻的理念,即从最后一层开始逐步解冻模型,然后微调未冻结层,以此类推,直到微调所有层或最后一次迭代时收敛。 ULMFiT在问题、情感和主题等多个数据集上,错误率与可比算法相比更低。训练使用的文本分类数据集共有6个,分为问题、情感和主题三个种类。在每个数据集下,均选取了具有代表性的模型进行训练,并错误率结果进行对比。结果发现,ULMFiT模型在6个代表性文本分类数据集中均达到了最好效果,并在大多数数据集上减少了18-24%的误差。 GPT-1 vs Transformer/ELMo/ULMFiT GPT-1 vs Transformer 我们从架构、训练过程和训练参数量上对GPT-1和Transformer模型进行对比。 1)架构上,GPT-1源于Transformer,但在架构上舍弃了编码器(Encoder) GPT-1基于Transformer,并在其基础上进行了简化,只保留了解码器Decoder。由于GPT仅使用单词的上文预测单词(单向),从而使模型更简单、计算速度更快,更适合处理自然语言生成任务(NLG),为日后ChatGPT实时聊天、即时反馈的功能做好了铺垫。 2)训练过程上,GPT-1对预训练数据进行了有监督的微调 GPT-1的预训练模型是在连续的文本序列进行的。因此,在实际应用中,如果输入内容为结构化问题,如有序的句子对或文档、问题和答案的三元组,则需要根据输入的不同内容进行微调。例如,对于文本蕴涵任务,需要任务微调为前提和假设序列相连,并在中间插入分隔符令牌的形式。 3)参数量上,Transformer模型的参数量通常比GPT-1多 GPT-1在训练过程中,其参数量达到了1.17亿。Transformer模型的参数量取决于模型的结构、任务和数据集大小,但通常其训练参数量比GPT-1更多。 ? GPT-1 vs ELMo vs ULMFiT GPT-1、EMLo和ULMFiT均是在2018年提出的自然语言处理中常见的预训练模型,但其在架构、擅长的任务等方面均有不同。 1)架构上:GPT-1采用的是单向Transformer架构,且仅保留了编码器。EMLo采用的是双向的LSTM语言模型,由一个前向和一个后向语言模型构成,ULMFiT则采用了3层LSTM架构。其中Transformer提取特征的能力强于LSTM,若采用双向的Transformer作为提取器,或能进一步提高EMLo模型的性能。 2)擅长的任务上:GPT-1采用单向的架构,仅使用单词的上文进行预测,因此模型计算速度更快,更适合文本生成类的任务。ELMo改进了传统的词嵌入(word embedding)方法,采用动态更新的方式,结合上下文对多义词在当前语境的含义做出判断,解决了NLP中的一词多义问题。ULMFiT是一种可以应用NLP中任何任务的迁移学习模型,专门用于文本分类任务。 3)使用方法上:GPT-1和ULMFiT通常可以独立使用,而ELMo作为一种word embedding方法,常被当成特征拼接到具体的有监督NLP模型的词向量输入或最高层上,以提高和改善现有NLP模型的输出结果。 风险提示: 1、宏观经济波动。若宏观经济波动,产业变革及新技术的落地节奏或将受到影响,宏观经济波动还可能对IT投资产生负面影响,从而导致整体行业增长不及预期。 2、下游需求不及预期。若下游数字化需求不及预期,相关的数字化投入增长或慢于预期,致使行业增长不及预期。 3、本报告内容均基于客观信息整理,不构成投资建议。 相关研报 研报:《GPT产业复盘(2018):GPT问世》2023年2月14日 谢春生 S0570519080006 | BQZ938 你可能还感兴趣 华泰 | 计算机 · ChatGPT系列:GPT-1到ChatGPT 华泰 | 计算机 · ChatGPT系列:从ChatGPT看算力产业机遇 华泰 | 计算机 · ChatGPT系列:关注ChatGPT四大应用主线 华泰 | 计算机: ChatGPT深度拆解 关注我们 华泰证券研究所国内站(研究Portal) https://inst.htsc.com/research 访问权限:国内机构客户 华泰证券研究所海外站 https://intl.inst.htsc.com/mainland 访问权限:美国及香港金控机构客户 添加权限请联系您的华泰对口客户经理 免责声明 ▲向上滑动阅览 本公众号不是华泰证券股份有限公司(以下简称“华泰证券”)研究报告的发布平台,本公众号仅供华泰证券中国内地研究服务客户参考使用。其他任何读者在订阅本公众号前,请自行评估接收相关推送内容的适当性,且若使用本公众号所载内容,务必寻求专业投资顾问的指导及解读。华泰证券不因任何订阅本公众号的行为而将订阅者视为华泰证券的客户。 本公众号转发、摘编华泰证券向其客户已发布研究报告的部分内容及观点,完整的投资意见分析应以报告发布当日的完整研究报告内容为准。订阅者仅使用本公众号内容,可能会因缺乏对完整报告的了解或缺乏相关的解读而产生理解上的歧义。如需了解完整内容,请具体参见华泰证券所发布的完整报告。 本公众号内容基于华泰证券认为可靠的信息编制,但华泰证券对该等信息的准确性、完整性及时效性不作任何保证,也不对证券价格的涨跌或市场走势作确定性判断。本公众号所载的意见、评估及预测仅反映发布当日的观点和判断。在不同时期,华泰证券可能会发出与本公众号所载意见、评估及预测不一致的研究报告。 在任何情况下,本公众号中的信息或所表述的意见均不构成对任何人的投资建议。订阅者不应单独依靠本订阅号中的内容而取代自身独立的判断,应自主做出投资决策并自行承担投资风险。订阅者若使用本资料,有可能会因缺乏解读服务而对内容产生理解上的歧义,进而造成投资损失。对依据或者使用本公众号内容所造成的一切后果,华泰证券及作者均不承担任何法律责任。 本公众号版权仅为华泰证券所有,未经华泰证券书面许可,任何机构或个人不得以翻版、复制、发表、引用或再次分发他人等任何形式侵犯本公众号发布的所有内容的版权。如因侵权行为给华泰证券造成任何直接或间接的损失,华泰证券保留追究一切法律责任的权利。华泰证券具有中国证监会核准的“证券投资咨询”业务资格,经营许可证编号为:91320000704041011J。

大部分微信公众号研报本站已有pdf详细完整版:https://www.wkzk.com/report/(可搜索研报标题关键词或机构名称查询原报告)

郑重声明:悟空智库网发布此信息的目的在于传播更多信息,与本站立场无关,不构成任何投资建议。