论文:https://arxiv.org/html/2405.20626v1
代码:没开源
关键词:性能异质性、因果蒸馏、前门调整
1 动机
推荐系统的性能往往对不同用户群体表现出显著的差异,即少部分活跃用户享受了更高的推荐准确性,而大部分其他用户的推荐质量相对较差。同时现有方法通过对用户行为之间的因果效应进行建模来消除混杂因素,但是潜在地忽略了未观察到的混杂因素,从而导致了性能异质性。
- 历史交互数据分布的不均衡:活跃用户由于其丰富的交互记录,通常能得到较准确的推荐。
- 推荐模型的偏置训练:模型在训练过程中进一步放大了数据分布不均衡的问题,使得少数头部用户的推荐准确性更高,而尾部用户的推荐准确性相对较低。
上图说明在用户活跃度(图左)和热门项目的行为一致性(图右)上,用户的行为中存在严重的偏差问题。
2 贡献
- 性能异质性问题的因果分析:通过构建因果图来揭示模型偏置的原因,并提出通过建模用户行为之间的因果效应来消除模型偏置。
- 提出了因果多教师蒸馏框架(CausalD):通过引入前门调整(FDA)来解决未观察到的混杂因素问题。该框架使用多种异质推荐模型来模拟中介分布,然后通过多教师集成估计因果效应,并将多个教师模型蒸馏到一个学生模型中,以实现高效的因果效应推断。
3 因果图
首先简要说一下前门调整和后门调整的区别
后门调整用于处理观测到的混杂因素:
- 识别混杂因素:找到影响处理变量 X和结果变量 Y的所有混杂因素 Z。
- 调整路径:通过条件化处理变量 X上的混杂因素 Z,来切断混杂因素引起的路径 X←Z→Y。
- 估计因果效应:通过求和混杂因素 Z的所有可能取值,计算调整后的因果效应。
前门调整用于处理未观测到的混杂因素:
- 识别中介变量:找到位于处理变量 X和结果变量 Y 之间的中介变量 M,其中 M截断了所有从 X 到 Y的有向路径。
- 两步调整:
- 估计 X 对 M 的因果效应:通过观察 X 对 M的直接影响来估计因果效应
- 估计 M对 Y的因果效应:通过调整混杂因素,估计 M对 Y 的因果效应
总结:
- 混杂因素的观测:后门调整适用于已知并观测到的混杂因素,而前门调整适用于未观测到的混杂因素。
- 路径调整:后门调整通过直接条件化混杂因素来调整路径,而前门调整通过引入中介变量,间接地调整路径。
- 步骤复杂性:前门调整需要两个步骤来分别估计 X对 M 和 M对 Y 的因果效应,而后门调整只需要一个步骤来直接调整混杂因素。
-
历史行为 X 对未来行为 Y的因果效应: 推荐模型的目标是预测用户的下一个行为 Y ,基于用户的历史行为 X。
-
混杂因素 U对历史行为 X和未来行为 Y的影响: 混杂因素 U 包含了直接影响用户历史行为和未来行为的一系列因素。这些混杂因素会导致 X 和 Y之间的虚假相关性,即 X←U→Y,从而引起偏差。现有方法使用IPS、后门调整、反事实推理来缓解,但这些方法要么需要无偏数据,要么需要观察混杂因素。从随机试验中收集无偏见的数据(如均匀暴露)是昂贵的,因为这会损害用户体验。同时,未观察到的混杂因素在推荐中也很常见。因此使用前门调整,估计一个中介变量M
4 模型
4.1 问题定义:推荐数据集D中包含用户交互数据:
性能异质性定义:在统一训练下不同用户组数据集上推荐性能的标准差
SDe表示在De数据集上的推荐性能,S¯表示在所有数据集上的平均性能。性能异质性包括用户组间数据不平衡导致的自然异质性,以及放大自然异质性并损害非特权用户组性能的模型偏差。作者独立地训练和评估每组一个模型:
模型偏差带来的绩效异质性,即偏差放大的绩效异质性定义:
4.2 前门调整策略
前门调整通过引入一个中介变量,通过对该变量进行调整来消除混杂因素的影响。在推荐系统中,历史行为 X 通常包括用户的过去交互记录,如点击、购买等。下一个行为 Y 是推荐系统需要预测的用户未来的行为,例如下一次点击或购买。
编码器-预测器结构:编码器(encoder)负责将输入数据(如用户的历史行为)转换成潜在表示(latent representation),而预测器(predictor)则根据这些潜在表示和目标项目的特征(如物品的属性)来预测用户的未来行为。
中介变量 M:在推荐系统中,编码器提取的潜在表示(如用户兴趣向量)可以被视为中介变量,因为这些表示包含了从历史行为中提取的信息,并用于预测未来行为。分析潜在表示是否满足中介变量的要求:
-
要求 (i): M 应该拦截所有从 X 到 Y 的有向路径。
- 这意味着 M包含了 X中所有用于预测 Y的信息。即X中没有其他信息可以通过其他路径影响 Y。
-
要求 (ii) 和 (iii): 没有影响 (X, M) 的混杂因素,并且除了 U 外,没有其他混杂因素影响 (M, Y)。
- 这些要求确保 M的唯一性和准确性。在推荐系统的编码器-预测器架构中,编码器和预测器的参数在训练前是随机初始化的,因此在训练前不包含混杂因素相关的信息。在训练过程中,参数仅从 (X, Y) 对中学习,因此只会编码影响 (X, Y) 的混杂因素 U。
因此,采样M:
使用异质教师模型。每个教师模型都是一个预训练的推荐模型,能够从用户的历史行为中提取不同的潜在表示M,从而更全面地捕捉用户行为的复杂性。
知识蒸馏简要介绍:将一个复杂且高性能的模型(称为教师模型)中的知识转移到一个较简单、较小的模型(称为学生模型)中。这个过程通过训练学生模型来模仿教师模型的行为,使得学生模型在不显著降低性能的情况下,能够实现更高的推理效率和更低的计算成本。流程:
-
训练教师模型:首先,使用大量数据训练一个复杂的教师模型,使其达到高性能。
-
生成软标签:使用训练好的教师模型对训练数据进行预测,生成软标签。
-
训练学生模型:使用生成的软标签作为指导,训练较小的学生模型。学生模型的目标是尽可能模仿教师模型的输出,从而达到接近教师模型的性能。
-
评估与调整:在训练过程中,评估学生模型的性能,并根据需要调整模型结构和训练参数,以优化性能。
4.3 因果多教师蒸馏(CausalD)
因果多教师蒸馏(CausalD)结合因果推断和知识蒸馏,通过多个教师模型(教师网络)提取中介变量,估计因果效应,然后将这些知识蒸馏到一个学生模型中,以提高推理效率。
4.3.1 构建教师模型
将数据集按用户属性(如活跃度、行为一致性等)或通过无监督聚类方法分成若干子集。这些子集之间的数据分布不同,因此训练出的教师模型能够捕捉到数据的不同方面。在每个子集上训练一个教师模型,共训练K个教师模型。由于这些模型是基于不同的数据子集训练的,因此捕捉了不同的数据特征和模式。教师模型和学生模型的架构保持一致,即教师模型没有更复杂的结构或更多的数据,确保了蒸馏过程的公平性和一致性。
4.3.2 前门调整的因果标签蒸馏
利用异质教师模型生成中介变量的不同取值,并使用批内采样策略从历史行为中进行多次采样。通过多个异质推荐模型捕捉数据的不同方面和特征。能够提供多样化的视角,从而更准确地估计因果效应。然后计算因果效应 P(Y∣do(X)),即 P(Y∣do(X))的期望值,过程:
-
中介变量M的采样:
使用异质教师模型的编码器对用户数据 xi进行编码,并采样,生成中介变量: -
条件概率参数化:
- 使用注意力机制来计算条件概率,注意力机制通过计算中介变量 mk,i(教师模型编码得到的中介变量表示) 和 mi之间的点积(学生模型编码得到的中介变量表示---通过权重矩阵进行线性变换),得到每个中介变量的注意力权重 αk,i。这些权重表示了不同中介变量的重要性。
-
估计因果效应:建模 P(Y∣M=mk,X=xj):
- 通过神经网络 ϕ\ 和sigmoid函数 σ来参数化条件概率 P(Y=yi∣X=xj,M=mk)。输入包括历史行为 xj、中介变量 mk,i和目标物品 yi的特征。
-
估计 P(Y∣do(X)):因果效应 o^i是通过对多个中介变量和历史行为的采样值进行加权平均得到的。注意力权重 αk,i 表示每个中介变量的重要性,Nb是批处理样本数量。
-
知识蒸馏到学生模型:因果效应 o^i由所有教师模型预测得到,并作为学生模型的因果标签指导学生模型的训练。
-
损失函数包含蒸馏损失和一致性损失:蒸馏损失 Lkd和一致性损失 Lce。蒸馏损失衡量学生模型的预测 o^i与教师模型因果效应 oi之间的差异,一致性损失则衡量学生模型预测与真实标签 oi之间的差异。
4.3.3 特征蒸馏
除了使用标签蒸馏损失外,特征蒸馏通过使用教师模型的中间特征来指导学生模型的学习,从而提升学生模型的表达能力。使用了因果特征蒸馏:通过后门调整处理观测到的混杂因素,改进特征蒸馏效果。因果特征蒸馏是在普通特征蒸馏的基础上,进一步考虑混杂因素的影响。通过后门调整的方法,可以更好地处理观测到的混杂因素,从而提高特征蒸馏的效果。损失:
如果没有观察到感兴趣的混杂因素,我们采用普通的特征蒸馏方法。如果观察到感兴趣的混杂因素,采用后门调整来改善特征级别的反发现,即因果特征蒸馏方法。 普通蒸馏方法:
对所有教师模型的中介变量特征取平均,计算学生模型特征与教师模型平均特征之间的距离损失。
因果特征蒸馏方法:通过后门调整处理观测到的混杂因素,将数据按混杂因素的取值划分,每个子集训练一个教师模型,然后将这些教师模型的特征按比例加权平均,计算特征蒸馏损失:
特征损失:
4.4模型训练
-
将数据集划分为多个子集,每个子集训练一个教师模型。
- 首先,将训练数据集 D 按照某些用户属性或无监督聚类的方法划分为多个子集 。
- 在每个子集上分别训练一个教师模型 φk,每个教师模型就能够捕捉到不同的用户行为模式和数据特征。
-
计算因果特征蒸馏损失和因果标签蒸馏损失。
- 因果特征蒸馏损失 LFT:通过计算学生模型和教师模型在中间特征表示上的距离来引导学生模型的学习。
- 因果标签蒸馏损失 LFDA:通过计算学生模型和教师模型在最终输出上的差异来引导学生模型的预测。
-
结合原始推荐损失和蒸馏损失,优化学生模型。
- 最终的损失函数包含三个部分:原始的推荐损失(BPR损失 Lce)、因果特征蒸馏损失 LFTL和因果标签蒸馏损失 LFDA
5 总结
这篇论文创新性地提出了因果多教师蒸馏(CausalD)框架,通过前门调整技术和多教师知识蒸馏来解决推荐系统中的性能异质性问题。与传统方法相比,该框架利用多个异质教师模型来模拟中介变量的分布,从而准确估计因果效应,并将其蒸馏到一个学生模型中,以提高推荐性能和公平性。
与其他论文不同,前门调整不需要识别混杂因素,只需要得到中间变量M,这是通过多个异质教师模型从用户的历史行为 X提取的,并使用注意力注意力机制计算多个中介变量的注意力权重,将这些权重视为条件概率 P(M∣X),这是前门调整两步中的第一步 X→M
接着通过神经网络 ϕ 参数化 P(Y∣M=mk,X=xj)并使用sigmoid函数将其转换为概率值,从而计算计算最终的因果效应。这是前门调整两步中的第二步 M→Y