以下仅仅为个人对文章的阅读记录,如有错误,欢迎指正。如需转载注明来源即可~~ (哈哈哈哈哈,点个赞再走)
Zhang K, Qian H, Cui Q, et al. Multi-Interactive Attention Network for Fine-grained Feature Learning in CTR Prediction[C]//Proceedings of the 14th ACM International Conference on Web Search and Data Mining. 2021: 984-992.
原文链接:https://arxiv.org/pdf/2012.06968.pdf
一、模型简介与主要贡献
三类CTR模型:
- 经典模型以及浅层的特征交互模型: LR,FM、FFM等。
- 深度学习为主的高阶特征交互模型: WDL、DCN、DeepFM等。
- 使用RNN以及Attention去挖掘用户兴趣序列推荐模型:DIN、DIEN等。
本文主要研究序列推荐模型。 作者提出,之前的序列推荐模型主要挖掘候选物品有历史行为之间的联系,但是忽略了同样重要的细粒度的用户具体信息以及上下文信息(fine-grained user-specific and context information)。所以会存在以下问题: - 以往的方法大多是从用户的历史行为来探索用户的兴趣,但由于用户在电子商务系统中往往会有与任何历史行为无关的新需求,这可能会偏离真实的偏好,导致对CTR的预测出现偏差(如图3 (a))。
- 在真实的CTR场景中,许多用户的点击行为大多发生在很久以前,而缺少最近的活动(如图3 (b))。因此,仅仅依靠历史。用户的行为可能会导致过时的建议,不符合用户当前的需求。
- 最后,在序列行为编码方面,没有充分考虑不同子空间中特征交互的多样性,即历史行为在不同点击背景下的表现应该是不同的。例如,“t恤”可能在“夏季”而不是“冬季”被激活作为用户的行为表现。
幸运的是,在许多推荐系统中都存在大量特定于用户的和上下文的信息。这种细粒度的信息提供了各种线索来推断用户的当前状态,这可以显著提高个性化推荐的性能,特别是在历史行为有限或不具有代表性的情况下。例如,在图1 (b1)中,候选项“机械键盘”可能与用户当前的职业“程序员”更相关,这在历史行为中很难表现出来。因此,学习细粒度的特征交互有助于对用户当前的参考状态进行建模,从而在很大程度上消除了以往序列方法在CTR预测中的上述缺点。
所以在本文中,作者提出了Multi-Interactive Attention Network(MIAN),MIAN可以聚合多种信息,并通过候选项与其他细粒度特征之间的交互获得潜在表示。MIAN含有一个Multi-interactive layer,由三个局部交互模块和一个全局交互模型哭成。三个局部交互模型分别是:
- Item-Behaviors Interaction Module(IBIM):它使用Pre-LN Transformer自适应地探索不同子空间中顺序行为的用户偏好。
- Item-User Interaction Module(IUIM):旨在捕获候选项和细粒度的用户特定信息之间的知识
- Item-Context Interaction Module(ICIM):用于挖掘候选项和上下文感知信息之间的关系。
最后 Global Interaction Module (GIM):研究并权衡嵌入层后的低阶特征与三个局部交互模块生成的高阶特征之间的影响。
二、MIAN 模型结构
如下图所以MIAN模型主要包含以下三层:Embedding Layer,Multi-Interactive Layer, Prediction Layer.
2.1 Embedding layer
和大多数序列模型一样,将输入数据分为四部分:candidate item, historical behavior, user-specific, 以及 context information。 原始数据使用稀疏向量表示:
通过以下方式转化为稠密向量(tips:这里对于连续型变量没有做过多的处理):
所以最后有以下表示(candidate item, historical behavior, user-specific, 以及 context information):
2.2 Multi-Interactive Layer(MIL)
MIL 以一种有效的方式为候选项和其他信息之间的关系建模。具体来说,IBIM 通过捕获用户兴趣偏好的演变序列信息。此外,特定于用户的信息和上下文信息中的细粒度特性可以通过与IUIM和ICIM中的候选项交互生成更多特性。
2.2.1 Item-Behaviors Interaction Module (IBIM, 图2a)
IBIM包含了一个修改过了Transformer单元和attention 机制去捕捉用户的序列信息和候选用户和历史行为的交互信息。 如图2 所示,本文提出的 Pre-LN Transformer 将Layer Normalization 应用在 Multi-head attention 和 position-wise feed-forward network之前。 结果显示Pre-LN transformer 具有更快同时具有更稳定。
- Layer Normalization
【特地看了一下Transformer,他在Multi-head attention之后以及FFN之后都使用了RestNet 和 Layer Norm结构】
-
Position-wise Feed-Forward Network (FFN)
通过以上方式学习序列信息。然后引入Candidate item信息,使用attention 机制获得新的向量。结合图来看,先讲item表示与每一个向量连接,然后使用attention方式:
最终获得了最后的表示。
2.2.2 Item-User Interaction Module (IUIM)
项目-用户交互模块(IUIM)。在真实的CTR预测场景中,候选项可能与特定于用户的信息相关联。由于用户顺序行为中可能缺少用户的偏好,因此需要通过用户特定的信息来弥补这一信息。然而,大多数以前的顺序方法只关注挖掘历史行为,这导致了一个共同的限制,即,在没有顺序数据的情况下,它们不能很好地执行。为了解决这个问题,作者添加了IUIM(图2 (b))来进一步挖掘候选项和细粒度的用户特定信息之间的交互。和上面一部分最后计算的方法相同,也是先连接,然后再求attention:
2.2.3 Item-Context Interaction Module (ICIM)
对于CTR预测任务的研究,大多对候选项与细粒度上下文信息之间的交互作用关注较少。而天气、季节等上下文信息中的细粒度特征与候选项的活跃性密切相关。例如,“t恤”在“夏季”销量激增,而“冬季”销量下降。因此,将候选项之间的交互和用于CTR预测的细粒度上下文信息合并起来是很有价值的。与IUIM体系结构类似,我们引入ICIM来量化该因素的重要性。
2.2.4 Global Interaction Module (GIM)
为了充分利用低阶和高阶特征之间的交互作用。如图2 (d)所示,全局交互模块被设计成明确地捕获原始特征(即,低阶)和生成的交互特征(即,高阶)之间的关系。利用注意力机制提取不同交互模块和原始嵌入的重要性。计算过程如下:
2.3 预测层
通过 DNN 和softmax 来计算最后的结果。
三、实验分析
数据集 (这里41 应该写错了吧):
3.1 离线实验分析
结果是好的,不做过多分析。不过这里的Baseline有点弱。
3.2 模型效率分析
没有给出图。指出 LR (1)逐步取消各个模块 (2) 将Pre-LN Transformer 原始的Transformer进行对比。同时对比运行效率。 对Global Interaction Module进行分析。主要给出了14个样本最后的attention参数。可以看出高阶信息的权重更大。 序列部分的处理还有可能优点弱。其实以前DIN、DIEN、DSTN、DHAN等序列在处理User-psecific或者Context 信息的时候一般使用Pooling(max or average)的方式,主要挖缺历史行为中的用户兴趣信息。MIAN则是加强了序列模型中的特征交互信息。3.3 线上A/B测试
3.4 消融分析
3.5 可视化分析
四、个人小结