CN114519185A - 检测深度神经网络(dnn)上的对抗攻击 - Google Patents

检测深度神经网络(dnn)上的对抗攻击 Download PDF

Info

Publication number
CN114519185A
CN114519185A CN202111325071.5A CN202111325071A CN114519185A CN 114519185 A CN114519185 A CN 114519185A CN 202111325071 A CN202111325071 A CN 202111325071A CN 114519185 A CN114519185 A CN 114519185A
Authority
CN
China
Prior art keywords
dnn
input
deep neural
classifier
training
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111325071.5A
Other languages
English (en)
Inventor
张佳龙
顾钟蔬
张智勇
M.P.斯托克林
I.M.莫洛伊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN114519185A publication Critical patent/CN114519185A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/2433Single-class perspective, e.g. one-against-all classification; Novelty detection; Outlier detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Computer Hardware Design (AREA)
  • Neurology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Multimedia (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

一种用于保护具有包括一个或多个中间层的多个层的深度神经网络(DNN)的方法、装置和计算机程序产品。在该方法中,接收训练数据集。在使用所接收的训练数据集来训练DNN期间,记录与中间层相关联的激活的表示。针对表示中的至少一个或多个,训练单独的分类器(模型)。分类器共同地用于训练离群值检测模型。在训练之后,使用离群值检测模型来检测深度神经网络上的对抗输入。离群值检测模型生成预测以及给定输入是否是对抗输入的指示符。根据另一方面,响应于检测到对抗输入,采取动作以保护与DNN相关联的部署的系统。

Description

检测深度神经网络(DNN)上的对抗攻击
技术领域
本公开一般涉及信息安全,并且具体地涉及保护机器学习模型免于错误的再现、分发和使用。
背景技术
作为现有技术的人工智能(AI)服务的关键组成部分的机器学习技术在为诸如图像识别、语音识别和自然语言处理等各种任务提供人类级能力方面已经显示出巨大的成功。大多数主要技术公司正在构建其AI产品和服务,其中深度神经网络(DNN)作为关键组成部分。构建生产级深度学习模型是非平凡的任务,它需要大量的训练数据、强大的计算资源和人类专业知识。例如,Google的Inception v4模型是为图像分类设计的切割边缘卷积神经网络(CNN);用具有数百万张图像的图像数据集在多个GPU上从该网络创建模型需要几天到几周的时间。此外,设计深度学习模型需要大量的机器学习专业知识和用于定义模型架构和选择模型超参数的大量试错迭代。
尽管DNN在许多任务上具有显著的性能,但最近的研究已经表明它们易受对抗攻击(adversarial attack),这些对抗攻击被设计成有意地向DNN的输入数据注入小的扰动(也被称为“对抗示例”)以导致错误分类。如果目标DNN被用于关键应用,诸如自主驾驶、机器人技术、视觉认证和识别等,则这种攻击尤其危险。在一个报告的示例中,示出了对自主驾驶DNN模型的对抗攻击导致目标DNN将停止标志错误分类为速度限制,从而产生危险驾驶状况。
也已经提出了对抗攻击的几种形式的防御,包括对抗训练、输入预处理和不同的模型强化。尽管这些防御使得攻击者更难生成对抗示例,但是已经示出这些防御仍然是脆弱的,并且它们仍然可以生成成功的对抗攻击。
因此,在本领域中仍然需要提供解决以深度神经网络为目标的对抗攻击的技术。
发明内容
本文的技术源自对一般的对抗攻击的本质的洞察,即,这样的攻击通常仅保证DNN中的最终目标标签,而中间表示的标签不被保证。根据本公开,然后利用该不一致性作为存在对DNN的对抗攻击的指示符。相关的洞察是,即使对于最后的(输出)DNN层,对抗攻击也仅保证目标对抗标签,而忽略其他中间(或次级)预测之间的相关性。然后,将该附加的不一致性用作对抗攻击的进一步(或次级)指示符(或确认)。因此,本文的方法优选地检查DNN本身内的标签和可选的相关性一致性,以提供攻击指示符。
在典型的使用情况下,DNN与部署的系统相关联。在检测到对抗攻击时,并且根据本公开的另一方面,然后采取关于所部署的系统的给定动作。给定动作的性质是实现特定的,但是包括但不限于发出通知/警告、防止对抗者(adversary)提供被确定为对抗输入的输入、采取动作以保护所部署的系统、采取动作以重新训练或以其他方式保护(加固)DNN、对对抗者进行沙箱化等等。
以上已经概述了本主题的一些更相关的特征。这些特征应当被解释为仅仅是说明性的。通过以不同方式应用所公开的主题或通过修改将要描述的主题,可以获得许多其它有益结果。
附图说明
为了更完整地理解本主题及其优点,现在结合附图参考以下描述,在附图中:
图1描绘了其中可以实现说明性实施例的示例性方面的分布式数据处理环境的示例性框图;
图2是其中可以实现说明性实施例的示例性方面的数据处理系统的示例性框图;
图3描绘了包括层的集合的DNN;
图4描绘了充当部署的系统的控制器的前端的DNN;
图5描绘了根据本公开的技术的过程流,通过评估隐藏层一致性来生成离群值(outlier)检测模型;以及
图6提供了根据本公开的优选实施例的用于构建离群值检测模型的优选技术的详细描绘。
具体实施方式
现在参考附图,并且具体参考图1-图2,提供了其中可以实现本公开的说明性实施例的数据处理环境的示例性示图。应当理解,图1-图2仅是示例性的,并且不旨在断言或暗示关于其中可实现所公开的主题的各方面或实施例的环境的任何限制。在不脱离本发明的精神和范围的情况下,可以对所描述的环境进行许多修改。
现在参考附图,图1描述了其中可以实现示例性实施例的各方面的示例性分布式数据处理系统的图形表示。分布式数据处理系统100可以包括其中可以实现示例性实施例的各方面的计算机网络。分布式数据处理系统100包含至少一个网络102,其是用于在分布式数据处理系统100内连接在一起的各种设备和计算机之间提供通信链路的介质。网络102可以包括诸如有线、无线通信链路或光纤电缆的连接。
在所描述的示例中,服务器104和服务器106与存储单元108一起连接到网络102。另外,客户端110、112和114也连接到网络102。这些客户端110、112和114可以是例如个人计算机、网络计算机等。在所描述的示例中,服务器104向客户端110、112和114提供数据,诸如引导文件、操作系统映像和应用。在所描述的示例中,客户端110、112和114是服务器104的客户端。分布式数据处理系统100可以包括未示出的附加服务器、客户端和其他设备。
在所描述的示例中,分布式数据处理系统100是因特网,其中网络102表示使用传输控制协议/因特网协议(TCP/IP)协议组来相互通信的网络和网关的世界范围的集合。因特网的核心是主节点或主机计算机之间的高速数据通信线路的主干,其包括路由数据和消息的数千个商业、政府、教育和其它计算机系统。当然,分布式数据处理系统100也可以被实现为包括许多不同类型的网络,诸如例如内联网、局域网(LAN)、广域网(WAN)等。如上所述,图1旨在作为示例,而不是作为对所公开的主题的不同实施例的架构限制,并且因此,图1中所示的特定元素不应被认为是对其中可以实现本发明的说明性实施例的环境的限制。
现在参考图2,示出了其中可以实现说明性实施例的各方面的示例性数据处理系统的框图。数据处理系统200是诸如图1中的客户端110的计算机的示例,实现本公开的说明性实施例的过程的计算机可用代码或指令可以位于其中。
现在参考图2,示出了其中可以实现说明性实施例的数据处理系统的框图。数据处理系统200是计算机的示例,诸如图1中的服务器104或客户端110,其中可以定位用于说明性实施例的实现处理的计算机可用程序代码或指令。在该说明性示例中,数据处理系统200包括通信结构202,其提供处理器单元204、存储器206、永久性存储装置208、通信单元210、输入/输出(I/O)单元212和显示器214之间的通信。
处理器单元204用于执行可被加载到存储器206中的软件的指令。处理器单元204可以是一个或多个处理器的集合,或者可以是多处理器内核,这取决于特定的实现方式。此外,处理器单元204可以使用一个或多个异构处理器系统来实现,其中主处理器与辅助处理器一起存在于单个芯片上。作为另一个说明性示例,处理器单元204可以是包含相同类型的多个处理器的对称多处理器(SMP)系统。
存储器206和永久性存储装置208是存储设备的示例。存储设备是能够临时和/或永久存储信息的任何硬件。在这些示例中,存储器206可以是例如随机存取存储器或任何其他合适的易失性或非易失性存储设备。永久性存储装置208可以根据特定的实现采取各种形式。例如,永久性存储装置208可以包含一个或多个组件或设备。例如,永久性存储装置208可以是硬盘驱动器、闪存、可重写光盘、可重写磁带或上述的一些组合。永久性存储装置208使用的介质也可以是可移动的。例如,可移动硬盘驱动器可以用于永久性存储装置208。
在这些示例中,通信单元210提供与其他数据处理系统或设备的通信。在这些示例中,通信单元210是网络接口卡。通信单元210可通过使用物理和无线通信链路中的一者或两者来提供通信。
输入/输出单元212允许与可以连接到数据处理系统200的其它设备输入和输出数据。例如,输入/输出单元212可以通过键盘和鼠标提供用于用户输入的连接。此外,输入/输出单元212可以向打印机发送输出。显示器214提供向用户显示信息的机制。
用于操作系统和应用或程序的指令位于永久性存储装置208上。这些指令可以被加载到存储器206中以便由处理器单元204执行。不同实施例的过程可以由处理器单元204使用计算机实现的指令来执行,该指令可以位于诸如存储器206的存储器中。这些指令被称为程序代码、计算机可用程序代码或计算机可读程序代码,其可以由处理器单元204中的处理器读取和执行。不同实施例中的程序代码可以在不同的物理或有形的计算机可读介质上体现,诸如存储器206或永久性存储装置208上体现。
程序代码216以功能形式位于可选择性地移除的计算机可读介质218上,并且可以被加载到或传送到数据处理系统200以便由处理器单元204执行。在这些示例中,程序代码216和计算机可读介质218形成计算机程序产品220。在一个示例中,计算机可读介质218可以是有形形式,诸如例如插入或放置到作为永久性存储装置208的一部分的驱动器或其他设备中以便传送到诸如作为永久性存储装置208的一部分的硬盘驱动器的存储设备上的光盘或磁盘。在有形形式中,计算机可读介质218还可以采取永久性存储装置的形式,诸如连接到数据处理系统200的硬盘驱动器、拇指驱动器或闪存。计算机可读介质218的有形形式也被称为计算机可记录存储介质。在一些实例中,计算机可记录介质218可以是不可移除的。
或者,程序代码216可以通过到通信单元210的通信链路和/或通过到输入/输出单元212的连接从计算机可读介质218传送到数据处理系统200。在说明性示例中,通信链路和/或连接可以是物理的或无线的。计算机可读介质还可以采用非有形介质的形式,例如包含程序代码的通信链路或无线传输。为数据处理系统200示出的不同组件不意味着对可以实现不同实施例的方式提供架构限制。不同的说明性实施例可以在包括除了或代替为数据处理系统200说明的那些组件的数据处理系统中实现。图2中所示的其它组件可以与所示的说明性示例不同。作为一个示例,数据处理系统200中的存储设备是可以存储数据的任何硬件装置。存储器206、永久性存储装置208和计算机可读介质218是有形形式的存储设备的示例。
在另一示例中,总线系统可以用于实现通信结构202,并且可以包括一个或多个总线,诸如系统总线或输入/输出总线。当然,总线系统可以使用任何合适类型的架构来实现,该架构提供在附接到总线系统的不同组件或设备之间的数据传输。另外,通信单元可以包括用于发送和接收数据的一个或多个设备,诸如调制解调器或网络适配器。此外,存储器可以是例如存储器206或高速缓存,诸如在可存在于通信结构202中的接口和存储器控制器集线器中找到的。
用于执行本发明的操作的计算机程序代码可以以一种或多种编程语言的任意组合来编写,所述编程语言包括诸如JavaTM、Smalltalk、C++等的面向对象的编程语言,以及诸如“C”编程语言或类似的编程语言的传统的过程式编程语言。程序代码可以完全在用户的计算机上执行,部分在用户的计算机上执行,作为独立的软件包执行,部分在用户的计算机上并且部分在远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种场景下,远程计算机可以通过任何类型的网络连接到用户的计算机,包括局域网(LAN)或广域网(WAN),或者可以连接到外部计算机(例如,使用因特网服务提供商通过因特网)。
本领域的普通技术人员将理解,图1-图2中的硬件可以根据实现而变化。除了图1-图2中描述的硬件之外,或者作为其替代,还可以使用其它内部硬件或外围设备,诸如闪存、等效的非易失性存储器或光盘驱动器等,同样,在不脱离所公开的主题的精神和范围的情况下,除了前面提到的SMP系统之外,还可以将示例性实施例的处理应用于多处理器数据处理系统。
如将看到的,本文描述的技术可以结合诸如图1所示的标准客户端-服务器范例来操作,其中客户端与在一个或多个机器的集合上执行的因特网可访问的基于Web的门户进行通信。终端用户操作能够访问门户并与门户交互的可连接因特网的设备(例如,台式计算机、笔记本计算机、支持因特网的移动设备等)。通常,每个客户端或服务器机器是诸如图2所示的包括硬件和软件的数据处理系统,并且这些实体通过诸如因特网、内联网、外联网、专用网或任何其它通信介质或链路等网络彼此通信。数据处理系统通常包括一个或多个处理器、操作系统、一个或多个应用以及一个或多个实用程序。数据处理系统上的应用提供对Web服务的本机支持,包括但不限于对HTTP、SOAP、XML、WSDL、UDDI和WSFL等的支持。关于SOAP、WSDL、UDDI和WSFL的信息可从万维网联盟(W3C)获得,万维网联盟负责开发和维护这些标准;关于HTTP和XML的进一步信息可从因特网工程任务组(IETF)获得。假定熟悉这些标准。
深度神经网络
作为附加背景,深度学习是一种类型的机器学习框架,其从训练数据自动学习分层数据表示而无需手工操作特征表示。深度学习方法基于称为深度神经网络(DNN)的学习架构,深度神经网络包括许多基本神经网络单元,诸如线性感知器、卷积和非线性激活函数。这些网络单元被组织为层(从几个到超过一千个),并且它们直接从原始数据训练以识别复杂的概念。较低的网络层通常对应于低级特征(例如,在图像识别中,诸如图像的角和边),而较高层通常对应于高级、语义上有意义的特征。
具体地,深度神经网络(DNN)将原始训练数据表示作为输入,并经由参数函数将其映射到输出。参数函数由网络架构和在网络架构中使用的所有神经网络单元的集合参数两者定义。每个网络单元从其连接的神经元接收输入向量,并输出将被传递到随后的层的值。例如,线性单元输出其权重参数与来自先前层的其连接的神经元的输出值之间的点积。为了增加DNN在训练数据中对复杂结构建模的能力,已经开发了不同类型的网络单元,并且将其与线性激活组合使用,诸如非线性激活单元(双曲正切、sigmoid、整流线性单元等)、最大池化和批归一化。如果神经网络的目的是将数据分类到有限的类的集合中,则输出层中的激活函数通常是softmax函数,其可以被视为类的集合的预测的类分布。
在训练DNN的网络权重之前,初始步骤是确定模型的架构,并且这通常需要非平凡的域专业知识和工程工作。给定网络架构,网络行为由网络参数θ的值确定。更正式地,令D={xi,zi}T i=1为训练数据,其中zi∈[0,n-1]为xi的基准真值标签,优化网络参数以基于损失函数使预测的类标签与基准真值标签之间的差异最小化。当前,用于训练DNN的最广泛使用的方法是反向传播算法,其中通过从输出层通过整个网络传播预测损失的梯度来更新网络参数。最常用的DNN是前馈神经网络,其中神经元之间的连接不形成环路;其它类型的DNN包括循环神经网络,诸如长期短期记忆(LSTM),并且这些类型的网络在建模序列数据中是有效的。
正式地,DNN在文献(Xu等人)中通过函数g:X→Y描述,其中X是输入空间,并且Y是表示分类集的输出空间。对于作为X的元素的样本x,g(x)=fL(FL-1(…((f1(x)))),每个fi表示层,并且FL是最后输出层,最后输出层通过softmax函数创建从隐藏空间到输出空间(类标签)的映射,softmax函数输出范围[0,1]中的实数的向量,这些实数相加达到1。softmax函数的输出是输入x在C个不同的可能输出类上的概率分布。
图3描述了代表性的DNN 300,有时称为人工神经网络。如所描绘的,DNN 300是互连的节点(神经元)的组,其中每个节点303表示人工神经元,并且线305表示从一个人工神经元的输出到另一个人工神经元的输入的连接。在DNN中,每个神经元的输出是通过其输入之和的一些非线性函数来计算的。神经元之间的连接被称为边缘。神经元和边缘通常具有随着学习的进行而调整的权重。该权重增加或减少连接处的信号的强度。如所描绘的,在DNN300中,通常神经元被聚集在层中,并且不同的层可以对其输入执行不同的变换。如所描绘,信号(通常为实数)经由横穿一个或一个以上中间层(隐藏层)304而从第一层(输入层)302行进到最后一层(输出层)306。隐藏层304提供从输入层302提取特征的能力。如图3所示,存在两个隐藏层,但这不是限制。通常,隐藏层的数量(以及每层中神经元的数量)是网络正在解决的问题的函数。在隐藏层中包括太多神经元的网络可能过度拟合,并因此记忆输入模式,从而限制了网络的泛化(generalize)的能力。另一方面,如果在隐藏层中存在太少的神经元,则网络不能表示输入空间特征,这也限制了网络的泛化能力。通常,网络越小(神经元和权重越少),网络越好。
使用训练数据集来训练DNN 300,从而导致生成与经训练的DNN相对应的权重的集合。正式地,训练集包含N个标记的输入,其中第i个输入被表示为(xi,yi)。在训练期间,与每个层相关的参数被随机初始化,并且输入样本(xi,yi)通过网络被馈送。网络的输出是与第i个样本相关联的预测g(xi)。为了训练DNN,用损失函数J(g(xi),yi)对预测的输出g(xi)和其真实标签yi之间的差进行建模,将损失函数反向传播到网络中以更新模型参数。
图4描绘了作为部署的系统402的前端部署的DNN 400。在一个示例场景中,所部署的系统是电动车辆(EV)404的自主驾驶系统。自主驾驶系统是各种组件或系统的复杂组合,并且其中汽车的感知、决策和操作由电子设备和机器而不是人类驾驶员来执行。在此上下文中,DNN 400通常用于感知(例如,道路和交通可视化),以及用于在车辆的主动操作期间做出决策。该使用情况仅仅是DNN驱动部署的系统的示例,但是不应当将其视为限制本公开。
威胁模型
如本文所使用的,“对抗输入”是由对抗者以从目标分类器(DNN)产生不正确的输出为目标而提供的输入。自从Szegedy等人发现神经网络易受攻击样本影响以来,对抗攻击已经成为研究的主题。例如,Goodfellow等人提出了快速梯度符号方法(FGSM),其是非目标(untargeted)攻击,它线性化成本函数并且解决最大化受到Linfty约束的成本以引起错误分类的扰动。Moosavi-Dezfoooli等人提出了DeepFool,这是一种通过最小化L2范数来搜索对抗样品的非目标技术。Papernot等人提出了用于目标对抗图像生成的基于Jacobian的显著性图方法(JSMA),其通过使用DNN模型的Jacobian梯度矩阵迭代地扰动具有高对抗显著性分数的图像像素。攻击的目标是增加目标类的像素的显著性分数。最近,Carlini等人开发了一种新的利用L2范数的基于目标梯度的对抗技术。这种方法已经证明比使用最小扰动的现有方法好得多的成功率。
用于检测对抗攻击的框架
以上述内容作为背景,现在描述本公开的技术。如上所述,该技术源自对一般的对抗攻击的本质的洞察,即,这样的攻击通常仅保证DNN中的最终目标标签,而中间表示的标签不被保证。根据本公开,然后利用该不一致性作为存在对DNN的对抗攻击的指示符。相关的洞察是,即使对于最后的(输出)DNN层,对抗攻击也仅保证目标对抗标签,而忽略其他中间(或次级)预测之间的相关性。典型地,中间预测是在DNN内的中间(通常隐藏)层处存在的预测。然后,将该附加的不一致性用作对抗攻击的进一步(或次级)指示符(或确认)。因此,检测技术优选地检查DNN本身以提供攻击指示符。
在典型的使用情况下,DNN与部署的系统相关联。在检测到对抗攻击时,然后采取关于所部署的系统的给定动作。给定动作的性质是实现特定的,但是包括但不限于发出通知、防止对抗者提供被确定为对抗输入的输入、采取动作以保护所部署的系统、采取动作以重新训练或以其他方式保护(加固)DNN、对对抗者进行沙箱化等等。
图5描绘本公开的基本技术的过程流程。该技术假定存在DNN和相关联的部署的系统。在一个实施例中,一种用于检测对DNN或者更一般地针对部署的系统的对抗攻击的方法在DNN的训练期间开始。在步骤500,通过将所有(或基本上所有)的训练数据集馈送到网络来启动训练。在步骤502,记录DNN的多个层(逐层激活)中的每一个的中间表示。不需要为每个层记录中间表示,并且用于特定层的中间表示可能就足够了。在步骤504,并且对于每个中间表示,并且在一个实施例中,训练单独的机器学习模型(分类器)。机器学习模型确定每个中间表示的标签,并且它可以通过诸如k最近邻(k-NN)、另一DNN等的分类算法来实现。在该实施例中,步骤504为每个中间表示生成相应的标签阵列(label array)的集合,其中标签阵列包括由机器学习模型为不同输入分配的用于中间表示的标签的集合。在为中间表示生成相应的标签阵列之后,在步骤506,相应的标签阵列的集合然后被用于训练离群值检测模型。训练离群值检测模型以输出最终的类预测,以及关于潜在的对抗输入的存在与否的指示符。在步骤508,并且假设相关联的部署的系统,可以执行测试以确定是否针对给定输入或事件检测到对抗攻击。如果没有检测到对抗攻击,则不采取动作。然而,如果步骤508的结果指示了对抗攻击,则该过程在步骤510通过响应于对抗攻击的检测而采取动作来继续。这完成了基本处理。
在替代实施例中,计算逐层激活,并且在已经训练DNN之后训练单独的机器学习模型。在这种情况下,可以省略上述步骤500。
上述技术有时在本文中被称为确定标签一致性,因为机器学习模型通过评估最终目标标签与中间表示的(一个或多个)标签之间的不一致性来生成标签阵列。根据本文的方法,除了其他优点之外,内部标签一致性提供了一种检测对抗攻击的稳健方式,其避免了已知技术的缺陷和计算低效,即,对抗训练、输入预处理和不同的模型加固。
图6再次在非限制性实施例中描绘DNN 600的上述过程。如上所述,DNN 600接收训练数据集602。在用训练数据集602训练DNN期间,然后通过评估内部激活,即中间(隐藏)层的相应状态,来训练一个或多个模型604。如上所述,训练本身不是该方法的要求。因此,并且如所描绘的,DNN具有第一隐藏层(层1),并且通过模型604A来对该层的内部激活(状态)进行建模。更正式地,对于每个输入i,生成标签阵列[li1,li2,…lin],其中lin表示第n层处的输入i的标签。在该示例中,DNN还具有第二隐藏层(层2),并且该层的内部激活(状态)由模型604B建模。优选地,尽管不是必需的,模型604A和604A被集成到聚集模型或分类器606中。分类器对应于上文在图5的过程流程中描述的离群值检测模型。已经从原始训练数据集602和由一个或多个模型604定义的标签衍生地训练的分类器606然后提供分类作为其输出。如上所述,通常分类是对特定数据输入的预测(内部状态的聚集预测),以及该输入是否是对抗输入的指示。
如上所述,DNN通常包括许多附加的中间(隐藏)层。每个中间层可以具有相关联的模型604,但这不是必需的。模型中的各个模型也可用于在优选方法中由模型606提供的预测和对抗输入分类。换句话说,优选地,分类器基于嵌入在模型604中的聚集内部激活知识来动作。
图6还描绘了进一步的优化,其在本文中有时被称为相关性一致性检查。具体地,在DNN的最后一层中可能存在一个或多个神经元,其被确定或被视为对扰动过度敏感。因此,根据该示例实施例,假设DNN 600的最后一层中的神经元608之一是这样的神经元。根据该优化,该神经元被去激活(deactivate)/忽略,并且最后一层中的剩余神经元的值被用于训练单独的分类器(或用于增强分类器606)以提供针对(一个或多个)对抗输入的进一步的相关性一致性检查。本质上,该分类器将基于其它标签之间的相关性对输入数据进行分类。如果真实标签与来自经训练的分类器的标签不同,则输入数据很可能是对抗攻击。
因此,如上所述,本文中的技术优选地使用中间(层)表示的标签(已经使用原始训练数据集训练)来检测对抗攻击,并且该技术利用了最终目标标签与中间表示的标签(在训练之后存在)之间的不一致性也可以提供关于DNN随后接收对抗输入的有用指示符的概念。另外,并且因为即使对于最后的DNN层,对抗攻击也仅保证目标对抗标签,所以该技术优选地还检查某些神经元的(最后一层中的)其他标签之间的相关性,以提供对抗攻击的进一步指示。因此,本文的技术利用跨层的模型标签一致性,以及(可选地)跨最后一层中的标签的相关性一致性610作为对抗攻击指示符。
更一般地,本文的技术是对现有防御系统的补充。
本公开的一个或多个方面(例如,用于产生离群值检测模型的初始DNN训练)可以例如由第三方作为服务来实现。本主题可以在提供基于云的计算、数据存储或相关服务的数据中心内或与其相关联地实现。
在典型的使用情况中,SIEM或其他安全系统具有与其相关联的接口,该接口可用于向经训练的模型及其相关联的离群值检测模型发出API查询,并接收对这些查询的响应,包括对抗输入的响应指示符。如图1所示的客户端-服务器体系结构可用于该目的。
本文的方法被设计为按需实现,或者以自动化方式实现。
对用于模型训练或用于标识对抗输入的服务的访问可经由任何合适的请求-响应协议或工作流来执行,使用或不使用API。
本公开中描述的功能可以整体或部分地实现为独立的方法,例如由硬件处理器执行的基于软件的功能,或者其可以作为受管理的服务(包括作为经由SOAP/XML接口的web服务)而可用。本文描述的特定硬件和软件实现细节仅用于说明性目的,而不意味着限制所描述的主题的范围。
更一般地,在所公开的主题的上下文中的计算设备每个都是包括硬件和软件的数据处理系统(诸如图2中所示),并且这些实体通过诸如因特网、内联网、外联网、专用网络或任何其它通信介质或链路的网络彼此通信。数据处理系统上的应用提供对Web和其它已知服务和协议的本机支持,包括但不限于对HTTP、FTP、SMTP、SOAP、XML、WSDL、UDDI和WSFL等的支持。关于SOAP、WSDL、UDDI和WSFL的信息可从万维网联盟(W3C)获得,万维网联盟负责开发和维护这些标准;关于HTTP、FTP、SMTP和XML的进一步信息可从因特网工程任务组(IETF)获得。假定熟悉这些已知的标准和协议。
本文描述的方案可以在各种服务器侧架构中实现或结合各种服务器侧架构来实现,该服务器侧架构包括简单的n层架构、门户网站、联合系统等。本文的技术可以在松散耦合的服务器(包括基于“云”)环境中实践。
更一般地,本文描述的主题可以采取完全硬件实施例、完全软件实施例或包含硬件和软件元素两者的实施例的形式。在优选实施例中,该功能以软件实现,该软件包括但不限于固件、驻留软件、微代码等。此外,如上所述,基于身份上下文的访问控制功能可以采取可从计算机可用或计算机可读介质访问的计算机程序产品的形式,所述计算机可用或计算机可读介质提供由计算机或任何指令执行系统使用或与计算机或任何指令执行系统结合使用的程序代码。为了本说明书的目的,计算机可用或计算机可读介质可以是能够包含或存储由指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合使用的程序的任何装置。该介质可以是电、磁、光、电磁、红外或半导体系统(或装置或设备)。计算机可读介质的示例包括半导体或固态存储器、磁带、可移动计算机磁盘、随机存取存储器(RAM)、只读存储器(ROM)、硬磁盘和光盘。光盘的当前示例包括光盘-只读存储器(CD-ROM)、光盘-读/写(CD-R/W)和DVD。计算机可读介质是有形物品。
在代表性实施例中,本文描述的技术在专用计算机中实现,优选地在由一个或多个处理器执行的软件中实现。软件被维护在与一个或多个处理器相关联的一个或多个数据存储装置或存储器中,并且软件可以被实现为一个或多个计算机程序。共同地,该专用硬件和软件包括上述功能。
虽然上文描述了由某些实施例执行的操作的特定顺序,但是应当理解,这样的顺序是示例性的,因为替代实施例可以以不同的顺序执行操作、组合某些操作、重叠某些操作等。说明书中对给定实施例的引用指示所描述的实施例可包括特定特征、结构或特性,但每个实施例可不一定包括该特定特征、结构或特性。
最后,虽然已经单独描述了系统的给定组件,但是本领域普通技术人员将理解,可以在给定指令、程序序列、代码部分、执行线程等中组合或共享一些功能。
本文的技术提供对另一技术或技术领域(例如,深度学习系统、其他安全系统)的改进,以及对使用深度神经网络来促进关于那些部署的系统的命令和控制操作的部署的系统的改进。
本文描述的技术不限于与深度神经网络(DNN)模型一起使用。该方法可以扩展到任何机器学习模型,包括但不限于支持向量机(SVM)、逻辑回归(LR)模型等,其具有内部处理状态(即,隐藏权重),并且该方法还可以扩展到与基于决策树的模型一起使用。
在描述了本主题之后,我们要求保护的内容如所附权利要求所示。

Claims (9)

1.一种保护具有包括一个或多个中间层的多个层的深度神经网络(DNN)的方法,包括:
记录与中间层相关联的激活的表示;
针对一个或多个表示中的每一个,训练分类器;以及
在针对每个表示训练分类器之后,使用从至少一个或多个表示训练的分类器来检测深度神经网络上的对抗输入。
2.如权利要求1所述的方法,其中训练分类器生成标签阵列的集合,标签阵列是用于与中间层相关联的激活的表示的标签的集合。
3.如权利要求2所述的方法,其中使用分类器还包括将相应的标签阵列的集合聚集到离群值检测模型中。
4.如权利要求3所述的方法,其中离群值检测模型生成预测,连同给定输入是否是对抗输入的指示符。
5.如权利要求4所述的方法,还包括响应于检测到对抗攻击而采取动作。
6.如权利要求5所述的方法,其中,所述动作是以下之一:发出通知,防止对抗者提供被确定为对抗输入的一个或多个附加输入,采取动作以保护与DNN相关联的部署的系统,采取动作以重新训练或加固DNN。
7.如权利要求1所述的方法,还包括:
去激活最后DNN层处的一个或多个神经元;
使用来自最后DNN层中的一个或剩余神经元的值的集合来生成附加分类器;以及
使用附加分类器来确认对抗输入的检测。
8.一种装置,包括:
处理器;
计算机存储器,其保持由处理器执行以保护具有包括一个或多个中间层的多个层的深度神经网络(DNN)的计算机程序指令,计算机程序指令被配置为实现权利要求1-7中的一项中的步骤。
9.一种非暂时性计算机可读介质中的计算机程序产品,用于在数据处理系统中使用以保护具有包括一个或多个中间层的多个层的深度神经网络(DNN),计算机程序产品保持计算机程序指令,计算机程序指令在由数据处理系统执行时被配置为实现权利要求1-7中的一项中的步骤。
CN202111325071.5A 2020-11-17 2021-11-10 检测深度神经网络(dnn)上的对抗攻击 Pending CN114519185A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/950,684 US12045713B2 (en) 2020-11-17 2020-11-17 Detecting adversary attacks on a deep neural network (DNN)
US16/950,684 2020-11-17

Publications (1)

Publication Number Publication Date
CN114519185A true CN114519185A (zh) 2022-05-20

Family

ID=78806062

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111325071.5A Pending CN114519185A (zh) 2020-11-17 2021-11-10 检测深度神经网络(dnn)上的对抗攻击

Country Status (5)

Country Link
US (1) US12045713B2 (zh)
JP (1) JP2022080285A (zh)
CN (1) CN114519185A (zh)
DE (1) DE102021125856A1 (zh)
GB (1) GB2601898B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11893111B2 (en) * 2019-11-26 2024-02-06 Harman International Industries, Incorporated Defending machine learning systems from adversarial attacks
US11891195B2 (en) * 2020-07-29 2024-02-06 The Boeing Company Mitigating damage to multi-layer networks
US11818147B2 (en) * 2020-11-23 2023-11-14 Fair Isaac Corporation Overly optimistic data patterns and learned adversarial latent features
US11785024B2 (en) * 2021-03-22 2023-10-10 University Of South Florida Deploying neural-trojan-resistant convolutional neural networks
US20220318383A1 (en) * 2021-04-05 2022-10-06 Mcafee, Llc Methods and apparatus for malware classification through convolutional neural networks using raw bytes

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190238568A1 (en) * 2018-02-01 2019-08-01 International Business Machines Corporation Identifying Artificial Artifacts in Input Data to Detect Adversarial Attacks
US20210342652A1 (en) * 2020-04-30 2021-11-04 Bae Systems Information And Electronic Systems Integration Inc. Anomaly detection system using multi-layer support vector machines and method thereof

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040059947A1 (en) 2001-12-12 2004-03-25 Lee Susan C. Method for training a hierarchical neural-network intrusion detector
US20080083029A1 (en) 2006-09-29 2008-04-03 Alcatel Intelligence Network Anomaly Detection Using A Type II Fuzzy Neural Network
US9521158B2 (en) 2014-01-06 2016-12-13 Cisco Technology, Inc. Feature aggregation in a computer network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190238568A1 (en) * 2018-02-01 2019-08-01 International Business Machines Corporation Identifying Artificial Artifacts in Input Data to Detect Adversarial Attacks
US20210342652A1 (en) * 2020-04-30 2021-11-04 Bae Systems Information And Electronic Systems Integration Inc. Anomaly detection system using multi-layer support vector machines and method thereof

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
NICHOLAS CARLINI, DAVID WAGNER: "Adversarial Examples Are Not Easily Detected: Bypassing Ten Detection Methods", ARXIV:1705.07263, 1 November 2017 (2017-11-01), pages 6 - 8 *
张嘉楠;赵镇东;宣晶;常晓林: "深度学习对抗样本的防御方法综述", 网络空间安全, vol. 10, no. 8, 25 August 2019 (2019-08-25), pages 2 - 4 *

Also Published As

Publication number Publication date
GB202115088D0 (en) 2021-12-08
GB2601898A (en) 2022-06-15
GB2601898B (en) 2023-03-22
US20220156563A1 (en) 2022-05-19
DE102021125856A1 (de) 2022-05-19
JP2022080285A (ja) 2022-05-27
US12045713B2 (en) 2024-07-23

Similar Documents

Publication Publication Date Title
US12045713B2 (en) Detecting adversary attacks on a deep neural network (DNN)
Chakraborty et al. A survey on adversarial attacks and defences
Wicker et al. Feature-guided black-box safety testing of deep neural networks
Cheng et al. Maximum resilience of artificial neural networks
Pathak et al. Feature selection for image steganalysis using levy flight-based grey wolf optimization
Huang et al. Safety verification of deep neural networks
EP3572985A1 (en) System and method for generating explainable latent features of machine learning models
US11176456B2 (en) Pre-training neural networks using data clusters
CN111667049A (zh) 量化深度学习计算系统对对抗性扰动的脆弱性
Guo et al. Practical poisoning attacks on neural networks
US8660973B1 (en) Systems and methods for cognition-based processing of knowledge
Lin et al. Incorporated risk metrics and hybrid AI techniques for risk management
CN116348879A (zh) 对抗性插值后门检测
Ghanbarzadeh et al. A novel network intrusion detection method based on metaheuristic optimisation algorithms
Vinaykumar et al. Optimal guidance whale optimization algorithm and hybrid deep learning networks for land use land cover classification
Arul Deep learning methods for data classification
Haffar et al. Explaining image misclassification in deep learning via adversarial examples
Sarathkumar et al. Enhancing intrusion detection using coati optimization algorithm with deep learning on vehicular Adhoc networks
Aishath Murshida et al. Survey on artificial intelligence
Abdel-Basset et al. Responsible graph neural networks
CA2940216C (en) Systems and methods for cognition-based processing of knowledge
Dmitrenko Dnn model extraction attacks using prediction interfaces
YANG et al. Orchestrating development lifecycle of machine learning based IoT applications: A survey
Shah et al. Data-Free Model Extraction Attacks in the Context of Object Detection
Zeng et al. Detection of adversarial examples based on the neurons distribution

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination