《2024机器学习中的隐私保护.docx》由会员分享,可在线阅读,更多相关《2024机器学习中的隐私保护.docx(17页珍藏版)》请在课桌文档上搜索。
1、机器学习中的隐私保护导读:近年来,随着GDPR通用数据保护条例出台以及一些互联网公司数据隐私泄漏等事件的发生,数据隐私的保护问题在行业应用中备受关注。与数据密切相关的机器学习算法的安全性成为一个巨大挑战。本文将介绍在机器学习领域中数据隐私安全的相关工作,并介绍第四范式在差分隐私算法效果提升上所做的工作。主要和大家分享数据隐私的3方面: 隐私保护的问题与案例 基于数据的隐私保护技术:数据匿名化 机器学习模型训练中的隐私保护技术:差分隐私I机器学习中的隐私保护问题1 .信息隐私信息隐私(Privacy):指的是当一个组织内敏感数据被拥有权限的人员所使用于某些技术、过程(如数据分析、训练模型)时,对
2、数据敏感信息进行保护的过程与规则。数据的隐私(Privacy)与安全(Security)并不等价:有的时候很多人提到数据隐私时,会与数据安全混为一谈,但其实两者并不等价。数据安全通常指防止数据被非法访问;而数据隐私则一般指在数据被合法访问时,防止其中的敏感信息被访问者以某些方式逆向获取,避免因数据被“逆向”推导出而造成的敏感信息泄露和滥用。当然,对于企业来说,数据隐私和数据安全都非常重要。2 .信息隐私问题如今,在很多需要用到私人敏感数据的领域中,都存在数据隐私的问题。特别地,当机器学习技术应用在一些个人隐私数据上时,可能会暴露敏感数据,对个人造成很多负面影响。虽然现实生活中有很多数据隐私的问
3、题,但严格意义上,个人隐私不可能被绝对保护。1977年,统计学家ToreDalenius给出关于数据隐私的严格定义:攻击者不能从隐私数据里获取任何在没有拿到数据之前他们所不知道的个人信息。2006年,计算机学者CynthiaDwork证明上述定义的隐私保护是不存在的。有一个直观例子可以帮助理解:假设攻击者知道Alice的身高比1.ithUanian女性平均身高高2英寸,这样攻击者只需要从一个数据集里获得1.ithuanian女性身高平均值(在接触数据前攻击者并不知道),就能准确获得AIiCe的精确身高,甚至Alice者杯需要在这个数据集里。因此,对于T分有信息量的数据,不可能完全不暴露隐私信息
4、。3 .隐私泄露的危害隐私泄露的危害,主要有: 隐私信息被应用于欺诈与骚扰:如盗刷信用卡、电话诈骗、冒用身份等 用户安全受到威胁:用户信息受到泄露,引起更多有目的犯罪 非法机构利用用户隐私信息操控用户 用户信任危机 违背相关法律不过一般来说,对于不特别极端的情况,我们仍可以从很大程度上来保证数据在机器学习过程中不被泄露。这里再分享一个隐私泄露的案例:1997年,马萨诸塞州GIC对外公布了一组医疗数据,其中包括病人的5位邮编、性别、生日。州长WeId对公众保证这份数据是匿名的,因为标识特征(如名字地址)已经被移除。结果一位MIT毕业生通过结合这份数据与她花了20美元购买的选民登记数据,找到了We
5、ld的医疗记录。同时,她还宣布87%的美国公民可以通过5位邮编、性别、生日进行唯一标识。这个真实案例印证了:任何有一定信息量的数据都有可能产生隐私泄露;单纯的数据匿名方法是很难保护隐私的。接下来,我们来看一下,针对潜在的隐私泄露问题我们有哪些技术可以在很大程度上杜绝隐私的泄露。I数据匿名化技术(DataAnonymization)数据匿名化是一个从数据层面上进行隐私保护的技术。匿名化很多时候是通过hash掉姓名等关键标识符来实现的。而在只简单hash掉姓名的情况下,数据访问者有很多方法通过利用其它特征的信息来反推出某人在数据表中对应的那一条数据。这时候,就需要一种技术来防止访问者能够通过结合多
6、个特征的数据来确定人与数据间的对应关系。1.数据表中数据列的类别(按所含隐私量分类)KeyAttributeQuasi-identifierSensitiveattributeNameDOBGenderZipcodeDiseaseAndre1/21/76Male53715HeartDiseaseBeth4/13/86Female53715HepatitisCarol2/28/76Male53703BrochitisDan1/21/76Male53703BrokenArmEllen4/13/86Female53706FluEric2/28/76Female53706HangNail图片来自:hu
7、ps:/elfll.github.io/2017/04/22/kanonymity.h【ml 标识列(KeyAttribute,简称KA):单凭其一列便能直接锁定某人的数据列,如:身份证号、姓名(大多数情况下); 半标识列(Quasi-identifier,简称QID):无法单凭其一列确定对象,但通过结合多列数据或查其它信息(缩小范围)可以对应到个人的数据列,如:生日、邮编等; 敏感信息列(SensitiveAttribute,简称SA):如疾病、收入等。虽然只有标识列的数据能够直接缩小范围到单个样本,但如前文所述,仅匿名化标识列数据对于隐私保护是完全不够的。2.攻击方法与防护方法链接攻击数据
8、匿名化技术链接攻击(Iinkageattack)攻击者通过其他表获取敏感信息10QIDSANemeZipcodcAqcScxDiseaseAbCe4767729OvarunCxerBetty47珈NlFOvrnCancerC4rtes4767827MProsuteCancerNvkI4790543MFluEmily4790952FHeartDlSeAIeFred4790647MHeart6s7sNimeZipcodeKSexAJeBob4798365MCarol4767722FDen4753223MEllen4678943F链接攻击(1.inkageAttack):通过获取其它渠道的信息(如右
9、表)来锁定(见左表)当前数据表中数据所对应的个人。K-Anonymity数据匿名化技术K-AnOnymity对于一份数据,要求其发布的版本内,对于每一条记录,至少有k-1条其他记录的半标识属性与其一致QlDSAZipcodeAgeSexDisease767729F;OvarianCancer4760222FOvarianCancer4767827MProstateJnCer4790543MRU4790952FHeartDisease4790647MHeartDiseaseQIDSAZipcodeAqeSexDisease47622OvarianCancer-Ov0prrj-2rostateCa
10、ncer-479047904790143,5243,52(43,52HeartDiseaseHeartDiseaseIlK-匿名(K-Anonymity):针对链接攻击的防护方法。对于每T分数据的各版本内的每一条记录,规定至少有K-I条其它记录的半标识属性与其一致。上方右表就是对上方左表做“3-匿名”之后的结果:我们可以发现,在统一对“ZiPCOde、匕ge-、“sex”三列的数据的末尾作模糊(相当于匿名化)处理后,含有”ZiPCode:47677*,age:2*,sex:的信息的数据共有3条(这3条记录中的任一条,均满足至少有3-1=2条其它记录的半标识属性与其一致);左表原数据中的另外3条
11、经变换后也满足3-匿名的条件。左表在K-Anonymity之后,虽然数据会有所损失,但保证了每条数据中的敏感信息无法与个人一对应,降低了隐私泄露的风险。如何在尽可能小的数据损失的情况下做K-Anonymity也是一个数据隐私的研究方向。(3)Homogeneityattack数据匿名化技术针对K-anonymity攻击(Homogeneityattack)通过找到一组模糊化数据的共同点来获得敏感信息HomogeneityattackBobZipcodeAge4767827BackgroundknowledgeattackCarlZipcodeAge4767336A3-anonymouspati
12、enttableZipcodeAgeDisease476-2HeartDisease、4762HeartDisease4762HeartDisease,479040Hu4790三40HeartDisease479040Cancer476”3aHeartDisease、47633Cancer4763Cancer同质化攻击(HomogeneityAttack):可克制K-Anonymity防护的攻击。某些情况下,可通过直接对比其它列信息或查找其它外部资料发现,K-Anonymity中半标识列均相同的(至多)K条数据的其他列的信息其实是同质的,因而确定下来某人的隐私数据。上方右表说明:经对比可发现B
13、ob必然患有HeartDisease;而假如能够另通过查资料发现Carl所在地人们普遍患有HeartDisease,就还可以推断出Carl大概率是患HeartDisease的那例样本。(4)1.-Diversity数据匿名化技术1.-Diversity对满足K-Anonymity的发布数据,每一个等价类中敏感信息至少取1.个不同的值SRFg。3*F*M*X1.-散度(1.-Diversity):对K-Anonymity的改进。在满足K-Anonymity的基础上,要求所有等价类(即各半标识列信息均相同的一些样本)中的敏感信息(如:病史中的HeartDisease.Flu)的种类/取值至少有1.
14、种。上表就是一个满足3-散度的数据。相似性攻击数据匿名化技术相似性攻击BOb收入在20k-40kBOb有胃部疾病相似性攻击(SimilarityAttack):可对满足1.-Diversity的数据进行攻击。从外界获取个人多方面的背景信息,缩小范围以锁定目标。(6)T-Closeness数据匿名化技术T-Closeness为1.-DiVesity的拓展,对于满足K-anonymity的发布数据,每一个等价类中敏感信息的分布与数据集总体的敏感信息分布距离(如K1.距离)小于TT保密(T-Closeness):对1.-Diversity的拓展。对于满足K-Anonymity的数据,规定每一个等价类
15、中的敏感信息的分布与数据集整体的敏感信息分布的距离(可自行定义,常见的有:K-1.散度)小于T。I差分隐私(DifferentialPrivacy)技术除了数据匿名化不当以外,由数据和特定建模方法得到的模型同样有隐私泄露的风险(被攻击获取到原数据中的隐私信息甚至原数据本身)0差分隐私在机器学习模型的建模过程中应用较广。1 .模型的隐私保护风险未经过隐私保护处理的机器学习模型理论上可能暴露训练数据里的敏感信息。Membershipinferenceattack:模型的隐私保护风险Membershipinferenceattack探测一个样本是否属于训练集:训练集泄露(Shokri1Reza,et
16、al.Membershipinferenceattacksagainstmachinelearningmodels.2017IEEESymposiumonSecurityandPrivacy(SP).IEEE,2017.)DaiasetTrainingAccuracyTestmgAccuracyAttackPrecisionAdult0.8480.M20.503MNIST0.9840.92805171.ocation1.00.6730.678Purchase(2)0.9990.9840.505Purchase(IO)0.9990.8660.550Purchase(20)I.(XX)0.78!0
17、.590Purchase(50)l.0O930.860Purchase(100)0.W0.6590.935TXhospitalstays0.66803170.657成员推断攻击(MembershipInferenceAttack):探测一个给定样本是否属于训I练某待破解模型(targetmodel)的原数据集。步骤(参考论文见上图):模拟生成和训练targetmodel的原数据集分布类似的一系列数据集(即shadowdatasets),用与训练targetmodel相同的训练算法(训练算法是什么很容易得知)去训练出对应的一系列的模型,这些模型称为shadowmodelsz这些shadowmod
18、els和targetmodel的特征分布是很像的;AttackModel的训练。数据集构成:对于每一个shadowdatasets中每一条数据,可以构建此条数据在某个shadowmodel上的预测结果、该数据真实Iabel作为训练样本,将此条数据是否属于之该shadowmodel作为标签。通过构建的数据集再即可训练AttackModel,能够判断任意一条给定的数据是否属于原数据集;对于一条数据,对于该数据targetmodel的预测结果和真实label作为输入,通过判断模型就可以判断出该数据是否属于targetdataset的。右图为上述思路的一例实际应用,可以看出如果对训练模型的方法不加处理
19、的话,原数据集被成员推断攻击法破解的程度还是很高的。ModelInversionAttack:模型的隐私保护风险论文ModellnVerSionAttacksthatExploitConfidenceInformationandBasicCountermeasures,作者通过一个人脸识别模型与一个名字,反向恢复了一张人脸(左图),作为对比,右图人脸为数据集里的真实样本模型逆向攻击(modelinversionattack):是指攻击者通过模型与某个样本的其他特征,直接推断某个敏感特征值。2 .差分隐私技术(DifferentialPrivacy)如果对于任两个只相差1个样本的数据集D1.D2
20、j在通过过程M建模后,产生的模型与给定模型t完全相同的概率之比不大于e,(其中为某非负数,为隐私预算),那么我们说建模过程M是差分隐私的。差分隐私技术(DifferentialPrivacy)差分除私定义了一个处理过程(如查询.建模;中涉入数据的变动对结果的影晌(Xw)理解:如果建模过程M是E-差分隐私的,且很小,那么数据集和其训练出来的模型关系很小,即两个相差有固定上限的数据集训练出来的模型是几乎一样的,所以拿到模型的访问者即便知道大致的数据分布也并不能推断出原数据集;反之,如果很大,那么两个相差有固定上限的数据集训练出来的模型可能天差地别的,那么这种情况下,原数据集与得出的模型间一一对应的
21、比例很高,知道训练出来的模型就很有可能能够通过模型的分布倒推出原数据集。也就是说,如果改变一条的数据对最终得到的模型影响很小,那么数据集隐私暴露的风险就很小,反之则很大。差分隐私下的模型训练差分隐私下的模型训练objectiveperturbationChaudhurietal.,2011traininggradientperturbationoutputperturbationAbadietal.,2016Dworketah2006Chaudhurieta/.2011Performancedecreasesduetotheinjectednoise3AgmG失Il 对目标函数添加一定的噪声:
22、训练出来的模型会带有一定的随机性,可证明这样的随机性可满足差分隐私。 在梯度上加噪声:深度学习比较常用,因为对于深度学习模型,如果把噪声加在目标函数或输出上,差分隐私的分析会很复杂。 在模型输出上加噪声:使得不一样的原数据集输出的模型差异变小。差分隐私下的模型训练目标扰动算法-差分隐私保障差分隐私算法会降低算法效果在达到同样的泛化误差情况下.samplecomplexity为.n2),d是特征维度minn(wXj,%)+Ag(W)w/i=IIobjectiveperturbationiiiinIlnE(wTXj,yi)4t;/n|Il1/aj+g(w)noisetermMb)aWNbD,mod
23、ifiedprivacybudgetrrectontermisascalardependingon,n,e不过,作为代价,数据隐私保护得越好,算法的性能下降得越多。在训练样本复杂度相同的情况下,隐私保护越好(越小),泛化误差越大。基于特征切分的差分隐私算法基于特征切分的差分隐私算法 X.GuolQ.Yao,J.T.Kwok,W.Tu1Y.Chen,D.Wen,Q.Yang.Differentialprivatestackgeneralizationwithanapplicationtodiabetesprediction.InternationalJointConferenceonArtifi
24、cialIntelligence(IJCAI),Macao,China,Aug2019.按特征切分每部分学习隐基于隐私保护私保护子模型.的子模型组合24可编码特征重要性来提升效果按特征来切分做差分隐私,而非做基于样本切分的差分隐私:数据先按样本切分为上下2份,其中一份按特征切成K份去学K个子模型,这些子模型再在剩下的一半样本上用预测值去融合出新的(第二层的)K个子模型,其中切分和融合都是用差分隐私去做的。可证明最后总的输出是满足差分隐私的。按特征切分的原因: 达到损失所需要的样本数量复杂度(越小效果越好) D是特征维度,K是切分份数,q为对应的特征重要性 我们算法考虑了特征重要性,在理论隐私保障下提升了算法效果仅保证差分隐私是不够的,还需保证算法的性能。由上图公式可发现,给重要的特征分配更多隐私预算,训练样本复杂度会减小,训练出的子模型效果会更好。在迁移学习中的应用基于特征切分的差分隐私算法(迁移学习)尸4Z源数据基于隐私保护的假设迁目标数据移按中所述方法做特征切分,在假设迁移部分对子模型做差分隐私保护,最后做含差分隐私的融合。