文章名称
【AAAI-2019】【University College London/Noah's Ark Lab】Top-N Recommendation with Counterfactual User Preference Simulation
核心要点
文章旨在解决现有L2R场景下,训练样本系数且不平衡对推荐模型造成的影响。作者把推荐形式化为因果推断问题,并从观测数据中学习SEM,基于此从反事实的角度模拟用户的反馈。利用learning-based方法学习如何高效选取反事实样本,基于模拟数据和观测数据训练目标排序模型。并从理论上分析了生成样本数量和模型预测误差的关系,基于此提出利用启发式的方法控制预测误差带来的负面影响。
方法细节
问题引入
数据稀疏和不平衡严重影响了推荐模型的性能,同时不断地训练会持续放大偏差。反事实思想是解决这一问题的可靠方向,然而在推荐系统中应用反事实的方法面临着许多挑战,
- 推荐场景中,至今没有明确、统一的因果推断定义(例如,统一的SEM)。
- 如何(利用反事实方法)高效的从庞大的物品候选集中筛选推荐列表,仍然是未被解决的问题。
- 因果模型模型(SEM)可能是有噪声的,这些噪声如何影响模型的预测误差,并没有被很好的研究过。
为解决上述问题,作者提出了CPR框架。
具体做法
CPR包括推荐数据模型器(实际就是样本生成器,可以理解为样本增强的一种)和目标排序模型。文章的主要工作在于如何实现推荐模拟器,一言以蔽之,
- 利用观测数据学习用SEM(Structural Equation Models)表示的DGP(Data Generation Process,数据生成过程)模型。
- 先用最大化目标排序模型损失的方法寻找目标物品(也就是所谓的Learning-based Intervention),再利用Pearl’s “abduction-action-prediction”[2]方法估计反事实,得到模拟的样本。
接下来首先,看看如何定义所谓的推荐模拟器以及如何学习模拟器模型的参数,再看如何通过最大化目标排序模型的损失,来高效的、可学习的寻找反事实样本。
Recommender Simulator
作者,模拟器定义为SEM,并利用观测数据学习其参数。模型的定义和符合归纳如下,
- 推荐问题被作者重新定义为因果结构化模型。
- 是因果图,如下图所示,图中分别表示用户,返回给用户的推荐列表以及用户在推荐列表中交互了的物品列表(比如点击列表)。,反映了推荐系统利用用户偏好生成推荐列表的因果关系。分别反映了用户特征以及推荐列表排序对用户交互的因果影响。
Causal Graph, G- 表示结构化方程,形式化的反映了因果关系的定量描述,文中被定义为随机模型,具体的公式如下图所示。其中,都是内生变量(受到系统内部其他变量影响,可以看到和有关系),是外生变量。
strutural equation, F- 分别表示为用户推荐列表和用户选择与列表进行交互的概率。
- 训练样本
- 最终目标是,基于观测数据和因果模型学习推荐模拟器和(无偏的)目标推荐模型。
F的定义
因为是一个列表,如果考虑所有联合概率,结果是在全部物品集合上的组合,计算量巨大。因此,作者忽略了不同物品之间的交叉组合的因果效应,使得联合概率分布可以被分解为每个物品单独出现概率的乘积,具体公式如下图所示。
Formulation of p_R表示推荐列表的具体取值,其中每一个物品独立出现在推荐列表中的概率被表示为softmax的形式。分别表示用户和物品的embedding,是外生变量的权重,通过优化学习目标学习得到。
类似的,可以构建。分别表示用户和物品的embedding。这里作者刻意选择了不同的embedding,保证学习到服务于不同目的的信息。是用户选择交互的物品列表的具体取值,类似是外生变量的权重。
Formulation of p_SF的学习
有了因子分解后的联合概率,可以结合负采样技术[18, 26]来优化如下目标函数学习的参数。其中表示负样本。外生变量是从正态分布中采样的。
objective of p_R由于用户可选择的物品只在展示给用户的列表里,因此,在的学习过程中不需要进行负采样,可以直接利用softmax进行优化。
objective of p_S利用F进行反事实估计
学习了F的参数之后,即得到了SEM,可以基于此生成反事实样本。作者采用Pearl’s “abduction-action-prediction”[2]实现反事实干预的估计。具体做法是,
- abduction步骤,估计的后验概率,具体公式如下图所示。
posterior of \beta
可以通过公式5得到。但是这个概率仍然过于复杂,无法从中采样。因此,作者利用变分的方法[1],优化如下图所示的ELBO进行求解,得到变分分布。
variational distribution for \beta- action步骤,选择特定的用户和推荐列表,
- prediction步骤,利用采样得到的,结合如下公式,得到推荐列表中的某个物品被点击的概率。**重复如下步骤次(对挑选出的物品计算概率,这个挑选可以是随机的,也可以是之后介绍的learning-based方法)。
prediction step
本节描述了CPR框架的整体结构以及其中因果结构模型(SEM)的参数学习的方法,下一节继续介绍如何高效的选取反事实样本,以及作者如何利用理论分析得到启发式的方法,来控制预测误差的负面影响。
心得体会
abduction-action-prediction
整个反事实干预的过程或者说干预过程的重点集中在估计推荐列表中的哪个物品会被点击。也就是说,反事实只发生在点击阶段,而没有发生在推荐列表产生阶段。模拟生成的只是用户的反馈。个人理解,这样做的好处可以减小噪声带来的方差,同时不会引入过多偏差。但是可生成的内容会不会比较局限,可能需要看具体场景。
文章引用
[1] David M Blei, Alp Kucukelbir, and Jon D McAuliffe. 2017. Variational inference: A review for statisticians. Journal of the American statistical Association 112, 518 (2017), 859–877.
[2] Judea Pearl, Madelyn Glymour, and Nicholas P Jewell. 2016. Causal inference in statistics: A primer. John Wiley & Sons.
[3] Xiangnan He, Lizi Liao, Hanwang Zhang, Liqiang Nie, Xia Hu, and Tat-Seng Chua. 2017. Neural collaborative filtering. In Proceedings of the 26th interna- tional conference on world wide web. International World Wide Web Conferences Steering Committee, 173–182.
[4] SteffenRendle,ChristophFreudenthaler,ZenoGantner,andLarsSchmidt-Thieme. 2009. BPR: Bayesian personalized ranking from implicit feedback. In Proceedings of the twenty-fifth conference on uncertainty in artificial intelligence. AUAI Press, 452–461.
网友评论