Controllable Multi-Interest Framework for Recommendation
https://arxiv.org/pdf/2005.09347.pdf
问题定义
对于一个用户的点击序列(历史)来说,推荐系统的目标是预测用户的下一次点击:
背景
大多数序列推荐系统中都使用一个全局的embedding来表示用户,但是这样存在的问题是全局embedding没法表示精细的用户兴趣。文中提出的多兴趣框架可以从用户的历史点击中捕捉用户的多个兴趣并从海量的item池中召回相关候选物品,这些物品会输入一个聚合模型来得到最终的推荐结果。聚合模型同时考虑了推荐的精度以及多样性。
多兴趣框架
之前大多数模型都只使用一个embedding来表示用户,在文中提出使用多个矩阵表示用户的不同兴趣,模型输入为用户的点击序列,输出为一个多维的矩阵每个维度表示用户的某种兴趣。文中使用两种方法来计算用户的兴趣向量,分别是:动态路由和self- attention算法。
动态路由
输入是一个向量,输出是k个用户的interest表示。这块没太看懂,大致来说就是计算向量属于不同兴趣桶的概率,通过多次迭代,计算出k个兴趣向量的值。
Self-Attention
H是用户的历史点击物品embedding矩阵,通过以下公式计算attention权重:
然后得到兴趣矩阵:
聚合模型
通过k个用户的兴趣矩阵,分别在item池中选择n个最近临商品,得到k*n个候选物品,最简单的选择topN物品的方法就是计算这k*n个物品与用户embedding的内积:
但是考虑到物品多样性的问题,于是加入另一项衡量物品多样性的值:
其中g(i,j)表示物品i的商品种类不等于j时的计算值:
实验
在亚马逊和淘宝的数据集上进行了实验,由于是对比召回物品的精度,所以多样性系数在这个实验时取为0。
当然,文中还做了多样性系数的测试,结果显示,超参数越大时,对用户展示的结果种类越丰富。因为如今的推荐系统对于能产生多样性的结果也比较看重(这点存疑,我觉得就是说的好听点)。
结论
文中提出了一个多注意力框架来提取用户的不同兴趣,我觉得确实比较符合人的认知常识,因为用户的兴趣不是单一的,全局的embedding确实没法很好的建模兴趣。同时还提出了一个聚合框架可以选择推荐的精度以及多样性。
Ref:Cen Y, Zhang J, Zou X, et al. Controllable Multi-Interest Framework for Recommendation[C]//Proceedings of the 26th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. 2020: 2942-2951.