前言

对于人工智能(AI)中的神经网络结构,大多数人必定都略有耳闻,它来自神经生物学中“神经网络”的高度抽象,输入——传输——输出。不过,在AI模型中,“神经元”并非生物学上的细胞,而是用于存储和处理数据的容器;信息轴也不是电信号在突触上的传递,而是一系列数学函数对目标数值的有向变换。

在传统的前馈神经网络(Feedforward Neural Network, FNN)结构中,各层神经元之间通过有向连接相互传递信息,即信息流动具有明确的方向——由前向后。每一条连接轴都对应一个独立的权重(weight)。同一层(layer)中的所有神经元都会接收来自前一层的相同输入向量,但它们之间相互独立,分别基于各自的权重和激活函数计算输出结果。

neural networks and deeplearning;By Michael Nielsen

卷积神经网络(convolutional neural network,CNN)相比FNN的”各自独立“稍微增加了一点”局部整体性“。在CNN识别图像时,会把某一局部特征(比如水平线/纹理)数值作为整体,这个局部的数值特征即为卷积核K。我们可以把卷积核K视为一个方形扫描仪,当它在输入图像上滑动时,会对每个区域进行特征匹配,探测出与自身模式相似度较高的局部结构。但是每个卷积核只“看到”一种局部信息,识别全局需要多层卷积的堆叠(也就是多个卷积核K对不同特征进行”扫描“)再经历逐层整合,网络才能逐步从局部特征中抽象出更高层次的全局结构。

5*5矩阵的卷积核K”扫描“28*28的输入数值矩阵(图像的像素值)

如果说CNN可以有效地处理空间信息,那么循环神经网络(recurrent neural network,RNN )则可以更好地处理序列信息。

RNN对信息的处理就像人类阅读书籍,每读一句话都要根据先前的内容来理解这一句的含义。也就是说它在处理序列信息时只能按顺序传递“隐藏状态”(模型的短期记忆),预测下一个词时只能依赖前一个隐藏向量。

例如,在天气预测中,根据前几天的气象数据来预测第二天的天气;在股票分析中,基于过去的波动来预测未来走势;在生物信息学中,根据DNA序列的先前碱基预测后续碱基……凡是需要基于先前序列信息进行预测的任务,RNN都能发挥重要作用。

但是RNN 的结构特点也造就了它的局限性。由于它只能顺序地处理信息,所以计算效率效率较低;并且它的每一步都依赖前一步的隐藏状态,因此能“记住”的信息是有限的。当序列过长时,早期的信息在层层传递中容易被逐渐遗忘。

Understanding LSTM Networks;Chris Olah

后来,研究人员为了改善这个缺点,将“自注意力机制”(self-attention)引入RNN中,但这只增强了它的“记忆力”,整体运行效率仍然没有改善。

神经网络结构经过迭代更新,目前几乎所有主流的人工智能都以 Transformer 为核心。Transformer既具有比CNN更宏观的‘整体性’,又比RNN拥有更强的‘记忆力’(信息储存能力)和并行性。 Transformer 架构最早由 Google Brain 团队于 2017 年提出,也就是那篇非常著名的Attention Is All You Need。Transformer完全依赖“自注意力机制(Self-Attention)”的数学框架,使模型能够同时关注输入序列中的所有部分,计算效率与可扩展性得到极大提升。

如果仍然用‘读书’打比方,Transformer 就像一个人同时把整本书摊开,它不再一行行地顺序阅读,而是在瞬间看到所有句子之间的联系,并快速找到与某一个句子最相关的部分。而这正是Attentoin(注意力机制)所造就的强大优势。

Transformer结构

Attention Is All You Need

如果单看文章中给出的Transformer框架流程图,相信除了作者没人能看懂,所以我们要做的是把这些部分拆解开来,当然,今天的重点只是拆解Attention模块。

左半边部分称为encoder(编码器),右半边部分称为decoder(解码器)。这两部分都是由Multi-Head Attention和Feed Forward组成。我们在这里首先要搞清楚的是:Multi-Head Attention(多头注意力机制)是什么?

Multi-Head,顾名思义,它由许多Single-Head并行组成,单个single attention的运算流程如左图所示。

当我们输入一段文本时,模型首先会把它“拆分”成许多 token(为了方便理解,可以先把一个 token 理解成一个单词)。然后Transformer 会为这些 token 创建一组向量,每个向量都是从 “嵌入空间(embedding space)” 中取出来的。这个“嵌入空间”由研究人员利用大量已经标注好的语料库训练得到,尽可能包含了所有语义信息。

在这一步,token向量之间是没有联系的,每个向量只能编码单词本身的语义,我们把这些“嵌入向量”用E表示。

“嵌入向量”E映射到Q-K空间使彼此之间建立“联系”,所谓建立联系也就是**“****一个单词知道自己的语义与文本中哪些词相关”**。

V(Value)矩阵是嵌入矩阵的转置矩阵。它的作用是将通过注意力机制得到的“信息向量”投射回原来的向量空间(embedding space)。当这些“信息向量”与原始的 token 向量相加后,就得到了一个融合了语境理解的”更新向量”。

空间:由“张量(tensor)”——也就是多维矩阵*——所张成的数学空间。在 Transformer 中,嵌入向量 E 与 Q、K、V (矩阵)之间的关系,本质上就是一系列矩阵与向量的乘法运算。**

虽然目前对Attention block的具体运算细节还不清楚,但是我觉得先给出公式会让人有一个比较模糊的宏观了解。

注意力机制的核心计算公式如下:

single-head Attention(单头注意力)

1

Q-K space

假设我们用如下的句子作为输入,希望通过GPT-3的Transform模型预测下文:

a fluffy blue creature roamed the verdant forest.

我们把‘creature’作为目标token,它的嵌入向量记为E4(GPT-3中嵌入向量的维度𝑑𝑚𝑜𝑑𝑒𝑙=12288)。

**Query space(查询空间)**的矩阵记为Wq(GPT-3中查询矩阵的维度dk=128);Wq的作用是把“语义向量”变成“信息需求向量”,描述形象一点:模型会问自己”我该关注哪些词?”这个过程在数学上表现为一次矩阵向量相乘的线性变换。

E4*Wq=Q4

E4表示‘creature’本身的语义;假设这个 Wq的作用是将嵌入空间中的名词映射到Query space,那么 Q4 就可以理解为:它在“询问”——我想知道这个名词(creature)对应的形容词是谁?(提出需求)

Key space(键空间)”的矩阵记为Wk(GPT-3中键矩阵的维度dk=128)

Ei*Wq=Ki

每个 token 的嵌入向量E经过这个矩阵变换后,得到对应的 Kᵢ。它可以被理解为对 Query 向量提出的问题的一种“回答”。

用数学语言表示,就是将所有的 Kᵢ 分别与 Q₄点积;这从数学上很好理解:两个向量A*B相当于:向量A的长度向量B在A方向的投影长度,两个向量的方向越接近(夹角越小),它们的点积就越大。

向量的方向蕴含了丰富的语义信息,如果两个向量的方向接近,说明该向量代表的语义信息接近。换句话说,点积越大,说明这个词与目标词(creature)的语义关系越密切

Attention in transformers, step-by-step;3Blue1Brown

Wq 和 Wk 把嵌入向量 E 映射到维度相同的空间中。 以上图为例:向量K2与向量Q4的方向相近,表示两者关系紧密。(在这个例子里,这种关系具体表现为:“fluffy” 是 “creature” 的形容词。)

对于输入文本,模型会让所有查询向量 Q 与所有键向量 K 分别做点积,从而得到每个词与其他词之间的语义相关性。

在这个例子中,QK^T得到的结果如下图所示:向量之间相关性越紧密,点积结果越大;反之,点积结果越小。

Attention in transformers, step-by-step;3Blue1Brown

这些点积结果可以是负无穷~正无穷之间的任何数值,为了简化后续计算,方便生成注意力权重,需要对它们进行方差归一化,也就是除以√dk 。

归一化方差的原因:数值经过softmax函数变换后输出为0-1之间的概率,如果数值过大或过小,输出就会过于极端——聚集在0,1这两点。模型在”反向传播“时几乎得不到有效梯度,训练无法进行。

2

Softmax函数

在得到归一化后的点积结果后,Softmax函数将这些数值转换为概率分布,使每个值介于 0 到 1 之间,且所有值加起来等于 1。

先对输入向量中的每个数取以 e 为底的指数,使所有数值都变为正数;然后将这些指数值相加,最后计算每一项占总和的比例。

每组概率表示模型在“关注”当前词时分配的注意力权重:数值越大,说明模型认为该词对当前 token 的语义理解越重要;数值越小,说明它与当前 token 的关联较弱。

Attention in transformers, step-by-step;3Blue1Brown

3

Value space

至此,我们已经理清了这个核心公式的左半部分。接下来的步骤,是通过 Value matrix(值矩阵) 将加权后的结果重新映射回“嵌入空间”(embedding space),在原始语义空间中”更新”目标向量。

在我们的例子中,就是将与 “creature”(目标 token)有关的所有词向量分别与 Value Matrix 相乘,得到对应的 “值向量”。接着,模型会按照上一步计算得到的注意力权重,对这些值向量进行加权求和,生成一个融合了上下文信息的“更新向量”。

Attention in transformers, step-by-step;3Blue1Brown

value matrix与嵌入向量E相乘=‘value’(值向量),∑(value*weight)+‘creature’的嵌入向量=被修饰后的’creature’向量

对于整个输入文本来说,这一过程会对每个 token 都执行一次:模型将所有变化量与对应的嵌入向量相加。这些更新后的向量会作为下一层计算的输入,继续被模型加工、理解。

Attention in transformers, step-by-step;3Blue1Brown

顺带一提,Value Matrix(值矩阵) 的维度为 12288 × 12288,如此高维的矩阵计算量非常庞大。为了降低复杂度,模型通常会采用“低秩分解”的方法,将它表示为两个低维矩阵相乘的形式。

Attention in transformers, step-by-step;3Blue1Brown

如此一来,嵌入向量先与右边的矩阵相乘实现降维,再与左边矩阵相乘,将结果重新映射回12288维度的嵌入空间。(矩阵乘法的结合律)

总结

上述内容就是’single-head attention’(单头注意力机制)的工作原理,整个过程可以概括为:横向权重赋值+纵向权重赋值。在这其中,三个核心矩阵 Q、K、V 共同完成了输入文本中各个 token 之间的信息交互。(在我们上述的例子中就是为名词寻找并融合对应的形容词的语义)

Multi-Head Attention

多头注意力机制(Multi-Head Attention) 相当于多个 Single-Head Attention 的并行叠加。每个“头”(Head)都由参数各不相同的独立的Q-K-V矩阵组成,每个头构成的语义空间关注不同的侧面:有的着眼于句法结构,有的捕捉语义修饰,还有的专注于文本的语气或风格……

在GPT-3模型中共有96个“头”,也就是96个子空间。输入的token在子空间中独立“学习”得到各自的“更新向量”,96个子空间的“更新向量”之和+目标token的嵌入向量得到整合了输入文本所有语义、更精准的嵌入向量。

MASK(掩码)

现在回看这张结构图,右侧的Decoder(解码器)与左侧的Encoder(编码器)在结构上略有不同:在解码器的 Self-Attention 模块中,多出了一层mask(掩码)

mask(掩码)的作用是:避免后置词对前置词的干扰。 换句话说,在生成文本时,模型只能“看到”已经出现的词,而不能提前窥视未来的词。这样才能确保模型的预测是逐词生成的

模型在生成第t 个词时,并不是“凭空”选择,而是根据前面所有已生成的词,计算出一个所有可能的词的条件概率分布:

在实际操作中,为了让文本更加自然,模型并不会总是选择概率最高的词,而是会在一定程度上采样那些概率略低的词。这也解释了为什么在相同输入的情况下,模型生成的结果可能有所不同。

mask(掩码)具体的操作方法是在softmax之前添加一个遮罩矩阵(mask)。如果理解了前面的计算流程就很容易明白:在注意力机制中,attention block 会计算所有 Q 与 K 的点积(点积矩阵)。遮罩矩阵就是将点积矩阵中的左下角区域(即后置词对应的部分)全部替换为一个极大的负值。

这些极大负值在经过 softmax 函数变换后,输出结果会接近于 0,相当于在计算注意力权重时彻底屏蔽掉这些位置。

Attention in transformers, step-by-step;3Blue1Brown

Attention in transformers, step-by-step;3Blue1Brown

在GPT模型中,训练阶段和运行阶段都会使用masking,在训练阶段,模型会被输入完整的文本序列,通过不断调整参数和权重,使它在每一步的输出(预测下一个词的概率分布)尽可能接近预期词。

总结

在整个 Transformer 结构中,Attention block的运算只占模型的1/3,剩下的2/3发生在Multilayer Perceptron——‘MLP’(多层感知器)中。当一个词经过注意力机制“吸收”了一部分上下文语义后,MLP 层会进一步对它进行非线性变换。随着词向量流经越来越多的层,每一次迭代都让它从周围的 embedding 中获得更丰富、更细腻的语义信息,不仅包括词义和句法,还可能捕捉到文本的语气、情感,甚至文艺,哲学或学术语境……

总结来说,所有的神经网络模型所做的工作都是:提供一个可调节的数学模型框架,通过训练数据不断优化其中的参数(权重和偏置),让模型能够捕捉输入数据的规律并进行预测。

由于向量空间中的基本变换是线性的,而现实世界中的规律往往是高度非线性的。所以神经网络都是多层线性变换与非线性函数(ReLU)的叠加,经过海量计算,逐步逼近和拟合现实世界复杂的非线性关系。

ReLU函数

这些矩阵中的特定数值究竟是如何形成的无法完全解释。它们是在训练过程中,为了达到预期的结果而生成的——计算机为它们找到了自己的“位置”。这些数值的初始生成看似随机,但在随机背后,或许隐藏着计算机探索出的某种底层规律,在那里,如同存在一个由运算法则支撑的独立世界。

这有点类似宇宙的演化…无数不确定的因素交织,造就了如今的世界。科学家试图用一些规则解释,但理论终究是不完备的,因为某些随机事件的发生,永远无法被清晰说明。

普通人如何抓住AI大模型的风口?

为什么要学AI大模型

当下,⼈⼯智能市场迎来了爆发期,并逐渐进⼊以⼈⼯通⽤智能(AGI)为主导的新时代。企业纷纷官宣“ AI+ ”战略,为新兴技术⼈才创造丰富的就业机会,⼈才缺⼝将达 400 万!

DeepSeek问世以来,生成式AI和大模型技术爆发式增长,让很多岗位重新成了炙手可热的新星,岗位薪资远超很多后端岗位,在程序员中稳居前列。

在这里插入图片描述

与此同时AI与各行各业深度融合,飞速发展,成为炙手可热的新风口,企业非常需要了解AI、懂AI、会用AI的员工,纷纷开出高薪招聘AI大模型相关岗位。
在这里插入图片描述

AI大模型开发工程师对AI大模型需要了解到什么程度呢?我们先看一下招聘需求:

在这里插入图片描述

知道人家要什么能力,一切就好办了!我整理了AI大模型开发工程师需要掌握的知识如下:

大模型基础知识

你得知道市面上的大模型产品生态和产品线;还要了解Llama、Qwen等开源大模型与OpenAI等闭源模型的能力差异;以及了解开源模型的二次开发优势,以及闭源模型的商业化限制,等等。

img

了解这些技术的目的在于建立与算法工程师的共通语言,确保能够沟通项目需求,同时具备管理AI项目进展、合理分配项目资源、把握和控制项目成本的能力。

产品经理还需要有业务sense,这其实就又回到了产品人的看家本领上。我们知道先阶段AI的局限性还非常大,模型生成的内容不理想甚至错误的情况屡见不鲜。因此AI产品经理看技术,更多的是从技术边界、成本等角度出发,选择合适的技术方案来实现需求,甚至用业务来补足技术的短板。

AI Agent

现阶段,AI Agent的发展可谓是百花齐放,甚至有人说,Agent就是未来应用该有的样子,所以这个LLM的重要分支,必须要掌握。

Agent,中文名为“智能体”,由控制端(Brain)、感知端(Perception)和行动端(Action)组成,是一种能够在特定环境中自主行动、感知环境、做出决策并与其他Agent或人类进行交互的计算机程序或实体。简单来说就是给大模型这个大脑装上“记忆”、装上“手”和“脚”,让它自动完成工作。

Agent的核心特性

自主性: 能够独立做出决策,不依赖人类的直接控制。

适应性: 能够根据环境的变化调整其行为。

交互性: 能够与人类或其他系统进行有效沟通和交互。

img

对于大模型开发工程师来说,学习Agent更多的是理解它的设计理念和工作方式。零代码的大模型应用开发平台也有很多,比如dify、coze,拿来做一个小项目,你就会发现,其实并不难。

AI 应用项目开发流程

如果产品形态和开发模式都和过去不一样了,那还画啥原型?怎么排项目周期?这将深刻影响产品经理这个岗位本身的价值构成,所以每个AI产品经理都必须要了解它。

img

看着都是新词,其实接触起来,也不难。

从0到1的大模型系统学习籽料

最近很多程序员朋友都已经学习或者准备学习 AI 大模型,后台也经常会有小伙伴咨询学习路线和学习资料,我特别拜托北京清华大学学士和美国加州理工学院博士学位的鲁为民老师(吴文俊奖得主)
在这里插入图片描述

给大家准备了一份涵盖了AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频 全系列的学习资料,这些学习资料不仅深入浅出,而且非常实用,让大家系统而高效地掌握AI大模型的各个知识点。

图片

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

适学人群

应届毕业生‌: 无工作经验但想要系统学习AI大模型技术,期待通过实战项目掌握核心技术。

零基础转型‌: 非技术背景但关注AI应用场景,计划通过低代码工具实现“AI+行业”跨界‌。

业务赋能突破瓶颈: 传统开发者(Java/前端等)学习Transformer架构与LangChain框架,向AI全栈工程师转型‌。
在这里插入图片描述

AI大模型系统学习路线

在面对AI大模型开发领域的复杂与深入,精准学习显得尤为重要。一份系统的技术路线图,不仅能够帮助开发者清晰地了解从入门到精通所需掌握的知识点,还能提供一条高效、有序的学习路径。

  • 基础篇,包括了大模型的基本情况,核心原理,带你认识了解大模型提示词,Transformer架构,预训练、SFT、RLHF等一些基础概念,用最易懂的方式带你入门AI大模型
  • 进阶篇,你将掌握RAG,Langchain、Agent的核心原理和应用,学习如何微调大模型,让大模型更适合自己的行业需求,私有化部署大模型,让自己的数据更加安全
  • 项目实战篇,会手把手一步步带着大家练习企业级落地项目,比如电商行业的智能客服、智能销售项目,教育行业的智慧校园、智能辅导项目等等

img

但知道是一回事,做又是另一回事,初学者最常遇到的问题主要是理论知识缺乏、资源和工具的限制、模型理解和调试的复杂性,在这基础上,找到高质量的学习资源,不浪费时间、不走弯路,又是重中之重。

AI大模型入门到实战的视频教程+项目包

看视频学习是一种高效、直观、灵活且富有吸引力的学习方式,可以更直观地展示过程,能有效提升学习兴趣和理解力,是现在获取知识的重要途径

在这里插入图片描述
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

海量AI大模型必读的经典书籍(PDF)

阅读AI大模型经典书籍可以帮助读者提高技术水平,开拓视野,掌握核心技术,提高解决问题的能力,同时也可以借鉴他人的经验。对于想要深入学习AI大模型开发的读者来说,阅读经典书籍是非常有必要的。
在这里插入图片描述

600+AI大模型报告(实时更新)

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。
在这里插入图片描述

AI大模型面试真题+答案解析

我们学习AI大模型必然是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下
在这里插入图片描述

在这里插入图片描述

AI时代,企业最需要的是既懂技术、又有实战经验的复合型人才,**当前人工智能岗位需求多,薪资高,前景好。**在职场里,选对赛道就能赢在起跑线。抓住AI这个风口,相信下一个人生赢家就是你!机会,永远留给有准备的人。

如何获取?

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐