:::
大家好!今天我分享的文章是来自威斯康星大学麦迪逊分校和亚马逊AWS AI实验室的最新工作,文章所属领域是推荐系统和因果推理,作者针对跨域推荐中的偏差问题提出了一种基于因果去偏的预训练推荐系统框架PreRec。
:::

原文:Pre-trained Recommender Systems: A Causal Debiasing Perspective
地址:https://arxiv.org/abs/2310.19251
代码:https://github.com/myhakureimu/PreRec
出版:WSDM '24
机构: 威斯康星大学麦迪逊分校、亚马逊
本文研究的核心问题是: 如何设计一个通用的预训练推荐系统框架,能够有效处理跨域推荐中的偏差问题。
::: block-1
假设我们有一个电商平台,想要为不同国家的用户推荐商品。每个国家的用户行为和商品特征都有所不同,直接将一个国家的推荐模型应用到另一个国家往往效果不佳。我们希望能够设计一个通用的推荐框架,可以在多个国家的数据上预训练,然后快速适应到新的国家市场,同时还能处理不同国家之间的偏差问题。
:::
本文研究问题的特点和现有方法面临的挑战主要体现在以下几个方面:
针对这些挑战,本文提出了一种基于因果去偏的"PreRec"方法:
::: block-1
PreRec的核心思想是将推荐过程建模为一个概率图模型,并引入因果推理的思想来处理偏差。它就像一个精明的导购,不仅了解每个国家的商品和用户特点,还能识别出哪些是真正的用户偏好,哪些只是由于某个国家特定的促销活动或文化差异造成的偏差。具体来说,PreRec使用一个分层贝叶斯深度学习模型来捕获用户兴趣、商品特征、域特征和流行度等因素。在预训练阶段,它通过显式建模域内偏差(如商品流行度)和跨域偏差(如域特征),将这些偏差与通用知识分离。在推断阶段,它使用因果干预的方法来消除这些偏差的影响,只保留真正的用户-商品匹配信息。这就像PreRec在每个国家都派了一个"特工",这些特工不仅收集各自国家的数据,还能识别出哪些是该国特有的"噪音"。在给新国家的用户推荐时,PreRec就能抛开这些"噪音",专注于真正通用的推荐知识。
:::


PreRec是一种新型的预训练推荐系统,采用层次化贝叶斯深度学习框架。它的核心目标是解决多域预训练中的偏差问题,提高模型在新域上的泛化能力。PreRec的整体架构包括以下几个关键组件:
举个例子,假设我们在构建一个跨国的电商推荐系统。对于一个来自美国的用户,用户通用嵌入网络会分析他过去购买的商品序列(如手机、耳机、充电器等),生成一个能够反映他整体兴趣的嵌入向量。对于一个新上架的手机,物品通用嵌入网络会分析其产品描述,生成一个反映手机特征的嵌入向量。同时,我们还会有一个代表"美国市场"的域属性嵌入,以及反映这款手机在美国市场受欢迎程度的流行度嵌入。
PreRec的创新之处在于,它明确地将这些不同来源的信息(用户兴趣、物品特征、域属性、流行度)分开建模,这为后续的去偏和迁移学习奠定了基础。
在多域预训练阶段,PreRec的目标是从多个源域中提取通用知识,同时显式建模和处理不同类型的偏差。这个过程主要包括以下几个步骤:
L = ∑ − l o g ( f s o f t m a x ( U i T V j + D k W d + Z j W z ) ) + λ z / 2 ∑ ∣ ∣ Z j − f p o p ( F j ) ∣ ∣ 2 + λ v / 2 ∑ ∣ ∣ V j − f e ( D k , Z j ) ∣ ∣ 2 + λ u / 2 ∑ ∣ ∣ U i − f s e q ( D k , H i ) ∣ ∣ 2 + λ d / 2 ∑ ∣ ∣ D k ∣ ∣ 2 L = ∑ -log(f_softmax(U_i^T V_j + D_k W_d + Z_j W_z)) + λ_z/2 ∑ ||Z_j - f_pop(F_j)||^2 + λ_v/2 ∑ ||V_j - f_e(D_k, Z_j)||^2 + λ_u/2 ∑ ||U_i - f_seq(D_k, H_i)||^2 + λ_d/2 ∑ ||D_k||^2 L=∑−log(fsoftmax(UiTVj+DkWd+ZjWz))+λz/2∑∣∣Zj−fpop(Fj)∣∣2+λv/2∑∣∣Vj−fe(Dk,Zj)∣∣2+λu/2∑∣∣Ui−fseq(Dk,Hi)∣∣2+λd/2∑∣∣Dk∣∣2
这里, U i U_i Ui 是用户嵌入, V j V_j Vj 是物品嵌入, D k D_k Dk 是域属性嵌入, Z j Z_j Zj 是流行度嵌入, H i H_i Hi 是用户历史, F j F_j Fj 是流行度因子。
举个具体的例子,假设我们在美国、英国和加拿大的电商平台上预训练PreRec。对于一个在美国平台上很受欢迎的iPhone手机,它的表示会包含几个部分:
通过这种方式,PreRec能够区分出哪些特征是iPhone的固有属性,哪些是由于美国市场的特殊性造成的,从而为后续的跨域推荐打下基础。
零样本推荐是PreRec的一个关键能力,它允许模型在没有见过任何目标域数据的情况下,直接在新域上进行推荐。PreRec通过巧妙的因果干预机制来实现这一点。具体步骤如下:
P ( R i j k ∣ d o ( U i , V j , Z j ) ) = f s o f t m a x ( U i T V j + Z j W z ) P(R_ijk|do(U_i, V_j, Z_j)) = f_softmax(U_i^T V_j + Z_j W_z) P(Rijk∣do(Ui,Vj,Zj))=fsoftmax(UiTVj+ZjWz)
这里, R i j k R_ijk Rijk 表示用户 i i i 与物品 j j j 在域 k k k 中的交互。
举个例子,假设我们要将预训练好的PreRec应用到澳大利亚的电商平台上。对于一个从未在澳大利亚市场出现过的新用户,PreRec会这样工作:
这种方法的优势在于,它能够利用从其他市场学到的通用知识,同时考虑商品在新市场的受欢迎程度,但不会被源域的特殊偏好所影响。
随着在新域(如澳大利亚市场)积累了一定量的交互数据,PreRec可以通过微调来进一步提升推荐性能。微调过程包括以下步骤:
这里,我们不再将 D k D_k Dk 设为0,而是使用学习到的目标域属性嵌入。
具体来说,假设PreRec在澳大利亚市场运行了一段时间,收集到了一些用户交互数据。微调过程会:
本论文提出了一个可以跨领域预训练的推荐系统模型PreRec。实验主要验证PreRec在新的目标领域上的推荐性能,包括零样本场景和微调场景。实验涉及跨市场(不同国家的Amazon市场)和跨平台(Amazon与Online Retail)两种跨域场景。

目的:评估PreRec在新的目标域上的零样本推荐性能
涉及图表:表1
实验细节概述:在三个源域(印度、西班牙、加拿大)上预训练PreRec,然后在五个目标域(澳大利亚、墨西哥、德国、日本、Online Retail)上进行零样本评估
结果:
目的:验证因果去偏机制的有效性
涉及图表:表1
实验细节概述:比较PreRec与其简化版本PreRec_n(忽略了跨域和域内偏差项)的性能
结果:在几乎所有情况下,PreRec都优于PreRec_n,证明了因果去偏机制的有效性

目的:评估在目标域上全量微调后PreRec的性能
涉及图表:表2
实验细节概述:在目标域的所有可用训练数据上微调模型,并与基线方法比较
结果:

目的:研究目标域微调样本数量对模型性能的影响
涉及图表:图3
实验细节概述:使用逐渐增加的目标域训练数据对模型进行微调,观察性能变化
结果:
本论文针对预训练推荐系统中的域内偏差和跨域偏差问题,提出了一种名为PreRec的因果去偏视角方法。PreRec通过引入显式和隐式的混杂因子来建模不同类型的偏差,并使用因果干预机制来消除这些偏差的影响。实验结果表明,PreRec在跨市场和跨平台的零样本和微调场景下都显著优于现有方法,为构建通用的预训练推荐系统提供了新的思路。
::: block-2
疑惑和想法:
:::
::: block-2
可借鉴的方法点: