版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
证券研究报告
行业动态报告ChatGPT技术演进及研究框架发布日期:2023年3月3日核心观点•
核心观点:
Transformer
模型融合了词向量、注意力机制和预训练模式的诸多优势,其出现标志着深度学习进入大模型时代。OpenAI
推出基于Transformer和人类反馈强化学习的ChatGPT以其强大的语义理解和生成能力引爆了市场。技术侧重点理解大模型训练中的核心四要素:模型参数、训练数据、训练方法以及训练效率。随着预训练自然语言模型进入巨量化参数时代,模型算力需求迈上新台阶。相关投资机遇中,建议重点关注国产AI芯片供应链、海内外大模型相关垂直应用落地情况。•
核心技术发展推动自然语言处理逐步成熟。对词向量的关注明确了训练目标,构建起语义信息和数据之间的桥梁;注意力机制增强上下文理解能力,提高语义信息学习能力;Transformer等模型推动计算结构从串行走向并行,大幅提升算法和语言模型的训练速度;预训练明确了训练思路,解决了数据量不足的问题,降低了模型应用的门槛。以上四点核心进展带来了语言模型语言理解和生成能力的大幅提升,人工智能语言模型逐步走向预训练大模型。对应行业发展,谷歌和OpenAI先后于2018年提出基于Transformer-Encoder的BERT和基于Transformer-Decoder的GPT。与此同时,国内外的其他技术巨头也纷纷加快自然语言处理模型研发进程。•
训练好大模型的四要素:模型参数、训练数据、训练方法以及训练效率。在模型参数上,参数量越大,大模型性能往往越好,当参数量提升到一定程度后性能可能会产生跨越式提升;训练数据方面,大模型对数据量和数据质量均提出了更高要求,高质量的数据集在模型训练过程中带来了更高的边际收益;
在训练方法上,一方面需要更充分的预训练以及增大预训练难度,另一方面使用Prompt或Fine-tune可以显著提高模型在下游应用场景的表现;在训练效率上,并行计算、显存优化与模型稀疏性能显著提升大模型训练效率。•
随着预训练自然语言模型进入巨量化参数时代,模型算力需求迈上新台阶。当前大规模的自然语言模型进入了千亿参数时代,模型的训练算力显著提升,例如GPT-3模型参数量为1750亿,训练算力需求为3.14E+23
flops,如采用1000块英伟达A100芯片提供算力,需要不间断训练55天,可以估算单次训练租用云服务器的成本是328万美金。大模型在商业化落地之后,大量的客户访问还会带来不菲的运行成本,近期ChatGPT官网每日访客数量接近5000万,估算云上月租金576万美元/每月,头部企业开发大模型竞争力更强。•
后续关注:国产AI芯片及大模型相关应用落地。算力端重点关注国产AI芯片、英伟达供应链、国内相关企业如
、百度及阿里等的大模型落地情况和相关垂直应用供应商,以及国内公司利用OpenAI技术在海外应用的产品进展。AI芯片昇腾供应链。算法应用端重点关注目录一、NLP算法发展历程介绍二、训练好大模型的要素三、算力需求的展望四、投资逻辑梳理1.1
早期自然语言处理(NLP):基于规则方法/统计方法•
第一阶段(1950s-1980s)基于规则的方法:基于语言学家制定的规则完成相关任务。优点:自由设计,灵活性强;不存在对于训练数据的依赖缺点:研究强度大,泛化能力差;实践性差,无法从训练数据中学习和迭代•
第二阶段(1980s-2000s)基于统计的方法:将语言问题转化为概率问题进行模型构建。优点:数据驱动;相较于规则模型泛化能力强缺点:受训练数据集的影响大;缺乏对于语言知识的考虑;模型可解释性差图表:基于规则的方法图表:基于统计的方法语言规则(例):“from”
总是指某些东西最初来自哪里,所以我们用ORIGIN标记它。“to”总是指某些东西的去向是哪里,所以用DESTINATION标记它。资料:easyAI,中信建投资料:CSDN,中信建投1.2
四大核心进展推动神经网络方法在NLP领域发展•
第三阶段(2000s至今):基于神经网络的方法逐步发展并得到大幅提升优点:数据驱动力更强,泛化能力更强,逐步挖掘语言知识缺点:数据需求大(质量/数量),训练成本高;可解释性有限•
核心进展:1)词向量的应用明确了训练目标,构建起语义信息和数据之间的桥梁2)LSTM/注意力机制增强上下文理解能力,提高语义信息学习能力3)Transformer推动串行走向并行优化计算结构,大幅提升算法和语言模型的训练速度4)预训练明确了训练思路,解决了数据量不足的问题,降低了模型应用的门槛•
我们认为以上核心进展,推动了自然语言理解走向大模型,推动了语义理解和生成的大幅提高,并在更多场景落地应用。图表:基于神经网络的自然语言处理重要算法时间轴早期神经网络语言模型部分解决长程依赖开启预训练大模型时代2018
2018引入RLHF2003NNLM2013word2vec2014glove2015LSTM2017Transformer2019GPT-22020GPT-32022InstructGPT/ChatGPTELMO
GPT/BERT不断发掘模型容量和数据量增加带来的性能提升词向量开始被重视注意力机制挖掘语义关联word2vec模型示意图LSTM模型示意图Transformer模型示意图GPT模型示意图资料:GoogleScholar,机器之心,OpenAI,CSDN,中信建投1.3
Word2Vec:词向量构建起语义信息和数据之间的桥梁•
词向量(word
embedding)在早期的神经网络语言模型中便已经出现,但一直没有受到重视和关注,直到word2vec模型开始真正重视起来。•
词向量的重要意义:1)通过数学方法表征了语义信息(例如:通过余弦相似度计算单词相关性)2)相较于过去的方法(独热编码)其表征词汇的矩阵大小被有效控制。•
Word2Vec中词向量的缺陷:缺少对于上下文文本的分析,一词多义问题成为当时限制模型语言分析能力的一大障碍。•
我们认为,词向量的应用,让NLP领域的神经网络训练的训练目标变得明确,为后续模型的发展奠定了基础。图表:利用Word2Vec产生单词对应的词向量图表:Word2Vec产生的词向量能够反映单词之间的语义关系(二维)维度1相似语义关系的词组具有相似的向量关系例:国家和首都的关系(红框)形容词比较级之间的关系(蓝框)维度2资料:飞桨AI
studio,中信建投资料:飞桨AI
studio,中信建投1.4
RNN/LSTM/ELMO:逐步强化模型分析上下文能力•
RNN(循环神经网络)解决了短程时序依赖问题:对于较短的序列,RNN可以结合少量的前文来分析后文,但当序列较长时,由于梯度消失/爆炸,模型难以学到远距离的信息。•
LSTM(长短期记忆)部分解决了长程时序依赖问题:LSTM引入了“遗忘”的结构,在信息传递过程中改善了“信息过长,信息丢失”的问题,进而使得模型可以学到相对远距离的信息。但其效果依然有限,串行计算也显著影响了训练效率。•
ELMO完善了上下文时序依赖问题:采用双向LSTM结构,同时学习上下文信息。•
我们认为,LSTM/ELMO强化了模型分析上下文的能力,进而增强了模型的语义理解能力,较好解决了一词多义问题。举例
短程依赖:对于问题“我的母语是____”,可以通过“母语”确定后面填空应当为一种语言,这个过程便是短程依赖;长程依赖:但如果需要通过文章开头的句子来进一步确定问题的答案,例如“我的故乡是中国,……,我的母语是____”,基于文章开头的“故乡是中国”,来判定此处填空应当为“中文”,此时对于更远距离的文本内容的学习便是长程依赖。图表:RNN结构图表:LSTM结构图表:ELMO结构右向的红色箭头表示当前时刻的输出参与下一时刻的计算遗忘门:决定向下传递中需要保留的内容Xt为当前时刻的输入ht为当前时刻的输出绿色部分相当于RNN结构的A资料:CSDN,BERT:Pre-training
ofDeepBidirectional
Transformers
for
Language
Understanding
,中信建投1.5
注意力机制增强语义关联,赋予模型并行运算能力•
核心思路:从文本中有选择地筛选出少量重要信息并聚焦到这些重要信息上,忽略不重要的信息。•
实现方法:单独计算目标单词和全文所有单词的“重要性”,进而理解单词和句子在语境中的含义。•
重要意义:1)解决了“信息过长,信息丢失”问题:任意位置词向量可关联计算,一次性获得局部和全局信息的关联。2)拥有并行能力:每个单词词向量的计算不依赖于前个单词词向量,可实现并行计算。3)赋予了词向量新的内涵:提供了一些可解释性(句法层面的特征),如句子结构中主语和谓语之间的关系•
缺陷:对序列中的位置信息缺少考虑(后续通过在词向量中加入位置信息解决)•
变种:Self-Attention、Masked
Self-Attention、Multi-Head
Self-Attention等图表:不同注意力机制的含义图表:注意力机制获得的单词间重要性关系(Self
Masked
Attention)1.红色为目标单词,颜色越深表示重要性越强;例如对于第四句的chasing来说,“FBI”和“is”相对“The”是更重要的单词Attention考虑对于查询语句中的词语而言重要的信息2.因为其采用的是Self
MaskedAttention,因此计算的是和前文单词之间的重要性。Self
Attention考虑对于文章自身的每个单词而言重要的信息只考虑当前及过去的文本信息的重要性,不考虑未来的文本信息的重要性Masked
AttentionMulti-Head
Attention考虑对于同一词语的不同含义重要的信息,再将结果“组合”起来资料:中信建投资料:知乎,中信建投1.6
预训练的应用:弥补训练数据量不足,降低模型应用门槛•
预训练模型原理:对于语言/图像处理而言,其浅层特征是通用的:底层网络参数在面对不同任务时均可以复用。但随着网络层数增加,越深层的特征与具体任务的相关性便越强。例如人、车、大象图像的浅层特征都是线条和轮廓。因此在模型浅层部分通过海量数据的预训练(Pre-training),再根据具体下游场景训练深层特征做微调(Fine-tuning)。•
我们认为,预训练的应用是具有跨时代意义的。一方面其解决了因神经网络日益复杂而带来的数据需求日益增加的问题。另一方面,基于海量数据预训练后的模型,下游具体任务的训练速度被大大加快,准确度也进一步提高。图表:图像识别任务中浅层特征与深层特征的示意图图表:预训练模型:基础知识学习+具体任务学习直接训练模型英文法律文书撰写英文法律文书知识海量英文法律文书相关数据不同的下游任务中深层特征具有较大差异预训练下游具体任务的微调法律文书知识英文法律文书撰写英文小说创作英文知识海量数据少量法律文书相关数据加速了下游任务的训练速度减少了下游任务的数据需求小说知识少量小说相关数据不同的下游任务中浅层特征具有通用性资料:Improving
Language
Understanding
byGenerative
Pre-Training
,中信建投资料:CSDN,中信建投1.7
集大成者:Transformer正式开启预训练大模型时代•
Transformer模型的核心结构是:编码器(encoder)-解码器(decoder)•
工作原理:对于Transformer最初应用的翻译任务而言,其过程为输入文本通过encoder编码,经过多层注意力增强机制提取特征后,学习并理解语句含义转为词向量,再由decoder解码,基于前文词向量生成文本,完成翻译任务。•
共同点:encoder和decoder都采取了多层多头注意力进行特征提取和学习,能够深入挖掘文本的语义关联信息•
差异点:encoder:同时对上下文进行理解,有更强的语言理解能力。decoder:使用多头掩码注意力机制,将输入文本当前词以后的单词掩盖(masked)进行训练,这与语言生成过程逻辑一致(由前往后逐词生成,下一个单词只与前文信息相关),因此decoder拥有更强的文本生成能力。综上,encoder对上下文的理解类似于“完形填空”,有更强的理解能力。而decoder类似根据题目写作文,有更强的生成能力。图表:Transformer模型结构图表:Transformer模型结构简图多头掩码自注意力机制多头自注意力机制资料:CSDN,中信建投资料:Attention
is
all
you
need,中信建投1.8
基于Transformer,BERT&GPT分别采取了不同的策略•
GPT:建立在
Transformer
Decoder
的基础上、具有良好的自然语言生成能力,然而当前词的语义只能由其前序词决定,因此在语义理解上不足。一定程度上牺牲语义理解能力,换取更强的生成能力。•
BERT:建立在Transformer
Encoder
的基础上,并使用了与其配套的掩码训练方法。虽然使用双向编码让
BERT
文本生成能力被削弱,但是
BERT
的语义信息提取能力更强。•
二者均采用预训练方法:第一阶段使用大规模无标签语料训练基础语言模型。第二阶段根据指定任务的少量带标签数据进行微调训练。•
我们认为:1.
Transformer创新性架构设计为后续的语言模型奠定基础,开启了预训练大语言模型的时代。•
2.谷歌和OpenAI引领大模型发展:谷歌和OpenAI先后于2018年提出基于Encoder的BERT和基于Decoder的GPT。谷歌在3年后加入OpenAI的Decoder路线,但在时间上处于落后。OpenAI在模型中引入人工反馈,并推出了生成能力极强的ChatGPT,引领全行业。图表:Google和OpenAI在语言模型中的发展时间线图表:BERT&GPT示意图资料:BERT:Pre-training
ofDeepBidirectional
Transformers
for
Language
Understanding,公司官网,中信建投1.9
GPT
1-3:不断发掘模型容量和数据量增加带来的性能提升•
GPT-1使用了BooksCorpus数据集,这个数据集包含
7,000本没有发布的书籍。1.
数据集拥有更长的上下文依赖关系,使得模型能学得更长期的依赖关系;2.
这些书籍因为没有发布,所以很难在下游数据集上见到,更能验证模型的泛化能力。•
GPT-2的文章取自于Reddit上高赞的文章,命名为WebText。数据集共有约800万篇文章,累计体积约40G。为了避免和测试集的冲突,WebText移除了涉及Wikipedia的文章。
GPT-2训练了4组不同的层数和词向量的长度的模型:12/768,24/1024,36/1280,48/1600,滑动窗口大小为1024(一次性对于上下文的1024个单词进行关联语义挖掘)。•
GPT-3共训练了5个不同的语料,分别是低质量的Common
Crawl,高质量的WebText2,Books1,Books2和Wikipedia。
GPT-3采用了
96层的96头transformer;词向量的长度是
12,888;滑动窗口大小提升至
2,048•
我们认为,在Transformer模型的广泛应用中,参数量和预训练数据量的提升,快速提升了模型的表现能力。千亿级参数量的模型开始不断出现。图表:GPT系列模型的参数量与数据量不断提升模型GPT发布时间2018.62019.22020.5参数量1.17亿15亿预训练数据量约5GBGPT-2GPT-340GB1750亿45TB资料:机器之心,中信建投1.10
GPT
1-3:针对下游任务输入的不断革新•
GPT1-3的下游任务训练方法:GPT-1:针对不同下游任务,通过特殊格式的少量标注数据集进行训练(提供特殊格式的例子)。GPT-2:zero-shot,完全不提供例子,直接使用自然语言描述问题(task
description),但实际效果有限。GPT-3:zero-shot/one-shot/few-shot,不提供/提供1个/提供少量几个例子,让模型完成相应的下游任务。•
我们认为,随着模型参数量和预训练数据量的增大,模型对通用任务的处理能力显著提升,对下游微调的依赖性减弱。一方面,模型已经在庞大的预训练数据量中学习了相关知识;另一方面,少量的微调数据难以调整巨大的神经网络模型。图表:GPT-1对于不同下游任务的训练数据格式图表:GPT3采用的zero-shot/one-shot/few-shot方法(左)与对应性能(右)资料:Improving
Language
Understanding
byGenerative
Pre-Training,Language
Models
areFew-Shot
Learners,中信建投1.11
GPT3—ChatGPT:引入基于人类反馈的强化学习•
基于人类反馈的强化学习(RLHF)就是通过人类的反馈去规范学习的过程:1.使用人工标注形成标准答案:在ChatGPT的兄弟版本InstructGPT中,40位人工标注员针对一个详细说明了下游任务的数据集,完成了13000个问答,基于这些这些问答组成的训练数据来调整模型。2.训练一个奖励模型:针对模型给出的相同问题的多个回答,然后人工给这些问答对按一些标准(可读性、无害、正确性等)进行排序,训练一个奖励模型/偏好模型来打分(reward
model)。3.
持续更新网络参数,在奖励模型的激励下使模型生成的答案不断趋近于定义的标准答案。图表:InstructGPT引入人类反馈的强化学习示意图图表:ChatGPT能力的语言生成能力大语言模型的预训练过程海量的训练数据基础世界知识上下文学习能力存储知识的能力遵循不同指令的能力大语言模型中的海量参数广泛的指令学习生成符合人类预期的答案的能力基于人类反馈的强化学习资料:Training
language
models
to
follow
instructions
with
human
feedback,"How
does
GPT
Obtain
its
Ability?
Tracing
Emergent
Abilities
ofLanguage
Models
to
their
Sources",中信建投1.12
ChatGPT与Bard对比•
2022年11月30日,OpenAI发布聊天机器人ChatGPT,基于GPT-3模型,为微软主导,能够模拟人类语言行为,与用户进行自然交互;2023年2月6日,谷歌发布Bard聊天机器人,基于大语言模型LaMDA。LaMDA包含1370亿个参数量,
预训练数据为1.56T
;GPT-3包含1750亿个参数量,预训练数据量为45TB。•
在训练方式上,ChatGPT在GPT-3基础上加入了人类反馈强化学习(RLHF),采用人工标注的方式将自然语言和强化学习结合起来,极大提升了模型的效率和学习能力。•
在数据集上,虽然原始LaMDA预训练数据量不如GPT-3,但Bard数据更新且与谷歌搜索引擎集成后能访问大量数据,在获取信息的深度和广度方面要比ChatGPT大,与ChatGPT相比,Bard模型具有明显的数据量优势。•
除以上区别外,还存在ChatGPT内嵌了抄袭检测工具、Bard目前只应用在搜索中、Bard是免费的而ChatGPT有付费选项等区别。图表:ChatGPT与Bard区别ChatGPTBard集成在谷歌搜索中,只需要更改谷歌设置即可获得BardAI搜索结果可以在ChatGPT网站进行访问,但只有文本响应数据集来自2021年及以前的数据库基于GPT数据来自互联网,有比ChatGPT更新的数据基于LaMDA服务有免费的也有付费计划选项服务是免费的内置了名为GPT-2OutputDetector的抄袭工具没有内置抄袭检测工具仍然处于测试阶段目前已经发布资料:谷歌,微软,中信建投1.13
KOSMOS-1—从大语言模型到多模态大语言模型•
微软发布多模态大型语言模型(MLLM)KOSMOS-1。其基于Transformer模型,不但可以完成文本学习、指令遵循、上下文学习、文本生成等任务,还能够将文本以外的模态(如视觉图像、语音)嵌入到模型中,进而完成多模态的下游任务。研究证明,在多个下游任务中,该模型具有非常优异的性能。•
其训练数据集包括文本语料库、图像
-
字幕对、图像和文本交叉数据集;模型的参数总量为16亿。•
重要意义:多模态感知是实现通用人工智能的重要条件,多模态技术的发展将进一步增强人工智能的知识获取能力和高价值场景应用能力•
我们认为,多模态大语言模型蕴含着更广泛的应用场景和更高的商业价值,将成为未来人工智能行业发展重要的竞争赛道,多模态技术的成熟也将进一步加速人工智能技术在不同场景的落地应用。图表:KOSMOS-1在视觉问答方面的测试样例图表:KOSMOS-1在图像对话/逻辑问答方面的测试样例资料:LanguageIsNot
AllYouNeed:
Aligning
Perception
with
Language
Models,机器之心,中信建投1.14
预训练自然语言大模型学术研究情况•
预训练自然语言的大模型相关研究得到爆发式发展。2017年Transformer模型诞生之后,随即被应用到自然语言、视觉识别等诸多领域,2018年自然语言预训练大模型的概念逐渐兴起,通过在web
of
science上检索
pre-trained
language
model(PLM),我们发现自2018年之后,预训练大模型得到了学术圈的广泛研究,相关学术论文数量也呈现爆发式增长。•
2022年大部分企业都加大了自然语言大模型的研发力度。通过对相关企业的文献数量研究,我们能够窥测到:微软、谷歌在自然语言大模型领域进入较早且持续投入较大。整体来看,大部分企业在2022年都加快了自然语言模型的研发进程,在ChatGPT爆火之后,自然语言大模型领域将迎来新一轮的研究浪潮。图:大模型的相关学术研究论文数量图:不同企业的大模型学术论文的发表频次6005004003002002018201920202021202250314121083276157410002413110微软阿里巴巴谷歌百度脸书IBM201820192020202120222023资料:Web
Of
Science,中信建投目录一、NLP算法发展历程介绍二、训练好大模型的要素三、算力需求的展望四、投资逻辑梳理2.
训练好大模型的要素1、大模型的性能往往随着模型参数量增加而增加,这是可以从小模型推断出来的;2、某些情况下,大模型的参数增加到一定程度,模型性能会有一些突破性,这不能从小模型进行推断,被称为大模型的突现能力。模型参数训练准备1、模型的数据量与模型参数数量同等重要,模型数据量要和参数量保持相同速度增长;训练数据2、高质量、干净的数据集会对模型预训练产生较好的性能提升。1、模型需要更充分的预训练,包括增大batchsize和步长;2、增大预训练难度可以提升模型性能。预训练模型训练微调Prompt、Fine-tune提高模型在下游场景的表现训练效率训练环境并行计算、显存优化与模型稀疏性是提升训练效率的三种方式2.1
大模型与小模型界定•
大模型,又称为基础模型或者大规模预训练模型,是“大算力+强算法”结合的产物,大模型是人工智能发展的趋势和未来。•
大模型的一般训练过程:数据获取-数据清洗-大模型训练-下游适配-终端应用•
大模型与小模型没有非常清晰的界定,站在当前时点来看,大模型一般具备如下特征:
参数量(十亿量级)和训练数据量(GB以上)巨大,一般采用transformer架构;
采用预训练模式,在通用数据集上进行预训练,而不是直接在特定数据集进行特定任务的训练;
具备迁移学习能力,迁移学习的思想是将从一项任务(例如,图像中的对象识别)中学到的“知识”应用到另一项任务(例如,视频中的行为识别)中,在Zero/One-shot中具有较好的表现,即训练样本很少或者没有的情况下,仍有较好性能。
模型的训练过程依赖云端设备,无法在离线个人终端上实现;图表:大模型的训练及应用过程数据获取数据清洗大模型训练下游适配终端应用资料:On
the
Opportunities
and
Risks
of
Foundation
Models,中信建投2.2
大模型与小模型建模过程的差异性•
在训练步骤方面。大模型的训练过程主要包含如下步骤:数据获取→数据清洗
→大模型训练→下游适配→终端应用,小模型的训练过程主要包含如下几个步骤:任务制定→数据获取→数据清洗
→模型训练→模型调试→终端应用。训练过程的差异性主要存在于以下两个步骤中:•
在数据获取环节方面,大模型的训练文本一般是通用数据集,其训练文本并未针对特定领域进行筛选。小模型的训练过程中首先制定任务目标,针对特定目标搜选训练数据集,适用于监督学习的数据集同时需要标注员进行人工标注。•
在训练模式方面,大模型一般采用预训练模式,训练过程中并未针对下游特定任务,训练之后需要fine-tune(微调)去在下游应用领域适用。小模型在训练时包含特定任务,训练结束后经过一定的参数微调,便可应用到下游领域。图表:“源”模型数据预处理流程图图表:BERT模型的预训练过程和下游任务微调资料:浪潮信息,
BERT:Pre-training
ofDeep
Bidirectional
Transformers
forLanguage
Understanding,中信建投2.3
如何训练好一个大模型:增加模型参数及复杂度•
模型参数量对大模型的性能有重要影响,大模型的性能往往随着模型参数量的增加而上升,多数是可以预见的,模型性能通常是依靠知识和简单的文本操作来提高。大模型还存在一种不可预见现象,被称为大模型的突现能力(emergent
abilities
orbreakthroughness),指在特定任务中,伴随着模型参数量的增加,会发生一些不存在于小模型的现象,这种现象不能简单通过推断小模型的性能改进进行预测,约有5%的大模型任务会出现大模型的突现能力。•
在一定程度上堆叠更多的网络层数,提升模型复杂度,有利于提升模型效果。例如,GPT-1为12层网络,GPT-2将Transformer堆叠的层数增加到48层,GPT-3则为96层。此外,增加模型中词向量长度,放大每层网络中的构件大小等均能提升模型效果。图表:模型性能随参数量上升图表:随着参数量上升大模型性能具有突破性资料:EmergentAbilities
ofLarge
Language
Models,Quantifying
and
extrapolating
the
capabilities
oflanguage
models,中信建投2.4
语言模型对训练数据量提出更高需求•
在大模型中,模型参数量大小和训练数据量应该以大致相同的速度增长。•
大模型普遍训练不足的问题:DeepMind的最新论文中审视了当前的模型发展,发现普遍存模型的大小与训练数据量不匹配。因为在过去,业界普遍认为大模型表现和参数量高度相关。但在实际训练中,算力是对模型最大的制约因素,模型参数不可能无限增长。•
参数量与数据量应匹配:在算力资源有限情况下,如何匹配模型参数量和数据量使得模型表现达到最优,是非常重要的问题。•
DeepMind最新的研究成果表明:对于固定的算力资源,模型参数大小和训练数据的大小是对应的。1)OpenAI过去的工作发现,模型的尺寸应该会比训练数据大小的增加更快。2)DeepMind新研究发现,
模型的尺寸和训练数据的数量应该以大致相同的速度增长。在最优性能曲线(右下图三条直线)中:
DeepMind的Chinchilla
(700亿)
模型,利用原先4倍的训练数据量,获得了参数量和性能的最优匹配。可以看到Gopher(2800亿)、GPT-3(1750亿)、MT-NLG
(5300亿)等模型的训练量明显不足,造成了对算力的浪费。图表:DeepMind训练大模型的参数图表:DeepMind发现很多大模型参数量应该有所降低ModelSize(#
Parameters)
Training
TokensLaMDAGPT-3137
Billion175
Billion178
Billion280
Billion530
Billion70
Billion168
Billion300
Billion300
Billion300
Billion270
Billion1.4
TrillionJurassicGopherMT-NLG
530BChinchilla资料:TrainingCompute-Optimal
Large
Language
Model,State
ofAI2022,中信建投2.5
高质量的数据集可能更为重要•
对于大型语言模型而言,数据质量可能更为重要。数据质量包括数据准确度、信息含量以及数据类型的多样性等。•
多年前谷歌提出的T5预训练模型,使用其专门构造的C4数据集(Colossal
Clean
CrawledCorpus),该数据集是从Common
Crawl网站上抓取数百个千兆字节干净的英文文本,从而使得模型训练后,性能有较好的表现。•
除了构造高质量、干净的数据集外,对不同质量的数据在训练中赋以不同的训练占比也是提升训练效果的方法。例如,GPT-3中数据集包括Common
Crawl在内的五类数据,但该模型并非根据数据量大小赋予同比例权重,而是将质量较高的维基百科数据在训练集中给予更大的单数据量占比。•
阿伯丁大学等相关学者(资料据会在2030到2050年用光,而低质量图像数据会在2030到2060年用光。2)对训练数据集进行了估算,结论到2026年左右,高质量的
NLP
数据将会用光,低质量
NLP
数图表:T5模型C4数据集表现(前四类数据集是C4或者基于C4的变体)图表:GPT-3数据集DatasetSize
GLUE
CNNDM
SQnAD
SGLUE
EnDe
EnF
EnRoQuantityWeight
inEpochs
elapsedwhenDataset(tokens)
trainingmix
trainingfor
300BtokensC4745GB
83.286.1TB
81.4635GB
83.8317GB
84.0316GB
81.8519.2419.1419.2319.3119.3119.2880.8878.7880.3981.4281.2982.0871.36
26.98
39.82
27.6568.04
26.55
39.34
27.2172.38
26.75
39.90
27.4871.40
26.80
39.74
27.5968.01
26.94
39.69
27.6773.24
26.77
39.63
27.57C4,unfilteredRealNews-likeWebText-likeWikipediaCommonCrawl
(filtered)
410billion60%22%8%0.442.9WebText2Books119billion12billion55billion3billion1.9Books28%0.433.4Wikipedia
+
TBC
20GB
83.65Wikipedia3%资料:1.
Exploring
theLimits
ofTransfer
Learning
with
aUnified
Text-to-Text
Transformer
,2.Will
werunoutofdata?
Ananalysis
ofthe
limits
ofscaling
datasets
inMachine
Learning
,3.Language
Models
are
Few-Shot
Learners,中信建投2.6
大模型需要更充分的预训练•
大模型预训练阶段主要通过在一定程度上增大batchSize(每一组数据的大小)和步长(在数据上移动的长度)实现。•
典型的增大batchsize与步长的模型是BERT的改进版本RoBERTa。RoBERTa是稳健优化的BERT方法,使用动态掩码、更大的batchsize以及字节对编码等进行优化。•
RoBERTa在BERT的基础上,通过增大batchsize(8K)和步长(100K->300K->500K),使得BERT得到充分训练,极大提升了原始BERT模型的效果。图表:RoBERTa模型使用大的batchSize和增加训练步数不同数据集的准确率SQuAD(v1.1/2.0)ModeldatabszstepsMNLl-mSST-2RoBERTawithBooKs+
WIKI+additional
data(§3.2)+pretrain
longer+pretrain
even
longerBERT
large16GB160GB160GB160GB8K8K8K8K100K100K300K500K93.6/87.394.0/87.794.4/88.794.6/89.489.089.390.090.295.395.696.196.4withBooKs+
WIKIXLNet
large13GB2561M90.9/81.886.693.7withBooKs+
WIKI+additional
data13GB2562K1M94.0/87.894.5/88.888.489.894.495.6126GB500K资料:RoBERTa:ARobustly
Optimized
BERT
Pretraining
Approach,中信建投2.7
增加预训练任务的难度•
大模型在进行预测之前需要进行预训练,如果预训练任务越有难度,则预训练模型则越能高效率学习知识,则最终模型能有更好的性能表现。以BERT为例,BERT有两个预训练任务,分别是单词级的MASK语言模型和句子级的下一句预测NSP模型。•
MASK模型随机选取一部分单词进行屏蔽,要求模型对屏蔽词作出预测。MASK任务中,相较于简单屏蔽一个独立的单词,通过屏蔽连续的单词片段,对模型要求更高,训练效果也最好。•
NSP的主要目的是判断两个句子之间的连贯性,正例由两个连续句子构成,负例的两个句子顺序则是随机的,不具备上下文关系,NSP将连贯性预测和主题预测进行了合并,只需要模型预测句子是否主题相似即可,任务比较简单。在BERT模型的改进版ALBERT中,用SOP代替了NSP,将两个连续出现的句子构造成正例,负例则将连续的句子调换语序,需要模型预测两个句子出现顺序是否正确,模型复杂度增加,但同时模型学到了更多知识,取得了比较好的训练效果。图表:各种语言模型预训练任务ObjectiveInputsTargetsPrefix
language
modelingBERT-styleThank
you
forinvitingmetoyour
party
lastweek
.(original
text)Thank
you
<M>
<M>metoyour
party
apple
week
.party
meforyour
to.last
funyou
inviting
weekThankThank
you
<M><M>metoyour
party
<M>week
.Thank
you
<X>metoyour
party
<Y>week
.Thank
you
metoyour
party
week
.Thank
you
<X>to<Y>week
.Deshuflling(original
text)MASS-style(original
text)l.i.d.noisE,replace
spansl.i.d.noise,
droptokensRandom
spans<X>forinviting
<Y>last
<Z>forinvitinglast<X>forinviting
me<Y>your
party
last
<Z>资料:Exploring
theLimits
ofTransfer
Learning
with
aUnified
Text-to-Text
Transformer,中信建投2.8
Fine-tune、Prompt提高模型下游任务表现•
大型语言模型预训练之后,需要进行微调。Fine-tune方法将预训练模型在具体的下游任务上进行微调,以获得更好的应用效果。但是这种策略一方面需要保存大量的主干参数的数据且需要大量训练数据,成本较高;另一方面,在上下游任务目标差异大时,微调难以解决问题;同时,不改变大部分参数,只针对输出部分进行调整,会导致过拟合问题。•
Prompt方法主要通过改造下游任务的模板来缩小预训练和微调时的差异,降低微调成本,提高模型在下游的应用效果。最大的优点是零/小样本,解决了Fine-tune最大的痛点。Prompt的设计分为模板设计、答案搜索和答案映射三步。•
Prompt模板的设计方法主要分为人工构建模板、离散模板和连续模板三种。其中,人工构建的模板具有直观、高效的特点,但是费时费力难度较大;离散模板对专业知识的要求较低,但是在部分任务上性能不佳;连续模板在部分场景下性能超过Fine-tune,但是训练时间长、收敛速度慢,与预训练数据可能出现过耦合。图表:连续Propmt和Fine-tune调优效果对比图表:离散Propmt和Fine-tune调优效果对比资料:Prefix-Tuning:
Optimizing
Continuous
Prompts
for
Generation,Autoprompt:
Eliciting
knowledge
from
language
models
with
automatically
generated
prompts,中信建投2.9
并行计算、显存优化与模型稀疏性提升训练效率•
并行计算、显存优化与模型稀疏性设计是提升大模型训练效率的三种技术。•
并行计算通过使用多张显卡训练模型,将任务进行拆解,分配给不同的处理器进行处理,可以提高模型的训练效率。根据不同的维度,分为数据并行、流水线并行、张量并行三种。数据并行是将相同模型权重复制到多个设备,并将一部分数据分配给每个设备同时处理;流水线并行是一种通过将模型并行与数据流水线相结合来加速神经网络训练的方法,核心思想在于模型按层分割成若干块,每块都交给一个设备;张量并行是将一个张量沿特定维度分成若干部分在不同的设备上分别计算。•
显存优化技术能够降低显存占用,提高GPU利用率,与并行计算相结合,节约模型训练的成本,实现在单GPU上训练大模型,包括激活检查点(ActivationCheckpointing)、混合精度训练(Mix
Precision
Training
)以及零冗余优化器(Zero
RedundancyOptimizer
)•
模型稀疏性指的是模型具有非常大的容量,但只有模型的用于给定的任务、样本或标记的某些部分被激活。模型稀疏设计的优点在于输入不会激活整个模型,通过子模型处理不同类的任务,同时共享一部分模型。子模型扩大了模型的容量,但是实际计算成本不会发生明显变化。图表:并行策略图表:零冗余优化器优化过程图表:专家混合模型(MoE)是典型的模型稀疏性方法资料:Diveinto
BigModel
Training,中信建投目录一、NLP算法发展历程介绍二、训练好大模型的要素三、算力需求的展望四、投资逻辑梳理3.1
人工智能模型不同时段的算力需求人工智能模型的算力需求大致可以分为三个阶段:
2010年以前,深度学习尚未得到广泛应用,
主要还是基于统计的方法进行模型搭建,算力需求的增长相对缓慢,大致每20个月翻一倍。
2010-2015年,深度学习模型在传统的自然语言、计算机视觉等领域开始战胜支持向量机等算法,深度学习模型开始成为主流算法,随着神经网络的层数和参数量的提升,算力需求的增长速度也显著加快,大致每6个月翻一倍。
2016年之后,人工智能模型开始进入巨量参数时代,算力需求显著提升。根据英伟达的算力统计显示,自2017年之后,以Transformer模型为基础架构的大模型算力需求提升大致是每2年提升275倍。图表:AI模型的算力需求逐步提升图表:Transformer模型的算力需求显著高于其他模型资料:State
of
AI
Report,英伟达,中信建投3.2
预训练自然语言模型对算力提出更高需求•
随着大规模预训练自然语言模型的提出,模型的训练过程中提出了更高的算力要求。预训练模型通过无需人工标注的大规模文本库进行高算力的预先训练,得到通用的语言模型和表现形式,再经过特定应用环境对预训练模型进行微调,从而在各种下游应用领域得到目标任务的快速收敛和准确率提升。预训练模型在训练过程中不针对下游任务进行训练,模型的泛化学习能力使其具备广泛的下游适应能力,泛化学习能力与模型的参数量密切相关,因而参数巨量化成为预训练模型的典型特征。同时随着训练数据量的显著提升,预训练模型的训练过程中对算力提出了更高的要求。图表:大规模自然语言模型的参数量和算力需求图表:训练大规模自然语言模型的算力需求算力需求(PF-训练数据量(百
算力需求(每参模型算力需求(flops)
参数量(百万)days)万tokens)数·每文本)chatGPTT5-Small2.08E+001.80E+20601,0003T5-BaseT5-Large7.64E+002.67E+011.04E+023.82E+021.89E+006.16E+001.74E+014.93E+012.60E+007.42E+001.58E+012.75E+015.52E+011.39E+022.68E+026.60E+202.31E+219.00E+213.30E+221.64E+205.33E+201.50E+214.26E+212.25E+206.41E+201.37E+212.38E+214.77E+211.20E+222.31E+222207701
,0001
,0001,0001,000250333366666666666T5-3B3,00011,000109T5-11BBERT-BaseBERT-LargeRoBERTa-BaseRoBERTa-LargeGPT-3
SmallGPT-3
MediumGPT-3
LargeGPT-3
XL3552501252,0002,0003003551253563007603001,3202,6506,66012,850300GPT-3
2.7BGPT-3
6.7BGPT3
13B300300300GPT-3
175B3.64E+033.14E+23174,6003006资料:LanguageModels
areFew-Shot
Learners,中信建投3.3
超大规模自然语言模型的算力需求迈上新台阶•
预训练自然语言模型进入千亿参数时代,模型训练算力迈上新台阶。自GPT-3模型之后,大规模的自然语言模型进入了千亿参数时代,2021年之后涌现出诸多千亿规模的自然语言模型,模型的训练算力显著增加。GPT-3模型参数量为1750亿,训练算力需求为3.14E+23
flops,当前各种预训练语言模型还在快速的更新迭代,不断刷新自然语言处理任务的表现记录,单一模型的训练算力需求也不断突破新高。图表:超大规模自然语言模型的发展进程GPT-N
eoX
(20B)GPT-j(6B)M
egatronTuring-N
LG
(137B)BLOOM
(176B)C
h
in
ch
illa(70B)chatG
PTGPT-3(175B)Pan-Gu
(200B)FLAN
(137B)Gopher(280B)OPT
(175B)Ja
n
2022Aug
2022June
2020M
ay
2021Aug
2021Sep
2021M
ay
2022Nov
2022H
yperCLO
VA
(204B)Yuan
1.0
(246B)
LaM
DA
(280B)GLM
(130B)PaLM
(540B)Jurassic-1
Jum
bo
(204B)Ernie
3.0
Titan
(260B)资料:State
of
AI
Report,中信建投3.4
大模型的算力需求主要来自三个环节•
大模型的算力需求主要来自于三个环节:
预训练得到大模型的训练环节。该环节中,算力呈现海量需求且集中训练的特点,大模型通常在数天到数周内在云端完成训练。
适应下游领域时进一步fine-tune环节。算力需求取决于模型的泛化能力以及下游任务的难度情况。
大模型日常运行时的推理环节。该环节中,算力取决于模型的参数量和用户调用量,需求在模型商业化后持续存在且波动较大。图表:大模型算力需求训练算力日常运行时的算力需求书籍文章网络对话商业应用chatGPT、LaMDA等预训练模型数据获取数据清洗模型训练适应下游领域时Fine-tune算力资料:中信建投3.5
英伟达显卡是AI模型算力的主流选择•
英伟达显卡是AI模型中最常用的算力芯片。英伟达显卡凭借较高的灵活性和成熟的软件生态,成为当前AI模型的主流选择,根据学术论文的统计结果,英伟达显卡使用的频次是FPGA的23倍,TPU的78倍。•
英伟达显卡实现人工智能算力的显著提升。从V100-A100-H100的发展路径来看,英伟达显卡实现了FP64、FP32算力能力的持续提升,AI模型的训练速度稳步加快,通过引入FP16、INT8
Tensor
core,实现推理能力的显著提升,单位能耗下的训练和推理能力也实现稳步提升。图表:不同AI芯片在人工智能论文中的出现频次图表:英伟达不同GPGPU的性能参数比对H100A100A800V100型号34679.719.59.77.8FP64(TFlops)19.515.7FP32(TFlops)1979395880624624
-1248
-80FP16Tensor
core(TFlops)INT8Tensor
core(TFlops)12488032900GPUGB)显存(335090020396002039400GPU
GB/s带宽(
)300GB/s互连()700400400300功耗(W)2022.032020.032022.112017.5发布时间资料:State
of
AI
Report,英伟达,中信建投3.6
AI服务器专注实现人工智能加速•
随着AI算力的需求提升,衍生出专注人工智能加速的AI服务器。在小模型时代,AI模型的训练和推理算力需求相对较小,依赖个人终端就可以实现。随着模型参数的逐渐提升,AI模型开始依赖云端算力,云服务器承载了主要的算力需求。当前,AI算力在数据中心的占比进一步提升,衍生出了更加专业化的AI服务器。•
以GPU为主的AI服务器实现人工智能的算力加速。AI服务器多采用异构架构,其中以2CPU+8GPU最为常见,AI服务器具有性能优越、擅长并行计算、高带宽、散热能力强等优点。图表:传统云服务器与AI服务器图表:云服务器与AI服务器的差异AI服务器云服务器AI服务器2
CPU+8
GPU传统云服务器典型配置计算性能适用领域2
CPU侧重串行计算侧重并行计算
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论