自然语言处理中的注意力机制与Transformer架构详解
1. 注意力机制基础
在自然语言处理里,注意力机制是一个关键概念,它主要分为自注意力(self-attention)和交叉注意力(cross-attention)。
1.1 自注意力
自注意力会依据句子中单词间的相似度,为每个单词收集上下文信息。通常,这些相似度是通过单词与句子中其他单词的点积来捕捉的。
1.2 交叉注意力
交叉注意力则尝试捕捉两个不同序列元素之间的相似度。在机器翻译的Seq2Seq模型中,注意力可用于通过关注当前目标语言单词嵌入(通常通过自注意力包含了所有先前单词的汇总信息),从源语言单词嵌入中获取相关上下文,以预测下一个单词。
1.3 注意力的数学结构
注意力有三个关键组成部分:键(K)、值(V)和查询(Q)。注意力可定义为从键、值和查询元组到输出的映射,该输出是值的加权和。
1.3.1 缩放点积注意力
缩放点积注意力的映射可表示为:
[Attention(K, Q, V) = softmax(\frac{QK^T}{\sqrt{k}})V]
这里,Q代表查询的向量嵌入,是一个矩阵;K代表键的向量嵌入;V代表值的向量。为使缩放点积注意力正常工作,键嵌入和查询嵌入的维度k必须相同。
在机器翻译示例中,将英语句子 “It’s a beautiful day” 翻译成法语句子 “C’est une belle journee”,查询是法语句子中的每个单词,而键是英语句子 “It’s a beautiful day” 中的每个单词。 <
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



