改进针对“对抗示例”的鲁棒性的设备和方法
文献发布时间:2023-06-19 12:19:35
本发明涉及一种用于获得对抗输入信号的方法、一种用于使用和/或训练分类器的方法、一种用于评估所述分类器的鲁棒性的方法、以及一种用于操作致动器的方法、一种计算机程序和一种机器可读存储介质、一种分类器、一种控制系统和一种训练系统。
现有技术
US10007866 BB公开了一种方法,包括:从存储器访问神经网络图像分类器,该神经网络图像分类器已经使用来自输入空间的多个训练图像进行了训练,针对多个类标记该训练图像;通过对于每个对抗图像,在输入空间中围绕训练图像之一搜索区域来计算多个对抗图像,该区域是其中神经网络是线性的区域,以找到被神经网络错误地分类成该多个类的图像;将训练图像应用于神经网络并观察神经网络的响应;使用观察到的响应计算表示输入空间的约束系统;以及进一步训练神经网络图像分类器,以至少使用对抗图像来得到改进的准确度。
Jan Hendrik Metzen、Mummadi Chaithanya Kumar、Thomas Brox、VolkerFischer的“Universal Adversarial Perturbations Against Semantic ImageSegmentation”(arXiv预印本arXiv:1704.05712v3)公开了一种用于生成对抗扰动的方法。
本发明的优点
像例如神经网络分类系统的分类器可能容易被愚弄。公知的是,可以基于深度学习的分类器可能对小扰动敏感。为了在物理世界中部署这样的系统,提供关于系统鲁棒性的证明是重要的。
可能的是相对于位于小
具有独立权利要求1的步骤的方法具有改进相对于这样的扰动的鲁棒性的优点。
发明内容
因此,在第一方面中,本发明涉及一种用于获得至分类器的对抗输入信号(x
-修改所述原始输入信号(x
-将所述经修改输入信号(x
-取决于所述投影输入信号(x
其特征在于,所述度量是至少近似Wasserstein距离。术语“将给定点投影到度量球上”可以被解释为意指“从所述度量球确定最接近所述给定点的点”。
所述至少近似Wasserstein距离可以由像例如预定义半径的预定义参数来表征。
所述Wasserstein距离难以计算,并且到目前为止还不知道如何在Wasserstein球上实行投影。
因此,提议通过在例如根据所述至少Wasserstein距离由
这使能实现了精确的解,即,其中所述至少近似Wasserstein距离是Wasserstein距离的解。方便地,所述前面提及的最小化可以通过使对应于原始问题的对偶问题最大化来获得,所述原始问题由在所述约束下的所述最小化给出,其中所述对偶问题包括对应于所述约束的朗然乘子变量。这在图13和对应的描述中详细描述。
在优选实施例中,所述至少近似Wasserstein距离是与Wasserstein距离相差熵项的Sinkhorn距离,其中对于任何一对第一分布(P)和第二分布(Q),所述熵项表征满足
已经发现,所述熵项的包含使能实现计算起来快得多的对Wasserstein球上投影的近似解。
应当注意的是,如在“Sinkhorn Distances: Lightspeed Computation ofOptimal Transportation Distances”(arXiv预印本arXiv:1306.0895vl,Marco Cuturi(2013))中所示,Sinkhorn距离实际上不是数学意义上的度量,因为可能的是在两个不相同的分布之间具有零距离。取而代之,在数学意义上,它是伪度量。
事实上,已经发现了用于通过在所述约束下求解对应于所述最小化的凸优化来确定所述投影输入信号(x
在本发明的一个另外方面中,所述对抗输入信号(x
在所述目标攻击的替代实施例中,所述对抗输入信号(x
在另外的方面中,修改所述原始输入信号(x
将参考以下各图更详细地讨论本发明的实施例。各图示出了:
图1 具有分类器的控制系统,该分类器控制其环境中的致动器;
图2 控制至少部分自主的机器人的控制系统;
图3 控制制造机器的控制系统;
图4 控制自动化个人助理的控制系统;
图5 控制访问控制系统的控制系统;
图6 控制监督系统的控制系统;
图7 控制成像系统的控制系统;
图8 用于控制分类器的训练系统;
图9 由所述训练系统实行的训练方法的流程图;
图10 图示了用于操作所述控制系统的方法的流程图;
图11 所述分类器结构的实施例;
图12 图示了用于确定所述对抗输入信号x
图13 图示了用于将经修改输入信号x
图14 图示了用于将经修改输入信号x
图15 图示了用于根据求解方程(5)的最大化值
实施例的描述
图1中示出的是致动器10在其环境20中的一个实施例。致动器10与控制系统40交互。致动器10及其环境20将被统称为致动器系统。在优选地均匀间隔的距离处,传感器30感测致动器系统的状况。传感器30可以包括若干个传感器。优选地,传感器30是拍摄环境20的图像的光学传感器。对所感测的状况进行编码的传感器30的输出信号S(或者,在传感器30包括多个传感器的情况下,每个传感器的输出信号S)被传输到控制系统40。
因此,控制系统40接收传感器信号S流。然后,它取决于传感器信号S流计算一系列致动器控制命令A,然后将该系列致动器控制命令A传输到致动器10。
控制系统40在可选的接收单元50中接收传感器30的传感器信号S流。接收单元50将传感器信号S变换成输入信号x。替代地,在没有接收单元50的情况下,每个传感器信号S可以直接取作输入信号x。例如,输入信号x可以作为来自传感器信号S的摘录给出。替代地,传感器信号S可以被处理以产生输入信号x。输入信号x包括对应于由传感器30记录的图像的图像数据。换句话说,根据传感器信号S提供输入信号x。
输入信号x然后被传递到图像分类器60,该图像分类器60例如可以由人工神经网络给出。
分类器60由参数
分类器60根据输入信号x确定输出信号y。输出信号y包括将一个或多个标签分配给输入信号x的信息。输出信号y被传输到可选的转换单元80,该转换单元80将输出信号y转换成控制命令A。致动器控制命令A然后被传输到致动器10,用于相应地控制致动器10。替代地,输出信号y可以直接取作控制命令A。
致动器10接收致动器控制命令A,被相应地控制,并实行对应于致动器控制命令A的动作。致动器10可以包括控制逻辑,该控制逻辑将致动器控制命令A变换成另外的控制命令,然后该另外的控制命令用于控制致动器10。
在另外的实施例中,控制系统40可以包括传感器30。在甚至另外的实施例中,控制系统40替代地或附加地可以包括致动器10。
在仍另外的实施例中,可以设想控制系统40控制显示器10a而不是致动器10。
此外,控制系统40可以包括处理器45(或多个处理器)和其上存储指令的至少一个机器可读存储介质46,所述指令如果被实行,则引起控制系统40实行根据本发明一个方面的方法。
图2示出了实施例,其中控制系统40用于控制至少部分自主的机器人,例如至少部分自主的车辆100。
传感器30可以包括一个或多个视频传感器和/或一个或多个雷达传感器和/或一个或多个超声波传感器和/或一个或多个LiDAR传感器和/或一个或多个位置传感器(像例如GPS)。这些传感器中的一些或全部优选但不一定集成在车辆100中。替代地或附加地,传感器30可以包括用于确定致动器系统状态的信息系统。这样的信息系统的一个示例是确定环境20中天气的当前或未来状态的天气信息系统。
例如,使用输入信号x,分类器60可以例如检测在至少部分自主的机器人附近的对象。输出信号y可以包括表征对象位于至少部分自主的机器人附近何处的信息。然后可以根据该信息确定控制命令A,例如以避免与所述检测到的对象碰撞。
优选地集成在车辆100中的致动器10可以由车辆100的制动器、推进系统、发动机、传动系或转向部给出。可以确定致动器控制命令A,使得致动器(或多个致动器)10被控制,使得车辆100避免与所述检测到的对象碰撞。检测到的对象也可以根据分类器60认为它们最有可能是什么——例如行人或树木——来被分类,并且致动器控制命令A可以取决于该分类来被确定。
在另外的实施例中,至少部分自主的机器人可以由另一个移动机器人(未示出)给出,该另一个移动机器人(未示出)可以例如通过飞行、游泳、潜水或行走来移动。该移动机器人尤其可以是至少部分自主的割草机,或者至少部分自主的清洁机器人。在所有以上实施例中,可以确定致动器命令控制A,使得移动机器人的推进单元和/或转向部和/或制动器被控制,使得移动机器人可以避免与所述标识的对象碰撞。
在另外的实施例中,至少部分自主的机器人可以由园艺机器人(未示出)给出,该园艺机器人(未示出)使用传感器30、优选光学传感器,来确定环境20中植物的状态。致动器10可以是用于喷洒化学物质的喷嘴。取决于植物的所标识种类和/或所标识状态,可以确定致动器控制命令A,以引起致动器10向植物喷洒合适量的合适化学物质。
在甚至另外的实施例中,至少部分自主的机器人可以由家用电器(未示出)给出,该家用电器(未示出)像例如洗衣机、炉子、烤箱、微波炉或洗碗机。传感器30、例如光学传感器可以检测将经历由家庭电器处理的对象的状态。例如,在家用电器是洗衣机的情况下,传感器30可以检测洗衣机内部衣物的状态。然后可以取决于检测到的衣物材料来确定致动器控制信号A。
图3中示出的是实施例,其中控制系统40用于控制制造系统200的制造机器11(例如冲压刀具、刀具或枪钻),例如作为生产线的一部分。控制系统40控制致动器10,致动器10进而控制制造机器11。传感器30可以由光学传感器给出,该光学传感器捕获例如制造产品12的特性。分类器60可以根据这些捕获的特性来确定制造产品12的状态。然后,控制制造机器11的致动器10可以取决于制造产品12的确定状态被控制,以用于制造产品12的后续制造步骤。或者,可以设想致动器10在后续制造产品12的制造期间取决于制造产品12的所确定状态被控制。
图4中示出的是实施例,其中控制系统40用于控制自动化个人助理250。传感器30可以是光学传感器,例如用于接收用户249的手势的视频图像。替代地,传感器30也可以是音频传感器,例如用于接收用户249的语音命令。
控制系统40然后确定用于控制自动化个人助理250的致动器控制命令A。根据传感器30的传感器信号S确定致动器控制命令A。传感器信号S被传输到控制系统40。例如,分类器60可以被配置为例如实行手势识别算法以标识用户249做出的手势。控制系统40然后可以确定致动器控制命令A,用于传输到自动化个人助理250。然后,它将所述致动器控制命令A传输到自动化个人助理250。
例如,可以根据由分类器60识别的所标识的用户手势来确定致动器控制命令A。然后,它可以包括引起自动化个人助理250从数据库检索信息并以适合用户249接收的形式输出该检索信息的信息。
在另外的实施例中,可以设想,代替于自动化个人助理250,控制系统40控制根据所标识的用户手势控制的家用电器(未示出)。家用电器可以是洗衣机、炉子、烤箱、微波炉或洗碗机。
图5中示出的是其中控制系统控制访问控制系统300的实施例。访问控制系统可以设计成物理控制访问。例如,它可以包括门401。传感器30被配置为检测与决定是否要准许访问相关的场景。例如,它可以是用于提供图像或视频数据、用于检测人脸的光学传感器。分类器60可以被配置为例如通过将身份与存储在数据库中的已知人进行匹配来解释该图像或视频数据,从而确定该人的身份。然后可以例如根据确定的身份取决于分类器60的解释来确定致动器控制信号A。致动器10可以是取决于致动器控制信号A准许访问或不准许访问的锁。非物理的逻辑访问控制也是可能的。
图6中示出的是其中控制系统40控制监督系统400的实施例。该实施例在很大程度上与图5中所示的实施例相同。因此,将仅详细描述不同的方面。传感器30被配置为检测被监督的场景。控制系统不一定控制致动器10,而是控制显示器10a。例如,机器学习系统60可以确定场景的分类,例如光学传感器30检测到的场景是否可疑。传输到显示器10a的致动器控制信号A可以然后例如被配置为引起显示器10a取决于所确定的分类来调整所显示的内容,例如以突出显示被机器学习系统60认为可疑的对象。
图7中示出的是用于控制成像系统500的控制系统40的实施例,成像系统500例如是MRI装置、x光成像装置或超声波成像装置。传感器30例如可以是成像传感器。机器学习系统60然后可以确定感测图像的全部或部分的分类。然后可以根据该分类选择致动器控制信号A,从而控制显示器10a。例如,机器学习系统60可以将感测图像的区域解释为潜在异常。在该情况下,可以确定致动器控制信号A以引起显示器10a显示成像并突出显示潜在异常区域。
图8中示出的是用于训练分类器60的训练系统140的实施例。训练数据单元150确定输入信号x,输入信号x被传递到分类器60。例如,训练数据单元150可以访问计算机实现的数据库
分类器60被配置为从输入信号x计算输出信号y。
这些输出信号x也被传递到评估单元180。
修改单元160取决于来自评估单元180的输入确定更新的参数
例如,可以设想评估单元180取决于输出信号y和期望的输出信号y
此外,修改单元160可以基于例如从训练集T取得的原始输入信号x和它们相应的期望输出信号y
此外,训练系统140可以包括处理器145(或多个处理器)和在其上存储指令的至少一个机器可读存储介质146,该指令如果被实行,则引起控制系统140实行根据本发明一个方面的方法。
图9中示出的是用于训练分类器60的方法的实施例的流程图,该方法可以由训练系统140实现。
首先(901),如以上讨论的,用集合T的训练数据以常规方式训练分类器60。
然后(902),利用图11中相应图示的方法,通过修改来自数据集T的输入信号并保持对应的期望输出信号y
现在(903),分类器60用对抗数据集T’集合的训练数据进行训练。然后(904),经训练的分类器60可以用于通过接收包括来自传感器30的数据的传感器信号S来提供致动器控制信号A,取决于所述传感器信号S来确定输入信号x,并将所述输入信号x馈送到分类器60中,以获得表征输入信号x的分类的输出信号y。然后,可以根据所提供的致动器控制信号A来控制致动器10或10a。这结束了该方法。
图10中示出的是用于操作分类器60的方法的实施例的流程图,该方法可以由控制系统40实现。
首先(911),提供表征分类器60操作的参数
经训练的分类器60然后(912)可以用于通过接收包括来自传感器30的数据的传感器信号S来提供第一输出信号y1,取决于所述传感器信号S来确定输入信号x,并且将所述输入信号x输入到分类器60中以获得表征输入信号x的分类的第一输出信号y1。
然后(913),通过修改输入信号x,利用图11中相应图示的方法生成对抗输入信号x
该对抗输入信号x
接下来(915),基于所述第一输出信号y1和所述第二输出信号y2计算指示分类器60的易损性的参数vu。例如,可能的是,如果所述第一输出信号y1不等于所述第二输出信号y2,则将所述参数vu设置为指示易损性的第一值(例如“1”),并且如果所述第一输出信号y1等于所述第二输出信号y2,则将所述参数vu设置为等于指示非易损性的第一值(例如“0”)。
然后(916)可以根据所述参数vu确定致动器控制信号(A),并且可以根据所述致动器控制信号(A)控制致动器(10)。例如,如果所述参数vu指示非易损性,则所述致动器控制信号(A)可以然后被确定为对应于正常操作模式,而如果所述参数vu指示易损性,则所述致动器控制信号(A)可以然后例如通过降低所述致动器(10)的运动动力学而被确定为对应于故障安全操作模式。
图11示意性地图示了分类器60的一个实施例的结构。输入信号x被输入到处理单元61中,处理单元61例如可以由除了神经网络的最后一层之外的所有层给出。处理单元61被配置为输出向量
图12图示了用于基于给定输入信号x(其也将称为原始输入信号x
然后(1100),经修改输入信号x
接下来(1200),通过将经修改输入信号x
然后(1300),计数器递增
步骤(1400)和(1500)二者之后是检查(1600)计数器是否小于预定义的最大计数器
图13图示了用于根据经修改输入信号x
(这里,
确定所述投影输入信号x
(当然,
首先(1310),确定在经修改输入信号x
如果是这种情况(1320),则投影输入信号x
如果不是这种情况(1330),并且标示
将领会,方程(5)是由方程(3)和(2)给出的原始问题的对偶公式。
接下来(1340),如在方程(2)中定义的
然后(1350),投影输入信号x
图14图示了另一种近似但更高效的方法,其中,代替于使用如在方程(2)中定义的Wasserstein距离
其中预定义变量
首先(1311),确定在经修改输入信号x
如果是这种情况(1321),则投影输入信号x
如果不是这种情况(1331),并且标示
然后(1341),指数
接下来(1351),矩阵
并且矩阵
其中
然后(1361),标量
其中
然后(1371),
现在(1381),
接下来(1391),检查该方法是否为收敛的,例如,如果在最后一次迭代内对R和/或S的改变足够小(例如,小于预定义阈值)。如果不是这种情况,则该方法迭代回到步骤(1341)。然而,如果该方法已经收敛,则随后是步骤(1392)。
在该步骤中,设置
这结束了该方法。
图15图示了根据如在步骤(1330)中从方程(5)的解获得的最大化值
术语“计算机”涵盖用于处理预定义计算指令的任何设备。这些计算指令可以以软件的形式或以硬件的形式,或还可以以软件和硬件的混合形式。
进一步理解的是,程序不仅可以如所描述的那样完全以软件实现。它们也可以以硬件或者以软件和硬件的混合形式实现。
- 改进针对“对抗示例”的鲁棒性的设备和方法
- 提高针对“对抗示例”的鲁棒性的设备和方法