局部激活单元
概述
DIN 中实现 Target Attention 的核心组件,根据候选广告为用户历史行为自适应分配权重的小型前馈网络。
关键内容
- 结构设计 — 输入为三部分的拼接:历史行为 Embedding $e_i$、候选广告 Embedding $e_a$、以及二者的外积 $e_i \odot e_a$(逐元素相乘)。拼接后送入小型 MLP(通常两层全连接),输出标量权重 $w_i$。
- 外积交互项 — 显式提供 $e_i \odot e_a$ 外积项能大幅降低网络学习难度,这一做法借鉴了 Factorization Machines 中二阶特征交互的思想。
- 放弃 Softmax — 传统注意力机制施加 Softmax 使 $\sum w_i = 1$,但 DIN 刻意不这样做。Softmax 会压缩权重的绝对值范围,弱化兴趣强度信息。去掉 Softmax 后,权重的绝对值能更好地反映用户对该候选商品的兴趣强度。
- 自适应性 — 同一用户面对不同候选广告时,局部激活单元会自动"激活"不同的历史行为。例如面对跑鞋时激活篮球鞋行为,面对 Java 书籍时激活 Python 教程行为。
- 消融实验 — 在阿里巴巴工业数据集上,局部激活单元相比 Sum Pooling 带来 +0.0067 的绝对 AUC 提升,是 DIN 各组件中贡献最大的部分。
- 与多峰分布的关系 — 局部激活单元的设计直接源于"用户兴趣是多峰分布"的洞察。不试图用固定向量概括所有兴趣,而是面对不同候选时动态激活相关的那部分兴趣峰。
来源
相关
- DIN — 局部激活单元的提出者
- Target Attention — 局部激活单元实现的注意力类型
- Factorization Machines — 外积交互项的思想来源
- Sum Pooling — 局部激活单元替代的传统方法
- CTR 预估 — 应用场景