# Attention 注意力机制

注意力机制是一种 让模型在处理序列数据时 “有选择性地关注重要信息” 的技术,核心思想类似人类阅读时的注意力分配 —— 比如读 “小明给小红送了一本书,她很喜欢” 时,我们会自然聚焦 “她” 与 “小红” 的关联,而非平均关注每个词。

注意力机制通过计算 “关联权重” 实现对重要信息的聚焦,核心是三个向量的交互:

  • Query(查询):当前位置的 “关注点”(比如 “她” 这个词,需要找到它指代的对象);
  • Key(键):所有位置的 “信息标签”(比如 “小明”“小红”“书” 各自的特征);
  • Value(值):所有位置的 “具体信息”(比如 “小红” 对应的语义内容)。

计算步骤

  1. 计算 Query 与每个 Key 的 “相似度”(通常用点积或余弦相似度),得到 “原始权重”;
  2. 用 softmax 将原始权重归一化(转换为 0~1 的概率,总和为 1),得到 “注意力权重”(权重越高,说明该位置与当前 Query 越相关);
  3. 用注意力权重对 Value 进行加权求和,得到 “融合了关键信息的输出”。
  • 自注意力(Self-Attention):Query、Key、Value 来自同一个序列(如一句话内部的词与词关联),用于捕捉序列内部的依赖关系(如 “她” 与 “小红” 的指代)。

# Transformer

基于自注意力机制的序列建模架构
Transformer 的目标是:在并行处理序列的同时,高效捕捉序列中任意两个位置的依赖关系(无论距离远近)。

Transformer 由编码器(Encoder) 和解码器(Decoder) 两部分组成,整体结构如图所示(以机器翻译为例,输入为源语言句子,输出为目标语言句子):
[输入序列] → 编码器 → [上下文特征] → 解码器 → [输出序列]

# 1. 编码器(Encoder):将输入序列转换为 “上下文感知的特征表示”

编码器由 N 个相同的 “编码器层” 堆叠而成(论文中 N=6),每个编码器层包含两个核心模块:

  • 多头自注意力机制(Multi-Head Attention)
  • 前馈神经网络(Feed-Forward Network)
    且每个模块后都配有残差连接(Residual Connection) 和层归一化(Layer Normalization)

# 2. 解码器(Decoder):根据编码器特征生成目标序列

解码器同样由 N 个相同的 “解码器层” 堆叠而成(N=6),每个解码器层包含三个模块:

  • 掩码多头自注意力(Masked Multi-Head Attention)
  • 编码器 - 解码器注意力(Encoder-Decoder Attention)
  • 前馈神经网络(同编码器,带残差连接和层归一化)

# 影响

Transformer 彻底改变了 NLP 的研究范式:

  • 基于 “仅编码器” 结构,衍生出 BERT、RoBERTa 等模型(擅长文本理解任务,如分类、问答);
  • 基于 “仅解码器” 结构,衍生出 GPT 系列模型(擅长文本生成任务,如写作、翻译);
  • 成为预训练语言模型的 “标准架构”,推动了 NLP 任务性能的跨越式提升。
更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

北沐清 微信支付

微信支付

北沐清 支付宝

支付宝