美文网首页因果推断推荐工具箱
因果推断推荐系统工具箱 - Deconfounded Recom

因果推断推荐系统工具箱 - Deconfounded Recom

作者: processor4d | 来源:发表于2022-01-12 23:04 被阅读0次

    文章名称

    【RecSys-2020】【University of Tuebingen】Causal Inference for Recommender Systems

    核心要点

    文章旨在利用因果推断的框架提高推荐系统效率,只推荐被曝光后用户才会看的电影,而非曝光不曝光都会被观看的电影,也就是所谓的观看提升量。同时,利用因果推断的框架解决推荐模型经常遇到的混淆变量的问题。

    上一节讲解了作者研究的问题背景,同时描述了解决方法的流程细节。本节继续介绍方法的理论分析。

    方法细节

    问题引入

    作者提出的deconfounded recommender的本质是利用估计的曝光后验均值\pi_u\top\lambda_i来代替未观测的混淆变量,进一步估计曝光矩阵\hat{a},进而得到控制了未观测的混淆变量下的outcome y_{ui}(1)(其实应该说是一个potential outcome)。此外,作者还从理论的角度说明了为什么deconfounded recommender可以work。

    具体做法

    deconfounded recommender

    首先,我们回顾一下deconfounded recommender的步骤

    • 建模曝光数据。作者利用Poisson factorization[5]来建模曝光数据,Poisson factorization假设数据来源于泊松分布,具体公式如下图所示,其中\pi_u, \gamma_i是非负的K维向量,分别表示用户偏好和物品特性。作者表示,PF是非负矩阵分解的变种。

      PF Process assumption
    • 重新估计曝光。利用训练好的PF模型替换未观测的混淆变量,可重建曝光矩阵\hat{a}_{ui} = \mathbb{E}_{PF}[\pi_u\top\lambda_i|\boldsymbol{a}]。其中,其中\boldsymbol{a}是观察到的所有用户的曝光。值得注意的是,期望在PF模型估计的所有曝光a_{ui}上计算。并且后验均值\pi_u\top\lambda_i被当做confounder的替换值[26]

    • 计算outcome。最后,利用如下图所示的公式,基于重新估计的曝光矩阵\hat{a}(包括了替换后的confounder的影响)来计算outcome(点击)。其中,系数γ_u用来调节\hat{a}对outcome的影响程度。**值得注意的是,参数γ_u在在实际观测到的点击数据a_{ui}上(或评分)和未点击的数据上共同训练,而除了参数γ_u以外的其他参数只在实际观测到的点击数据上训练(未点击的数据意味着a_{ui}=0, \hat{a} \simeq 0)。预测时,利用y_{ui}(1)作为预估的点击(或评分)。

      ![predict outcome]

    作者表示Poisson factorization,从观测的曝光矩阵中学习了用户的隐向量表示\pi_u,并且把\pi_u当做代理混淆变量(准确的说,在估计a_{ui},代理混淆变量应该是后验均值\pi_u\top\lambda_i)。根据上述公式2,可以看出,以\pi_u为条件,曝光(作者把曝光看做treatment)a_{ui}是条件独立的。这表明PF是特殊的条件独立结构。如果PF能够很好的拟合观测数据,那么用户的隐向量表示\pi_u,可以很好的表示multi-treatment confounders[26](也就是哪些影响曝光的混淆变量的合力)。

    值得注意是,作者表示真正的混杂机制不需要与PF一致,真正的混杂机制也不需要与\pi_u一致。 相反,PF会产生一个混杂因素的代理变量,足以消除混杂因素

    如前所述,去confounder的影响涉及两个步骤,估计真实的(去除混杂的)曝光,一种估计潜在结果(用户的真实的相关性或点击)。 作者采用PF作为曝光模型,而利用概率矩阵分解[17]作为结果模型。当然,可以把概率矩阵分解(第二步的模型)替换为其他模型。例如如下图所示的模型。其中,m(\theta_u\top\beta_i, a)m(\theta_u\top\beta_i, a)分别建模outcome中的均值和方差。

    general outcome step without deconfounder
    这种形式涵盖了许多分解模型,包括概率矩阵分解[17]、加权矩阵分解[9]和泊松矩阵分解[5]。

    基于上述outcome模型,可以利用如下图所示的方法得到deconfounder recommender。其中\hat{a}_{ui}起到了deconfounder的作用。\gamma_u是总用调节的稀疏,是模型学习的参数

    general outcome step with deconfounder

    代码实现

    文章的伪代码如下图所示。

    pseudo code

    心得体会

    deconfounder建模

    值得注意的是,这里还是遵循了线性影响的假设,deconfounder或者说估计曝光a_{ui}和用户的其他特征是没有交互的,具体理论细节参见[26]。个人感觉,这样会把许多交互影响encode到用户层。当然可以利用复杂的模型来建模非线性,只是也许没有很好的理论保证,对优化带来一定影响。

    文章引用

    [5] Prem Gopalan, Jake M Hofman, and David M Blei. 2015. Scalable Recommenda- tion with Hierarchical Poisson Factorization.. In UAI. 326–335.

    [9] Yifan Hu, Yehuda Koren, and Chris Volinsky. 2008. Collaborative filtering for im- plicit feedback datasets. In Data Mining, 2008. ICDM’08. Eighth IEEE International Conference on. IEEE, 263–272.

    [17] Andriy Mnih and Ruslan R Salakhutdinov. 2008. Probabilistic matrix factorization. In Advances in neural information processing systems. 1257–1264.

    [26] Yixin Wang and David M Blei. 2018. The blessings of multiple causes. arXiv preprint arXiv:1805.06826 (2018).

    相关文章

      网友评论

        本文标题:因果推断推荐系统工具箱 - Deconfounded Recom

        本文链接:https://www.haomeiwen.com/subject/dyvgcrtx.html