TORS 2023-去混淆因果协同过滤

论文来源:TORS 2023

论文链接:Deconfounded Causal Collaborative Filtering | ACM Transactions on Recommender Systems

代码链接:GitHub - rutgerswiselab/DCCF: Deconfounded Causal Collaborative Filtering

关键词: 前门调整

1 动机

推荐系统中因各种混杂因素(混淆变量)导致的不准确推荐问题。现有的方法通常为每个特定的混淆变量设计特定的模型,但这在实际系统中并不现实,因为混淆变量的数量庞大,并且存在许多专家无法识别的隐性混淆变量。如下图所示,分为全局混杂因素(以一致的方式影响所有用户偏好的因素)和个人混杂因素(以不同方式影响不同用户的因素)。

例如空气温度可能是用户对冰淇淋偏好的全球混杂因素——在正常情况下,一些用户倾向于喜欢冰淇淋,而另一些用户倾向于不喜欢冰淇淋,然而,极高的温度可能会增加两组用户对冰淇淋的偏好。然而,天气可能会影响用户对游戏机的偏好,这意味着它可能对不同的用户产生不同的影响。例如,一些用户对游戏控制台的偏好可能会在晴天减少,而在雨天增加。这是因为他们选择在晴天做户外活动,而在雨天呆在家里。然而,对于其他用户来说,他们对游戏机的偏好可能会在晴天增加,因为他们患有某种皮肤病,在晴天时避免外出。混杂因素的这种复杂性使得设计反基础推荐模型具有挑战性。


2 贡献

1:将用户行为和未观测到的混淆因子引入到因果图模型中,利用前门调整模型解决了未观测混淆因子的影响。

2:在项目空间很大的情况下设计了一种基于样本的方法,与暴露模型相结合,使前门调整可以计算。


3 因果图

上图为该论文的因果图,U 代表用户,V 代表曝光的物品,M 代表中介变量(即固有物品特征),Y 代表用户的偏好,C 代表未观察到的混淆变量。虚线节点表示未观察到的变量,虚线箭头表示从未观察到的变量指向的因果关系。

  • 边 {U, C} → V:表示用户将决定与哪个物品进行交互,而未观察到的混淆变量可能会影响用户的决策。
  • 边 V → M:表示物品将决定固有的物品特征。这里,物品的固有特征是固定的,只受物品本身影响。例如,一台银色的MacBook的颜色为银色,品牌为Apple,内存为8G,操作系统为Macintosh。因此,固有物品特征仅由物品 V 决定,不直接受到用户 U 和混淆变量 C 的影响。,因此M为中介变量
  • 边 C → U:表示未观察到的混淆变量可能会影响用户的偏好。例如,天气作为混淆变量,可能会个人化地影响用户,并导致不同的偏好。
  • 边 {U, M, C} → Y:表示用户的偏好评分由用户 U、固有物品特征 M 和未观察到的混淆变量 C 决定。具体来说,用户对某一物品的偏好可能会受到固有物品特征(例如,物品的功能属性是否符合用户偏好)和混淆因素(例如,天气、情绪)的影响。

 4 模型

4.1 估计偏好分数

从因果视角估计用户偏好,旨在回答一个假设性问题:如果干预推荐某个物品给用户,用户对该物品的偏好会是什么?具体来说,估计在推荐特定物品给用户时用户的偏好,可以表示为 P(y∣u,do(v)),这个偏好分数的估计基于第三部分的因果图。

4.1.1 前门调整估计偏好

 第三部分的因果图中的C为混杂因子,可以用之前讲到的后门调整来计算所需的估计,因为变量集合 {C, U} 满足后门调整的条件。然而,由于变量C是不可观察或不可测量的,因此后门调整不可适用。考虑到未观察到的混淆变量的存在,采用前门调整来估计用户对物品的偏好:

其中,y表示偏好分数的值,m表示固有物品特征 M具体值。这里,m 整合了物品的所有固有特征。例如,一个物品具有颜色、品牌等固有特征。为了将物品特征应用于模型预测中,将物品特征表示为连续空间,因此将偏好分数重新写为:

现实世界的系统可能包含大量的物品,因此,让所有的物品都参与进来来估计用户-物品对的偏好是不现实的。为了解决这个问题,将原来的前门调整修改为更适合推荐场景的基于样本的调整。具体来说,在计算P (y|u,do(v))时随机抽取一组项目作为效率和反建立性能之间的权衡,采样物品的个数为n,为超参数:

 其中暴露概率和条件偏好会在后续详细说

计算暴露概率

曝光概率 P(v∣u)表示物品 v暴露给用户 u 的概率,反映了在给定用户的情况下,物品被用户看到或交互的可能性。数据集中的隐式反馈包含二元交互,指示哪个用户与哪个物品进行了交互。如果将交互的物品视为暴露(正样本),将未交互的物品视为未暴露(负样本),则可以基于成对学习训练曝光模型:

 σ(⋅) 是sigmoid函数,P_{uv}^e是用户-物品对 (u,v)的预测曝光概率,相当于上式的P(v∣u),对于P_{uv}^e的方法(矩阵分解):

其中,pu和 qv​ 是用户 u 和物品 v的嵌入表示,bu是用户偏好偏移项,bv是物品偏好偏移项,bg是全局偏移项。都是可学习参数。上述忽略了观测数据中的偏差,即未交互的物品不一定总是代表未暴露的样本。因此,某些未交互物品的曝光概率可能会被低估,导致因果估计不准确。

应用了简单的逆概率加权( IPS)来修正预测概率:

puv是用户-物品对 (u,v) 的倾向得分。理论上,上述公式将返回更准确和无偏的曝光概率 ,倾向评分计算:

倾向得分反映了特定物品v 暴露给特定用户 u 的概率 ,yuv表示用户 u是否与物品 v 交互。公式的分子部分表示物品 v的总交互次数。即,在所有用户 U中,有多少用户与物品 v进行了交互,分母部分:表示物品集合 V中交互次数最多的物品的交互次数。即,找到所有物品中被交互次数最多的物品,其交互次数为分母。通过计算分子与分母的比值,可以得到物品 v 相对于交互次数最多的物品的交互频率比例,纠正由于非均匀暴露导致的偏差。

计算条件偏好 :表示在给定用户 u、物品 v′ 和固有物品特征 mj 的情况下,用户对物品的偏好分数 y的概率。设计了一个函数 f:U,V,M→Y该函数以用户、物品和固有物品特征为输入并返回偏好分数,使得 P(y∣u,v′,mj) 与相应的条件偏好分数成正比:

 mj​ 表示固有物品特征的表示,对于一个三元组 (u,v′,mj),首先使用多层感知器(MLP)对物品嵌入和固有物品特征的潜在表示进行编码,然后使用得到的向量与用户嵌入的点积来获得偏好分数。

之后结合前门调整模型和条件偏好函数计用户对物品的偏好:

4.2 模型训练

​损失函数:给定观测到的交互,为每个用户-物品对随机采样一个负样本:

加了个L2正则化 模型训练包括以下步骤:

  • 预训练曝光模型,获得 P(v∣u)。
  • 随机初始化用户和物品的表示以及 MLP 网络的权重。
  • 在每个训练批次中计算损失,并更新模型参数。
  • 每个用户-物品对的样本包括正负样本,以及对应的固有物品特征。

 输入: - 观测到的用户-物品交互对 (u,v) - 所有物品的固有特征表示 m - L2 正则化权重- 每个用户-物品对的采样物品数量 n

输出: - 用户表示 \( U \) - 物品表示 \( V \) - MLP 网络权重 \( W \)

1. 训练曝光模型,获得 \( P(v|u) \)

2. 随机初始化 \( U, V, W \)

3. 当未收敛时:  对每个训练批次:  计算损失- 更新 \( U, V, W \)

4. 返回 \( U, V, W \)

 5 总结

篇论文创新性地提出了去混淆因果协同过滤(Deconfounded Causal Collaborative Filtering, DCCF)框架,通过前门调整技术来解决推荐系统中的混淆问题。与传统方法相比,该框架利用因果图和前门调整技术来消除未观察到的混淆因素的影响,从而准确估计用户对物品的真实偏好。

与其他论文不同,DCCF不需要识别具体的混淆因素,而是通过设计一个因果图,将固有物品特征作为中介变量,并使用前门调整技术进行因果推断。具体来说,论文通过以下几个步骤实现了这一目标:

  1. 因果图设计:构建了用户、物品、固有物品特征和混淆因素之间的因果关系图。
  2. 前门调整模型:应用前门调整技术,通过计算曝光概率 P(v∣u)和条件偏好 P(y∣u,v′,mj),估计用户对物品的真实偏好 P(y∣u,do(v))
  3. 基于样本的方法:设计了一个结合曝光模型的基于样本的方法,使得前门调整在大规模物品空间中也能计算。
  4. 模型学习:采用成对学习排序算法进行训练,通过优化损失函数来学习用户和物品的表示,从而提高推荐性能。

 这篇论文使用到的是前门调整方法,首先针对条件偏好(估计用户对物品的整体偏好。通过结合多个条件偏好,可以更准确地反映用户的真实偏好。),通过设计函数 f来实现,该函数以用户、物品和固有物品特征为输入并返回偏好分数(MLP)。

其次针对曝光概率(在给定用户的情况下,物品被用户看到或交互的可能性),通过成对学习方法和矩阵分解来计算,最后为了纠正数据中的偏差,使用倾向得分(IPS)进行修正.

因果图显示了中介变量是物品的固有特征,因此通过结合条件偏好和曝光概率来进行前门调整,估计用户对物品的偏好。再次强调一下前门调整的两步走,第一步估计处理变量对中介变量的影响,这个是估计物品 v对固有物品特征 m的影响(Pmv),第二步估计中介变量对结果变量的影响:估计固有物品特征 m 对用户偏好 y的影响,就是下面的条件偏好函数。曝光概率独立于这两步过程,作为估计用户偏好的一部分来使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值