协同过滤算法除了捕捉用户潜在的消费模式外,还会学习用户特定的人口统计学特征或受保护信息等特征,如性别、种族和地理位置位置。这些偏见(Bias)信息会进一步影响推荐系统(RS)的决策,使得推荐算法会提供给不同用户子群的内容进一步分离,这将引起对用户受保护属性泄露的隐私问题。通过观察下图,可以发现基本的推荐算法(MultVAE)存在性别上的偏差,使得攻击者可以很容易的识别这种模式并进行敏感属性的推测。
在这项工作中,本文研究了在保持推荐算法有效性的同时,将用户的特定保护信息从学习的交互表征中移除的可能性和挑战。具体来说,本文将对抗训练纳入到变分自编码器MultVAE架构中,从而形成了一个新的模型——基于对抗训练的多项式自编码器模型(Adv-MultVAE),其目的是去除受保护属性的隐性信息,同时保持推荐性能。通过在两个数据集上进行实验来评估偏见缓解方法的有效性。结果表明,Adv-MultVAE虽然在性能上略有下降(在NDCG和召回率方面),但在很大程度上缓解了模型的内在偏差。
更多关于对抗学习在推荐系统中的应用可以阅读我之前总结的文章:推荐系统中的对抗机器学习技术总结。
论文:https://arxiv.org/pdf/2206.04500.pdf
代码:https://github.com/CPJKU/adv-multvae
本文发表在SIGIR2022会议上,其基本算法框架如下图所示,包含一个具体的推荐算法和一个敏感属性预测器。其中,推荐算法在本文中为多项式似然的变分自编码器MultVAE,而敏感属性预测器则为一个对抗网络,旨在从潜在向量中预测用户的受保护属性。
本文的训练过程旨在从中间特征中删除受保护属性的信息,同时并保持推荐性能。为此,模型的损失函数被定义为以下最小-最大博弈问题:
其中,对抗网络的损失函数被定义为交叉熵损失,因为其本质是一个分类任务,即预测敏感属性的类别;推荐任务的损失函数则被定义为下式:
其中,为输入的重构损失,比如平方损失,为正则项用来保证编码器的分布与先验尽可能的接近。
对于本文的损失函数直观的理解是在保证推荐性能的基础上,尽可能的减少中间变量z中所携带的敏感信息。
考虑到众所周知的优化min-max损失函数的复杂性,受前人工作的启发,本文在对抗网络和中间变量之间添加了一个梯度反转层。在训练过程中,在前向传播中充当恒等函数,而在反向传播中,它将计算出的梯度缩放为。在推理时对模型没有任何影响。本文把参数