对抗训练正在“危害”机器人应用

2021-05-19 10:45:11 浏览数 (1)

编译 | 贵升

校对 | 维克多

安全性与保障性一直是机器人技术的两个主要问题。学术界处理这两个问题时,通常采用两种方法:1.用大量的数据训练深度模型,提高其环境适应性;2.进行对抗训练,提高其稳健性。

近日,MIT、奥地利利用学院在一篇题为“Adversarial Training is Not Ready for Robot Learning”的论文中提到,对抗训练并不适合机器人学习。

在文中,作者通过理论和实验表明:通过对抗训练获得的神经控制器(neural controllers)会导致三类缺陷,系统错误、瞬态错误和条件错误。这三类缺陷的存在并不会提高机器人模型的稳健性。目前,这篇文章已被国际机器人和自动化会议(ICRA 2021)收录。

究其原因,作者认为在机器人应用中,深度学习模型与动态环境相互作用,对抗训练导致“微小”的精度下降,都会产生重大的影响。

同时,作者指出缺乏因果关系是系统受到攻击的最主要原因。学习因果表示可能是保护神经网络免受对抗性攻击的关键。

1 对抗训练

深度神经网络是利用数据中的统计规律来进行预测或分类任务。这使得它们非常擅长处理计算机视觉任务,如检测物体。但是,对统计模式的依赖也使得神经网络对对抗性的例子很敏感。

一个例子是,一幅图像被巧妙地修改,导致深度学习模型对其进行错误分类。这种修改也叫添加噪声。每一个噪声像素都会轻微地改变图像的数值,轻微到人眼无法察觉。

但当这些噪声值汇总在一起时,会破坏图像的统计模式,从而导致神经网络误以为它是其他东西。

在左边的熊猫图像上添加一层噪点,图像被识别为长臂猿,将它变成了一个对抗的例子。

对抗的例子和(人工智能的)攻击性已经成为人工智能和安全会议上讨论的热门话题。还有人担心,随着深度学习在机器人和自动驾驶汽车等物理任务中变得更加突出,对抗攻击可能会成为严重的安全问题。然而,处理对抗性漏洞仍然是一个挑战。

最著名的防御方法之一是“对抗性训练”,这是一个根据对抗性例子对先前训练过的深度学习模型进行微调的过程。在对抗性训练中,程序生成一组被目标神经网络错误分类的对抗性例子。然后,神经网络根据这些例子和它们的正确标签进行再训练。在许多对抗性的例子上微调神经网络将使它在面临对抗性攻击时更加稳健。

对抗性训练会导致深度学习模型预测的准确性轻微下降。但是,这被认为是一种可接受的权衡,因为它增强了抗对抗性攻击的稳定性。

然而,在机器人技术的应用中,对抗性训练可能会造成不必要的麻烦。

论文的作者提到:“虽然从直觉上看,对抗训练听起来似乎是对的,但这种‘稳健方法’并不是免费的,会导致模型容量或标准准确性方面的损失。”

换句话说,虽然对抗训练提高了基于视觉的分类任务中深度学习模型的稳健性,但在机器人学习中会引入新的错误。

2 机器人应用中的对抗性训练

假设你有一个训练有素的卷积神经网络,想用它对一堆图像进行分类。如果神经网络训练良好,它会正确地分类其中的大部分,也可能会得到一些错误的信息。

现在想象一下,有人在图像文件夹中插入了24个对抗性的例子。一个恶意的参与者故意操纵这些图像,使神经网络对它们进行错误分类。正常的神经网络会落入陷阱,给出错误的输出。但是,经过对抗性训练的神经网络可以正确地对其中的大部分进行分类,同时性能略有下降。

在静态分类任务中(static classification tasks),每个输入图像都是独立的,只要错误不太频繁发生,这种性能下降不是什么大问题。但在机器人应用中,深度学习模型与动态环境相互作用。输入神经网络的图像是相互依赖的连续序列。反过来,机器人也在用机体控制环境。

另一个重要的原因是:在机器人技术中,重要的是错误何时发生,而计算机视觉主要关注的是错误的数量。

例如,考虑两个神经网络,A和B,每个都有5%的错误率。从纯粹的学习角度来看,这两种网络都一样好。在一个机器人任务中,一个网络可能胜过另一个。例如,网络A的错误可能偶尔发生,这不会有很大的问题。相比之下,网络B可能会连续出现多个错误,导致机器人崩溃。虽然这两种神经网络的错误率相等,但一种是安全的,另一种则不是。

经典评估指标也存在缺陷,它们只测量由对抗性训练引入的错误分类的数量,而没有考虑误差。

而在机器人领域,误差偏离正确预测的程度至关重要。例如,假设我们的网络误将卡车分类为汽车或行人。从纯学习的角度来看,这两种情况都被视为误分类,但从机器人的角度来看,误分类为行人可能会产生比误分类为汽车严重得多的后果。

3 由对抗性训练引起的错误

研究人员发现,“领域安全训练”( domain safety training)作为一种更普遍的对抗训练形式,会导致机器人使用的神经网络产生三种类型的错误:系统错误、瞬态错误和条件错误。

系统错误造成了整个领域范围内模型准确性的变化。瞬态错误会使神经网络的精度发生突变。条件错误会导致深度学习模型在特定区域偏离实况。所有这三种类型的错误都可能导致安全风险。

上图:对抗性训练导致机器人神经网络的三种错误。

为了测试他们的发现所产生的效果,研究人员创造了一个实验机器人:它可以监测周围环境,读取手势指令,并在不撞到障碍物的情况下四处移动。这个机器人使用了两个神经网络。一个卷积神经网络通过连接在机器人前方的摄像头的视频输入来检测手势指令。第二个神经网络处理来自安装在机器人上的激光雷达传感器的数据,并向电机和转向系统发送命令。

研究人员用三种不同水平的对抗性训练测试了视频处理神经网络。他们的研究结果表明,随着对抗性训练水平的提高,神经网络的准确性显著下降。研究人员写道:“我们的结果表明,目前的训练方法,在机器人学习环境下无法对图像分类器实现有意义的对抗稳健性(non-trivial adversarial robustness)。”

对机器人的视觉神经网络进行对抗性例子的训练,以增强其对对抗性攻击的稳健型。

对抗性训练视觉网络的行为与我们通常理解的‘健壮性’完全相反。例如,机器人偶尔会在没有操作员明确指令的情况下打开或关闭。在最好的情况是令人生厌(机器不会“死机”),但在最坏的情况下,它会让机器人崩溃。”

基于激光雷达的神经网络没有接受对抗性训练,但它被训练得非常安全,如果有物体挡住了它的路径,它就会阻止机器人向前移动。这就导致了神经网络过于具有防御性,并避免了诸如狭窄走廊之类的良性场景。

换句话说,对于标准训练的网络,“狭窄的走廊”不是问题。此外,标准训练过的网络不会让机器人崩溃。所以,这就抛出一个疑问:为什么要在一开始对机器人进行对抗训练?

对抗性训练导致机器人中使用的神经网络的准确性显著下降。

4 使对抗性稳健的未来工作

这篇论文的理论贡献尽管有限,但也给研究人员提了一个醒:在机器人训练中,鲁棒性是一个次要目标,主要目标应该是精度、准确性。

对抗性机器学习仍然是一个活跃的研究领域。人工智能科学家已经开发了各种方法来保护机器学习模型免受对抗性攻击,包括神经科学启发的架构、模态泛化方法,以及不同神经网络之间的随机切换。时间将证明,这些方法或未来的方法是否会成为对抗稳健性的黄金标准。

这篇论文也证实了一个更根本的问题,那就是机器学习系统缺乏因果关系。只要神经网络专注于学习数据中的表面统计模式,它们就仍然容易受到不同形式的敌对攻击。

学习因果表示可能是保护神经网络免受对抗性攻击的关键。但是,学习因果表示本身是一个重大挑战,科学家们仍在试图找出解决办法。

原文链接:

https://venturebeat.com/2021/03/29/adversarial-training-reduces-safety-of-neural-networks-in-robots-research/

0 人点赞