CN111373416A - 通过离散神经网络输入来增强神经网络的安全性 - Google Patents

通过离散神经网络输入来增强神经网络的安全性 Download PDF

Info

Publication number
CN111373416A
CN111373416A CN201880075708.XA CN201880075708A CN111373416A CN 111373416 A CN111373416 A CN 111373416A CN 201880075708 A CN201880075708 A CN 201880075708A CN 111373416 A CN111373416 A CN 111373416A
Authority
CN
China
Prior art keywords
network
input
neural network
discrete
value
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.)
Granted
Application number
CN201880075708.XA
Other languages
English (en)
Other versions
CN111373416B (zh
Inventor
奥克·罗伊
伊恩·古德费洛
雅各布·巴克曼
科林·亚伯拉罕·拉费尔
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of CN111373416A publication Critical patent/CN111373416A/zh
Application granted granted Critical
Publication of CN111373416B publication Critical patent/CN111373416B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • 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

Abstract

用于通过离散神经网络输入来增加神经网络的安全性的方法、系统和装置,包括在计算机存储介质上编码的计算机程序。该方法之一包括:接收对于神经网络的网络输入;使用离散化层来处理网络输入,其中,离散化层被配置成生成离散网络输入,该离散网络输入包括针对网络输入中的数值中的每一个的相应的离散向量;和使用多个附加神经网络层来处理离散网络输入以生成网络输入的网络输出。

Description

通过离散神经网络输入来增强神经网络的安全性
相关申请的交叉引用
本申请要求于2017年10月27日提交的美国专利申请序列号62/578,333的优先权,其全部内容通过引用合并于此。
背景技术
本说明书涉及使用神经网络处理输入。
神经网络是采用一个或多个层的非线性单元来针对接收到的输入预测输出的机器学习模型。一些神经网络除了包括输出层之外还包括一个或多个隐藏层。每个隐藏层的输出被用作网络中的下一层的输入,所述下一层即下一隐藏层或输出层。网络的每个层根据相应的参数集的当前值根据接收到的输入生成输出。
一些神经网络是递归神经网络。递归神经网络是接收输入序列并根据该输入序列生成输出序列的神经网络。特别地,递归神经网络可在当前时间步计算输出时使用来自前一时间步的网络的内部状态中的一些或全部。
发明内容
本说明书描述了一种系统,该系统被实现为在一个或多个位置中的一个或多个计算机上的计算机程序,该系统使用包括离散化层的深度神经网络来处理输入。特别地,离散化层是深度神经网络的输入层,并且被配置成为针对对神经网络的网络输入中的每个数值生成相应的离散向量。然后网络输入的离散向量由神经网络中的其余层处理以生成网络输出,例如,替代直接使用其余层来处理网络输入。
例如,当神经网络输入是包括针对图像中的像素中的每一个像素的一个或多个强度值(或“颜色值”)的图像时,在图像由其余神经网络层处理以生成网络输出,例如,对图像进行分类或检测图像中对象的位置之前,离散化层针对强度值中的每一个生成相应的离散向量。
可在特定实施例中实现本说明书中描述的主题以实现以下优点中的一个或多个。
通过将如本说明书中所描述的离散化层合并到神经网络中,该神经网络变得较不容易受到对抗性攻击影响。当恶意攻击者有意向神经网络提交导致不期望的表现——即,由神经网络生成不正确的输出——的输入时,就会发生对抗性攻击。因此,改善包括神经网络的计算机系统的安全性。离散化层执行的操作降低对于对抗性攻击的易受影响性,而不会不利地影响神经网络的性能。特别地,因为离散化层生成的离散向量保留网络输入中数值之间的相对距离,所以网络能够在各种机器学习任务上保持高性能,同时也变得较不易受到对抗性攻击影响。
在下面的附图和描述中阐述本说明书中描述的主题的一个或多个实施例的细节。根据说明书、附图和权利要求书,主题的其它特征、方面和优点将变得显而易见。
附图说明
图1示出示例神经网络系统。
图2是用于使用包括离散化层的神经网络来处理网络输入的示例过程的流程图。
图3是用于生成输入数值的离散向量的示例过程的流程图。
图4示出示例输入值的示例变换表示。
在各个附图中的相似的附图标记和标号指示相似的元件。
具体实施方式
本说明书通常描述使用深度神经网络处理网络输入的系统,该深度神经网络包括离散化层以生成网络输出。
神经网络可以被配置成接收任何种类的数字数据输入作为网络输入,并基于网络输入生成任何种类的网络输出,即,任何种类的得分、分类或回归输出。
例如,神经网络可以是图像处理神经网络。特别地,如果对神经网络的输入是图像或已经从图像中提取的特征,则神经网络针对给定图像生成的输出可能是对象类别集合中的每一个对象类别的得分,每个得分表示该图像包含属于该类别的对象的图像的估计可能性。作为另一个示例,网络输出可以识别输入图像中可能包括对象的图像的位置,例如,边界框。作为另一示例,网络输出可以是定义修改的图像——例如,已经从输入图像生成的图像——的分布。作为另一示例,网络输出可以定义输入图像的分割图。
作为另一个示例,如果对神经网络的输入是互联网资源(例如,网页)、文档或文档的部分或从互联网资源、文档或文档的部分中提取的特征,则由神经网络针对给定互联网资源、文档或文档的部分生成的输出可能是主题集合中的每个主题的得分,每个得分表示互联网资源、文档或文档部分与该主题有关的估计可能性。
作为另一示例,如果对神经网络的输入是特定广告的闪现(impression)上下文的特征,则由神经网络生成的输出可以是表示该特定广告将被点击的估计可能性的得分。
作为另一示例,如果对神经网络的输入是针对用户的个性化推荐的特征,例如,表征推荐的上下文的特征,例如,表征用户先前采取的动作的特征,则由神经网络生成的输出可以是内容项目集合中的每一个内容项目的得分,每个得分表示用户将对被推荐该内容项目赞同地进行响应的估计可能性。
作为另一个示例,如果对神经网络的输入是一种语言的文本序列,则由神经网络生成的输出可能是另一语言的文本段集合中的每一个文本段的得分,每个得分表示另一语言的该文本段是输入文本到另一语言的正确翻译的估计可能性。
作为另一示例,如果对神经网络的输入是表示口头话语的序列,则由神经网络生成的输出可能是文本段集合中每一个文本段的得分,每个得分代表该文本段是话语的正确转录的估计可能性。
图1示出示例性神经网络系统100。神经网络系统100是被实现为一个或多个位置中的一个或多个计算机上的计算机程序的系统的示例,其中以下描述的系统、组件和技术被实现。
如上所述,系统100接收网络输入102,并使用神经网络110处理网络输入102以生成网络输出114。每个网络输入102通常包括来自给定数值空间的多个数值。
神经网络110包括离散化层104和附加神经网络层108。离散化层104被配置成接收网络输入102并处理网络输入102以生成离散网络输入106。然后附加神经网络层108被配置成处理离散化层104生成的离散网络输入106以生成网络输出114。
附加神经网络层108的数量和体系结构可以取决于神经网络被配置成执行的任务——即,取决于神经网络被配置成接收的网络输入的种类和神经网络被配置成生成的网络输出的种类——而变化。
例如,当输入102是图像时,附加神经网络层108可以是深度卷积神经网络,其被配置成从输入图像生成网络输出。作为另一个示例,对于排序处理任务,附加神经网络层可以是循环神经网络或基于自注意力的神经网络。
离散化层104被配置成变换网络输入102以使神经网络110更能抵抗对抗性攻击,并增强系统100的安全性。
如上所述,当恶意攻击者故意向神经网络提交导致不期望的表现——即,由神经网络生成的不正确的输出——的输入时,就会发生对抗性攻击。在许多情况下,输入被从实际输入最低限度地扰乱,目的是使神经网络做出不正确的预测,即,与针对对应的实际输入本将作出的预测不同的预测。为了防止恶意提交的输入导致错误预测并使神经网络110对对抗性攻击更鲁棒,离散化层104对网络输入102应用不可微分且强非线性变换,以生成离散输入106。
更具体地,不是用一些低位深度代替实数,即,不是像一些常规方法那样量化网络输入102中的数值,而是离散化层104用二进制向量(在本说明书中称为“离散向量”)代替网络输入102中的每个数值以生成离散输入106。
实数的不同值激活二进制向量的不同位。因此,将给定向量与神经网络的参数相乘会导致实际上使用网络110的不同参数的不同输入值。因此,如下文将更详细描述的那样,离散化通过更改使用网络110的哪些参数来抵御对抗性示例,并且如果分区数量低,也可丢弃信息。
然而,由离散化层104执行的离散化还保留数字输入之间的相对距离,从而防止神经网络100中包括层104不利地影响神经网络100的性能,即,防止神经网络100生成的预测的精度由于修改网络100以包括层104而退化。
下面将参考图2至图4更详细地描述离散化层104的操作。
图2是用于使用包括离散化层的神经网络来处理网络输入的示例过程200的流程图。为了方便起见,将过程200描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,神经网络系统,例如,经适当编程的图1的神经网络系统100,可以执行过程200。
系统接收网络输入(步骤202)。网络输入包括多个数值,每个数值都属于可能的网络输入空间。例如,当网络输入是RGB图像时,网络输入是H x W x 3数值张量,其中H和W分别是按照像素的图像的高度和宽度。数值可以是浮点值,或者可以用不同的数字格式表示。
系统使用离散化层处理网络输入(步骤204)。离散化层被配置成处理网络输入以生成离散网络输入,该离散网络输入包括针对网络输入中的每个数值的相应的离散向量。因此,在已简化的示例中,当每个离散向量具有三个条目并且输入是H x W x 3图像时,离散网络输入包括针对H x W x 3图像中的每个数值的相应的三维向量。例如,离散网络输入可以被表示为H x W x 9张量,其中9个z维度中的前三个维度对应于R颜色值的离散向量,9个z维度中的接下来的三个维度对应于G颜色值的离散向量,并且9个z维度中的最后三个维度对应于B颜色值的离散向量。
更具体地,每个离散向量对于可能数值空间中的多个分区中的每个分区具有相应的条目。作为已简化的示例,如果输入是0.0到1.0范围内的实值,并且存在三个分区,则离散向量可以包括分区[0.0,1/3)的一个条目、分区[1/3,2/3]的另一条目以及分区(2/3,1.0]的另一条目。通常,离散向量中的条目从该空间的最低分区的条目到该空间的最高分区的条目被排序。继续上面的示例,然后离散值将如下表达:{分区[0.0,1/3)的条目,分区[1/3,2/3]的条目,分区(2/3,1.0]的条目}。
下面参考图3更详细地描述为网络输入中的每个数值生成离散向量。
系统使用神经网络中的附加或其余神经网络层处理离散网络输入,以生成网络输出(步骤206)。因此,附加神经网络层处理离散网络输入而不是网络输入。处理离散网络输入而不是网络输入使神经网络较不易受到对抗性攻击影响,并且由于生成离散网络输入的方式,不会不利地影响神经网络的性能。
图3是用于生成数值的离散向量的示例过程300的流程图。为了方便起见,将过程300描述为由位于一个或多个位置的一个或多个计算机的系统执行。例如,神经网络系统中的离散化层,例如,已适当地编程的图1的神经网络系统100的离散化层104,可以执行过程100。
离散化层可以对网络输入中的每个数值执行过程300,以为每个数值生成相应的离散向量。
离散化层识别数值所属于的分区(步骤302)。
离散化层在数值的离散向量中,将所识别的分区的条目之前的每一个条目设置为第一值(步骤304)。例如,第一值可以为0。
离散化层在数值的离散向量中,将所识别的分区的条目设置为第二值(步骤306)。例如,第二值可以是1。
离散化层在数值的离散向量中,将所识别的分区之后的每一个条目设置为第二值(步骤308)。
因此,离散向量可以被认为是二进制向量,因为向量中的每个条目都被设置为第一值或第二值。
在第一值为0且第二值为1的特定示例中,数值的已生成的离散向量在与所识别的分区之前的任何条目相对应的条目处具有0,并且在所识别的分区的条目处和之后的条目处具有1。
图4示出示例输入值的示例变换表示。特别地,图4示出使用三种技术:量化(“量化的”)、独热编码(“离散的(独热的)”)和本说明书中描述的技术(“离散的(温度计)”)来生成的实值输入的变换表示。
以0.13的实值输入为例,量化将该值变换成单个值.15。
独热编码将该值变换成独热编码向量[0100000000],其仅具有对应于.13的分区的单个非零值,并且对于所有其他值具有0。但是,从图4的示例可以看出,无论何时两个实值属于不同的分区,则实数值之间的相对距离被独热编码失去,即,因为只要对应的实值属于不同的分区,则任何两个独热编码向量之间的距离是相同的。另一方面,所描述的技术将该值变换成离散向量[0111111111],该离散向量不仅在对应于.13的分区的条目处而且在该分区的条目之后的所有条目处都具有非零值。此方案保留实值之间的相对距离。特别地,两个离散向量之间的距离取决于对应实值的两个分区的接近程度。
更具体地,在图4的示例中,输入值的输入空间为[0.00,1.00],并且将输入空间分区为十个均匀间隔的分区。因此,独热编码和温度计编码的离散向量都具有十个条目。因为值.13落在十个均匀间隔的分区中的第二分区中,所以独热编码向量在独热编码向量的第二条目处具有单个非零值。另一方面,温度计编码离散向量不仅在向量的第二条目处而且在跟随向量中的第二条目的所有条目处都具有非零值。
在一些实施方式中,神经网络系统使用对抗性训练来训练神经网络,以确定神经网络中的附加神经网络层的参数的所训练的值(离散神经网络层不具有任何可训练参数),并且增强神经网络对于对抗性攻击的鲁棒性。作为示例对抗性训练技术的一部分,系统可以对不同的训练网络输入重复执行以下操作。特别地,系统可以获得网络输入的目标网络输出,其中目标网络输出是应由神经网络针对网络输入来生成的输出。该系统可以例如通过对网络输入应用对抗性扰动来从网络输入生成对抗性输入,并且使用神经网络来处理训练网络输入和对抗性输入两者,以生成训练网络输入和对抗性输入的网络输出。
系统然后可以确定目标函数的关于神经网络的参数的梯度,该梯度取决于(i)目标网络输出与训练网络输入的网络输出之间的误差,以及(ii)目标网络输出与对抗性输入的网络输出之间的误差;并使用梯度调整参数的当前值。例如,目标函数可以是最大似然目标函数或交叉条目损失函数。
本说明书连同系统和计算机程序组件一起使用术语“被配置”。对于要被配置成执行特定操作或动作的一个或多个计算机的系统意指系统已在其上安装了在操作中使该系统执行这些操作或动作的软件、固件、硬件或软件、固件、硬件的组合。对于要被配置成执行特定操作或动作的一个或多个计算机程序意指该一个或多个程序包括指令,所述指令当由数据处理装置执行时,使该装置执行操作或动作。
本说明书中描述的主题和功能操作的实施例可用数字电子电路、用有形地具体实现的计算机软件或固件、用包括本说明书中公开的结构及其结构等同物的计算机硬件或者用它们中的一个或多个的组合来实现。本说明书中描述的主题的实施例可作为一个或多个计算机程序被实现,所述一个或多个计算机程序即在有形非暂时性存储介质上编码以供由数据处理装置执行或者控制数据处理装置的操作的计算机程序指令的一个或多个模块。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行访问存储设备或它们中的一个或多个的组合。替换地或此外,可将程序指令编码在人工生成的传播信号上,该传播信号例如是机器生成的电、光或电磁信号,该传播信号被生成来对信息进行编码以用于传输到适合的接收器装置以供由数据处理装置执行。
术语“数据处理装置”指代数据处理硬件并且包含用于处理数据的所有种类的装置、设备和机器,作为示例包括可编程处理器、计算机或多个处理器或计算机。装置还可以是或者进一步包括专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。装置除了包括硬件之外还可以可选地包括为计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。
也可以被称为或者描述为程序、软件、软件应用、app、模块、软件模块、脚本或代码的计算机程序可用包括编译或解释语言或声明或过程语言的任何形式的编程语言编写;并且它可被以任何形式部署,包括作为独立程序或者作为模块、组件、子例行程序或适合于在计算环境中使用的其它单元。程序可以但是不必对应于文件系统中的文件。程序可以被存储在保持其它程序或数据的文件的一部分中,例如存储在标记语言文档中的一个或多个脚本;在专用于所述程序的单个文件中或者在多个协调文件中,例如存储代码的一个或多个模块、子程序或部分的文件。可将计算机程序部署成在一个计算机上或者在位于一个站点处或者分布在多个站点上并通过数据通信网络互连的多个计算机上执行。
在本说明书中,术语“数据库”广泛地用于指代任何数据集:数据不需要被以任何特定方式构造,或者根本不构造,并且它可被存储在一个或多个位置中的存储设备上。因此,例如,索引数据库可包括多个数据集,其中的每一个可以被不同地组织和访问。
类似地,在本说明书中术语“引擎”广泛地用于指代被编程来执行一个或多个具体功能的基于软件的系统、子系统或过程。通常,引擎将作为安装在一个或多个位置中的一个或多个计算机上的一个或多个软件模块或组件被实现。在一些情况下,一个或多个计算机将专用于特定引擎;在其它情况下,可在同一计算机或多个计算机上安装并运行多个引擎。
本说明书中描述的过程和逻辑流程可由执行一个或多个计算机程序的一个或多个可编程计算机执行以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程还可由例如是FPGA或ASIC的专用逻辑电路执行,或者通过专用逻辑电路和一个或多个编程计算机的组合来执行。
适合于执行计算机程序的计算机可基于通用微处理器或专用微处理器或两者,或任何其它种类的中央处理器。通常,中央处理单元将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的必要元件是用于执行或者实行指令的中央处理单元以及用于存储指令和数据的一个或多个存储设备。中央处理单元和存储器可由专用逻辑电路补充或者并入在专用逻辑电路中。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘或光盘,或者操作上被耦合以从所述一个或多个大容量存储设备接收数据或者将数据传送到所述一个或多个大容量存储设备或者两者以用于存储数据。然而,计算机不必具有这样的设备。此外,计算机可被嵌入在另一设备中,所述另一设备例如是移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制器、全球定位系统(GPS)接收器或便携式存储设备,例如通用串行总线(USB)闪存驱动器等。
适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储设备,作为示例包括半导体存储设备,例如EPROM、EEPROM和闪速存储器设备;磁盘,例如内部硬盘或可移动盘;磁光盘;以及CD ROM和DVD-ROM盘。
为了提供与用户的交互,可在计算机上实现本说明书中描述的主题的实施例,所述计算机具有用于向用户显示信息的显示设备以及用户可用来向该计算机提供输入的键盘和定点设备,所述显示设备例如是CRT(阴极射线管)或LCD(液晶显示器)监视器,所述定点设备例如是鼠标或轨迹球。其它种类的设备也可用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以任何形式接收来自用户的输入,包括声、语音或触觉输入。此外,计算机可通过向由用户使用的设备发送文档并从由用户使用的设备接收文档来与用户交互;例如,通过响应于从web浏览器接收到请求而向用户的设备上的web浏览器发送网页。另外,计算机可通过向个人设备发送文本消息或其它形式的消息并且继而从用户接收响应消息来与用户交互,所述个人设备例如是正在运行消息传送应用的智能电话。
用于实现机器学习模型的数据处理装置还可包括例如用于处理机器学习训练或生产——即推理、工作负载——的公共和计算密集部分的专用硬件加速器单元。
可使用机器学习框架来实现和部署机器学习模型。所述机器学习框架例如是TensorFlow框架、Microsoft Cognitive Toolkit框架、Apache Singa框架或Apache MXNet框架。
本说明书中描述的主题的实施例可被实现在计算系统中,所述计算系统包括后端组件,例如作为数据服务器;或者包括中间件组件,例如应用服务器;或者包括前端组件,例如具有用户可用来与本说明书中描述的主题的实现方式交互的图形用户界面、web浏览器或app的客户端计算机;或者包括一个或多个这样的后端、中间件或前端组件的任何组合。系统的组件可通过例如通信网络的任何形式或介质的数字数据通信来互连。通信网络的示例包括局域网(LAN)和广域网(WAN),例如互联网。
计算系统可包括客户端和服务器。客户端和服务器一般地彼此远离并通常通过通信网络来交互。客户端和服务器的关系借助于在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。在一些实施例中,服务器向用户设备传输例如HTML页面的数据例如以用于向与作为客户端的设备交互的用户显示数据并从该用户接收用户输入的目的。可在服务器处从设备接收在用户设备处生成的数据,例如,用户交互的结果。
虽然本说明书包含许多具体实施方式细节,但是这些不应该被解释为对任何发明的或可能要求保护的范围的限制,而是相反地被解释为对可能特定于特定发明的特定实施例的特征的描述。也可在单个实施例中组合地实现在本说明书中在单独的实施例的上下文中描述的某些特征。相反地,也可单独地或者按照任何适合的子组合在多个实施例中实现在单个实施例的上下文中描述的各种特征。此外,尽管特征可能在上面被描述按照某些组合起作用并且甚至最初被如此要求保护,但是来自要求保护的组合的一个或多个特征可在一些情况下被从该组合中除去,并且所要求保护的组合可以针对子组合或子组合的变化。
类似地,虽然按照特定次序在附图中描绘并在权利要求书中记载操作,但是这不应该被理解为要求按照所示的特定次序或者按照顺序次序执行这样的操作,或者要求执行所有图示的操作以实现所预期的结果。在某些情况下,多任务处理和并行处理可以是有利的。此外,上述实施例中的各种系统模块和组件的分离不应该被理解为在所有实施例中要求这样的分离,并且应该理解的是,所描述的程序组件和系统一般地可被一起集成在单个软件产品中或者包装到多个软件产品中。
已描述了主题的特定实施例。其它实施例在所附权利要求的范围内。例如,权利要求中记载的动作可被以不同的次序执行并仍然实现所预期的结果。作为一个示例,附图中描绘的过程不一定要求所示的特定次序或顺序次序以实现所预期的结果。在一些情况下,多任务处理和并行处理可以是有利的。

Claims (9)

1.一种方法,包括:
接收对于包括离散化层的神经网络的网络输入,所述离散化层随后是多个附加神经网络层,所述网络输入包括来自可能数值空间的多个数值;
使用所述离散化层来处理所述网络输入,其中,所述离散化层被配置成生成离散网络输入,所述离散网络输入包括针对所述网络输入中的每个数值的相应的离散向量,其中,每个离散向量针对所述可能数值空间的多个分区中的每一个分区具有相应的条目,并且其中,生成所述离散网络输入包括针对每个数值:
识别该数值所属于的分区;
在该数值的离散向量中,将在所识别的分区的条目之前的每个条目设置为第一值,
在该数值的离散向量中,将所识别的分区的条目设置为第二值,以及
在该数值的离散向量中,将在所识别的分区的条目之后的每个条目设置为所述第二值;以及
使用所述多个附加神经网络层来处理所述离散网络输入,以生成所述网络输入的网络输出。
2.根据权利要求1所述的方法,其中,所述第一值为0。
3.根据权利要求1或2中的任意一项所述的方法,其中,所述第二值是正值。
4.根据权利要求3所述的方法,其中,所述第二值为1。
5.根据权利要求1-4中的任意一项所述的方法,其中,所述离散向量中的条目从所述空间的最低分区的条目到所述空间的最高分区的条目来被排序。
6.根据权利要求1-5中的任意一项所述的方法,其中,所述数值是浮点值。
7.根据权利要求1-6中的任意一项所述的方法,进一步包括:
使用对抗性训练来训练所述神经网络,包括:
获取所述网络输入的目标网络输出;
从所述网络输入生成对抗性输入;
使用所述神经网络来处理所述对抗性输入以生成所述对抗性输入的网络输出;
确定目标函数的关于所述神经网络的参数的梯度,所述梯度取决于(i)所述目标网络输出与所述网络输入的网络输出之间的误差以及(ii)所述目标网络输出与所述对抗性输入的网络输出之间的误差;以及
使用所述梯度来调整所述参数的当前值。
8.一种系统,包括一个或多个计算机和一个或多个存储指令的存储设备,所述指令在由所述一个或多个计算机执行时使所述一个或多个计算机执行根据权利要求1至7中的任意一项所述的方法的操作。
9.一个或多个存储指令的计算机存储介质,所述指令在由一个或多个计算机执行时使所述一个或多个计算机执行根据权利要求1至7中的任意一项所述的方法的操作。
CN201880075708.XA 2017-10-27 2018-10-29 通过离散神经网络输入来增强神经网络的安全性 Active CN111373416B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762578333P 2017-10-27 2017-10-27
US62/578,333 2017-10-27
PCT/US2018/058032 WO2019084556A1 (en) 2017-10-27 2018-10-29 INCREASING THE SECURITY OF NEURAL NETWORKS BY DISCRETEMENT OF NEURAL NETWORK ENTRANCES

Publications (2)

Publication Number Publication Date
CN111373416A true CN111373416A (zh) 2020-07-03
CN111373416B CN111373416B (zh) 2024-01-23

Family

ID=64362661

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880075708.XA Active CN111373416B (zh) 2017-10-27 2018-10-29 通过离散神经网络输入来增强神经网络的安全性

Country Status (4)

Country Link
US (1) US11354574B2 (zh)
EP (1) EP3701431A1 (zh)
CN (1) CN111373416B (zh)
WO (1) WO2019084556A1 (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4918618A (en) * 1988-04-11 1990-04-17 Analog Intelligence Corporation Discrete weight neural network
WO2007020456A2 (en) * 2005-08-19 2007-02-22 Axeon Limited Neural network method and apparatus
US20090271344A1 (en) * 2008-04-23 2009-10-29 Siement Aktiengesellschaft Method for computer-aided control or regualtion of a technical system
US20120323833A1 (en) * 2010-02-05 2012-12-20 Ecole Polytechnique Federale De Lausanne (Epfl) Organizing Neural Networks
US20160217368A1 (en) * 2015-01-28 2016-07-28 Google Inc. Batch normalization layers
CN106127297A (zh) * 2016-06-02 2016-11-16 中国科学院自动化研究所 基于张量分解的深度卷积神经网络的加速与压缩方法
US20160358073A1 (en) * 2015-06-05 2016-12-08 Google Inc. Whitened neural network layers
WO2017132288A1 (en) * 2016-01-25 2017-08-03 Google Inc. Generating images using neural networks

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210158450A1 (en) * 2016-01-28 2021-05-27 State Farm Mutual Automobile Insurance Company Method for coupling trusted transmissions to automated enrollment process
EP3398114B1 (en) * 2016-02-05 2022-08-24 Deepmind Technologies Limited Compressing images using neural networks
US10248663B1 (en) * 2017-03-03 2019-04-02 Descartes Labs, Inc. Geo-visual search
US10607329B2 (en) * 2017-03-13 2020-03-31 Adobe Inc. Illumination estimation from a single image
WO2019019199A1 (en) * 2017-07-28 2019-01-31 Shenzhen United Imaging Healthcare Co., Ltd. SYSTEM AND METHOD FOR IMAGE CONVERSION
US10551297B2 (en) * 2017-09-22 2020-02-04 Saudi Arabian Oil Company Thermography image processing with neural networks to identify corrosion under insulation (CUI)

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4918618A (en) * 1988-04-11 1990-04-17 Analog Intelligence Corporation Discrete weight neural network
WO2007020456A2 (en) * 2005-08-19 2007-02-22 Axeon Limited Neural network method and apparatus
US20090271344A1 (en) * 2008-04-23 2009-10-29 Siement Aktiengesellschaft Method for computer-aided control or regualtion of a technical system
US20120323833A1 (en) * 2010-02-05 2012-12-20 Ecole Polytechnique Federale De Lausanne (Epfl) Organizing Neural Networks
US20160217368A1 (en) * 2015-01-28 2016-07-28 Google Inc. Batch normalization layers
US20160358073A1 (en) * 2015-06-05 2016-12-08 Google Inc. Whitened neural network layers
WO2017132288A1 (en) * 2016-01-25 2017-08-03 Google Inc. Generating images using neural networks
CN106127297A (zh) * 2016-06-02 2016-11-16 中国科学院自动化研究所 基于张量分解的深度卷积神经网络的加速与压缩方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ALEXEY KURAKIN ET AL.: "Adversarial machine learning at scale", pages 1 - 17 *
HONGJUN LU ET AL.: "Effective data mining using neural networks", pages 957 - 961 *
JIANCHENG JIA ET AL.: "Neural network encoding approach comparison: an empirical study", pages 38 - 41 *

Also Published As

Publication number Publication date
EP3701431A1 (en) 2020-09-02
WO2019084556A1 (en) 2019-05-02
CN111373416B (zh) 2024-01-23
US11354574B2 (en) 2022-06-07
US20200257978A1 (en) 2020-08-13

Similar Documents

Publication Publication Date Title
US10872296B2 (en) Training neural networks using a variational information bottleneck
US11087201B2 (en) Neural architecture search using a performance prediction neural network
US11934956B2 (en) Regularizing machine learning models
US10713491B2 (en) Object detection using spatio-temporal feature maps
CN107145940B (zh) 压缩的递归神经网络模型
CN108205699B (zh) 生成用于神经网络输出层的输出
US10521718B1 (en) Adversarial training of neural networks
KR102170199B1 (ko) 비교 세트를 사용한 입력 예시들 분류
US20180189950A1 (en) Generating structured output predictions using neural networks
KR20200110400A (ko) 학습 데이터 증강 정책
EP3602412A1 (en) Multitask neural network systems
CN111602148A (zh) 正则化神经网络架构搜索
EP3574454A1 (en) Learning neural network structure
US10776670B2 (en) Imagination-based agent neural networks
WO2018093926A1 (en) Semi-supervised training of neural networks
US20240127058A1 (en) Training neural networks using priority queues
EP3371747A1 (en) Augmenting neural networks with external memory
CN113348472A (zh) 具有软内核选择的卷积神经网络
CN113841157A (zh) 通过使用局部线性度正则化训练更安全的神经网络
CN113785314A (zh) 使用标签猜测对机器学习模型进行半监督训练
CN117751368A (zh) 隐私敏感神经网络训练
CN111373416B (zh) 通过离散神经网络输入来增强神经网络的安全性
US10482373B1 (en) Grid long short-term memory neural networks
US11409991B2 (en) Regularizing the training of convolutional neural networks

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
GR01 Patent grant
GR01 Patent grant