证券研究报告|2023年04月24日 电子AI+系列专题报告(一) AI大语言模型的原理、演进及算力测算 行业研究·行业专题电子 投资评级:超配(维持评级) 证券分析师:胡剑 证券分析师:胡慧 证券分析师:周靖翔 证券分析师:李梓澎 联系人:詹浏洋 021-60893306 021-60871321 021-60375402 0755-81981181 010-88005307 hujian1@guosen.com.cnS0980521080001 huhui2@guosen.com.cnS0980521080002 zhoujingxiang@guosen.com.cnS0980522100001 lizipeng@guosen.com.cnS0980522090001 zhanliuyang@guosen.com.cn 机器学习中模型及数据规模增加有利于提高深度神经网络性能。 人工智能致力于研究能够模拟、延伸和扩展人类智能的理论方法及技术,并开发相关应用系统;其最终目标是使计算机能够模拟人的思维方式和行为。机器学习是一门专门研究计算机如何模拟或实现人类的学习行为、以获取新的知识或技能、重新组织已有的知识结构使之不断改善自身性能的学科,广泛应用于数据挖掘、计算机视觉、自然语言处理等领域。深度学习是机器学习的子集,主要由人工神经网络组成。与传统算法及中小型神经网络相比,大规模的神经网络及海量的数据支撑将有效提高深度神经网络的表现性能。 Transformer模型架构是现代大语言模型所采用的基础架构。 Transformer模型是一种非串行的神经网络架构,最初被用于执行基于上下文的机器翻译任务。Transformer模型以Encoder-Decoder架构为基础,能够并行处理整个文本序列,同时引入“注意机制”(Attention),使其能够在文本序列中正向和反向地跟踪单词之间的关系,适合在大规模分布式集群中进行训练,因此具有能够并行运算、关注上下文信息、表达能力强等优势。Transformer模型以词嵌入向量叠加位置编码作为输入,使得输入序列具有位置上的关联信息。编码器(Encoder)由Self-Attention(自注意力层)和FeedForwardNetwork(前馈网络)两个子层组成,Attention使得模型不仅关注当前位置的词语,同时能够关注上下文的词语。解码器(Decoder)通过Encoder-DecoderAttention层,用于解码时对于输入端编码信息的关注;利用掩码(Mask)机制,对序列中每一位置根据之前位置的输出结果循环解码得到当前位置的输出结果。 GPT是基于Transformer架构的大语言模型,近年迭代演进迅速。 构建语言模型是自然语言处理中最基本和最重要的任务之一。GPT是基于Transformer架构衍生出的生成式预训练的单向语言模型,通过对大量语料数据进行无监督学习,从而实现文本生成的目的;在结构上仅采用Transformer架构的Decoder部分。自2018年6月OpenAI发布GPT-1模型以来,GPT模型迭代演进迅速。GPT-1核心思想是采用“预训练+微调”的半监督学习方法,服务于单序列文本的生成式任务;GPT-2在预训练阶段引入多任务学习机制,将多样化的自然语言处理任务全部转化为语言模型问题;GPT-3大幅增加了模型参数,更能有效利用上下文信息,性能得到跨越式提高;GPT-3.5引入人类反馈强化学习机制,通过使用人类反馈的数据集进行监督学习,能够使得模型输出与人类意图一致。 大语言模型的训练及推理应用对算力需求带来急剧提升。 以GPT-3为例,GPT-3参数量达1750亿个,训练样本token数达3000亿个。考虑采用精度为32位的单精度浮点数数据来训练模型及进行谷歌级访问量推理,假设GPT-3模型每次训练时间要求在30天完成,对应GPT-3所需运算次数为3.15*10^23FLOPs,所需算力为121.528PFLOPS,以A100PCle芯片为例,训练阶段需要新增A100GPU芯片1558颗,价值量约2337万美元;对应DGXA100服务器195台,价值量约3880.5万美元。假设推理阶段按谷歌每日搜索量35亿次进行估计,则每日GPT-3需推理token数达7.9万亿个,所需运算次数为4.76*10^24FLOPs,所需算力为55EFLOPs,则推理阶段需要新增A100GPU芯片70.6万颗,价值量约105.95亿美元;对应DGXA100服务器8.8万台,价值量约175.12亿美元。 产业链相关公司:工业富联、沪电股份、寒武纪、海光信息、国芯科技、全志科技。 风险提示:宏观AI推广不及预期,AI投资规模低于预期,AI服务器渗透率提升低于预期,AI监管政策收紧等。 目录 01人工智能、机器学习与神经网络简介 02 03 Transformer模型结构分析 大规模语言模型算力需求测算(以GPT-3为例) 04 05 产业链相关公司风险提示 一、人工智能、机器学习与神经网络简介 人工智能(ArtificialIntelligence,AI)是研究、开发用于模拟、延伸和扩展人类智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能的最终目标是使计算机能够模拟人的思维方式和行为。 机器学习(MachineLearning,ML)是实现人工智能的一种途径,是一门专门研究计算机如何模拟或实现人类的学习行为、以获取新的知识或技能、重新组织已有的知识结构使之不断改善自身性能的学科。 机器学习包括数据、模型、算法三要素。从实践上来看,机器学习是在大数据的支撑下,通过各种算法让机器对数据进行深层次的统计分析以进行“自学”(训练模型),使人工智能系统获得了归纳推理和决策能力。机器学习作为一套数据驱动方法,已广泛应用于数据挖掘、自然语言处理、机器视觉、搜索引擎、医学诊断、生物特征识别、DNA序列测序、证券市场分析等领域。 图:机器学习训练与推理示意图 资料来源:woshipm,国信证券经济研究所整理 图:机器学习三要素 资料来源:gitbook,国信证券经济研究所整理 深度学习(DeepLearning,DL)是机器学习的子集,由人工神经网络(ANN)组成。深度学习模仿人脑中存在的相似结构,其学习是通过相互关联的“神经元”的深层的、多层的“网络”来进行的。 典型的神经网络从结构上可以分为三层:输入层、隐藏层、输出层。其中,输入层(inputlayer)是指输入特征向量;隐藏层(hiddenlayer)是指抽象的非线性中间层;输出层(outputlayer)是指输出预测值。深层神经网络即包含更多隐藏层的神经网络。 相比于传统机器学习模型,深度学习神经网络更能在海量数据上发挥作用。若希望获得更好的性能,不仅需要训练一个规模足够大的神经网络(即带有许多隐藏层的神经网络,及许多参数及相关性),同时也需要海量的数据支撑。数据的规模及神经网 络的计算性能,需要有强大的算力作为支撑。 图:不同深度的神经网络模型结构示意图图:不同神经网络模型在不同数据量下性能曲线 资料来源:Coursera,吴恩达《深度学习》,国信证券经济研究所整理资料来源:ShowMeAI,国信证券经济研究所整理 传统常见的神经网络模型包括卷积神经网络(CNN)和循环神经网络(RNN)等。其中,卷积神经网络(ConvolutionalNeuralNetwork,CNN)多用于计算机视觉、自动驾驶、人脸识别、虚拟现实、医学领域、人机交互、智能安防等图像应用;相比于标准神经网络,CNN能够更好地适应高纬度的输入数据,卷积设计有效减少了模型的参数数量。 循环神经网络(RecurrentNeuralNetwork,RNN)常用于处理序列数据(例如含有时间成分的音频和文本),获取数据中的时间依赖性。由于语言(无论是英语字母还是汉语汉字)都是逐个出现的,同时语言是时序前后相互关联的数据,因此语言作为最自然表达出来的序列数据,适合应用RNN进行语音识别、情感分类、机器翻译、语言生成、命名实体识别等应用。 循环神经网络(RNN)曾是自然语言处理的首选解决方案。RNN能够在处理单词序列时,将处理第一个词的结果反馈到处理下一个词的层,使得模型能够跟踪整个句子而非单个单词。但RNN存在缺点:由于这种串行结构,RNN无法对于长序列文本进行有效处理,甚至可能当初始单词过远时“遗忘”相关信息。 图:卷积神经网络示意图 图:循环神经网络示意图 资料来源:《深度卷积神经网络的发展及其在计算机视觉领域的应用》,国信证券经济研究所整理资料来源:《深度学习(中文版)》,国信证券经济研究所整理 二、Transformer模型结构分析 《Attentionisallyourneed》byOpenAI 作为与传统的CNN、RNN不同的深度学习模型架构,Transformer模型最初是被用于基于上下文的机器翻译模型。由于Transformer模型非串行结构,能够并行处理整个序列;同时引入“注意机制”(attention),能够在文本序列中正向和反向地跟踪单词之间的关系,适合在大规模分布式集群中进行训练。 Transformer以Encoder-Decoder架构为基础。其中,编码组件由多层编码器(Encoder)组成。解码组件也是由相同层数的解码器(Decoder)组成。Encoder用于提取源端语言的语义特征,而用Decoder提取目标端语言的语义特征,并生成相对应的译文。 Transformer模型具有能够并行运算、关注上下文信息、表达能力强等优势。 图:Transformer模型介绍 图:Transformer最初用于机器翻译图:Transformer以Encoder-Decoder架构为基础 资料来源:《TheIllustratedTransformer》,GitHub,国信证券经济研究所整理 资料来源:《TheIllustratedTransformer》,GitHub,国信证券经济研究所整理 资料来源:《AttentionIsAllYouNeed》,国信证券经济研究所整理 词嵌入是NLP最基础的概念之一,表示来自词汇表的单词或者短语被映射成实数向量。最早的词嵌入模型是word2vec等神经网络模型,属于静态词嵌入(不关注上下文)。例如大模型诞生前常用的RNN模型所用的输入便是预训练好的词嵌入。词向量能够将语义信息与空间 向量关联起来(例如经典的词类比例子:king、queen、man、woman对应词向量的关系)。 词嵌入产生要素及步骤: Vocabulary:所有的token组成集合。 词向量表:token与词向量的一一对应关系。词向量可以由预训练产生,也可以是模型参数。 查表:输入的token都对应一个固定维度的浮点数向量(词嵌入向量)。 位置编码:表示序列中词的顺序,具体方法为为每个输入的词添加一个位置向量。 根据位置编码对应计算公式,pos表示位置,i表示维度。位置编码能够让模型学习到token之间的相对位置关系。 图:经典的词类比例子 资料来源:《TowardsUnderstandingLinearWordAnalogies》,国信证券经济研究所整理 图:带有位置编码的词嵌入向量生成方法图:位置编码对应计算公式 资料来源:《TheIllustratedTransformer》,GitHub,国信证券经济研究所整理资料来源:《AttentionIsAllYouNeed》,国信证券经济研究所整理 编码组件可由多层编码器(Encoder)组成,同样解码组件也由相同层数的解码器(Decoder)组成。 一般来讲,对于中间层的输出向量,底层Encoder输出的表示浅层含义,顶层Encoder输出的表示深层含义。 每个Encoder由两个子层组成:Self-Atte