如东网站开发关于我们网页设计模板
2026/4/5 7:37:42 网站建设 项目流程
如东网站开发,关于我们网页设计模板,做辅食网站,新乡做网站公司本文为大模型小白解析Transformer核心原理#xff0c;包括其与大模型关系、自注意力机制、多头注意力机制、位置编码及Encoder-Decoder结构。Transformer通过自注意力捕捉序列依赖#xff0c;多头注意力从多角度理解上下文#xff0c;位置编码补充位置信息…本文为大模型小白解析Transformer核心原理包括其与大模型关系、自注意力机制、多头注意力机制、位置编码及Encoder-Decoder结构。Transformer通过自注意力捕捉序列依赖多头注意力从多角度理解上下文位置编码补充位置信息是支撑现代AI的语言模型基石。1、Transformer和大模型之间是什么关系首先你可以把Transformer想象成一种“超级配方”而大模型就是用这个配方做出来的“满汉全席”。举个例子假设你想做一道超级复杂的菜比如佛跳墙但普通锅具传统AI模型只能炒炒青菜火力不够、步骤也麻烦。而 Transformer 就像发明了一种“万能高压锅”火力猛能同时处理大量信息比如一句话的所有词语一起分析而不是逐个字看步骤简用“注意力机制”Attention自动找到关键信息比如理解“猫吃鱼”时自动关联“猫→吃→鱼”的关系可复制这套方法能无限扩展锅越大模型参数越多菜越香效果越好。所以关系就是Transformer 是“方法论”教会AI怎么高效学习而大模型是“实践成果”用这种方法练出来的“全能学霸”。2、Transformer到底是什么了解了大模型和Transformer的宏观关系后现在就要开始真正了解transformer的内核架构了下图就是经典的transformer架构图相信很多同学都已经看到过无数次了 下面我们将真正开始介绍本文的重头戏transformer。Transformer内部结构首先在看transfomer的模型时你可以将该模型图一分为二来看左边是Encoder在有一段语句输入后编码器负责将输入的序列进行编码它可以将输入语句的每个单词向量emmbedding和单词的位置信息position进行融合编码最终会得到一个编码后的矩阵随后将其喂给右侧的Decoder模块进行解码Decoder 依次会根据当前推理过的单词 1~ n 再进行推理下一个单词 n1。只看语言描述有点抽象举一个来看首先假如我们在做一个翻译类型的任务比如我们有一句话我喜欢编码当我们把这句话喂给Transformer时就会有如下的流程第一步获取输入句子的每个单词的特征值也就是常说的embedding但是只获取单词的特征值是不够的因为推理一个句子还需要单词之间的依赖关系所以需要对单词的具体位置进行编码获取到位置的编码信息即位置的embedding后面会详细讲位置信息如何编码的随后将两个Embedding相加即可得到拥有位置信息的编码矩阵如下图所示。Transformer输入句子处理第二步将上面带有位置信息的矩阵X每一行代表一个单词的向量信息输入到6个Encoder中进行编码得到最后的矩阵E如下图所示。矩阵E用表示其中n为句子中的单词数量d为向量的维度论文中的d512Transformer编码图解第三步得到Encoder的编码矩阵E后会将E喂进Decoder进行解码处理Decoder依次会根据当前已经翻译过的单词再推测下一个单词比如当前翻译了“I” 下次需要翻译“like”模型会根据〈begin〉起始符和“I”综合推理翻译“like”这个单词。并且在这个推理过程中存在Mask机制比如你翻译到“I”他会通过Mask盖住“I”之后的单词“like encoding”来进行预测具体流程如下图所示Transformer编码图解3、Encoder和Decoder的核心原理是什么了解了Transformer的大体流程后肯定有很多同学会好奇上文只说了编码和解码那Transformer到底是如何做到的这些呢先别急我们再回到文章的一开始的Transformer架构图可以看到在Encoder、Decoder内部都拥有着两个非常重要的模块Multi-Head-Attention模块和Feed Forward模块。其中Encoder包含一个Multi-Head-Attention模块而Decoder则包含两个Multi-Head-Attention模块不难发现Transformer的核心其实就是这个多头注意力机制那么下面我们就先从这个多头注意力机制进行攻克。3.1 Self-Attention机制要理解多头注意力机制首先要先搞明白注意力机制是什么。你可以把注意力机制想象成人类在阅读时用荧光笔标记重点的过程。比如你读这段话时眼睛会自然聚焦在荧光笔这个关键词上而忽略比如过程这些辅助词。在注意力机制中当它处理一句话时模型会给每个词分配不同的关注值比如翻译那只猫舒服地趴在窗台上生成comfortably这个词时舒服地会获得最高关注值90%趴获得中等关注70%窗台只获得少量关注30%这种动态权重分配让模型能灵活捕捉关键信息就像我们读书时用荧光笔划重点一样然后根据划线部分理解内容。而传统模型在处理这些任务时更像用手电筒看长文章只能照亮当前位置附近注意力机制则像同时打开整个房间的灯还能自动调节每个区域的亮度。这种特性特别适合处理需要联系上下文的任务。了解完Self-Attention大概是什么之后我们接下来看一下Self-Attention具体是怎么运行的接下来内容会偏硬核需要一定的数学基础笔者尽量描述的通俗易懂。Self-Attention 流程图上图是Self-Attention的总体机制流程其实是对Attention计算公式的图形化描述attention计算公式如下3.1.1 公式含义我们先抛开Q K V三个矩阵不谈单论这个公式是什么含义呢首先要搞明白一个矩阵乘它自身的转置矩阵代表了什么。我们知道矩阵本身就是一系列向量的集合一个矩阵乘它自身的转置矩阵就可以理解为这些向量分别和其他的向量做内积而向量内积其实表示的是两个向量的夹角表征一个向量在另一个向量上的投影说人话就两个向量的内积是表示两个向量之间的相似度。用一个例子来看有一个“早上好”的特征矩阵每一行代表这个字的特征向量可以看出来在“早上好”矩阵和“早上好”的转置矩阵做计算时“早”会跟自己以及其他两个字“上”、“好”的向量分别做内积来得到一个新的向量。那这个新的向量有什么意义呢结合我们上面对内积的解释我们可以把它理解为这个值越大说明两个向量的相似度越高值越小说明两个向量之间关系越弱。进一步理解一下这个向量是不是可以在一定程度上不是完全表示在关注词A的时候是不是应给予B词更多的关注。那矩阵的结果是一个矩阵它里面保存了每个向量与自己、以及其他向量进行内积的计算结果。至此我们了解了一个矩阵乘它自己转置矩阵的含义那我们再来看softmax的作用是什么这里不再对softamax公式进行详细介绍只简单介绍意义。softmax的作用就是归一化简单来说经过归一化后会将单行向量的值的和变为1如上图的结果矩阵将由[11,11,10]变为[0.4,0.4,0.2]。归一化的这个结果其实就相当于我们后续乘的X的权重系数。用人话来讲就是当我们关注“早”这个字的时候我们应分配0.4的权重关注它自身分配0.4的权重关注“上”0.2的权重关注“好”。我们理解完了那最后的乘X是什么作用呢如下图所示观察上图行向量X与第一个列向量相乘得到了第一个新的行向量[1.4]且这个行向量与X的的维度相同。那么新的行向量的每一个数值都是由三个词向量在这一维度加权求和后得到的这个新的行向量就代表“早”字经过注意力加权求和后的表示。理解了公式整体的含义之后再看一个细节为什么要除呢其实这个操作只是为了防止QK的结果过大所以会除一个尺度标度而表示query和key的向量的维度如果不对softmax的输入做缩放那么万一输入的数量级很大softmax的梯度就会趋向于0。3.1.2 Q K V含义理解了上面自注意力机制公式的含义后其实QQueryKKeyVValue只是一个公式的入参本质是根据输入矩阵X跟线性矩阵WQ、WK、WV做内积得到的而输入矩阵X则是之前单词的特征向量矩阵X或者上一个Encoder block的输出具体的计算过程如下图所示。Q K V矩阵计算看到这里可能有些同学会有疑问既然都是通过线性矩阵得到的Q、K、V那为什么不使用X矩阵本身呢这个答案其实并不难想本质上使用线性矩阵是为了提升模型的拟合能力因为矩阵W都是可以训练得到的从而起到一个缓冲的效果。一句话总结Q、K、V在自注意力机制里做的事情通过query和key的相似程度来计算出value的权重分布。3.2 Multi-Head Attention机制其实理解了注意力机制后多头注意力机制也是非常好理解的简单来说它是对单层注意力机制的一个叠加模型通过多层计算Q、K、V再将各部分结果拼接最后通过线性化处理得到一个与输入同等维度的结果矩阵多头注意力机制架构图如下所示。Multi-Head Attention机制将上述过程展开叙述首先通过权重矩阵将Q、K、V分割每个Head单独计算self-attention同时因为训练出的也各不相同所以得出的Q、K、V也是不同的因此我们说每个Head的关注点也各有侧重。最后将每个Head得出的结果进行Concat拼接操作然后通过总体权重矩阵决定对每个Head结果的关注程度注意最后的Z矩阵维度和最初输入的X维度相同从而能够做到在不同语境下对相同句子的不同理解。具体图解如下图所示。Multi-Head Attention计算流程4、 位置编码从Transfomer架构图可以看到其实在Encoder之前还有一个模块即位置编码模块。不免有同学好奇为什么需要在Encoder输入之前要进行位置的编码呢其实这也不难理解通过上面的学习我们可以发现在做自注意力机制时它是跟每一个输入的词向量进行内积在这个过程中并没有考虑到词向量的顺序所以这最后得到的结果一定是缺失原来文本的顺序信息的。Transformer内部结构位置信心的Embedding通常有两种方式获得一种是通过训练得到另一种是直接使用公式而Transformer中的位置信息则是采用了后者——公式获得。计算公式如下针对上面的公式进行解释一下pos代表单词的位置2i和2i1则分别代表偶数位置和奇数位置d则代表向量维度和前面单词的embedding维度相同使用该公式有以下几个好处使用公式法能够适应比训练集里所有句子更长的句子场景这么说可能有点绕举一个例子假设我们训练的时候训练集里最长的句子只有100个单词但是现实中我们在推理的时候可能会存在101个单词的场景这时候呢根据公式就可以计算出101单词的位置信息。可以让模型更容易地计算出相对位置。举一个例子假设A单词的位置是pos B单词和A单词之间的位置距离为L那么PEposL则可以由PEpos计算得到。因为Sin(AB) Sin(A)Cos(B) Cos(A)Sin(B), Cos(AB) Cos(A)Cos(B) - Sin(A)Sin(B)根据公式得到位置信息后将单词的Embedding信息和位置Embedding相加就可以得到带有位置信息和单词特征信息的向量而这个向量也正是Encoder的输入。5、Encoder的组成可以看到Encoder的内部除了Multi-Head Attention模块还有Feed Forward Network、Add Norm模块这两个模块都是跟在Multi-Head Attention模块之后做“加强表现”效果的。Encoder架构5.1 FFN模块首先可以看到不论Encoder还是Decoder在做完Multi-Head Attention后都会接一个FFN网络那这个FFN网络到底有什么用呢要搞清这个问题还是要先从原理入手。FFN的计算公式通过公式其实不难得出FFN是由全连接层FC和激活函数Relu组成。其实通过分析公式已经可以得出FFN的作用即对矩阵进行空间的变换引入非线性特征来增强模型的表现能力。FFN模块架构图可能有些同学会存在疑问在Multi-Head Attention的最后其实有线性矩阵的计算已经将结果映射成和输入X相同维度了为什么这里还要增加一个FFN模块笔者认为这里是把向量先线性变化到高维空间再重新变换回来可以得到更加抽象的数据泛化效果更好。当然把FFN模块去掉也可以使用但是效果差了很多。笔者观点有待讨论5.2 Add Norm模块Add Norm 层由 Add 和 Norm 两部分组成其计算公式如下从公式开始分析X为Multi-Head Attention 或者 Feed Forward 的输入从架构图中更能清晰得出MultiHeadAttention(X) 和 FeedForward(X) 则表示输出 。有些同学会疑问这两者是否可以直接相加其实我们看前面所有的技术介绍时可以发现所有的模块在最后都经过了线性的变换从而保证输出和输入的X矩阵维持同样的维度比如在Multi-Head Attention模块最后乘了矩阵保证了输出和输入相同维度。Add是指X MultiHeadAttention(X)和X FeedForward(X)这是一种残差网络通常用于解决深度学习中多层网络训练的问题通过将前一层的信息无差别的传递到下一层从而可以让网络只关注当前差异的部分。具体残差网络的知识不在此展开残差网络Norm模块则代表了Layer Normalization简单来说它的作用是规范优化空间加速训练的收敛。当我们使用梯度下降算法做优化时我们可能会对输入数据进行归一化但是经过网络层作用后我们的数据已经不是归一化的了。随着网络层数的增加数据分布不断发生变化偏差越来越大导致我们不得不使用更小的学习率来稳定梯度。Layer Normalization 的作用就是保证数据特征分布的稳定性将数据标准化到ReLU激活函数的作用区域可以使得激活函数更好的发挥作用。6、Decoder模块的组成从Decoder的架构图中我们可以看到和Encoder层会有一些相似之处但也存在一些差异Decoder存在两个Multi-Head Attention模块而Encoder只有一个Decoder的第一个Multi-Head Attention模块采用了Mask操作Decoder的第二个Multi-Head Attention模块的输入并不止依赖于第一个Multi-Head Attention模块的结果同时依赖了Encoder的输出后面会详细解释Decoder架构6.1 Masked Multi-Head Attention模块首先我们要了解什么是Mask在深度学习中Mask通常表示掩码的意思即它会对某些值进行掩盖处理使在训练中进行参数更新时不会产生效果。而在Transformer模型中它是对未来的内容进行了掩盖处理在t时刻时我们的解码输出只能依赖于t时刻之前的产出而不能依赖t时刻之后的输出。举一个例子我喜欢写代码的翻译是“I like encoding”在t时刻我们预测了“ I”这时候在需要预测like时只能依赖“ I” 而不能依赖“like encoding”进行。所以在transformer里需要想了一个办法把t时刻之后的信息全部给隐藏起来。具体的做法其实也很简单它产生一个上三角的矩阵上三角的值全部为0。把这个矩阵和我们的目标矩阵相乘时便可以做到将t时刻之后的特征全部隐藏。举一个例子假如我们有一个 0 1 2 3 4的单词向量矩阵那它的Mask同样也得是一个5*5的矩阵按照设定我们将上三角的区域全部置为0即绿色区域为非掩盖区黄色为0值区这样在注意力机制算得矩阵后再将其与Mask矩阵进行按位相乘即可得到一个带有掩码的矩阵结果黑色部分为0值后续再乘V矩阵即可得到最终的self-attention的结果。6.2 Decoder的两个Multi-Head Attention模块从Decoder架构图中我们不难看出第一个Multi-Head Attention模块的query key value均来自前一层的Decocder的输出但是加入了Mask操作从而让模型只能attend到前面已经推理过的词语因为在真正推理过程中我们当前是不知道下一个输出词语这是我们之后才会推测到的。而第二级的Multi-Head Attention模块即它的query来自于之前一级的Decoder层的输出但其key和value则来自于Encoder的输出这使得decoder的每一个位置都可以attend到输入序列的每一个位置。这样做的好处是在 Decoder 的时候每一位单词都可以利用到 Encoder 所有单词的信息 (这些信息无需 Mask)Decoder架构7、Transformer如何根据Decoder结果实现预测的解码组件的输出是一个实数的向量我们如何能够把这些浮点数变成一个单词这便是后面的linearsoftmax模块需要做的。线性变换层是一个简单的全连接层神经网络它可以把Decoder产生的向量矩阵投射到一个比它大的多的一个被称为对数几率的向量里logits维度为vocab_size表示模型对每个词汇的“原始分数”。例如词表有 30000 个词则输出一个 30000 维的向量并且每个单元格里都对应某一个单词的分数。最后会通过softmax层把这些分数转换成概率信息概率最高的单元格则会被选中并且它对应的单词作为这个时间步的输出具体流程如下图所示。总结Transformer由Encoder、Decoder、位置编码模块组成Encoder用来对输入序列进行高纬度特征提取并生成编码后的向量信息因为Encoder获取不到序列之间的位置信息所以需要位置编码模块对其进行位置特征的补充从而让模型能够拥有语义信息位置信息的特征Decoder基于已生成的结果和Encoder的输入进行生成最终目标序列Self-Attention 可以同时关注序列中的所有元素而不像传统的 RNN 或 LSTM 那样需要逐步处理。这使得它能够并行计算训练速度更快同时也能更好地捕捉长距离依赖关系。Multi-Head Attention 实际是多个Self-Attention机制的叠加它的作用是让模型能够同时从多个角度捕捉输入序列中不同位置之间的依赖关系从而更全面地理解上下文信息一句话总结Transformer的作用可以处理序列数据如文本、语音等并能够高效地捕捉序列中元素之间的依赖关系从而完成各种复杂的语言任务。如何学习大模型 AI 由于新岗位的生产效率要优于被取代岗位的生产效率所以实际上整个社会的生产效率是提升的。但是具体到个人只能说是“最先掌握AI的人将会比较晚掌握AI的人有竞争优势”。这句话放在计算机、互联网、移动互联网的开局时期都是一样的道理。我在一线科技企业深耕十二载见证过太多因技术卡位而跃迁的案例。那些率先拥抱 AI 的同事早已在效率与薪资上形成代际优势我意识到有很多经验和知识值得分享给大家也可以通过我们的能力和经验解答大家在大模型的学习中的很多困惑。我们整理出这套AI 大模型突围资料包✅ 从零到一的 AI 学习路径图✅ 大模型调优实战手册附医疗/金融等大厂真实案例✅ 百度/阿里专家闭门录播课✅ 大模型当下最新行业报告✅ 真实大厂面试真题✅ 2025 最新岗位需求图谱所有资料 ⚡️ 朋友们如果有需要《AI大模型入门进阶学习资源包》下方扫码获取~① 全套AI大模型应用开发视频教程包含提示工程、RAG、LangChain、Agent、模型微调与部署、DeepSeek等技术点② 大模型系统化学习路线作为学习AI大模型技术的新手方向至关重要。 正确的学习路线可以为你节省时间少走弯路方向不对努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划带你从零基础入门到精通③ 大模型学习书籍文档学习AI大模型离不开书籍文档我精选了一系列大模型技术的书籍和学习文档电子版它们由领域内的顶尖专家撰写内容全面、深入、详尽为你学习大模型提供坚实的理论基础。④ AI大模型最新行业报告2025最新行业报告针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估以了解哪些行业更适合引入大模型的技术和应用以及在哪些方面可以发挥大模型的优势。⑤ 大模型项目实战配套源码学以致用在项目实战中检验和巩固你所学到的知识同时为你找工作就业和职业发展打下坚实的基础。⑥ 大模型大厂面试真题面试不仅是技术的较量更需要充分的准备。在你已经掌握了大模型技术之后就需要开始准备面试我精心整理了一份大模型面试题库涵盖当前面试中可能遇到的各种技术问题让你在面试中游刃有余。以上资料如何领取为什么大家都在学大模型最近科技巨头英特尔宣布裁员2万人传统岗位不断缩减但AI相关技术岗疯狂扩招有3-5年经验大厂薪资就能给到50K*20薪不出1年“有AI项目经验”将成为投递简历的门槛。风口之下与其像“温水煮青蛙”一样坐等被行业淘汰不如先人一步掌握AI大模型原理应用技术项目实操经验“顺风”翻盘这些资料真的有用吗这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理现任上海殷泊信息科技CEO其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证服务航天科工、国家电网等1000企业以第一作者在IEEE Transactions发表论文50篇获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。资料内容涵盖了从入门到进阶的各类视频教程和实战项目无论你是小白还是有些技术基础的技术人员这份资料都绝对能帮助你提升薪资待遇转行大模型岗位。以上全套大模型资料如何领取

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询