论文分享 《Mitigating Hidden Confounding Effects for Causal Recommendation》

《Mitigating Hidden Confounding Effects for Causal Recommendation》

在推荐系统中存在着由混淆因素导致的虚假关联是因果推荐的主要问题聚焦点。过往介绍的文章主要针对的是混淆因素可以观察到的情况(少部分也谈到了不可观察的情况,但没有深追),而本文主要是提出的在隐藏的混淆因素无法测量的情况下,如何去减轻隐藏混淆因素的影响。
大致的思路是设计了Hidden Confounder Removal(RCH)框架,利用前门调整将要计算的因果效应分为了两个可以识别和计算且与混淆因素独立的两部分。作者在电商产品推荐和微视频推荐两个实际场景中,基于MMGCN网络实例化了RCH框架,并在Tiktok、Kwai、TaoBao三个数据集上进行了实验论证。

因果图

在这里插入图片描述

I :物品特征。 I:物品特征。 I:物品特征。
U :用户特征。 U:用户特征。 U:用户特征。

V :潜在的混淆因素。同时影响着物品特征和偏好事件的发生。 V:潜在的混淆因素。同时影响着物品特征和偏好事件的发生。 V:潜在的混淆因素。同时影响着物品特征和偏好事件的发生。

L :用户偏好的标识。发生在用户物品交互之后,比如点赞或者购买。 L:用户偏好的标识。发生在用户物品交互之后,比如点赞或者购买。 L:用户偏好的标识。发生在用户物品交互之后,比如点赞或者购买。

M : 用户物品对 U , I 和偏好标识之间的中间变量集合。例如点击 − > 添加购物车 − > 购买。点击 − > 完成观看 − > 点赞。 M: 用户物品对{U,I}和偏好标识之间的中间变量集合。例如点击 ->添加购物车-> 购买。点击->完成观看->点赞。 M:用户物品对U,I和偏好标识之间的中间变量集合。例如点击>添加购物车>购买。点击>完成观看>点赞。

V → M V \rightarrow M VM通常是有边的,但是作者在本文中不予考虑。

因果效应计算

最终目标是在不测量混淆因素的情况下,计算因果效应 P ( l ∣ u , d o ( i ) ) P(l|u,do(i)) P(lu,do(i))。本文中详细的公式推导细节都是参考这一本统计学领域的著作《Causal inference in
statistics: A primer》。

P ( l , v , m ∣ u , d o ( i ) ) = P ( m ∣ u , d o ( i ) ) P ( v ) P ( l ∣ m , v , u ) (1) P(l,v,m|u,do(i))=P(m|u,do(i))P(v)P(l|m,v,u)\tag{1} P(l,v,mu,do(i))=P(mu,do(i))P(v)P(lm,v,u)(1)
因为L,V,M的条件独立性,公式(1)成立

P ( l ∣ u , d o ( i ) ) = ( a ) ∑ m P ( m ∣ u , d o ( i ) ) ∑ v P ( v ) P ( l ∣ m , v , u ) = ( b ) ∑ m P ( m ∣ u , d o ( i ) ) P ( l ∣ u , d o ( m ) ) . (2) \begin{aligned}P(l|u,do(i))&\stackrel{(a)}{=}\sum_mP(m|u,do(i))\sum_vP(v)P(l|m,v,u)\\&\stackrel{(b)}{=}\sum_mP(m|u,do(i))P(l|u,do(m)).\end{aligned} \tag{2} P(lu,do(i))=(a)mP(mu,do(i))vP(v)P(lm,v,u)=(b)mP(mu,do(i))P(lu,do(m)).(2)
公式(2b)是通过后门调整计算得来。 P ( m ∣ u , d o ( i ) ) P(m|u,do(i)) P(mu,do(i))是I对M的因果效应, P ( l ∣ u , d o ( m ) ) P(l|u,do(m)) P(lu,do(m))是M对L的因果效应。
P ( m ∣ u , d o ( i ) ) P(m|u,do(i)) P(mu,do(i))在后门路径 I ← V → L ← M I \leftarrow V \rightarrow L \leftarrow M IVLM中被变量L–D分离。因此 P ( m ∣ u , d o ( i ) ) = P ( m ∣ u , i ) P(m|u,do(i)) = P(m|u,i) P(mu,do(i))=P(mu,i)
P ( l ∣ u , d o ( m ) ) P(l|u,do(m)) P(lu,do(m))可以在不测量V的情况下通过后面调整来阻断后门路径 M ← I ← V → L M \leftarrow I \leftarrow V \rightarrow L MIVL,推导公式如下:
∑ v P ( v ) P ( l ∣ v , m , u ) = ⁡ ( a ) ∑ v ∑ i P ( v ∣ i ) P ( i ) P ( l ∣ v , m , u ) = ⁡ ( b ) ∑ i ∑ v P ( v ∣ i ) P ( i ) P ( l ∣ m , v , u , i ) = ( c ) ∑ i ( ∑ v P ( l ∣ m , v , u , i ) P ( v ∣ i , m ) ) P ( i ) = ( d ) ∑ i P ( l ∣ u , i , m ) P ( i ) (3) \begin{aligned} \sum_{v}P(v)P(l|v,m,u)& \overset{(a)}{\operatorname*{=}}\sum_v\sum_iP(v|i)P(i)P(l|v,m,u) \\ &\overset{(b)}{\operatorname*{=}}\sum_i\sum_vP(v|i)P(i)P(l|m,v,u,i) \\ &\stackrel{(c)}{=}\sum_i\left(\sum_vP(l|m,v,u,i)P(v|i,m)\right)P(i) \\ &\stackrel{(d)}{=}\sum_iP(l|u,i,m)P(i) \end{aligned}\tag{3} vP(v)P(lv,m,u)=(a)viP(vi)P(i)P(lv,m,u)=(b)ivP(vi)P(i)P(lm,v,u,i)=(c)i(vP(lm,v,u,i)P(vi,m))P(i)=(d)iP(lu,i,m)P(i)(3)
公式(3a)成立条件: P ( v ) = ∑ v P ( v ∣ i ) P ( i ) P(v)=\sum_vP(v|i)P(i) P(v)=vP(vi)P(i)

公式(3b)成立条件:在因果图中给定V,M后,I和L是独立的。 P ( l ∣ m , v , u ) = P ( l ∣ m , v , u , i ) P(l|m,v,u) = P(l|m,v,u,i) P(lm,v,u)=P(lm,v,u,i)

公式(3c)成立条件:在因果图中给定I后,M和V是独立的。 P ( v ∣ i ) = P ( v ∣ i , m ) P(v|i)=P(v|i,m) P(vi)=P(vi,m)

公式(3d)成立条件:边际分布的性质决定的。

所以最终I对L的因果效应计算公式如下,计算两个部分的条件概率
P ( l ∣ u , d o ( i ) ) = ∑ m P ( m ∣ u , i ) ∑ i ′ P ( l ∣ i ′ , m ) P ( i ′ ) (4) P(l|u,do(i))=\sum_mP(m|u,i)\sum_{i'}P(l|i',m)P(i')\tag{4} P(lu,do(i))=mP(mu,i)iP(li,m)P(i)(4)

HCR框架

在这里插入图片描述

训练阶段

P ( m ∣ u , i ) = f m ( u , i ) P(m|u,i) = f_{m}\left(u,i\right) P(mu,i)=fm(u,i)
由于M受到U的影响,因此:
P ( l ∣ i ′ , m ) P ( i ′ ) = h ( u , i , m ) = h 1 ( u , m ) ∗ h 2 ( u , i ) (5) P(l|i',m)P(i') = h(u,i,m)=h^1(u,m)*h^2(u,i)\tag{5} P(li,m)P(i)=h(u,i,m)=h1(u,m)h2(u,i)(5)

多任务学习:
min ⁡ ⁡ f m , h ∑ ⁡ ( u , i , m ) ∈ D R M ( f m ( u , i ) , m ) + β ∑ ⁡ ( u , i , m , l ) ∈ D R L ( h ( u , i , m ) , l ) (6) \underset{f_{m},h}{\operatorname*{\min}}\underset{(u,i,m)\in\mathcal{D}}{\operatorname*{\sum}}R_{M}\left(f_{m}\left(u,i\right),m\right)+\beta\underset{(u,i,m,l)\in\mathcal{D}}{\operatorname*{\sum}}R_{L}\left(h\left(u,i,m\right),l\right)\tag{6} fm,hmin(u,i,m)DRM(fm(u,i),m)+β(u,i,m,l)DRL(h(u,i,m),l)(6)
所有的骨干模型共享嵌入层,以促进跨任务的知识传递。

推理阶段

根据公式4遍历M和I的计算成本很高,因此对 h ( u , i , m ) h(u,i,m) h(u,i,m)进行了分解设计
P ( l ∣ u , d o ( i ) ) = ∑ m P ( m ∣ u , i ) ∑ i ′ P ( l ∣ i ′ , m ) P ( i ′ ) = ∑ m f m ( u , i ) ∑ i ′ h ( u , i ′ , m ) P ( i ′ ) = ∑ m f m ( u , i ) ∑ i ′ h 1 ( u , m ) h 2 ( u , i ′ ) P ( i ′ ) = ∑ m f m ( u , i ) h 1 ( u , m ) ∗ ∑ i ′ h 2 ( u , i ′ ) P ( i ′ ) ∝ S u ∑ m f m ( u , i ) h 1 ( u , m ) (7) \begin{aligned} P(l|u,do(i))& =\sum_{m}P(m|u,i)\sum_{i'}P(l|i',m)P(i') \\ &=\sum_mf_m(u,i)\sum_{i'}h(u,i',m)P(i') \\ &=\sum_mf_m(u,i)\sum_{i'}h^1(u,m)h^2(u,i')P(i') \\ &\begin{aligned}=\sum_mf_m(u,i)h^1(u,m)*\sum_{i'}h^2(u,i')P(i')\end{aligned} \\ &\propto S_u\sum_mf_m(u,i)h^1(u,m) \end{aligned}\tag{7} P(lu,do(i))=mP(mu,i)iP(li,m)P(i)=mfm(u,i)ih(u,i,m)P(i)=mfm(u,i)ih1(u,m)h2(u,i)P(i)=mfm(u,i)h1(u,m)ih2(u,i)P(i)Sumfm(u,i)h1(u,m)(7)
其中 S u = ∑ i ′ h 2 ( u , i ′ ) S_{u}=\sum_{i^{\prime}}h^{2}(u,i^{\prime}) Su=ih2(u,i)当u给定时是一个常量。由于其不会影响项目的排名,因此可以在推理过程中忽略。

实验

三个Research question:
RQ1 :HCR与其他SOTA的推荐性能比较
RQ2 :HCR的因果效应各部分的计算对整体性能的影响(消融实验)
RQ3 : 论证HCR的改进的先进性(主要针对时间、稳定和性能几个方面和别的模型做比较)

总结

公式繁多,本人理解不够透彻,大致只能够明白思路,从文章中可以看出作者做了许多的工作,无论是在理论上还是实验内容上的内容量都是十分丰富的。总体来说这篇文章难度十分的高(可能内容难度不大,但是需要理解原理)。

  • 14
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值