独家|魔术背后:张量如何驱动变换器(Transformer)

360影视 欧美动漫 2025-06-10 07:08 3

摘要:变换器改变了人工智能在语言理解和数据学习等方面的工作方式,大语言模型的核心是张量(一种帮助处理信息的通用数学矩阵)。当数据通过变换器的不同部分时,张量会发生不同的变换,从而帮助模型理解句子或图像等内容。了解变换器中的张量是如何工作的,有助于理解当今最智能的人工

作者:Ziad SALLOUM翻译:赵茹萱校对:陈之炎

本文约4200字,建议阅读10分钟

变换器使用张量来帮助它们学习并做出明智的决策。

图片由ChatGPT生成

变换器改变了人工智能在语言理解和数据学习等方面的工作方式,大语言模型的核心是张量(一种帮助处理信息的通用数学矩阵)。当数据通过变换器的不同部分时,张量会发生不同的变换,从而帮助模型理解句子或图像等内容。了解变换器中的张量是如何工作的,有助于理解当今最智能的人工智能系统究竟是如何工作和思考的。

✅本文涉及的内容:

Transformer 模型中从输入到输出的张量流。确保整个计算过程的维度一致性。张量在不同变换器层中经历的逐步变换。

❌ 本文不涉及以下内容:

Transformer或深度学习的一般介绍。变换器模型的详细架构训练过程或Transformer的超参数调整。

变换器由两个主要部分组成:

编码器:处理输入数据,捕捉上下文关系,创建有意义的表述。解码器:利用这些表示法生成一致的输出,按顺序预测每个元素。

张量是经过这些组件处理的基本数据结构,会经历多重转换,以确保维度的一致性和适当的信息流。

图片来自研究论文:变压器标准结构

在进入变换器之前,原始输入标记(单词、子单词或字符)会通过嵌入层转换成密集的向量表示。该层的功能是作为一个查找表,映射每个标记向量,捕捉与其他词的语义关系。

作者提供的图片:通过嵌入层的张量

对于一批五个句子,每个句子的序列长度为12 个词组,嵌入维度为 768,张量形状为:

张量形状:[batch_size, seq_len, embedding_dim] → [5, 12, 768]

嵌入后,添加位置编码,确保在不改变张量形状的情况下保留顺序信息。

研究论文中的修改图片:工作流程情况

多头注意力机制

多头注意力(MHA)机制是Transformer 最关键的组成部分之一。该机制对从输入嵌入中提取的三个矩阵进行操作:

Query (Q)Key (K)Value (V)

这些矩阵是使用可学习的权重矩阵生成的:

Wq, Wk, Wv的形状为 [embedding_dim, d_model](例如 [768, 512])。得到的Q、K、V 矩阵的维数为 [batch_size, seq_len, d_model]。

图片由作者提供:显示嵌入、Q、K、V 张量形状/维数的表格

为了实现有效的并行化并提高学习效率,MHA将Q、K和V分成多个注意力头。假设有8 个注意力头:

Each head 操作 d_model / head_count 的子空间。

图片由作者提供:多头关注

重塑的张量维数为[batch_size、seq_len、head_count、d_model / head_count]。示例:[5,12,8,64] → 重新排列为 [5,8,12,64],以确保每个头收到一个单独的序列片段。

图片由作者提供:重塑张量

所以每个头都会得到Qi, Ki, Vi的份额

图片由作者提供:Qi,Ki,Vi分别输送到不同的头部

注意力计算

每个头使用以下公式计算注意力:

一旦计算出所有头部的注意力,就会对输出进行合并,并通过线性变换,恢复初始张量形状。

图片由作者提供:串联所有标题的输出

残差连接和归一化

在多头注意力机制之后,会添加一个残差连接,然后进行层归一化:

Residual 连接:输出 = 嵌入张量 + 多头注意力输出;归一化:(输出- μ)/ σ 以稳定训练;张量形状保持不变 [batch_size, seq_len, embedding_dim]。

图片由作者提供:残余连接

在解码器中,屏蔽多头注意力确保每个标记只关注之前的标记,从而防止未来信息的泄漏。

研究论文中的修改图片:遮蔽式多头注意力

这需要使用一个形状为[seq_len, seq_len]的下三角掩码,并在上三角中设置-inf值。应用该掩码可确保 Softmax 函数使未来位置无效。

由于解码器并不能完全理解输入句子,因此它会利用交叉注意力来完善预测。在这里:

解码器根据其输入([batch_size, target_seq_len, embedding_dim])生成查询 (Qd)。编码器输出作为键(Ke)和值(Ve)。解码器计算Qd和Ke之间的关注度,从编码器的输出中提取相关上下文。

变换器使用张量来帮助它们学习并做出明智的决策。当数据在网络中移动时,这些张量会经过不同的步骤,比如转化为模型可以理解的数字(嵌入)、聚焦于重要部分(关注)、保持平衡(归一化),以及通过学习模式的层级(前馈)。这些变化让数据始终保持正确的形状。通过了解张量如何移动和变化,我们可以更好地了解人工智能模型如何工作,以及它们如何理解和创造类似人类的语言。

免责声明:本博客文章仅供参考。本文对应的英文原文和翻译文本无意也不会提供法律建议或法律意见,同时并非解决法律问题或处理诉讼的自助指南。本文不能替代经验丰富的法律顾问,且不针对任何具体情况或雇主提供法律建议。

来源:数据派THU一点号

相关推荐