楼主: vvvvvwm
535 0

[其他] 图解大模型_生成式AI原理与实战学习笔记(前三章综合问答) [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

学前班

40%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
20 点
帖子
1
精华
0
在线时间
0 小时
注册时间
2018-7-19
最后登录
2018-7-19

楼主
vvvvvwm 发表于 2025-12-5 14:15:23 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

1:词元(Token)是什么?为何需要将文本拆分为词元?

词元是文本经过切分后,供模型处理的最小单元。它可以是一个汉字、一个子词(subword)、英文单词或标点符号等。

将文本拆分为词元的原因包括:

  • 模型无法直接理解原始文本,只能处理数字形式的向量
  • 词元充当了“文本 → 向量”转换过程中的桥梁
  • 采用如BPE等子词算法,使模型能够应对新词、多语言和罕见词汇
  • 便于构建embedding查找表(embedding lookup)
  • 有助于模型捕捉语义信息与上下文关系
[此处为图片1]

2:嵌入向量(Embedding)的概念及其上下文依赖性

嵌入向量是指将词元映射到高维连续空间中的初始数值表示。

尽管同一个词元在不同语境中具有相同的初始embedding,但其最终表示会有所不同,原因如下:

  • 原始embedding本身是静态不变的
  • Transformer通过每一层的自注意力机制融合上下文信息
  • 隐藏状态(hidden states)会随着上下文动态变化
  • 因此最终生成的是“上下文相关”的向量,即contextual embedding

3:前向传播的含义及为何每次生成新词元都需要执行一次

前向传播指的是输入数据依次经过所有Transformer层以及输出层,最终得到下一个词元概率分布的完整计算流程。

在生成每一个新词元时都必须重新进行前向传播,原因在于:

  • 自回归模型会把最新生成的词元添加至输入序列末尾
  • 输入序列一旦改变,就必须重新计算所有层级的状态
  • 整个模型需基于新的上下文重新理解当前语义
[此处为图片2]

4:相关性评分(Relevance Score)及其在注意力机制中的作用

相关性评分通常由Q与K的点积(Q·K)计算得出,用于衡量当前词元应关注其他词元的程度。

它在注意力机制中的功能包括:

  • 决定“应该关注哪些部分”
  • 经softmax归一化后形成注意力权重
  • 这些权重用于对V(值向量)进行加权求和,实现信息融合

5:为何注意力机制需要Q、K、V?它们各自的功能是什么?

Q(Query)代表查询意图:“我正在寻找什么?”

K(Key)表示信息索引:“我拥有哪些可匹配的信息?”

V(Value)承载实际内容:“我的具体内容是什么?”

只有通过Q与K之间的匹配度计算,才能确定从V中提取信息的方式。这种设计本质上是将“匹配关系”与“获取内容”两个过程分离,提升灵活性与表达能力。

6:多头注意力的设计动机与单头的局限性

单头注意力仅能在单一向量子空间中建模词元间的关系,表达能力受限。

而多头注意力的优势体现在:

  • 每个注意力头可学习不同类型的关系模式
  • 支持多角度理解上下文
  • 能同时捕获句法结构、语义关联和远距离依赖
  • 最后通过拼接(concat)各头输出,获得更丰富的语义表示

多头机制的核心目标是增强模型表达力,而非加速运算。

7:自注意力与传统注意力的区别

自注意力(Self-Attention)是指在同一序列内部,各个词元之间相互建立联系的机制。其中Q、K、V均来源于同一输入序列。

传统注意力则常见于编码器-解码器架构中:

  • Q来自解码器
  • K和V来自编码器

主要区别在于:

  • 自注意力用于建模句子内部的上下文关系
  • 传统注意力用于实现跨序列的信息对齐与传递

8:为何Transformer无需循环结构也能有效处理上下文?

因为自注意力机制具备全局感受野,可以并行地计算序列中任意两个词元之间的关系,无需像RNN那样逐个传递状态。

具体优势包括:

  • 注意力机制可以直接访问整个输入序列
  • 计算过程可通过矩阵操作完全并行化
  • 天然支持长距离依赖建模,避免梯度消失问题

9:若不使用位置编码会发生什么?为何必须引入位置信息?

若缺失位置编码,Transformer将无法识别词序,导致语义混乱。

例如:

  • “我爱你”与“你爱我”会被视为相同结构
  • 因自注意力具有对称性(交换不变性)

加入位置编码的目的就是为每个词元注入顺序信息,使其成为真正的序列模型,而非类似“词袋模型”的无序集合。

10:为何RoPE位置编码仅应用于Q和K,而不作用于V?

Q和K用于计算注意力权重,必须包含位置关系以判断“关注谁”;而V仅负责存储语义内容,不应被位置干扰。

因此:

  • 为Q/K添加位置编码 → 使注意力分配受位置影响
  • 不对V添加编码 → 防止原始内容被位置信息污染

11:KV Cache的作用及其对推理速度的提升原理

KV Cache用于缓存此前所有已处理词元的K和V向量,避免重复计算。

在自回归生成过程中:

  • 历史词元的K/V保持不变
  • 新词元只需计算自身的Q/K/V

这使得推理复杂度从O(N)降低至O(N),显著加快生成速度,提升效率数十倍。

[此处为图片3]

12:前馈网络(FFN)的功能及其与注意力模块的协同关系

前馈网络(FFN)负责对每个词元独立进行非线性变换,是模型主要的计算组件之一。

其结构通常为:升维 → 激活函数 → 降维。

与注意力机制的分工如下:

  • 注意力模块专注于信息的整合与关联
  • FFN模块侧重于语义的深层加工与特征提取

若缺少FFN,模型将缺乏足够的非线性表达能力,限制整体性能。

13:为何仅使用“最后一个词元”的输出来预测下一词元?

由于语言模型采用自回归方式生成文本:

  • 给定前面的上下文,预测下一个词元
  • 最后一个词元的隐藏状态已聚合了完整的上下文语义
  • 前面所有词元的信息已被逐步编码进最终表示
  • LM Head仅需基于当前位置的向量进行预测

14:Transformer生成一个词元的完整流程(综合梳理)

从输入到输出的整体链路如下:

  1. 文本分词为词元(Tokenization)
  2. 词元转换为嵌入向量(Embedding)
  3. 加入位置编码(Positional Encoding)
  4. 依次通过多层Transformer块(每层含Attention + FFN)
  5. 获得最终的隐藏向量(Final Hidden State)
  6. 送入语言模型头部(LM Head)
  7. 通过Softmax输出词表上的概率分布
  8. 按策略采样生成下一个词元
  9. 将新词元拼接到输入序列,继续下一轮生成
[此处为图片4]

多层 Transformer 的工作流程如下:

首先,模型通过自注意力机制进行计算,其中输入被映射为查询(Q)、键(K)和值(V),并基于 Q 与 K 的相似度生成注意力权重,随后对 V 进行加权求和。[此处为图片1]

接下来,经过自注意力输出的结果会传入前馈神经网络(FFN),进一步提取非线性特征表达。

在每一子层之后,均采用残差连接与 LayerNorm 相结合的方式,确保训练过程中的梯度稳定,并提升模型收敛性。

完成所有 Transformer 层的处理后,取序列中最后一个词元对应的隐藏状态作为当前上下文的表示。

该隐藏状态被送入语言模型头部(LM Head),经线性变换后通过 Softmax 函数归一化,输出各词汇的概率分布。

根据概率分布采样或选择最可能的 token,并将其添加到已生成的序列末尾。

随后,将更新后的序列重新输入模型,重复执行上述步骤 1 至 7,形成自回归循环,逐步生成完整文本。

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:学习笔记 习笔记 Contextual Positional transform
相关内容:大模型学习笔记

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-2-7 15:40