对Attention注意力机制的理解

163 阅读3分钟

核心概念

Query(查询):代表当前要关注信息的需求或指示,源于模型处理当下位置(如解码器某时刻生成任务),决定关注输入序列哪些部分。像是在阅读理解里,问题就是 Query,指引去文中找对应答案相关片段。

Key(键):对应输入序列每个位置元素所附带 “标签”,与 Query 匹配衡量相关度。在文本处理中,句子里每个单词经嵌入、线性变换得到 Key,用于和 Query 比对看契合程度,像用关键词标签筛选文档关键段落。

Value(值): 是实际携带信息的数据实体,与 Key 对应关联,当 Query 和 Key 匹配出高相关性,相应 Value 被提取利用。例如,单词向量作为 Value,若对应 Key 被 Query 选中,单词含义、语义信息参与后续计算。

工作原理

计算注意力分数:通过特定函数(常见点积、缩放点积、加性等)计算 Query 与各个 Key 的相似度,得到注意力分数矩阵,分数表征对应位置输入元素对当前任务的相关重要性,点积方式简洁直观(),缩放点积(,为 Key 向量维度)缓解高维下点积值过大问题。

注意力分布生成:利用 softmax 函数对注意力分数归一化,将分数转化为概率分布(权重),确保所有权重在 0 - 1 间且和为 1,明确各位置相对重要程度,突出关键信息对应权重,抑制无关部分。如在翻译句子时,原句中与待译词紧密语义关联单词经此获高权重。

加权求和获取上下文信息:依注意力分布权重,对各 Value 加权求和,整合序列关键信息,得到当前关注的上下文表示向量,融入后续模型计算环节(如解码器生成单词、分类任务特征提取)。这步类似依重要性提炼总结输入精华,为后续决策、输出筑牢根基。

优势体现

捕捉长距离依赖:不同位置间依赖不再受限于序列顺序、长度,借助注意力能直接关联、聚焦任意远但语义相关部分,像长篇小说分析人物关系,可跨章节锁定关联描述,优于传统循环网络顺序逐次处理局限。

并行计算提升效率:不像 RNN 顺序依赖,Attention 机制计算各位置注意力分数可并行开展,充分利用 GPU 算力,在大规模数据、复杂模型训练时,大幅缩训练时间、加速推理,适配工业级应用需求。

灵活聚焦关键信息:依任务需求动态分配关注权重,适应多样场景,对话系统里对用户关键指令词聚焦回应,文本摘要突出核心观点,依不同文本体裁、用途按需调配 “目光” 锁定有用元素。