| 第8行: |
第8行: |
| | | | |
| | = 注意力机制的类型 = | | = 注意力机制的类型 = |
| − | 根据不同的分类标准,注意力机制可以分为多种类型。按注意力范围分类:'''自注意力(Self-Attention)''':序列内部元素之间的注意力,如Transformer中的自注意力。'''交叉注意力(Cross-Attention)''':不同序列之间的注意力,如编码器-解码器结构中的注意力。[[文件:Self-attention.png|缩略图|self-attention<ref>Zhang, Y. ''et al.'' Attention is all you need: utilizing attention in AI-enabled drug discovery. ''Briefings in Bioinformatics'' '''25''', bbad467, doi:10.1093/bib/bbad467 (2024).</ref>|替代=|344x344像素]]
| + | 根据不同的分类标准,注意力机制可以分为多种类型。如果按注意力范围分类,可以分为'''自注意力(Self-Attention)''':序列内部元素之间的注意力,如Transformer中的自注意力。'''交叉注意力(Cross-Attention)''':不同序列之间的注意力,如编码器-解码器结构中的注意力。[[文件:Self-attention.png|缩略图|自注意力机制<ref name=":1" />|替代=|344x344像素]] |
| | | | |
| | === 自注意力机制 === | | === 自注意力机制 === |
| − | 自注意力机制通过动态权重分配,允许序列中每个元素与其他元素进行交互,从而动态聚合全局上下文信息,精确建模元素间的依赖关系。Transformer模型在诸多自然语言处理任务中展现出的卓越性能源于其全局自注意力机制<ref>Feng, Z. & Li, Y. in ''2024 5th International Conference on Computer Engineering and Application (ICCEA).'' 449-454.</ref>。 | + | 自注意力机制通过动态权重分配,允许序列中每个元素与其他元素进行交互,从而动态聚合全局上下文信息,精确建模元素间的依赖关系。Transformer模型在诸多自然语言处理任务中展现出的卓越性能源于其全局自注意力机制<ref>Feng, Z. & Li, Y. A window attention based Transformer for Automatic Speech Recognition. ''2024 5th International Conference on Computer Engineering and Application (ICCEA).'' 449-454, doi: 10.1109/ICCEA62105.2024.10603610 (2024).</ref>。 |
| − | 具体的步骤为<ref>Han, K. ''et al.'' A Survey on Vision Transformer. ''IEEE Transactions on Pattern Analysis and Machine Intelligence'' '''45''', 87-110, doi:10.1109/TPAMI.2022.3152247 (2023).</ref><ref>Vaswani, A. ''et al.'' in ''ADVANCES IN NEURAL INFORMATION PROCESSING SYSTEMS 30 (NIPS 2017)'' Vol. 30 (2017).</ref>: | + | 具体的步骤为<ref>Han, K. ''et al.'' A Survey on Vision Transformer. ''IEEE Transactions on Pattern Analysis and Machine Intelligence'' '''45''', 87-110, doi:10.1109/TPAMI.2022.3152247 (2023).</ref><ref name=":1">Vaswani, A. ''et al.'' Attention Is All You Need. ''ADVANCES IN NEURAL INFORMATION PROCESSING SYSTEMS 30 (NIPS 2017)'' Vol. 30 (2017).</ref>: |
| | | | |
| | ===== 1.查询 (Query), 键(Key), 值 (Value) 的生成 ===== | | ===== 1.查询 (Query), 键(Key), 值 (Value) 的生成 ===== |
| 第44行: |
第44行: |
| | | | |
| | === 多头注意力机制 === | | === 多头注意力机制 === |
| − | [[文件:多头注意力机制.png|缩略图|多头注意力机制<ref>Zhang, Y. ''et al.'' Attention is all you need: utilizing attention in AI-enabled drug discovery. ''Briefings in Bioinformatics'' '''25''', bbad467, doi:10.1093/bib/bbad467 (2024).</ref>|替代=]]多头注意力是利用多个查询,来平行地计算从输入信息中选取多个信息。每个注意力关注输入信息的不同部分。它将输入序列的表示拆分成多个子空间(头),然后在每个子空间内独立地计算注意力权重,最后将各个子空间的结果拼接起来。多头注意力机制使得模型可以在不同的表示子空间中捕获到不同的上下文信息,增强对复杂数据内在结构的建模能力(3-5)。 | + | [[文件:多头注意力机制.png|缩略图|多头注意力机制<ref name=":2">Zhang, Y. ''et al.'' Attention is all you need: utilizing attention in AI-enabled drug discovery. ''Briefings in Bioinformatics'' '''25''', bbad467, doi:10.1093/bib/bbad467 (2024).</ref>|替代=]]多头注意力是利用多个查询,来平行地计算从输入信息中选取多个信息。每个注意力关注输入信息的不同部分。它将输入序列的表示拆分成多个子空间(头),然后在每个子空间内独立地计算注意力权重,最后将各个子空间的结果拼接起来。多头注意力机制使得模型可以在不同的表示子空间中捕获到不同的上下文信息,增强对复杂数据内在结构的建模能力<ref name=":1" /><ref name=":2" /><ref>Voita, E. ''et al.'' Analyzing Multi-Head Self-Attention: Specialized Heads Do the Heavy Lifting, the Rest Can Be Pruned. ''57TH ANNUAL MEETING OF THE ASSOCIATION FOR COMPUTATIONAL LINGUISTICS (ACL 2019)'' 5797-5808 (2019).</ref>。具体流程如下: |
| | | | |
| − | 工作流程:
| + | ==== 1.子空间Q, K, V 向量的生成 ==== |
| − | | + | 给定嵌入向量和头 (Head) 的数目h,在每个头(子空间)中都会通过一组不同的权重矩阵得到QKV向量。 |
| − | (1)子空间Q, K, V 向量的生成
| |
| − | | |
| − | 给定嵌入向量和头 (Head) 的数目h,在每个头(子空间)中都会通过一组不同的权重矩阵 | |
| − | | |
| − | 对输入序列进行线性投影变换得到
| |
| − | | |
| − | , 其维度为
| |
| − | | |
| − | (2)多头并行计算
| |
| | | | |
| | + | ==== 2.多头并行计算 ==== |
| | 对每个头独立计算缩放点乘注意力: | | 对每个头独立计算缩放点乘注意力: |
| | + | [[文件:公式3.png|居中|缩略图|400x400像素]] |
| | | | |
| − | (3)多头合并输出
| + | ==== 3.多头合并输出 ==== |
| − | | |
| | 将所有头的输出拼接后通过线性层融合作为多头注意力机制的输出: | | 将所有头的输出拼接后通过线性层融合作为多头注意力机制的输出: |
| | + | [[文件:公式4.png|居中|缩略图|616x616像素]] |
| | = 注意力机制的应用 = | | = 注意力机制的应用 = |
| − | 注意力机制在各种人工智能领域都得到了广泛的应用:
| + | 注意力机制在各种人工智能领域都得到了广泛的应用。值得一提的是,ChatGPT等大型语言模型都广泛使用了注意力机制作为核心技术。 |
| | + | === '''自然语言处理''' === |
| | [[文件:注意力机制在自然语言处理中的应用.png|缩略图|注意力机制在自然语言处理中的应用<ref name=":0">Andrea, G. ''et al''. Attention in Natural Language Processing. ''IEEE Transactions on Neural Networks and Learning Systems'' '''32''', 4291-4308, doi: 10.1109/tnnls.2020.3019893 (2021).</ref>]] | | [[文件:注意力机制在自然语言处理中的应用.png|缩略图|注意力机制在自然语言处理中的应用<ref name=":0">Andrea, G. ''et al''. Attention in Natural Language Processing. ''IEEE Transactions on Neural Networks and Learning Systems'' '''32''', 4291-4308, doi: 10.1109/tnnls.2020.3019893 (2021).</ref>]] |
| − |
| |
| − | === '''自然语言处理''' ===
| |
| | | | |
| | ==== '''机器翻译''' ==== | | ==== '''机器翻译''' ==== |
| 第76行: |
第68行: |
| | | | |
| | ==== '''问答系统''' ==== | | ==== '''问答系统''' ==== |
| − | 注意力机制帮助模型定位问题相关的文档段落,从而给出更准确的答案。[[文件:注意力机制用于计算机视觉.png|缩略图|注意力机制用于计算机视觉<ref>Kelvin, Xu. ''et al''. Show, Attend and Tell: Neural Image Caption Generation with Visual Attention. arXiv:1502.03044v3 (2016).</ref>]] | + | 注意力机制帮助模型定位问题相关的文档段落,从而给出更准确的答案。 |
| − | | + | ==='''计算机视觉'''=== |
| − | === '''计算机视觉''' ===
| + | [[文件:注意力机制用于计算机视觉.png|缩略图|注意力机制用于计算机视觉<ref>Kelvin, Xu. ''et al''. Show, Attend and Tell: Neural Image Caption Generation with Visual Attention. arXiv:1502.03044v3 (2016).</ref>]] |
| | | | |
| | ==== '''图像描述生成''' ==== | | ==== '''图像描述生成''' ==== |
| 第88行: |
第80行: |
| | ==== '''图像分类''' ==== | | ==== '''图像分类''' ==== |
| | 注意力机制可以帮助模型关注图像中对分类决策至关重要的区域。 | | 注意力机制可以帮助模型关注图像中对分类决策至关重要的区域。 |
| − |
| |
| − |
| |
| − |
| |
| − | 值得一提的是,ChatGPT等大型语言模型都广泛使用了注意力机制作为核心技术。
| |
| − |
| |
| | = 参考文献 = | | = 参考文献 = |
| | <references/> | | <references/> |