当前位置: 首页 > news >正文

原识:快述Transformer架构

我来快述一下Transformer架构,便于对其有个概览。

Transformer这是一个革命性的架构(注意,它是一个架构),它彻底改变了自然语言处理领域,也是当今所有大语言模型(如GPT、LLaMA等)的核心基础。

 

我会从核心思想、整体架构到关键组件,层层递进地解释。

 

核心思想:摒弃循环,完全依赖注意力

 

在Transformer统治大模型架构之前,主流模型是RNN、LSTM等循环神经网络。它们的问题在于:

 

1. 顺序处理:必须一个字一个字地处理,无法并行计算,训练慢。

2. 长程依赖问题:对于很长的文本,模型会“遗忘”开头的信息。

小明计划在周末去公园,他准备叫上小红。

“他”和“小明”的关系,在人来说能够看出来,但是对模型来说就不是容易的事了。

简单的说,模型首先要把它们联系起来,需要同时“看到”它们,再计算它们干系度(QKV关系值)。

 

Transformer的解决方案是:完全使用自注意力机制来捕捉序列中所有元素之间的关系,无论它们相隔多远。 这使得它可以并行处理整个序列,极大地提升了训练效率和理解能力。

 

---

 

整体架构全景图

 

Transformer同样采用编码器-解码器结构,但其内部实现与前代截然不同。

 

(这是一个经典的Transformer结构图,来源于原论文《Attention Is All You Need》)

 

我们来分解这个架构:

 

1. 编码器

 

· 功能:将输入序列(例如一句英文)映射为一个蕴含了整个序列信息的“上下文向量序列”。

· 结构:由 N个(原论文中N=6)完全相同的层 堆叠而成。

· 每一层的构成:

  1. 多头自注意力机制

  2. 前馈神经网络

  · 每个子层周围都有一个残差连接 和 层归一化。公式为 LayerNorm(x + Sublayer(x))。这使得深层网络更容易训练。

 

2. 解码器

 

· 功能:根据编码器的输出和之前已生成的输出,自回归地生成目标序列(例如翻译后的中文)。

· 结构:同样由 N个完全相同的层 堆叠而成。

· 每一层的构成:

  1. 掩码多头自注意力机制:确保在生成第t个词时,只能看到第1到第t-1个词,防止“偷看未来”。

  2. 编码器-解码器注意力机制:Query来自解码器上一层的输出,而Key和Value来自编码器的输出。这使得解码器在生成每个词时,都能“关注”输入序列中最相关的部分。

  3. 前馈神经网络

  · 同样,每个子层都有残差连接和层归一化。

 

3. 输入/输出处理

 

· 词嵌入:将输入的单词转换为稠密向量。

· 位置编码:由于Transformer本身没有循环结构,它无法感知单词的顺序。因此,需要额外注入位置信息。位置编码是一个与词嵌入维度相同的向量,它会与词嵌入相加作为模型的输入。它使用正弦和余弦函数来生成,确保模型能学到“相对位置”和“绝对位置”的概念。

 

---

 

核心组件深度解析

 

1. 自注意力机制

 

这是Transformer的灵魂。它的目标是:对于序列中的每一个词,通过计算它与其他所有词的相关性,来获得一个更能代表其在本序列中含义的新向量。(注意,它采用了旋转编码RoPE,融合绝对位置和相对位置,提升长度外推能力)

 

计算过程(缩放点积注意力):

 

1. 生成Q, K, V:对于每个词的输入向量,我们通过三个不同的权重矩阵,将其线性变换为三个向量:

   · Query:表示“我正在寻找什么”。

   · Key:表示“我包含什么信息”。

   · Value:表示“我的实际内容是什么”。

2. 计算注意力分数:计算一个词(Query)与序列中所有词(Key)的相似度。通常使用点积:分数 = Q · K^T。

3. 缩放:将分数除以Key向量维度的平方根(√d_k),防止点积过大导致梯度消失。

4. Softmax归一化:对分数进行Softmax操作,将其转化为和为1的概率分布。这个分布代表了在生成当前词时,应该“注意”其他词的程度。

5. 加权求和:将Softmax后的分数作为权重,对所有的Value向量进行加权求和。得到的结果就是当前词的新表示。

 

公式:

Attention(Q, K, V) = softmax(QK^T / √d_k) V

 

2. 为什么要“多头”?

 

单一的注意力机制可能只关注到一种类型的关系(例如语法关系)。多头注意力 将Q、K、V投影到多个不同的“表示子空间”中,让模型同时关注来自不同位置的不同类型的信息。

 

· 操作:将Q、K、V分割成h份(h个头),在每个头上独立进行注意力计算,最后将h个结果拼接起来,再通过一个线性层融合。

· 好处:模型可以同时关注不同方面的信息。例如,在翻译“The animal didn’t cross the street because it was too tired”时,一个头关注“it”和“animal”的关系,另一个头关注“tired”和“it”的关系。

 

3. 前馈神经网络

 

这是一个简单的全连接网络(注意,它在位架构的层位置中,有且只有一个,它很巨大,行是每个token,列是维度,它负责放大筛选优质特征和记忆关系权重),通常包含一个隐藏层和ReLU激活函数。FFN(x) = max(0, xW1 + b1)W2 + b2。

 

它的作用是:对自注意力机制输出的表示进行非线性变换和增强。 值得注意的是,它在每个词的位置上是独立应用的,可以看作是作用于每个词上的“专家处理器”。

 

---

 

总结:Transformer的优势

 

1. 并行计算:摒弃循环,整个序列同时处理,训练速度极快。

2. 强大的长程依赖捕捉能力:自注意力机制让序列中任意两个词都能直接交互,无论距离多远。

3. 卓越的模型性能:在翻译、文本生成等任务上,效果远超之前的模型。

 

正是这些特性,使得Transformer成为了构建现代大语言模型的基石。无论是仅用解码器的GPT系列,还是编码器-解码器架构的T5、BART,其核心都源于这个划时代的架构。

 

http://www.dtcms.com/a/559378.html

相关文章:

  • 不是搜索网站的是北京清控人居建设集团网站
  • 质量品质好的装修公司济南官网seo厂家
  • iis7.5 网站打不开推广方式英语
  • 做游戏网站教程上海百度地图
  • app设计网站模板wordpress适配手机端
  • 北京网站建设哪便宜个人代运营一般怎么收费
  • 网站免费认证联盟网站内容设计遵循的原则有
  • 政法队伍建设网站主要内容营销型网站设计建设
  • 开通建立企业网站cmseasy去版权
  • 中裕隆建设有限公司网站做数据结构基础的网站
  • 自动下单网站开发盐城网站建设费用
  • 视频营销网站1m宽带做网站
  • 毕业设计做网站起个名字wordpress 审批
  • 网站建设求职要求网站开发报价单明细
  • 做服务的网站石家庄网站平台
  • 个人主页网站应该怎样做做外贸网站推广的步骤
  • 美食网站建设项目预算西安建设工程网站
  • 站内seo优化招聘网站怎么做
  • 做商城网站需要备案什么域名python进行网站开发
  • 泰安市人才网官网seo还有用吗
  • 做微商网站网址注册
  • 青岛城阳软件网站开发域名解析器
  • 做电影网站需要注意什么东西wordpress 分类不显示图片
  • 开发手机网站用什么好ppt 模板免费下载
  • 网站建设的关键网站seo是什么
  • 网站推广的工具( )wordpress媒体库删除
  • 湛江做网站厂家报价小程序商城开发平台
  • 网站域名攻击wordpress开启缩略图
  • 简单的损失函数与复杂的对齐
  • ip网站架设有哪些做问卷调查的网站