推荐系统遇上深度学习(一三四)-[阿里]对抗过滤建模用户长期行为

2022-05-28  本文已影响0人  文哥的学习日记

今天给大家带来一篇SIGIR2022上阿里中稿的一篇短文,主要研究在建模用户长期兴趣时,如何对用户的长行为序列中噪声进行过滤,选择topK的有用的行为用于CTR预估。论文提出对抗学习的思路来解决这一问题,一起来学习一下。

1、背景

基于用户历史行为序列建模用户的兴趣在CTR预估等领域取得了显著的成果。用户兴趣可以分为短期和长期,短期兴趣一般使用用户近期的行为来建模,长期兴趣则使用用户较长一段时期内的行为进行建模。由于用户在淘宝上的行为非常多,导致在建模用户长期兴趣时,使用的用户历史行为序列长度会非常长。

直接对长序列处理,线上性能难以保证,因此现有对于用户长行为序列的建模方法,大都采用的思想是将长序列转换为短序列,再采取类似DIN的方法进行处理,如MIMN引入Memory Network对行为序列信息进行提取和存储,并引入Memory Utilization Regularization对写入的权重方差进行控制,避免热门的商品主导Memory的更新。在线上预测通过设计单独的UIC模块减少耗时的压力。MIMN的主要缺点在于兴趣的提取无法很好的和候选AD/商品交互(仅通过存储矩阵实现交互),可能会对效果有损。SIM引入General Search Unit对用户行为序列中相关的item进行检索,通过这种检索的方式减少行为序列中item的数量。检索方式分为hard-search和soft-search两种方式,对于hard-search方式来说,通过规则方式进行检索,例如跟target item相同品类的item,这种方式存在的主要缺点是搜索阶段的目标和最终的CTR的目标并非一致,即并非端到端学习。对于soft-search方式来说,基于embedding相似度选取topk的item,这种效果并没有比hard-search提升明显,同时线上耗时增加更加明显。

但上述模型的缺点并非本文重点关注的问题,本文重点关注的是如何对长历史行为序列中的噪声进行处理。这是上述论文都没有涉及到的。

论文提出,用户的长行为序列中可能存在两类的噪声:重复行为和无用行为。对重复行为来说,可能会导致整个序列被少数的几个item所主导,无用的行为如误点击可能并不会反映用户的真实兴趣,对预估造成一定的影响。为了对长行为序列中的噪声进行有效处理,论文提出了ADFM框架(Adversarial Filtering Modeling)。

2、ADFM介绍

4.1 ADFM介绍

ADFM的模型结构如下图所示:

模型输入包括target item信息,user信息,用户多种行为序列(曝光,点击,加购,下单)。从上往下看,ADFM主要包含HAU、BSU、IEU、AIEU等几个模块,接下来分别对其进行介绍:

4.2 Hierarchical Aggregation Unit (HAU):

HAU模块对多个历史行为序列按照一定方式(如item id)进行聚合,同时,为了尽可能保留原始行为序列信息,聚合时增加多个统计信息,如行为出现次数,最近一次发生时间,第一次发生时间等等。

4.3 Behavior Selection Unit (BSU):

BSU引入self-attention对历史行为进行筛选,每个序列中,选择top-k个最有用的行为,具体计算过程为:

上面共三个公式,第一个公式是selt-attention的计算过程,第二个是对序列中的每个行为进行一个打分,第三个公式基于函数Filter(score,embedding,k)是top-k行为筛选,可以看到筛选出的行为对应的embedding是self-attention的输出以及对应的score的乘积。

4.4 Interest Extraction Unit (IEU)

IEU模块同样引入self-attention,基于选择的历史行为和target item,进行兴趣的抽取,并得到CTR预估值:

4.5 Adversarial Interest Extraction Unit(AIEU)

为了保证BSU模块抽取到的top-K的行为时准确的,引入对抗学习的思路,新增AIEU模块。AIEU模块和IEU模块的结构相同,区别在于使用的是topk以外的行为。

4.6 Model Training

IEU和AIEU模块分别计算得到ctr预估值,并计算logloss,模型期望IEU的loss远小于AIEU的loss

直接优化上面的损失同时更新IEU和AIEU两部分网络,topK和非topK行为的变动剧烈导致模型难以收敛,因此模型借鉴对抗学习的思路,进行两阶段的交替训练:

1)一阶段:固定BSU,通过如下的损失优化IEU和AIEU,提升IEU和AIEU的CTR预估准确性:

2)二阶段:固定IEU和AIEU,通过如下的损失优化BSU,提升topK选择的准确性:

3、实验结果

论文将ADFM与众多base模型进行了效果对比,取得了正向的效果:

4、总结

论文提出了一种对长序列行为噪声过滤的方法,并取得了相较于base更优的效果,同时通过对抗学习的思路,减少模型训练的不稳定性,提升行为选取的有效性,另一方面,模型可进行端到端训练。但为了减少线上预测耗时,topK是提前计算好并进行存储的,没有考虑target item,一定程度上对效果有损。

好了,论文就介绍到这里,感兴趣的可以阅读原文~

上一篇下一篇

猜你喜欢

热点阅读