- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
? ? 面向校园人脸识别的数据投毒攻击检测算法研究* ? ? 龚成清,何文华 (广东女子职业技术学院应用设计学院,广东 广州 511450) 引言 机器学习是人工智能的关键技术,机器学习通过模仿人类的学习行为,凭借计算机强大的运算能力来获取新知识,从而实现自身性能的改善.机器学习已经在人脸识别、自然语音处理、自动驾驶和医疗系统等领域被广泛应用.然而,针对机器学习的攻击也伴随而生,机器学习的安全和隐私问题随着其应用的推广日渐突出[1].针对机器学习分类器的攻击可以分为三类:数据投毒、对抗输入和模型窃取[2].数据投毒发生在机器学习模型的数据训练阶段,攻击者通过一定的策略修改原始训练数据集或者向原始训练数据集中注入污染数据来对数据进行攻击,这样就使得机器学习分类器的分类边界发生偏移或改变,从而使机器学习产生错误的输出结果,造成安全隐患. 研究者针对数据投毒攻击的检测进行了探索和研究,目前相关研究主要有数据清洗和提高算法鲁棒性两个思路.数据清洗方法主要是对训练数据集进行清洗,筛选出投毒数据.Nelson和Marco Barren提出了拒绝消极影响(Reject On Negative Impact, RONI)检测方法就是典型的数据清洗方法[3,7],该方法对垃圾邮件进行了检测实验,取得了比较好的效果,但该方法步骤繁琐且计算量大,不适合在大规模候选集合情况下对数据进行筛选;Biggio等人提出了Bagging和随机子空间两种基于多分类器集成的方法来提高算法的鲁棒性[4,7],但技术的可拓展性不强,检测的泛化性能也差强人意; 中南大学的亢飞等人综合应用数据清洗和提高算法鲁棒性两个指标,针对数据投毒攻击的问题,提出了一种基于数据复杂度的投毒数据检测方法[5],能够有效检测投毒数据,但该方法数据模型复杂,效率不高. 当前,很多学校都已经安装了人脸识别的门禁系统.人脸识别的门禁系统是通过机器学习来判断人脸的特征,从而能够进行身份识别.数据投毒攻击使得人脸识别系统有可能误判身份,使得不合法身份的人员进入校园,造成严重的安全隐患.针对数据投毒攻击给校园人脸识别带来的安全威胁,通过孤立森林算法(Isolation Forest)对训练的人脸图像进行分析,检测出离群点后对数据进行清洗,然后运用多谱聚类算法对人脸图像样本进行评分,评估数据的合法性来增强算法的鲁棒性,最后通过线性拟合对参数进行优化,计算得到数据清洗和算法鲁棒性的最优平衡点,得出了检测数据投毒攻击的优化算法. 1 孤立森林算法 攻击者通过修改原始的训练数据形成了投毒数据,投毒数据破坏了合法样本的数据分布.一般来说,合法样本是一个密集点集合,相对合法样本数据,投毒数据为异常点,数量较少且通常散落在密集点区域以外的空间,属于离群点.孤立森林算法是一种适用于连续数据的无监督异常检测方法,可以有效地把异常点从正常点中检测出来.传统的异常检测算法主要是通过距离、密度等量化指标来刻画样本间的疏离程度,孤立森林算法则通过切分的方法计算样本点的孤立程度来检测异常数据.孤立森林算法采用孤立二叉树(Isolation Tree,即 iTree)对数据进行切分,异常数据由于跟正常数据较为疏离,使用孤立二叉树进行数据分割,只需要较少几次切分就可以将异常数据划分出来.相较于K-means等传统算法,孤立森林算法对高维数据有更高的效率和更好的鲁棒性. 孤立森林算法包含训练和预测两个步骤,训练步骤主要是用来构建iTree. 算法1:孤立森林训练算法 1)设X=x1,x2,x3……,xn为训练集,?xi∈X,从X中随机抽取p个样本点构成X的子集X′放入根节点; 2)从d个维度中随机指定一个维度q,在当前数据中随机产生一个切割点p; 3)由切割点p生成一个超平面,将当前数据空间划分为两个子空间:指定维度小于p的样本点放入左子节点,大于或等于p的样本点放入右子节点; 4)递归2)和3),直至所有的叶子节点都只有一个样本点或者孤立树已经达到指定高度; 5)循环1)~4),直至生成t棵孤立树. 经过训练步骤构造了iTree后,就可以对数据进行预测.由于异常数据的稀疏性和疏离性,异常数据会距离iTree的根节点更近,而正常数据则会与根节点有更远的距离.训练集经过算法1的操作,异常点在iTree中会被快速划分到离根节点较近的叶子节点.因此,可以将每个样本点x放入森林中的对应iTree中,计算叶子节点到根节点的路径长度得到其异常分值S(x,n),来判断x是否为异常点.计算的公式如下: (1) h(x)=e+C(n) (2) (3) 其中,h(x)为x所在树的高度;e表示数据x从iTree的根节点到叶子节点所经过的边的数目;C(n)是一个修正值,表示用n条样本数据构建的二叉树的平均路径长度;H(n-1)可用ln(n-1)+0.
文档评论(0)