- 前言
- 动机
- 框架
- 实验结果
前言
任何需要做两方权衡并且最终寻求一种平衡的问题其实都可以转化为对抗学习的范式,比如图像生成任务中既要保证生成图片的质量又要确保判别器的识别精度;推荐任务中既要保证用户的隐私不受侵害又要确保推荐质量的可靠。
最近腾讯广告算法大赛的题目是用户人口统计学属性预测,即通过用户在广告系统中的交互行为来预测用户的人口统计学特征,比如性别和年龄。目前排行榜中第一的准确率已经达到了1.4左右,也就是说预测性别和年龄的准确率基本在0.7左右,当然预测性别属性相比年龄属性要容易些,因为年龄是个10分类任务,要比2分类任务难得多。本人也利用课余时间参加了这次比赛,不过成绩不理想,在1.2左右,害,还是要加油啊。通过这次竞赛发现,拼到最后更需要的是对业务背景的深度理解,对实验机器的极其渴望,以及对日渐稀少的头发的十分想念。
看到以上内容不禁让人感到害怕,通过在系统中留存的行为信息就能知道我是男是女,是老是少了,我的天,普通用户的隐私何在。那么今天就跟大家分享一篇利用对抗学习技术来保护用户属性信息的同时能够得到精准推荐结果的文章,题目为《Privacy-Aware Recommendation with Private-Atribute Protection using Adversarial Learning》,该工作已发表在2020年的WSDM会议上。
动机
推荐系统是帮助用户匹配与其兴趣相关的物品的关键应用之一。但是,恶意攻击者可以通过推荐系统推断用户的私人信息。之前的工作都是将用户-项目交互数据进行混淆之后再提供给推荐系统使用,这种方法虽然达到了隐私的目的,但会存在推荐精度的损失,并且不能对用户的私有属性信息进行隐私保护。
因此该文章首次提出了在保证推荐精确度的同时保护用户的人口统计学特征。该方法主要是将以上问题建模为带有两个组件的对抗学习模式,即私有属性攻击者(PAA)与贝叶斯个性化推荐器(BPR)。攻击者PAA试图根据用户的项目列表推断其私人属性信息;推荐器BPR的目的是在利用攻击者作为推荐的正则项的同时,挖掘用户的行为偏好。实验表明,该模型既可以保证推荐服务的质量,又可以保护用户免受私有属性推断的攻击。
框架
当明确了对抗学习的基本思想之后,就不难理解其所提出的框架了(如下图所示)。该框架主要包括2部分:第一部分为BPR(Bayesian Personalized Recommendation),旨在挖掘用户的行为偏好;第二部分为(PAA)Private Attribute Attacker,旨在推断用户的个人隐私属性信息。通过利用最大最小博弈的方式,来达到推荐精度与用户隐私的平衡。
对于BPR部分,通过对用户的行为信息建模来学习用户和项目的隐含特征表示,更具体的,使得用户所产生行为的项目排在用户未产生行为的项目之前。具体的损失函数如下所示:
其中,
为指示函数。BPR的示意图如下所示:
对于PPA部分,通过学到的用户隐特征向量和项目隐特征向量列表来预测用户的属性信息,更具体的,将该用户的隐特征向量和对应的用户感兴趣的项目的隐特征向量列表输入到RNN中,最终产生对于特征的预测评分。
其中,
为隐私属性个数,
为用户
经过RNN之后对于属性
的预测。PPA的示意图如下图所示:
最终,该问题可以转化为min-max的优化问题。如下图公式所示,一方面要最大化
以实现对用户属性的隐私保护,一方面要最小化
以实现推荐精度的提升。
将上述BPR和PAA公式代入上式后,得到更具体的损失函数如下所示:
以上,就是该框架的整体损失函数,通过交替的优化即可求解。
实验结果
为了验证所提出方法的有效性,对比了几种经典的方法,比如:
- Original:该方法是RAP算法的退化版本,即没有考虑PAA部分。
- LDP-SH:该方法基于
-差分隐私来对用户-项目交互数据增加噪声
- BlurMe:此方法在输入推荐系统之前扰乱了用户-项目交互矩阵,通过给用户添加与实际属性相反的项目,然后给这样项目填充为平均分。
通过对以下实验结果的分析,可见,PAA算法对于属性预测(性别、年龄、职位)的Micro-AUC最低,即实现了对隐私属性的保护;预测项目的Precision和Recall最高,即满足了推荐的精度要求。