APP下载

基于深度神经网络的图像理解安全研究现状

2020-01-06任家树

今日自动化 2020年6期
关键词:计算机视觉

任家树

[摘    要]近年来,随着深度神经网络DNN的应用在计算机图形学领域中达到了较高的识别性能,对于人工智能识别与人眼识别之间的差别逐渐成为议题,同时也引出了包括基于DNN的图像理解的反知觉性所造成的安全隐患等问题。这个问题的根本原因在于深度神经网络的表达性。该文从图像理解原理以及可能导致的安全漏洞开始,分析了这些漏洞可能导致的问题以及一些防范方案,也提出了对未来图像理解安全问题的前景展望。

[关键词]深度神经网络;计算机视觉;图像理解安全

[中图分类号]TP183 [文献标志码]A [文章编号]2095–6487(2020)06–0–04

Research Status of Image Understanding Security Based on Deep Neural Network

Ren Jia-shu

[Abstract]In recent years, with the application of deep neural network DNN in the field of computer graphics to achieve high recognition performance, the difference between artificial intelligence recognition and human eye recognition has gradually become an issue, and it has also led to including DNN-based The security risks caused by the counter-perception of image understanding. The root cause of this problem lies in the expressiveness of deep neural networks. This article starts with the principles of image understanding and the security vulnerabilities that may result, analyzes the problems that these vulnerabilities may cause and some prevention schemes, and also puts forward the prospects for the future image understanding security issues.

[Keywords]deep neural network; computer vision; image understanding security

隨着机器学习与人工智能的发展,深度学习的应用逐渐广泛,计算机图形学中的图像理解技术是其中很重要的一部分。这一技术代替了人以及人眼,让计算机处理能够做出正确的决策。当下性能最高的方法是使用DNN(Deep Neural Network,深度神经网络)模型,有着极为依赖海量数据的特性。但是图像理解存在安全漏洞,而这个漏洞的根本原因在于DNN的脆弱性[1]。本文以介绍图像理解的机器学习算法中DNN可能出现的问题与漏洞为例,着重探讨这样的漏洞所导致的危害以及漏洞出现的原因以及缓解办法。对于这些问题的认识与解决办法对现有的使用DNN为原理的图像识别应用的安全方面有着一定的参考价值。

1 神经网络工作原理简述

时下最为流行的深度学习图像理解是基于卷积神经网络的算法,在ImageNet测试中,卷积神经网络在图像理解方面的性能现在已经接近人类[2]。而本文所要介绍的DNN是指包含了多个隐藏层的神经网络,某种意义上包括了CNN(Convolutional Neural Network,卷积神经网络)和RNN(Recurrent Neural Network,循环神经网络)的一种MLP(Multilayer Perceptron, 多层感知机,是一种前馈人工神经网络模型,其将输入的多个数据集映射到单一的输出的数据集上)。

1.1 深度神经网络的正向传播算法和反向传播算法

1.1.1 深度神经网络的正向传播算法

DNN是在MLP的模型之上进行了一定改动的结果,神经网络是一个有着若干输入,若干隐藏层,若干输出以及若干激活函数的模型,层与层之间是全连接的,对于局部上下两层之间有一个线性关系:

以及一个激活函数:

其中w为线性系数,x为上层输入值,b为偏倚。从这个局部模型出发,通过使用上下标的方式就可以表述每一个上下层神经元之间的关系。对于第l层的第j个神经元的输出,有:

而将整个网络视为一个二维的矩阵,通过利用矩阵的表示方法可以将上式简化为

其中W l为第l层和第l-1层之间的线性系数组成的矩阵,al-1为第l-1层的输出,b l为第l层的偏倚组成的向量,而z l就是第l层未激活的输出。深度神经网络的正向传播算法就是从输入层开始,一层层的如上向输出层的方向计算,一直到输出层[3]。

1.1.2 深度神经网络的反向传播算法

正向传播算法所导出的结果z和真实标签y存在一定误差,反向传播算法可以减小这个误差。反向传播算法即是通过从输出层向输入层方向逐层递推,计算每层开始权重所导致的误差,根据这个误差值重新设定每个神经元之间连接的权重,同时这里也要用到梯度下降算法在调整权重的同时使结果与真实标签之间的误差最小化。

2 图像理解安全问题举例与分析

2.1 以扰乱识别结果为目的的攻击

以更改识别结果为目的的漏洞主要是通过对图片信号的更改来达到降低模型的表现的效果。典型案例包括挪动像素,增添像素等微小扰动手段改变机器对画面识别结果的信赖程度等。这种方式主要的特征是可以对广泛的基于深度学习的神经网络模型进行干扰,手段较为直接。

2.1.1 人眼无法识别的图像

在此实验中[4],为了严谨性和实验本身的易操作性,采用了基于Krizhevsky 2012[5]的DNN模型并将其简称为”ImageNet DNN”,加入了一个参考对象,是在MNIST数据库[6]上训练出的使用了caffe的LeNet模型[7],并将其简称为“MNIST”。

在这个实验中,我们发现虽然当下的DNN能够以较高的性能识别自然图像,它们同时也会以很高的可信度将一个人眼无法识别的图像判定为一个熟悉的图像(图1左:帝企鹅,图2右:海星)。而这种无法识别的图像可以由进化算法得来。

进化算法(EAs)[8]是一种受达尔文的自然进化论启发的优化算法。优化算法通过层层的“优胜劣汰”来筛选出最合适的结果,在这里就是通过对个体(图像)进行不同的改变,将各个变体进行检测,结果具有最高的可行度的图片被保留,进入下一轮筛选。最后就生成了一系列人眼无法识别的图像。

以最基础的l-9数字识别为例,图2和图3在进化算法之上使用了2种不同的编码方式。图2采用了直接编码,以0(左)和1(右)的识别为例,这样产生的图像大概率是不规则的;图3采用了间接编码,以0和1为例,在生成时采用了对称,重复的逻辑,会产生更加规则的图像。这2种方式生成的人眼无法识别图像对于DNN来说识别结果的可信度都达到了99.99%,并且所生成的图像对应同一意义是不唯一的。如图4所示,除了0~9识别之外,还有较为普遍的人眼无法识别的,DNN识别结果可信度较高的图像,以草莓(左)和红绿灯(右)为例,这些图像也是由进化算法得到的。

2.1.2 人眼无法识别的微小扰动

在实验[4]中,神经网络被发现具有对微小扰动干扰的不稳定性,其中微小扰动是指人眼无法观测到或者分辨出的改变。在测试中,通过向神经网络模型中输入一个用微小扰动调试过的图片,并能够根据微小扰动的的调试任意的控制神经网络的识别结果。并且很值得关注的一点就是这个扰动对神经网络识别结果的更改具有一定的广泛性,即对于不同的模型都具有影响。通过添加一个调制过的噪声生成一对人眼无法区分的图像,然而DNN识别结果会有较大差别对于人眼,如图5对于人眼来说左是熊猫中见为无意义噪声,右图还是熊猫。但是对于神经网络来说,左图是熊猫,而右图是长臂猿!中间的“噪声”其实是经过调制的一张图片,是可以在被DNN识别之后具有一定意义的,如图6。这样通过这种手段可以将任何原始图片转换为DNN识别结果为任意想要的图片:对于人眼,左图是树懒,右图是树懒;但是对于神经网络,左图树懒,右图是赛车。其中赛车图像代表一幅调制目的为使神经网络识别为赛车的噪声,可以避免人眼识别。

2.1.3 无法意识到的扰动

在数字信号层面以外,物理层面上的一些对于图像的更改也会对图像理解的结果造成干扰。如图7中通过在交通指示牌上粘贴胶带来干扰无人驾驶,左半边是一个正常的在停止标志上的涂鸦,右半边的则是一个从物理层面着手的图像扰动。对于人眼来说,左图的意思是停止,右图的意思也是停止,只不过是多了幾张奇怪的胶带;对于神经网络来说,左图识别结果是停止,右图的识别结果是限速45英里每小时。两者以人的视角很难做出分别,甚至人的意识无法意识到图像“意义”的改变,但是右边的图像对于一辆无人驾驶小车来说是“限速45 ml/h”而不是“停”。[9]

2.1.4 自然界中存在的漏洞

除了人为编辑而成的图像,如图8,未经编辑的图像:画作被识别为金鱼,高速路被识别为大坝;以及如图9自然图像,依然会存在误识别的情况:松鼠被识别为海狮,蜻蜓被识别为井盖。虽然导致重大问题的可能性较小,但是这种情况会一定程度上的影响计算机识别的性能以及效率[10]。同时,物体在图像中摆放的角度也会影响识别结果,如图10所示,对于人眼来说三张图都是停止标牌,但是对于DNN来说左图是停止标牌,中图是哑铃,右图是架子[9]。

2.2 其他类型的对深度神经网络的攻击

上文所述的利用图像理解的漏洞来更改神经网络识别结果的攻击属于对神经网络弱点的较为初级的应用,除此之外还有其他的利用方式。譬如将输入的图像抽象为一个程序,即图像在被识别时相当于是在给定环境里运行一个任意程序(参考实验[11]),而环境本身(即神经网络模型)却没有足够的安全措施,这点与代码注入有些类似。

2.3 漏洞出现的原因

对于图像理解漏洞的存在,究其根本还是在于图像理解所使用的深度神经网络,人类对于世界的认知是与训练出的机器模型的认知是不一样的。

2.3.1 人的视觉和知觉

在视觉方面,人是具有视错觉的,而对于机器来说的图像输入信号则不会有如此偏差,这就导致了第一层的差别。人的视觉又具有两义性,而对于机器来说结果只会选取可信度最高的结果,只是最后提交报告的时候的自信程度不高。

除了人的视觉之外,人的知觉也会对图像理解造成一定影响。人的知觉具有整体性,意思是当知觉对象由许多部分组成的时候人不会把对象感知为多个独立的部分;人的知觉具有简单性,心理学和感觉领域的理论认为,头脑在活动时会得出一个最简单的可能含义与事物配合;人的知觉具有完美性以及理解性都会在人的意识中创造出不属于原本图像的内容[12]。

如图11,对于一些完全反人类知觉的图像,DNN有时会有一个可信度较高的识别结果(此图为生成图像,左:帝企鹅,右:海星)

2.3.2 机器的数学模型

图像理解意味着将视觉图像(视网膜的输入)转换为对世界的描述,可以与其他思维过程进行交互并采取适当的行动。这种图像理解可以看作是使用借助几何,物理,统计和学习理论构建的模型将符号信息与图像数据分离开来。神经网络可以实现高性能,因为它们可以表示由适量的大量并行非线性步骤组成的任意计算。但是由于结果计算是通过有监督学习的反向传播自动发现的,可能难以解释并且具有反直觉的特性[13]。借助这一特性,很多漏洞可以躲避人的注意而进入机器模型运行,从而导致一系列安全问题。

3 防范措施

较为直白的说,神经网络并不能识别出图像中“最重要的信息”,于此并没有一个普适的解决办法,但是研究人员从不同的角度提出了可用于缓解问题的方法。

3.1 增加训练量

这里的重点在于让人工智能处理有问题的案例,并纠正其错误。一个思路就是使用对抗性训练,用2个网络,当一个网络学会识别对象时,第二个网络试图改变第一个网络的输入,从而使其出错。这样,对抗性的例子就会成为神经网络的一部分。

3.2 非技术层面的缓解方法

从决策的内容来安排,将这种可能出错的人工智能用于处理容错率高的数据或者不重要的数据,而较为重要的数据则在人工智能识别之后由人工再次识别,而这种做法也仅仅对于较为重要的项目才会比较有性价比[14]。

3.3 忽略小额扰动

对于上文中的使用的方式,较为笼统的可以将其概括为通过积累微小的像素级别的扰动,最后达到改变图像对于图像的识别结果。有人提出可以让神经网络忽略过小的干扰,这样可以让神经网络模型的容错率提高。

3.4 与符号识别AI相结合

在神经网络学习模式之前的一种机器学习模式,符号AI通过识别符号并且根据表格来确定输出,这种情况的操作比较死板优点是不易出错。

4 前景展望

4.1 零训练基础的学习方法

这里指的“临时”使用是指在没有训练的基础下,给与机器人一些工具(或物件)并让机器人随意操作一段时间,之后设置一个任务,机器人会使用工具来达到目的。学习着与外在世界互动比学习认识图像是一种更为深刻和广泛的理解,这样也许会让机器人规避一些对于正常人类来说是反智的错误[15]。

但是这种学习方法需要较多的时间和运算性能,因为机器学习是一个收集海量数据的过程,而使用传感器和硬件来学习的实体机器人所需要花费的时间和精力会比较多。这个情况也是有一个缓解的办法的,就是采用模拟的环境先进行一部分的学习,再让机器人进入实体学习。

4.2 使用更少的数据的学习方法

这是一种使用机器之前训练的结果,来处理现有问题的方法。思路是使用之前所训练出的其他模型为起点来构建一个新的领域的模型。这种方式与人类婴儿的认知方式有一定相似:婴儿哪怕没有见过长颈鹿,但是它们依旧可以识别出来哪怕之前只见过一两次长颈鹿的图片,这是因为它们曾经见过其他的生物,有些人们常说的“触类旁通”的意思。

4.3 学习学习的方法

AlphaZero之所以可以在围棋领域上活得较大成功,不仅仅在于它采用了强化学习的方法,还有一个基于蒙特卡洛树的用于帮助它筛选下一步棋的所有选项的算法[16]。这个算法的意义在于帮助AlphaZero更好的从环境中进行学习。

从这个案例获得启发,现在計算机科学家正在研究如何让神经网络生成帮助自己的算法,这对于决策制定很有帮助,在图像理解中,这可能涉及到选择在呈现新图像时要朝哪个方向看,以及如何操纵对象以最好地理解其形状或用途。这个想法是让人工智能寻找新的视角来给另一个人工智能提供最有用的新数据来学习。

5 结束语

目前,尽管科学家们认识到神经网络的脆弱性及其对大量数据的依赖性,但大多数人表示,这项技术将继续存在。近十年来,人们意识到,神经网络——与巨大的计算资源——可以训练成如此好地识别模式,然而这仍然是一个路标,这个领域仍有较大探索空间。

参考文献

[1] David A.Forsyth;Jean Ponce (2003). Computer Vision, A Modern Approach[M].Prentice Hall.ISBN 978-0-13-085198-7. 537-567.

[2] O. Russakovsky et al."ImageNet Large Scale Visual Recognition Challenge", 2014.

[3] Ian Goodfellow,YoshuaBengio,Aaron Courville(2015),Deep Learning[M].The MIT Press. ISBN 978-0-262-03561-3.

[4] Nguyen, A., Yosinski, J. & Clune, J. Deep Neural Networks are Easily Fooled:High Confidence Predictions for Unrecognizable Images [A]IEEE Conf. Comp. Vision Pattern Recog[C]. 2015, 427–436 (2015).

[5] A. Krizhevsky, I. Sutskever, and G. E. Hinton. Imagenet classification with deep convolutional neural networks[J]. Advances in neural information processing systems, 2012.1097–1105.

[6] Y. LeCun and C. Cortes. The mnist database of hand-writtendigits[J], Journal of Intelligent Learning Systems and Applications, Vol.9 No.4, October 31, 2017.

[7] Y. LeCun, L. Bottou, Y. Bengio, and P. Haffner. Gradientbased learning applied to document recognition[C]. Proceedings of the IEEE, 86(11):2278–2324,1998.

[8] D. Floreano and C. Mattiussi. Bio-inspired artificial intelligence: theories, methods, and technologies[M]. MIT press,2008.1-97.

[9] Eykholt, K. et al. Robust Physical-World Attacks on Deep Learning Visual Classification [A]IEEE/CVF Conf. Comp. Vision Pattern Recog[C]. 2018,1625–1634.

[10] Hendrycks, D., Zhao, K.,Basart,S.,Steinhardt, J. & Song, D. Preprint Natural Adversarial Examples. https://arxiv.org/abs/1907.07174 (2019).

[11] Elsayed,G.F.,Goodfellow, I. &Sohl-Dickstein, J. Preprint [A]International Conference on Learning Representations[J]2019.

[12] 孔斌.人類视觉与计算机视觉的比较,自然杂志[J]vol.24 No.151-55.

[13] Christian Szegedy. Wojciech Zaremba.. Ilya Sutskever.Intriguing properties of neural networks[R]. Google Inc. 2014.

[14] Identifying and eliminating bugs in learned predictive models, DeepMind, Mar.28, 2019.

[15] Visual Model-Based Reinforcement Learning as a Path towards Generalist Robots, BAIR, Nov 30, 2018http://bair.berkeley.edu/blog/2018/11/30/visual-rl/.

[16] Silver, D. A general reinforcement learning algorithm that masters chess, shogi, and Go through self-play[R]. DeepMind, 6 Pancras Square, London N1C 4AG, UK. 2018.

猜你喜欢

计算机视觉
基于光流技术的障碍物检测方法
无人驾驶小车定点追踪系统的设计与实现
基于深度卷积神经网络的物体识别算法
双目摄像头在识别物体大小方面的应用
机器视觉技术发展及其工业应用
危险气体罐车液位计算机视觉监控识别报警系统设计
对于计算机视觉商业化方向的研究
基于Matlab的人脸检测实验设计
现代目标识别算法综述
基于分块技术的改进LPB 人脸识别算法的研究