随着Transformer模型的迅速普及,Self-Attention(自注意力机制)和Multi-Head Attention(多头注意力机制)成为了自然语言处理(NLP)领域中的核心组件。本文将从简要介绍、工作流程、两者对比 三个方面,为您解析这两种注意力机制。
一、简要介绍
Self-Attention(自注意力机制):使输入序列中的每个元素能够关注并加权整个序列中的其他元素,生成新的输出表示,不依赖外部信息或历史状态。
-
Self-Attention允许输入序列中的每个元素都与序列中的其他所有元素进行交互。
-
它通过计算每个元素对其他所有元素的注意力权重,然后将这些权重应用于对应元素的表示,从而得到一个加权和的输出表示。
-
Self-Attention不依赖于外部信息或先前的隐藏状态,完全基于输入序列本身。
Self-Attention
Multi-Head Attention(多头注意力机制):通过并行运行多个Self-Attention层并综合其结果,能够同时捕捉输入序列在不同子空间中的信息,从而增强模型的表达能力。
-
Multi-Head Attention实际上是多个并行的Self-Attention层,每个“头”都独立地学习不同的注意力权重。
-
这些“头”的输出随后被合并(通常是拼接后再通过一个线性层),以产生最终的输出表示。
-
通过这种方式,Multi-Head Attention能够同时关注来自输入序列的不同子空间的信息。
Multi-Head Attention
二、工作流程
Self-Attention(自注意力机制)****:通过生成查询、键和值向量,计算并归一化注意力分数,最终对值向量进行加权求和,从而得到输入序列中每个位置的加权表示。
Self-Attention工作流程
第一步:查询、键和值的生成
-
输入:接收一个由嵌入向量组成的输入序列,这些嵌入向量可以是词嵌入加上位置嵌入。
-
处理:使用三个独立的线性层(或称为密集层)为每个输入向量生成查询(Q)、键(K)和值(V)向量。
-
查询向量用于表示当前焦点或希望获取的信息。
-
键向量用于确定与查询向量匹配的信息。
-
值向量包含与相应的键向量关联的实际信息。
第一步:查询、键和值的生成
第二步:注意力矩阵的计算
-
处理:计算查询向量和所有键向量之间的点积,形成一个注意力分数矩阵。
-
这个矩阵的每个元素表示一个查询向量和对应键向量之间的相关性分数。
-
由于点积操作,分数可能非常大或非常小。
第二步:注意力矩阵的计算
第三步:归一化注意力分数
-
处理:应用softmax函数对注意力分数矩阵进行归一化。
-
归一化后,每行的和为1,每个分数表示对应位置信息的权重。
-
在应用softmax之前,通常会除以一个缩放因子(如查询或键向量维度的平方根)来稳定梯度。
第三步:归一化注意力分数
第四步:加权和输出
-
处理:使用归一化后的注意力权重对值向量进行加权求和。
-
加权求和的结果是自注意力机制的输出,它包含了输入序列中所有位置的加权信息。
-
输出向量的每个元素都是输入向量的加权和,权重由注意力机制决定。
第四步:加权和输出
Multi-Head Attention(多头注意力机制):通过将输入的查询、键和值矩阵分割成多个头,并在每个头中独立计算注意力,再将这些头的输出拼接并线性变换,从而实现在不同表示子空间中同时捕获和整合多种交互信息,提升模型的表达能力。
Multi-Head Attention工作流程
-
初始化: 首先,初始化必要的参数,包括查询、键和值矩阵的权重,以及多头注意力中的头数。这些权重将用于后续的线性变换。
-
线性变换: 对输入的查询、键和值矩阵进行线性变换。这些线性变换是通过与相应的权重矩阵相乘来实现的。变换后的矩阵将用于后续的多头注意力计算。
-
分割与投影: 将线性变换后的查询、键和值矩阵分割成多个头。每个头都有自己的查询、键和值矩阵。然后,在每个头中独立地计算注意力分数。
-
缩放与Softmax: 对每个头的注意力分数进行缩放,以避免梯度消失或爆炸的问题。然后,应用Softmax函数将注意力分数归一化,使得每个位置的权重之和为1。
-
加权求和: 使用归一化后的注意力权重对值矩阵进行加权求和,得到每个头的输出矩阵。
-
拼接与线性变换: 将所有头的输出矩阵拼接在一起,形成一个大的输出矩阵。然后,对这个输出矩阵进行线性变换,得到最终的输出。
核心差异: Self-Attention关注序列内每个位置对其他所有位置的重要性,而Multi-Head Attention则通过在多个子空间中并行计算注意力,使模型能够同时捕获和整合不同方面的上下文信息,从而增强了对复杂数据内在结构的建模能力。
-
Self-Attention (自注意力机制): 自注意力机制的核心是为输入序列中的每一个位置学习一个权重分布,这样模型就能知道在处理当前位置时,哪些位置的信息更为重要。Self-Attention特指在序列内部进行的注意力计算,即序列中的每一个位置都要和其他所有位置进行注意力权重的计算。
-
Multi-Head Attention (多头注意力机制): 为了让模型能够同时关注来自不同位置的信息,Transformer引入了Multi-Head Attention。它的基本思想是将输入序列的表示拆分成多个子空间(头),然后在每个子空间内独立地计算注意力权重,最后将各个子空间的结果拼接起来。这样做的好处是模型可以在不同的表示子空间中捕获到不同的上下文信息。
案例对比:在“我爱AI”例子中,Self-Attention计算每个词与其他词的关联权重,而Multi-Head Attention则通过拆分嵌入空间并在多个子空间中并行计算这些权重,使模型能够捕获更丰富的上下文信息。
Self-Attention(自注意力机制):
-
输入:序列“我爱AI”经过嵌入层,每个词(如“我”)被映射到一个512维的向量。
-
注意力权重计算:
-
对于“我”这个词,Self-Attention机制会计算它与序列中其他所有词(“爱”、“A”、“I”)之间的注意力权重。
-
这意味着,对于“我”的512维嵌入向量,我们会计算它与“爱”、“A”、“I”的嵌入向量之间的注意力得分。
- 输出:根据计算出的注意力权重,对输入序列中的词向量进行加权求和,得到自注意力机制处理后的输出向量。
Multi-Head Attention (多头注意力机制):
- 子空间拆分:
-
原始的512维嵌入空间被拆分成多个子空间(例如,8个头,则每个子空间64维)。
-
对于“我”这个词,其512维嵌入向量被相应地拆分成8个64维的子向量。
- 独立注意力权重计算:
-
在每个64维的子空间内,独立地计算“我”与“爱”、“A”、“I”之间的注意力权重。
-
这意味着在每个子空间中,我们都有一套独立的注意力得分来计算加权求和。
- 结果拼接与转换:
-
将每个子空间计算得到的注意力输出拼接起来,形成一个更大的向量(在这个例子中是8个64维向量拼接成的512维向量)。
-
通过一个线性层,将这个拼接后的向量转换回原始的512维空间,得到Multi-Head Attention的最终输出。
在大模型时代,我们如何有效的去学习大模型?
现如今大模型岗位需求越来越大,但是相关岗位人才难求,薪资持续走高,AI运营薪资平均值约18457元,AI工程师薪资平均值约37336元,大模型算法薪资平均值约39607元。
掌握大模型技术你还能拥有更多可能性:
• 成为一名全栈大模型工程师,包括Prompt,LangChain,LoRA等技术开发、运营、产品等方向全栈工程;
• 能够拥有模型二次训练和微调能力,带领大家完成智能对话、文生图等热门应用;
• 薪资上浮10%-20%,覆盖更多高薪岗位,这是一个高需求、高待遇的热门方向和领域;
• 更优质的项目可以为未来创新创业提供基石。
可能大家都想学习AI大模型技术,也_想通过这项技能真正达到升职加薪,就业或是副业的目的,但是不知道该如何开始学习,因为网上的资料太多太杂乱了,如果不能系统的学习就相当于是白学。为了让大家少走弯路,少碰壁,这里我直接把都打包整理好,希望能够真正帮助到大家_。
一、AGI大模型系统学习路线
很多人学习大模型的时候没有方向,东学一点西学一点,像只无头苍蝇乱撞,下面是我整理好的一套完整的学习路线,希望能够帮助到你们学习AI大模型。
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
二、640套AI大模型报告合集
这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。
三、AI大模型经典PDF书籍
随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。
四、AI大模型各大场景实战案例
结语
【一一AGI大模型学习 所有资源获取处(无偿领取)一一】
所有资料 ⚡️ ,朋友们如果有需要全套 《LLM大模型入门+进阶学习资源包》,扫码获取~
👉[CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)]()👈