文章名称
【RecSys-2020】【University of Tuebingen】Causal Inference for Recommender Systems
核心要点
文章旨在利用因果推断的框架提高推荐系统效率,只推荐被曝光后用户才会看的电影,而非曝光不曝光都会被观看的电影,也就是所谓的观看提升量。同时,利用因果推断的框架解决推荐模型经常遇到的混淆变量的问题。
方法细节
问题引入
作者认为,推荐模型天生应该是因果的。推荐模型应该推荐那些不推荐用户就不会看的电影。此时,一般模型会遇到混淆变量的影响,而无法直接从观测数据中有效的估计出因果效应。基于因果推断的理论,需要我们观测到所有混淆变量,才能准确反应因果效应[19],但是我们无法确认是否观测了所有混混淆变量[8]。
具体做法
作者提出deconfounded recommender,一种尝试纠正经典矩阵分解以解决未观察到的混杂问题的方法。首先,形式化的定义一下问题,
- 用户是否被曝光了电影,记作,可以被认为是treatment。
- 用户和物品的嵌入表示,分别记作。
- 用户对物品的反馈可以被形式化为,两个potential outcome,,分别表示被曝光(be made to watch)和没有被曝光情况下的用户反馈。
- 作者用如下图所示的建模上述outcome,其中表示treatment。该公式表示,当时,模型假设用户的反馈服从正态分布,均值是用户和物品表示的内积(模型是矩阵分解的架构);而是,模型的均值是0。
如果直接拟合观测数据,上述模型退化为传统的probabilistic matrix factorization[17]。这种情况下,模型只考虑观测到的点击数据,忽略了未暴露的物品。
作者认为,从因果推断的角度,如果要无偏估计,需要满足如下图所示的ignorability的假设。
其中,分别是在建立在所有物品上的曝光(把所有物品上的曝光或者不曝光作为treatment,是一个0/1的向量),其形式如下图所示。
显然,要求独立于是不合理的,因为,如地域和题材等混淆变量,会被推荐模型利用,一定会影响电影的曝光,也会影响用户对它们的评分。
因此,用户的偏好通常会被错误的估计。此时,需要我们控制confounder[18, 21]。假设,confounder为,unconfounderness的假设可以表述如下,
此时,潜在因果的估计模型如下图所示,其中。
但是,上述条件要求所有confounder都被观测到,被称为strong ignorability,通常是不可测量的[8]。
deconfounded recommender
作者通过建模曝光数据,来带代替未观测的混淆变量(因为曝光是与无观测的混淆变量相关,是他们的一种可观测表现)。作者表示,从causal inference的角度看,推荐系统是一个multiple treatment的问题,每一个用户-物品元组的曝光是一个treatment,而所有物品上的曝光被看做是一个treatment向量,才是真正的outcome,当然也是个向量。但是对所有物品的曝光是个组合问题,导致只能观测到部分组合,并且不知道哪些因素实际影响了这个组合,所以存在未观测变量。
基于建模曝光的思想,作者把deconfounded recommender分为两个步骤,
建模曝光数据。作者利用Poisson factorization[5]来建模曝光数据,Poisson factorization假设数据来源于泊松分布,具体公式如下图所示,其中是非负的维向量,分别表示用户偏好和物品特性。作者表示,PF是非负矩阵分解的变种。
重新估计曝光。利用训练好的PF模型替换未观测的混淆变量,可重建曝光矩阵。其中,其中\boldsymbol{a}是观察到的所有用户的曝光。值得注意的是,期望在PF模型估计的所有曝光上计算。并且后验均值被当做confounder的替换值[26]。
计算outcome。最后,利用如下图所示的公式,基于重新估计的曝光矩阵(包括了替换后的confounder的影响)来计算outcome(点击)。其中,系数用来调节对outcome的影响程度。**值得注意的是,参数在在实际观测到的点击数据上(或评分)和未点击的数据上共同训练,而除了参数以外的其他参数只在实际观测到的点击数据上训练(未点击的数据意味着)。预测时,利用作为预估的点击(或评分)。
本节讲解了作者研究的问题背景,同时描述了解决方法的流程细节。下一节继续介绍方法的理论分析。
心得体会
观看提升量
作者期望最大化的,其实是电影被观看的概率。从这个角度定义的出发,计算提升量。提升是由于推荐这个动作带来的。事实上,一个电影是否被观看以及提升,真的能带来全局最优么?我们把所有提升量最高的电影推荐给了用户,但是占用了用户的观看时长,可能用户不喜欢最终效果会下降。反而是那些用户自己也会搜的,但是有一时想不起来的更反应用户喜好?
也许从作者的角度,提升代表了给用户带来新鲜感或者被推荐的体验感,因此增加用户粘性提升平台收入。而不仅仅是为了符合因果推断的框架而已。
未观测变量
个人理解,不管是single treatment还是multiple treatment,未观测变量出现的根本原因是不可控的和未知的环节,比如推荐的工程链路,模型的异常,未考虑到的case,还有那些不可能被电脑记录的人的情绪等。unmearued confounder处处存在。
文章引用
[5] Prem Gopalan, Jake M Hofman, and David M Blei. 2015. Scalable Recommenda- tion with Hierarchical Poisson Factorization.. In UAI. 326–335.
[8] Paul W Holland, Clark Glymour, and Clive Granger. 1985. Statistics and causal inference. ETS Research Report Series 1985, 2 (1985).
[17] Andriy Mnih and Ruslan R Salakhutdinov. 2008. Probabilistic matrix factorization. In Advances in neural information processing systems. 1257–1264.
[18] Judea Pearl. 2009. Causality. Cambridge University Press.
[19] Paul R Rosenbaum and Donald B Rubin. 1983. The central role of the propensity score in observational studies for causal effects. Biometrika 70, 1 (1983), 41–55.
[21] Donald B Rubin. 2005. Causal inference using potential outcomes: Design, modeling, decisions. J. Amer. Statist. Assoc. 100, 469 (2005), 322–331.
[26] Yixin Wang and David M Blei. 2018. The blessings of multiple causes. arXiv preprint arXiv:1805.06826 (2018).