我们知道,AI 技术将在很长一段时间占据互联网技术时代的风口。但是,有代码的地方就有缺陷,提到技术很难不讲安全,那么AI会不会碰到安全问题呢?
AI安全
试想一下,未来的某个早晨,当你像往常一样打开无人驾驶的汽车车门,报出目的地,然后坐在后座上舒舒服服地浏览推送给你的各种新闻,汽车突然失控,在本该停止的红灯前飞驰而过撞向了正在过马路的行人,那将是怎样一场灾难。
人工智能技术给生活带来便利的同时,其自身的安全问题(AI安全)也不容忽视,AI安全问题可以归纳为内外2方面原因:
- 自身缺陷导致的模型出错:例如,模型结构本身存在缺陷、或者训练数据和真实场景数据之间的偏差,都可能导致模型预测错误。
- 外部攻击导致的模型风险:例如,来自外部的对抗样本攻击可诱使算法识别出现误判漏判,输出错误结果。
本文,我们会针对第2点的对抗样本技术结合其在阿里巴巴安全领域中的实际应用给大家做展开介绍。
对抗样本技术
对抗样本由 ChristianSzegedy[1]等人提出,他们发现通过深度神经网络训练得到的模型,在输入与输出之间的映射往往不是线性的。这样就存在一个问题: 在输入数据中通过故意添加肉眼不易察觉的细微扰动,可以生成对抗样本,导致AI模型以高置信度给出一个错误的输出。如下图所示:
目前的对抗样本根据是否需要指定攻击的类目可以分为无目标攻击(non-targeted attack)和目标攻击(targeted attack)。前者不指定具体类目,只要让AI识别错误即可。后者不仅需要使AI识别错误,还需要使AI识别到指定的类别。
生成对抗样本,最直接的方法是在给定扰动量的范围内修改样本,使得修改后的样本在AI模型上的损失函数最大化(非定向攻击)或最小化(定向攻击),这样就可以把生成对抗样本的问题归纳为空间搜索的优化问题。基于不同的优化算法,学术界提出了很多对抗样本生成算法,有兴趣的朋友可以自行检索,此处不具体展开。
对抗样本应用场景
对抗样本技术提出后引发了学术界和工业界对于深度学习模型在安全方面的广泛关注,成为目前深度学习领域最火热的研究课题之一,新的对抗攻击方法不断涌现,应用场景从图像分类扩展到目标检测等。
阿里安全一直以来致力于用技术解决社会问题。为了保障整个生态圈中7亿多消费者和千万商家的信息安全,AI技术很早就被应用到了阿里安全体系建设中。安全领域一个重要的特点就是存在很强的对抗性,日常防控中,黑灰产会尝试使用各种对抗样本攻击我们部署的AI防控大坝。对此,一方面,阿里安全图灵实验室的算法专家们提出了若干种提升模型安全性能的方法,强化自身堡垒;另一方面,算法专家们也会以战养战,开展针对对抗样本的攻防研究,利用对抗技术去防御攻击者的模型。下面我们结合实际业务,介绍两种对抗样本的应用场景:
1.人脸识别
人脸识别技术已经在生活的各个场景普遍应用,手机解锁要靠脸、移动支付要靠脸,机场安检要靠脸……一脸走天下的时代逐渐到来。
然而,Bose 和 Aarabi[2]发现通过在原始图像中加入人眼不可区分的微量干扰对人脸识别算法进行攻击后,能够使人脸无法被检测算法定位到。如下图所示,左列为原始图像,检测算法可以准确定位,右列为对抗样本,已经成功绕开了人脸检测算法,而在我们肉眼看来两幅图画基本没有差别。
更进一步,采用对抗样本攻击人脸识别系统,还可以使算法把人脸识别成指定的错误类别[3]。下图第一列为目标类别,第2和第4列为原始样本,对其加入干扰生成的对抗样本在第3和第5列,它们均被算法错误识别为第一列目标类别。
2.对抗验证码
如同网络通信的基础安全设施——防火墙,互联网业务安全也有其基础安全设施——图片验证码和短信验证码。互联网业务广泛使用图形验证码用于区分人类和机器的操作行为,使用短信验证码过滤黑灰产批量账号及提供二次校验功能。现在随着深度学习的门槛越来越低,黑灰产会利用深度学习技术构建模型自动识别验证码,突破算法模型设置的人机识别防线。下图的文本验证码基本都可以被AI模型轻松识别。
针对文本验证码面临的挑战,阿里安全图灵实验室的算法专家们将原始验证码替换成增加扰动后的对抗验证码。为了增加对抗验证码的识别难度,又不影响正常用户的体验,算法专家们又在图像区域和生成方式上进行了组合扩展,最终生成的对抗样验证码有效抵御了黑灰产的批量破解,成为阿里业务安全的一道铜墙铁壁。采用该组合扩展生成的对抗验证码如下图所示:
针对点击式的图文验证与行为辅助验证码,阿里安全图灵实验室的算法专家们首先在验证码中结合了NLP的问答技术,再将全部问答转换成图片,最后利用对抗技术生成对抗问答图片。使用商业的OCR引擎进行对此类对抗问答图片样本进行识别测试,和原始样本的识别率相比,对抗样本的识别率大幅降低,且并没有对用户的体验带来很大的影响,由此可见AI结合安全能为业务带来巨大的价值。
原文链接
本文为云栖社区原创内容,未经允许不得转载。