第 134 题:AFM的注意力因子分解,交互权重的可解释性?
题目
AFM的注意力因子分解,交互权重的可解释性?
完整讲解
一、AFM 与注意力因子分解
AFM(Attentional Factorization Machine) 在 FM 的二阶项上引入注意力:不同特征对 $(i,j)$ 对目标的重要性不同,用可学习的注意力权重 $a_{ij}$ 对二阶项加权,再求和,即注意力因子分解。
二、注意力权重的形式
设嵌入 $\boldsymbol{v}i, \boldsymbol{v}_j$,二阶交互向量为 $\boldsymbol{v}_i \odot \boldsymbol{v}_j$(逐元素乘)。注意力分数为
\(a_{ij}' = \boldsymbol{h}^\top \text{ReLU}(\boldsymbol{W} [\boldsymbol{v}_i \odot \boldsymbol{v}_j] + \boldsymbol{b}),\quad a_{ij} = \frac{\exp(a_{ij}')}{\sum_{(i,j)} \exp(a_{ij}')},\)
即对每对 $(i,j)$ 的交互向量经 MLP 得标量、再 softmax 归一化。AFM 输出为
\(y = \sum_{i<j} a_{ij} \, (\boldsymbol{v}_i \odot \boldsymbol{v}_j)^\top \boldsymbol{p},\)
或先加权求和交互向量再与 $\boldsymbol{p}$ 内积。$a{ij}$ 大表示该特征对更重要。
三、交互权重的可解释性
- 可解释:学到的 $a_{ij}$ 可解释为「特征 $i$ 与 $j$ 的交互对预测的贡献权重」。上线后可对样本或群体统计哪些 $(i,j)$ 的 $a_{ij}$ 高,用于特征重要性分析与业务解释。
- 与 FM 对比:FM 中所有二阶项等权(或仅靠 $\langle \boldsymbol{v}_i, \boldsymbol{v}_j \rangle$ 隐式区分);AFM 显式学权重,重要交互被放大、噪声交互被抑制,且权重可导出做分析。
- 代价:参数量与计算增加(每对 $(i,j)$ 要算 attention);通常需限制为「同场不交互」或采样部分对以控制复杂度。
四、工程要点
- 全量 $O(n^2)$ 对在特征多时不可行;可只对不同 field 间的对做 attention(场间二阶),或先 FM 式求和再在池化向量上做一层 attention,在可解释性与效率间折中。
面试要点
- 能写出 AFM 的注意力加权二阶项及 $a_{ij}$ 的计算(交互向量→MLP→softmax)。
- 能说明可解释性:$a_{ij}$ 表示特征对 $(i,j)$ 的贡献权重,可统计用于分析。
- 能说清与 FM 的对比及复杂度控制(场间、采样等)。
记忆要点
- AFM:二阶项加注意力 $a_{ij}$,$a_{ij}$ 由交互向量经 MLP+softmax 得到。
- 可解释:$a_{ij}$ 即交互权重,可统计重要特征对;与 FM 比显式加权。
- 复杂度 $O(n^2)$,可用场间二阶或采样控制。