在当今这个互联网飞速发展的时代,用户每天所面对的数据量爆炸式增长.爆炸式增长的数据一方面极大丰富了用户的生活,另一方面,过于冗余的数据对用户的行为决策造成了极大的干扰.这一问题被称为信息过载问题[1].针对信息过载问题,搜索引擎等技术能根据用户提供的关键字辅助用户筛选出自己感兴趣或所需要的内容.但搜索引擎技术的不足之处在于其高度依赖用户所提供的关键字信息,而忽略了用户的个性化需求.例如,当用户在没有明确表明自身喜好的情况下浏览短视频时,搜索引擎技术将无法准确地为用户提供其感兴趣的短视频内容.因此,为了帮助用户更准确地筛选出符合自身需求或兴趣的内容信息,研究人员提出了推荐系统(Recommender System)的概念.推荐系统通过收集用户历史行为记录,建模用户的潜在兴趣偏好,并根据用户潜在兴趣模型为其主动匹配合适的内容,生成推荐列表[2].自推荐系统概念的提出,受到了工业界和学术界的极大关注;同时,由于推荐过程中涉及大量的用户历史行为记录等个人信息,推荐系统在被广泛应用于各行各业时,存在着用户隐私泄露的风险.如何在保护用户隐私的情况下,提供更高质量的推荐服务,已成为推荐算法领域新的研究点.本研究围绕推荐系统与隐私保护的相关问题进行了调研,梳理了推荐系统与隐私保护领域的关键技术,讨论了推荐系统与隐私保护研究面对的挑战.1 推荐算法的关键技术推荐算法中的关键技术是用户表示学习和物品表示学习,且二者可以进一步统称为实体表示学习.其核心思想是通过表示学习方法将用户实体和物品实体映射到同一潜在特征空间下,基于二者在潜在特征空间中的距离为用户匹配相似物品,并生成推荐列表.本节将针对推荐算法中的实体表示学习关键技术展开介绍.1.1 基于协同关系的实体表示学习早期研究人员提出了基于协同关系的实体表示学习方法,该类方法主要通过矩阵分解和基于神经网络的技术来挖掘用户实体对物品实体的一致性偏好,并学习实体表示.基于矩阵分解方法的核心思想是将用户-物品评分矩阵分解为用户和物品的低阶稠密表示矩阵之积,其中低维稠密矩阵中的每一行分别表示对应用户和物品的潜在表示向量[1-10].例如,文献[3]通过构建多个矩阵分别用于表示用户和物品之间不同类型的交互关系,并分别对各矩阵进行分解学习实体表示.文献[4]通过将原始矩阵分隔为多个局部矩阵,并分别进行分解来解决受到矩阵低秩假设限制的问题.文献[5]在构建子矩阵的基础上进一步提出基于随机游走的子矩阵构建方法,实现更加准确的实体表示学习.基于神经网络学习实体表示的方法通过构建不同类型的神经网络实现实体表示学习[7-10].文献[7]首次将神经网络应用于推荐算法中,提出了结合多层感知机(multi-layer perceptron,MLP)的协同表示学习方法.文献[8]将基于用户间社交关系的用户社交表示与基于用户购买商品记录的用户兴趣表示相融合来学习用户的最终表示.文献[10]提出通过注意力机制将基于卷积神经网络学习到的用户评论的语义表示与基于MLP学到的用户协同表示相结合的表示学习方法.由于基于协同关系的实体表示学习方法不能有效的描述用户和物品之间的潜在关系,因此不具有较好的可解释性.1.2 基于图模型的实体表示学习这类方法在协同关系的基础上进一步对用户和物品之间的关系进行显式描述,以期获得更佳的推荐可解释性,同时还能融合更多的辅助信息.基于图表示学习的推荐算法的核心思想是通过挖掘图中实体之间的各种显性和隐性交互关系,将图模型映射到低维空间,使用低维的向量表示图模型中的实体或关系[11-14].例如,文献[11]提出了基于图卷积的表示学习方法,利用卷积和池化操作聚合图中用户节点和物品节点的邻域信息,用于学习用户和物品表示.文献[12]通过移除图卷积神经网络中的非线性层,简化了表示学习的训练参数.文献[13]针对二分图上的推荐任务重新设计图卷积网络,通过分别聚合用户和物品的邻居实体表示向量学习各个用户和物品的表示.由于基于图卷积的表示学习方法在聚合邻居实体信息过程中忽略了不同实体之间不同的影响权重,因此研究人员提出了基于图注意力网络的推荐算法.该类算法通过注意力机制学习聚合邻居实体嵌入向量过程中各个邻居实体的影响权重,实现对用户和物品之间潜在关系更精确的描述[15-18].例如:文献[17]设计了一种双塔结构的图注意力网络分别处理不同类型实体之间的交互信息;通过图注意力网络融合每种类型实体之间的交互特征实现更细粒度的实体特征学习;文献[18]分别设计了两种图注意力网络处理用户之间的社交关系和用户与物品之间的交互关系,得到多层面的用户和物品特征向量,然后分别预测多种特征下用户对物品的预测评分,通过评分融合生成最终的推荐列表.此外,还有基于随机游走、元路径嵌入等多类实体表示学习方法[19-21].例如:文献[19]提出了一种基于非对称传递性的高阶近似算法,以头节点表示矩阵和尾节点表示矩阵的乘积拟合用户-物品图的邻接矩阵;文献[20]在异构图上人工定义多种元路径,并以元路径指导随机游走采样出多条节点序列,以这些节点序列为监督信息,采取与DeepWalk相似的方法学习实体节点的表示;在文献[21]中,研究人员将基于元路径学习节点表示的模型与矩阵分解模型相结合,通过联合优化框架学习更加完备的用户表示和物品表示.2 推荐算法中的隐私问题在实现个性化推荐的过程中,所使用到的用户信息、上下文信息往往会涉及用户隐私.这些信息的使用可能会造成用户隐私泄露的问题.近年来,有许多国家制定了相应的法律保护公民的隐私安全.例如文献[22]中提到的通用数据保护条例GDPR (general data protection regulation),GDPR规定用户个人设备上产生的数据只能在个人设备上使用,不能将数据上传到云端或服务器.在许多推荐场景中不可避免地须要用户和服务器之间交换数据,这就须要某些技术来对所交换的数据进行处理保护用户隐私.须要指出的是,不同文献中对用户隐私保护所涵盖的范围会有所不同,本研究针对所要保护的隐私信息的类型,将已有的推荐领域中的隐私保护研究工作分为以下三类:a.保护用户的私有敏感属性信息;b.保护用户与物品的交互历史信息;c.保护所有用户所提交给推荐系统的信息.2.1 用户私有敏感属性信息用户的私有敏感属性信息指用户的性别、年龄、职业等能被用于推断用户真实身份的信息.有些攻击者使用自己的攻击模型从用户的历史行为信息或推荐列表等信息中挖掘出用户的私有敏感属性信息.在文献[23]中,为使推荐模型具有保护用户私有敏感属性信息的能力,作者设计了一种对抗学习框架,将推荐模型与用户私有敏感属性信息分类模型相结合,使得保证较高推荐准确性的情况下,降低用户私有敏感属性信息泄露的可能性.在文献[24]中,使用差分隐私对用户敏感属性信息添加扰动,在保证信息可用性的前提下达到隐私保护的效果.2.2 用户-物品交互历史信息尽管部分推荐算法并未将用户的私有敏感属性信息用于推荐任务,但也有研究人员认为用户-物品交互历史信息同样属于用户隐私信息,例如用户对物品的点击、评分等行为记录.文献[25]将用户社交矩阵与用户-物品矩阵结合,解决冷启动问题.文献[26]仅基于用户对物品的评分矩阵实现推荐任务,并将局部敏感哈希与基于位置的推荐算法相融合,实现对用户-物品评分信息的保护.文献[27]提出了基于联邦图神经网络的推荐模型,该模型基于用户-物品交互信息构建多个局部子图,并采用联邦学习的方法实现用户个人交互信息的本地保护.在新闻推荐任务中,文献[28]将联邦学习框架与推荐模型相结合,基于用户浏览新闻的历史记录信息分析用户兴趣,实现隐私保护下的个性化新闻推荐.2.3 所有用户提交给推荐系统的信息此外,还有部分研究工作将上述两类用于推荐的信息全部定义为用户隐私信息,并设计算法加以保护.文献[22]基于GDPR法规要求提出了DeepRec模型保证用户所产生的信息不再上传到服务器,仅在用户本地设备上实现推荐任务.文献[29]提出了匿名随机游走算法,对用户提供的信息进行匿名化处理并构建匿名化的用户社交网络图模型,通过在图模型上的随机游走实现匿名化的推荐,从而保护用户隐私信息.3 推荐中的关键隐私保护技术针对不同类型的用户隐私保护信息,多种隐私保护技术被提出并应用于推荐系统中.本节将对近年来的相关研究进行梳理,分别从匿名化、差分隐私、联邦学习、对抗学习四类主流的隐私保护技术展开介绍.同时对这四类隐私保护技术的适用场景和优缺点进行了概述,如表1所示.10.13245/j.hust.230218.T001表1隐私保护技术比较类别实现方法主要特点适用场景优点缺点匿名化不署名或用假名、成组提供数据大量用户须要提交数据的场景实现简单隐私保护能力弱,适用面窄差分隐私拉普拉斯(Laplace)机制、高斯(Gaussian)机制和指数机制数据对外发布或提交给数据收集者基于严谨的数学原理,隐私保护能力强,适用面广保护隐私的同时会损失数据的可用性联邦学习一种学习框架,横向联邦学习和纵向联邦学习须要大量用户数据支撑的推荐场景通过分布式学习避免用户数据在服务器端的泄露用户与服务器之间的交流技术量大,上传的梯度信息仍有可能被攻击对抗学习生成对抗网络已知的攻击模型应对某种特定攻击的能力强须要针对特定的攻击模型进行训练,泛化能力较弱3.1 匿名化对数据进行匿名化是最简单直接的隐私保护方法,匿名的目的是让得到数据的一方不知道这个数据的来源,以此来保护用户隐私.匿名化的方法可分为假名化和分组聚合.3.1.1 假名化基于假名化方法的核心思想是让用户在提交数据时不提供用户ID等个人属性信息.例如,文献[29]设计了匿名随机游走ARW (anonymous random walk)算法在用户社交网络图模型上进行采样,以保护用户隐私.游走过程中,被游走到的用户将匿名选择是否提供数据,使得最终汇总的数据将无法准确区分每条数据所对应的用户.3.1.2 分组聚合基于分组聚合的匿名化方法是指在收集用户数据时将用户分组,以组为单位收集用户信息,使个人信息混淆于小组集合信息中,从而实现对隐私信息的保护.文献[28]使用联邦学习框架,对云端服务器中的全局推荐模型进行训练,并收集来自各个用户的局部梯度.在收集用户梯度信息时,通过将用户分组,以组为单位收集梯度信息,从而实现服务器无法分辨梯度与用户的对应关系,保护用户隐私.文献[27]设计了一种联邦学习框架,当用户上传梯度信息时将交互物品的梯度信息与伪交互物品的梯度信息混淆后上传到服务器,以此实现对用户-物品交互信息的保护.可以看出:匿名化的方法能够防止服务器或攻击者获知信息的来源用户,但信息本身仍存在泄露风险,因此基于匿名化的方法保护隐私的能力有限.该类方法通常不作为一个推荐模型中核心的隐私保护方法,而是在小的局部模块中使用,实现一定程度上保护隐私信息的目的.3.2 差分隐私差分攻击作为一种针对基于分组加密的隐私保护的攻击手段,其核心策略是根据两次攻击查询获取到的成组信息之间的差分值来推断某一用户的隐私信息.例如,某医院有100名病人,通过攻击知道其中有10名患了肺癌,通过另一次攻击获取其中99个人是否患肺癌的信息.那么将两次攻击的信息进行对比即可获知第100名病人是否患有肺癌.为防止此类攻击,差分隐私技术被提出,该技术旨在令两个相邻数据集的查询结果尽可能的接近,使得无法通过两次查询的差分值推断出用户隐私信息.其中相邻数据集被定义为只有其中一项有差别的两个数据集.现有的差分隐私工作可以根据数据被进行加密的顺序分为中心化差分隐私和本地化差分隐私[30].中心化差分隐私要求将各个用户客户端的信息集中到数据中心,统一对数据施加差分隐私算法后再对外发布.差分隐私算法可以形式化的定义如下.a.ε-差分隐私.令一个随机算法A满足ε-差分隐私,当且仅当Pr[A(D)=O]≤eεPr[A(D')=O],(1)对任意相邻数据集D和D'及任意输出O都成立,其中ε为隐私预算.隐私预算决定了隐私保护的程度,ε越小隐私保护程度越高.b.(ε,δ)-差分隐私.令一个随机算法A满足(ε,δ)-差分隐私,当且仅当Pr[AD=O]≤eεPr[A(D')=O]+δ,(2)式中δ为一个较小的常数,δ的存在为某些低概率事件提供了违反严格差分隐私的自由.差分隐私算法的实现过程可以视作往数据集中添加适当噪声的过程.同时添加的噪声须要受到限制.为控制噪声,敏感度的概念被提出,用于表示两次查询结果的最大差异.令查询函数f:D→Rd表示数据集D到d维空间的映射关系,其敏感度的形式化定义为Δ(f)=maxD,D'f(D)-f(D')k,(3)式中k为k-范数.现有方法添加噪声主要通过拉普拉斯机制、高斯机制和指数机制实现[34],对上述三种机制进行展开介绍.a.拉普拉斯机制.拉普拉斯机制适用于数值型输出,敏感度常用1-范数.给定一个查询函数f,令随机函数A(D)满足ε-差分隐私A(D)=f(D)+Laplace(Δ(f)/ε), (4)式中:Δ(f)为1-范数下f的敏感度;Laplace(X)为μ=0,b=X的拉普拉斯分布,其概率密度函数为L(x,μ,b)=12bex-μb.(5)b.高斯机制.适用于数值型输出.给定一个查询函数f,令随机函数A(D)满足(ε,δ)-差分隐私A(D)=f(D)+Gaussian(σ2); (6)σ2=2Δf2log(1.25/δ)ε2, (7)式中:Δf2为2-范数下f的敏感度;Gaussian(σ2)为高斯分布.c.指数机制.适用于非数值型输出.效用函数u:D×r→R,其中r为随机算法A的输出集合中的元素.其敏感度定义为Δu=maxD,D',ru(D,r)-u(D',r).(8)如果A(D,u)输出一个结果r的概率正比于expεu(D,u)2Δu,那么一个随机算法A满足ε-差分隐私.中心化差分隐私的缺点在于其非常依赖可信的中心服务平台,导致在实际应用场景中较难实现,限制了中心化差分隐私的应用,因此提出本地化差分隐私技术.与中心化差分隐私不同,本地化差分隐私要求在数据发送到中心服务器之前须要进行扰动,即保护隐私的任务须要在本地进行.现有的本地化差分隐私主要采用随机响应机制.即给定一个n维二进制向量bi∈{b1,b2, ⋯,bn},一个用于扰动的随机二进制向量ri∈{r1,r2,⋯,rn}.扰动后的向量vi∈{v1,v2,⋯,vn}由如下规则产生,vi=bi (ri=0);r (ri=1), (9)式中:ri以均等概率为0或为1;r以p的概率为bi,以1-p的概率为bi⊕1.p被设置为p=eε1+eε.(10)在推荐系统中,当用户须要向服务器传送数据时往往会使用差分隐私对数据进行处理实现隐私保护.例如,文献[24]将差分隐私算法与强化学习框架相结合,通过学习得到合理的隐私预算,使推荐算法在数据可用性和隐私性之间取得平衡.文献[31]设计了一种针对用户兴趣表示学习的差分隐私算法,使得在用户兴趣表示上传服务器之前进行处理实现隐私保护.文献[32]针对跨域推荐中的私有知识转移提出了一种隐私保护跨域推荐框架,该框架利用差分隐私发布源域的用户-物品评分矩阵,采用JLT (Johnson-Lindenstrauss变换)和SJLT(稀疏感知JLT)对源域数据进行处理,解决了跨域推荐时迁移用户偏好带来的隐私问题.文献[27,33]在联邦学习框架下设计了本地化差分隐私算法对学习过程中的梯度数据进行保护.3.3 联邦学习联邦学习是一种分布式机器学习框架,一般由多个客户端和一个中央服务器组成.各个客户端在中央服务器的协调下共同训练模型,以保持训练数据的去中心化和分散性.在联邦学习中,用户的隐私数据仅用来训练自己的局部模型,无须上传到服务器,以此实现对用户隐私数据的保护.本研究把每个参与共同建模的客户端称为参与方,根据参与方之间数据分布的不同可以把联邦学习分为横向联邦学习和纵向联邦学习.3.3.1 横向联邦学习横向联邦学习又称为基于特征对齐的联邦学习,适用于特征重叠多,用户重叠少的场景.比如不同地区的银行之间,它们的业务相似(特征相似),但用户不同(参与方不同).横向联邦学习可归纳为以下四个步骤,学习过程如图1所示,图中:1为发送梯度;2为聚合梯度并更新模型;3为返回更新后的模型;4为更新模型.10.13245/j.hust.230218.F001图1横向联邦学习的学习过程步骤1 每个参与方各自从服务器下载最新的模型;步骤2 每个参与方利用本地数据训练模型,加密(或使用差分隐私等技术)梯度并上传服务器,服务器聚合各用户的梯度之后更新模型参数;步骤3 服务器返回更新后的模型给各个参与方;步骤4 各参与方更新自己的模型.在横向联邦学习的学习过程中,每个参与者都具有相同且完整的模型,且参与者之间相互独立.正是由于这些特点,使得联邦学习有了很好的隐私保护特性,也使得联邦学习在考虑隐私保护的推荐系统中有了广泛应用.3.3.2 纵向联邦学习相比于横向联邦学习,纵向联邦学习的本质是特征的联合,适用于参与方重叠多,特征重叠少的场景,比如同一地区的银行和电商,它们的用户都为该地区的居民(参与方相同),但业务不同(特征不同).在纵向联邦学习的过程中,须要先将样本对齐并进行加密之后,再进行比对.让参与者在不暴露不重叠样本的情况下找出相同的样本,并联合它们的特征进行学习.学习步骤可归纳为以下两步,示意图如图2所示.10.13245/j.hust.230218.F002图2纵向联邦学习步骤1 加密样本对齐;步骤2 对齐样本进行模型加密训练.基于联邦学习对隐私保护的能力,现如今联邦学习在推荐系统中得到了广泛应用[27,29-30].例如:文献[27]设计了一种基于联邦图神经网络的推荐算法,为每个用户设计了一个局部图神经网络模型进行实体表示学习,并将学习到的梯度上传到服务器,再通过服务器返回的梯度更新局部图神经网络模型;文献[28]设计了一种联邦学习框架,通过将新闻表示学习模型设置于服务器,用户表示学习模型设置于本地客户端,实现了更低计算开销的推荐算法,且对隐私进行保护;文献[31]在联邦学习框架下,将用户兴趣进行分类,并对每个分类进行表示学习,用于召回候选新闻以此提升推荐准确性.现有的基于联邦学习的推荐算法研究中经常会与差分隐私算法相结合.因为当每个用户上传局部梯度给服务器时,这个梯度信息通常含有用户隐私敏感信息,此时须要使用差分隐私算法保护梯度信息.3.4 对抗学习实体表示学习现如今已成为推荐系统采用的主流方法.如果不对学习到的实体表示进行处理,攻击者将能基于用户表示逆向推断出用户的敏感信息,导致用户隐私的泄露.针对这一问题,对抗学习会对往输入数据中添加一些对抗扰动,被扰动后形成的对抗样本会使得逆向预测的准确度大大降低.现有推荐系统中关于对抗学习的研究主要集中于生成对抗网络(GAN)[34].GAN由生成器和判别器两个部分组成.生成器旨在通过机器模型生成包含扰动的数据,来骗过判别器.判别器则用于判断生成的数据的真实性.生成器和判别器的关系如图3所示.10.13245/j.hust.230218.F003图3生成器与判别器关系图GAN的训练过程可归纳为下三个步骤.步骤1 训练生成器.生成器不断产生假数据让判别器做判断,一开始生成器产生的假数据很容易被判别器发现,但随着不断的训练,生成器的能力进一步提升,逐渐能够骗过判别器.步骤2 训练判别器.让判别器不断地鉴别生成器产生的假数据,随着判别器能力的提升,能够较准确地判断出数据的真假.此时生成器弱于判别器.步骤3 循环步骤1和步骤2.通过多次的循环训练,生成器和判别器的能力都不断增强.最终生成器能以假乱真,判别器能准确地识别真假.在推荐任务中,文献[23]设计基于对抗学习的推荐框架,包含一个推荐模型(相当于生成器)与一个攻击者模型(相当于判别器),二者相互对抗训练.推荐模型最终的损失函数由两部分组成:一方面最小化原推荐模型的损失函数ℒDR,另一方面最大化攻击者模型的损失函数ℒDP,其形式化的表示为minθR(ℒDR-αmaxℒDP{θPt}t=1T), (11)式中:θR和{θPt}t=1T分别为推荐模型和攻击者模型中的可学习参数;α用于平衡推荐模型损失与攻击者模型损失.两个模型循环交替训练,收敛之后的推荐模型有很好的推荐效果和抗隐私攻击能力.文献[35]为缓解链接预测中的过滤气泡现象,设计了一种对抗网络与链接预测相结合的公平感知链接预测框架,该框架中的表示学习部分输出网络节点的嵌入向量对抗学习部分将该输出作为输入,预测节点对是否具有相同的隐私属性.表示学习部分和对抗学习部分相互对抗,最终生成的嵌入向量既难以推断是否具有相同的隐私属性,又能够很好地表示特征.4 存在问题及未来研究重点不同于传统的推荐算法,考虑隐私保护的推荐算法目前仍然存在以下不足之处.一方面,现有的推荐模型很难兼顾隐私性与推荐准确性.在推荐算法中增加隐私保护模块会降低推荐任务的准确性,其原因在于推荐算法和隐私保护算法的目标互斥.推荐算法的目标是生成更准确的推荐列表.为实现此目标,研究人员通常会尽可能多的挖掘用户的各类信息,以准确地刻画出用户当前偏好.而隐私保护技术则希望尽可能降低用户信息被获取的概率.当隐私保护算法与推荐算法相结合时,会减少推荐算法所能使用的用户信息,导致推荐性能的下降.另一方面,考虑隐私保护的推荐算法所解决的任务较为单一.模型仅以不泄露用户隐私信息为最终目标,忽略了保护用户隐私所能进一步实现的社会性功能.例如,针对用户敏感信息保护的推荐算法将在推荐过程中模糊用户敏感信息对推荐列表生成的影响.从而保证不同用户群体,如不同种族,不同性别的群体,能获得工资收益相近的工作推荐,实现推荐公平,防止对不同用户群体的歧视.随着推荐系统的广泛应用以及用户隐私意识的逐渐增强,以下方向可能会成为未来的研究重点.考虑通过多种技术相结合的方法来增强推荐算法的隐私保护效果.对抗学习方法可以去除用户表示中的敏感属性信息,针对性地保护用户隐私.在联邦学习框架中,须要对梯度信息进行保护,以防止攻击者推断出用户隐私信息.若能将对抗学习与联邦学习结合,即用对抗学习来去除梯度中的敏感信息,则会是一个很有意义的研究方向.因此,在探索新的隐私保护方法时,尝试将多种技术结合是一个很好的思路.尝试探索一种新的隐私保护技术以适应用户的多样化需求.用户对隐私保护的需求是随着时间、地点和场合等因素变化的,现有的隐私保护技术都不适合于用户隐私需求变化的场景.因此,探索一种能够根据用户隐私需求实时调整策略的技术会是一个很好的研究方向.5 结语本研究首先对推荐系统中隐私保护问题进行分类整理,在此基础上综述了匿名化、差分隐私、联邦学习和对抗学习四种隐私保护技术,并对不同技术的适用场景、优缺点、研究现状等进行了归纳和总结.推荐系统中的隐私保护问题已成为目前的研究热点,虽已有许多的隐私保护技术,但想要让用户在推荐效果与隐私保护两方面都获得更好的体验,仍须做更深入的研究.
使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,
确定继续浏览么?
复制成功,请在其他浏览器进行阅读
复制地址链接在其他浏览器打开
继续浏览