©作者 | 汪方野
单位 | 复旦大学
论文标题:
Enhancing CTR Prediction with Context-Aware Feature Representation Learning
收录会议:
SIGIR 2022
论文链接:
https://arxiv.org/abs/2204.08758
目前大多数提升点击率预估效果的模型主要是通过建模特征交互,但是如何设计有效的特征交互结构需要设计人员对数据特点以及结构设计等方面有很强的要求。目前的以建模特征交互为主的模型可以总结为三层范式:embedding layer, feature interaction layer, 以及 prediction layer。大多数论文改进集中在 Featrue interaction layer。
然而大部分的模型都存在一个问题:对于一个相同的特征,他们仅仅学到了一个固定的特征表示,而没有考虑到这个特征在不同实例中不同上下文环境下的重要性。例如实例 1:{female, white, computer, workday} 和实例 2:{female, red, lipstick, workday} 中,特征 “female” 在这两个实例中的重要性(对最后的预测结果的影响或者与其他特征的关系)是不同的,因此在输入特征交互层之前我们就可以调整特征 “female” 的重要性或者是表示。
现有的工作已经注意到了这个问题,例如 IFM、DIFM 等,但是他们仅仅在不同的实例中为相同特征赋予不同的权重(vector-level weights),导致不同实例中的相同特征的表示存在严格的线性关系,而这显然是不太合理的。
另一方面,本文希望一个理想的特征细化模块应该识别重要的跨实例上下文信息,并学习不同上下文下显著不同的表示。
给出了一个例子:{female, red, lipstick, workday} and {female, red, lipstick, weekend},在这两个实例汇总,如果使用self-attention(在 CTR 中很常用的模块,来识别特征之间的关系),那么因为 “female”和“red”以及“lipstick”的关系比“workday”或者“weekend”的更加紧密,所以在两个实例中,都会赋予“red”和“lipstick”更大的注意力权重,而对“workday”或者“weekend”的权重都很小。但是用户的行为会随着“workday”到“weekend”的变化而变化。
因此本文提出了一个模型无关的模块 Feature Refinement Network(FRNet)来学习上下文相关的特征表示,能够使得相同的特征在不同的实例中根据与共现特征的关系以及完整的上下文信息进行调整。主要贡献如下:
FRNet模型主要包含两个模块:
通过对以往模型的总结,FRNet 主要通过学习特征间的关系(vector-level)以及上下文相关的信息(bit-level)的信息来学习最后的 context-aware representation。首先在在 IEU 中使用以下两个模块:
以上两个单元分别学习了特征之间的关系,对输入信息进行压缩,保存了特征的上下文信息。接下来通过一个 Integration unit 对这两部分信息进行融合:
可以看到每个实例只有一个上下文信息维度为 d,而经过 self-attention 之后的关系信息维度是 f*d。所以融合之后相当于赋予了每个特征上下文信息,而这部分信息仅仅 self-attention 是无法获取的。
实验数据集:
主要将 FRNet 应用到 FM 模型中说明 FRNet 的效果。
这一部分说明了 FRNet 的效果和效率。
将 FRNet 应用到其他模型中查看效果。
和其他模块进行对比。
对 IEU 模块中的两个超参数进行了分析:
通过消融实验来说明 FRNet 中的设计都是有效的:
本文的 context-aware feature representation 总结起来就是一句话:相同的特征在不同的实例下应该有不同的表示,而且不同实例下的表示不应该有严格的线性关系。为了说明这一点,本文通过可视化的方式进行了说明。图中都是同一个特征的原始表示和 1000 个不同实例中经过 FRNet(或者其他模块)之后的表示。
前面说到 Self-attention 中存在的问题:在大部分特征都相同的情况下,无法区分某些不重要的特征表示。在这个实验中,选择了两个特征(只有一个特征是不同的,其他特征都相同),在经过 self-attention 之后,获得的表示都是相同的。
但是在经过 CIE(DNN)压缩之后,可以看到仅仅因为这一个特征的不同,最后获得的表示是权重不同的,而这就是 self-attention 无法学习的上下文信息。最后 IEU 将上下文信息融合到 self-attention 中获得了图 8(c)的效果:两个实例中的每一组对应特征都有显著的差别。
3.7 bit-level权重分析