一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

自主驾驶中的基于语义对抗式生成的功能测试方法与流程

2021-11-03 12:48:00 来源:中国专利 TAG:


1.本公开涉及自主操作以及输入图像——包括在自主驾驶中收集的那些图像——的测试。


背景技术:

2.理解鲁棒性和潜在的脆弱性是针对深度神经网络(dnn)模型的功能测试中、尤其是在如自主驾驶之类的安全性关键应用中的重要任务。近来,基于dnn的模型已经在计算机视觉领域(诸如,图像分类、对象检测、语义分割等)中展现出了在准确性方面的显著性能。这些模块通常可以是自主驾驶中作为感知系统的核心组件。因此,针对这种模型进行彻底的功能测试对于其在自主驾驶中的采用是关键的。


技术实现要素:

3.根据一个实施例,一种系统包括相机,所述相机被配置成从对象获得图像信息。所述系统还包括处理器,所述处理器与相机通信并且被编程为:接收包括图像信息的输入数据;经由编码器对所述输入进行编码;获得定义了输入数据的属性的隐变量,利用至少所述隐变量和对抗式噪声来生成输入数据的序列重建,利用至少输入数据与序列重建的比较来获得所述输入与所述重建之间的残差,以学习隐空间中的均值偏移;以及基于所述比较来输出指示所述输入与对抗式噪声相比的测试结果的均值偏移。
4.根据第二实施例,一种装置包括处理器,所述处理器被编程为:接收至少包括对象的图像的输入数据;经由编码器对输入数据进行编码;获得定义了输入数据的属性的隐变量,利用至少所述隐变量和对抗式噪声来生成输入数据的序列重建,利用至少输入数据与序列重建的比较来获得所述输入与所述重建之间的残差,以学习隐空间中的均值偏移;以及基于所述比较来输出指示所述输入与对抗式噪声相比的测试结果的所述均值偏移。
5.根据第三实施例,一种计算机程序产品存储指令,所述指令在由计算机执行时使计算机:接收输入数据;经由编码器对所述输入进行编码;获得定义了输入数据的属性的隐变量,利用至少所述隐变量和对抗式噪声来生成输入数据的序列重建,利用至少输入数据与隐空间中的均值偏移的序列重建的比较来获得所述输入与所述重建之间的残差;以及基于所述比较来输出指示所述输入与对抗式噪声相比的测试结果的均值偏移。
附图说明
6.图1描绘了用于实现系统的数据注释系统100。
7.图2公开了语义对抗式训练系统200的实施例。
8.图3公开了具有有限黑盒查询的语义对抗式学习系统30。
9.图4公开了具有生成器利用解纠缠(disentangle)表示的预训练过程的系统。
10.图5a是原始图像的聚类视图。
11.图5b是具有所学习的对抗式示例的原始图像的聚类视图。
12.图5c是所学习的对抗式输入与原始输入之间的像素值差异的聚类视图。
具体实施方式
13.本文描述了本公开的实施例。然而,应理解,所公开的实施例仅仅是示例,并且其他实施例可以采取各种形式和替代形式。各图不一定是按比例的;一些特征可以被放大或最小化以示出特定组件的细节。因此,本文公开的具体结构和功能细节不应被解释为限制性的,而仅作为用于教导本领域技术人员以不同方式采用实施例的代表性基础。如本领域普通技术人员将理解的那样,参考任何一个图图示和描述的各种特征可以与一个或多个其他图中图示的特征相组合,以产生没有明确图示或描述的实施例。图示特征的组合为典型应用提供了代表性实施例。然而,与本公开的教导一致的特征的各种组合和修改对于特定的应用或实现可以是期望的。
14.强大的对抗式攻击方法对于理解如何构造鲁棒的深度神经网络(dnn)以及对于彻底地测试防御技术是至关重要的。既可以击败普通的(vanilla)dnn、又可以击败由各种防御技术所生成的dnn的黑盒对抗式攻击算法可能是有帮助的。代替于搜索用于去往目标dnn的良性输入的“最优”对抗式示例,一种解决方案可以是在以输入为中心的小区域上找到概率密度分布,使得从该分布中抽取的样本可能是对抗式示例,而不需要访问dnn的内部层或权重。对抗式训练仍然是最好的防御技术之一,并且对抗式示例不像跨简单dnn那样可跨防御的dnn而转移。
15.理解鲁棒性和潜在的脆弱性是针对深度神经网络(dnn)模型的功能测试中、尤其是在如自主驾驶之类的安全性关键应用中的重要任务。近来,基于dnn的模型已经在计算机视觉领域(诸如,图像分类、对象检测、语义分割等)中展现出了在准确性方面的显著性能。这些模块通常可以是自主驾驶中作为感知系统的核心组件。因此,针对这种模型进行彻底的功能测试对于其在自主驾驶中的采用是关键的。
16.对抗式攻击中的最新进展为dnn模型中的功能测试承载了一些巨大的潜力。功能测试中的一个挑战是如何高效地收集或生成具有良好覆盖的测试用例,并且揭示dnn模型的潜在脆弱性。对抗式样本学习通过利用从dnn模型获得的梯度信息来搜索对抗式空间,提供了具有端到端解决方案的机会。在可以通过添加来自模型梯度的一些噪声来欺骗分类器将熊猫误分类为长臂猿的模型中,dnn模型可以专注于对抗式测试用例,而不是该模型已经在其上具有良好性能的那些测试用例。
17.将对抗式攻击学习应用于针对dnn模型的功能测试是不平凡的任务。主流的对抗式攻击方法存在若干挑战。首先,大多数对抗式攻击方法不生成具有语义的示例。这些方法旨在通过添加尽可能小的人类无法感知到的噪声来使目标模型失败,并且因此所生成的对抗式示例对人类来说看起来与原始图像相同。因此,这些噪声对于人类理解dnn模型的弱点不具有物理意义或语义。第二,大量的攻击方法需要知道目标模型的架构和参数细节以生成对抗式示例,即白盒方法。这限制了其针对功能测试的应用,这是因为获取这些细节来测试众多模型是非常昂贵的。很少的基于黑盒的方法被提出,并且也仅仅适用于非语义对抗式示例。附加地,不存在机制或方法来揭示模型的对抗式景观(landscape)。例如,利用当前的方法,我们不知道所学习的对抗式示例的常见模式是什么。可能不清楚这些模式是否可解释为有助于的以改进该方法。下面示出的具有针对对象检测模型的有限黑盒查询的基于
语义对抗式生成的功能测试方法可以解决这种挑战。
18.图1描绘了用于实现系统的数据注释系统100。数据注释系统100可以包括至少一个计算系统102。计算系统102可以包括操作性地连接到存储器单元108的至少一个处理器104。处理器104可以包括实现中央处理单元(cpu)106的功能性的一个或多个集成电路。cpu 106可以是商业上可获得的处理单元,其实现了指令集,诸如x86、arm、power或mips指令集族之一。在操作期间,cpu 106可以执行从存储器单元108检索的所存储的程序指令。所存储的程序指令可以包括控制cpu 106的操作以执行本文中描述的操作的软件。在一些示例中,处理器104可以是将cpu 106、存储器单元108、网络接口、以及输入/输出接口的功能性集成到单个集成设备中的片上系统(soc)。计算系统102可以实现用于管理操作的各个方面的操作系统。
19.存储器单元108可以包括用于存储指令和数据的易失性存储器和非易失性存储器。非易失性存储器可以包括固态存储器,诸如nand闪速存储器、磁性和光学存储介质、或者当计算系统102被去激活或丢失电力时保存数据的任何其他合适的数据存储设备。易失性存储器可以包括存储程序指令和数据的静态和动态随机存取存储器(ram)。例如,存储器单元108可以存储机器学习模型110或算法、用于机器学习模型110的训练数据集112、原始源数据集115。
20.计算系统102可以包括网络接口设备122,网络接口设备122被配置成提供与外部系统和设备的通信。例如,网络接口设备122可以包括由电气和电子工程师协会(ieee) 802.11标准族定义的有线和/或无线以太网接口。网络接口设备122可以包括用于与蜂窝网络(例如,3g、4g、5g)通信的蜂窝通信接口。网络接口设备122可以进一步被配置成提供去往外部网络124或云的通信接口。
21.外部网络124可以被称为万维网或因特网。外部网络124可以在计算设备之间建立标准通信协议。外部网络124可以允许在计算设备与网络之间容易地交换信息和数据。一个或多个服务器130可以与外部网络124通信。
22.计算系统102可以包括输入/输出(i/o)接口120,输入/输出(i/o)接口120可以被配置成提供数字和/或模拟输入和输出。i/o接口120可以包括用于与外部设备通信的附加串行接口(例如,通用串行总线(usb)接口)。
23.计算系统102可以包括人机接口(hmi)设备118,人机接口(hmi)设备118可以包括使得系统100能够接收控制输入的任何设备。输入设备的示例可以包括诸如键盘、鼠标、触摸屏、语音输入设备和其他类似设备之类的人类接口输入。计算系统102可以包括显示设备132。计算系统102可以包括用于向显示设备132输出图形和文本信息的硬件和软件。显示设备132可以包括电子显示屏、投影仪、打印机、或用于向用户或操作者显示信息的其他合适的设备。计算系统102可以进一步被配置成允许经由网络接口设备122与远程hmi和远程显示设备进行交互。
24.系统100可以使用一个或多个计算系统来实现。虽然该示例描绘了实现所有所描述的特征的单个计算系统102,但是所意图的是,各种特征和功能可以由彼此通信的多个计算单元来分离和实现。所选的特定系统架构可以取决于多种因素。
25.系统100可以实现被配置成分析原始源数据集115的机器学习算法110。原始源数据集115可以包括原始的或未处理的传感器数据,该传感器数据可以表示用于机器学习系
统的输入数据集。原始源数据集115可以包括视频、视频片段、图像、基于文本的信息、以及原始的或部分处理的传感器数据(例如,对象的雷达图)。在一些示例中,机器学习算法110可以是被设计成执行预定功能的神经网络算法。例如,神经网络算法可以被配置在汽车应用中以标识视频图像中的行人。
26.计算机系统100可以存储用于机器学习算法110的训练数据集112。训练数据集112可以表示用于训练机器学习算法110的先前构造数据的集合。机器学习算法110可以使用训练数据集112来学习与神经网络算法相关联的加权因子。训练数据集112可以包括具有机器学习算法110试图经由学习过程来复制的对应后果或结果的源数据集合。在该示例中,训练数据集112可以包括具有行人和没有行人的源视频、以及对应的存在和位置信息。源视频可以包括其中标识了行人的各种场景。
27.可以使用训练数据集112作为输入在学习模式中操作机器学习算法110。可以使用来自训练数据集112的数据在多次迭代内执行机器学习算法110。在每次迭代的情况下,机器学习算法110可以基于所实现的结果来更新内部加权因子。例如,机器学习算法110可以将输出结果(例如,注释、隐变量、对抗式噪声等)与包括在训练数据集112中的那些进行比较。由于训练数据集112包括预期结果,所以机器学习算法110可以确定何时性能是可接受的。在机器学习算法110实现预定性能级别(例如,与关联于训练数据集112的后果100%一致)之后,可以使用不在训练数据集112中的数据来执行机器学习算法110。经训练的机器学习算法110可以被应用于新的数据集以生成带注释的数据。
28.机器学习算法110可以被配置成标识原始源数据115中的特定特征。原始源数据115可以包括针对其期望注释结果的多个实例或输入数据集。例如,机器学习算法110可以被配置成标识视频图像中的行人的存在,并且对该出现进行注释。机器学习算法110可以被编程为处理原始源数据115以标识特定特征的存在。机器学习算法110可以被配置成将原始源数据115中的特征标识为预定特征(例如,行人)。原始源数据115可以从各种源中导出。例如,原始源数据115可以是由机器学习系统收集的实际输入数据。原始源数据115可以是机器为了测试该系统而生成的。作为示例,原始源数据115可以包括来自相机的原始视频图像。
29.在该示例中,机器学习算法110可以处理原始源数据115并且输出图像表示的指示。输出还可以包括图像的增强表示。机器学习算法110可以针对每个所生成的输出生成置信度级别或因子。例如,超过预定高置信度阈值的置信度值可以指示机器学习算法110确信所标识的特征对应于特定特征。小于低置信度阈值的置信度值可以指示机器学习算法110具有特定特征存在的某种不确定性。
30.图2公开了语义对抗式训练系统200的实施例。在一个示例中,可以利用交通灯检测问题。在高级别上,该系统可以首先利用诸如变分自动编码器(vae)之类的基于解纠缠表示学习的方法来学习语义对抗式生成器,并且然后生成具有语义的对抗式示例来测试目标模型。对抗式示例和测试结果可以被汇总和报告。数据源输入可以包括对象图像201(例如,具有交通灯的驾驶情景)并且包括诸如语义对抗式学习组件203、语义对抗式生成和测试205、以及语义对抗式报告207之类的组件。照此,可以在自主驾驶场景中利用语义对抗式训练系统200。
31.语义对抗式学习组件203可以利用诸如vae、贝塔

vae等解纠缠表示学习方法来学
习语义对抗式生成器(如下面图3中所示)。该组件可以首先利用解纠缠表示训练生成器,并且然后在预训练的生成器的隐空间中学习每个训练数据的对抗式均值偏移的分布。通过将均值偏移注入到生成器中,该系统可以生成对抗式示例。然后,那些对抗式示例可以用于随后的训练。因此,可以通过添加对抗式噪声来模拟通常被标识的对象,以查看该系统可以如何预测标识。对抗式噪声可以是图像、对象或视频的各种属性(诸如,对比度、背景颜色、亮度等)中的改变。
32.该系统可以利用解纠缠表示预训练生成器。该系统可以尝试利用可解释的隐呈现来学习图像生成器。然后,该系统可以解释这种示例具有什么语义改变。在一个实施例中可以采用解纠缠表示模型,例如vae。如下面图4中所示,vae模型可以学习解纠缠隐空间,并且然后从该隐空间生成新的图像。这些隐维度的合期望特性是它们可能具有语义。例如,一个维度可以捕获交通灯的颜色改变,并且另一个维度可以表示对象的各种旋转或其他特性。
33.对抗式生成器学习组件可以学习预训练的生成器的隐空间中的均值偏移的分布,并且均值偏移可以生成使目标模型失败的图像。因此,该系统可以故意地尝试引起该系统中的失败,以更好地训练该系统。因此,该系统可以利用具有朝向目标模型的有限查询的黑盒方法。代替于典型的系统可能在图像空间中搜索小噪声,该系统可以尝试学习隐空间中的均值偏移。
34.图3公开了具有有限黑盒查询的语义对抗式学习系统30。针对特定的输入图像301,目的可以是要学习该图像的均值偏移向量,以生成使该模型失败的对抗式图像。因此,当失败发生时,该系统可以学习到当前检测方法的弱点。如图3中所示,针对特定的输入图像301,目的可以是要学习该图像的均值偏移向量,以生成使该模型失败的对抗式图像。该过程可以是首先利用vae将图像编码成均值向量,并且然后以具有小均值的随机偏移向量而开始。然后,该系统可以扰动当前均值偏移向量周围的数据样本集合,并且使用它们来生成新的测试图像。接下来,将这些测试图像馈送到目标模型,该系统可以获得测试得分。这些测试得分309可以用于估计梯度311,作为经典sgd(随机梯度下降)方法,梯度311用于更新偏移向量的均值。当发现对抗式示例或满足有限查询预算时,该过程停止。
35.输入301可以被馈送到解纠缠表示对抗式生成器303中。输入301可以是图像或视频、以及其他。生成器303然后可以输出所生成的对象305。生成器303可以改变输入301的各种属性。所生成的对象305可以被馈送到黑盒检测器307中。可以输出测试结果309,其随后用于梯度估计311。测试得分309的改变连同303中的属性的变化被用于估计梯度,该梯度用于更新均值偏移向量。可以通过309中的测试得分方差与303中的属性方差之间的比率来近似梯度估计。梯度投影313可以被馈送到均值偏移315中,均值偏移315进而被馈送到生成器303中。
36.该系统可以利用预训练的vae生成器和对抗式均值偏移来生成针对输入图像的对抗式示例。该系统可以将均值偏移向量添加到输入图像的编码的均值隐向量,并且然后将添加结果传递通过解码器以生成对抗式示例。该系统可以利用所学习的语义对抗式示例在语义上汇总并量化目标模型的鲁棒性。该系统可以用于聚类对抗式的所有均值偏移向量315,并且在视觉上汇总对抗式模式。聚类结果承载了语义蕴涵,这是因为均值向量包括具有解纠缠表示学习的语义。
37.均值偏移315可以用于标识具有某些对抗式噪声的检测到的问题中的弱点。例如,
当对抗式噪声调整亮度时,该系统可能能够标识该系统在对输入图像的亮度改变的情况下具有的问题。该系统然后可以将这种结果馈送到该系统中,如在被馈送到生成器303中的均值偏移315的输出之间所示的那样。因此,该系统可以专注于要对其进行改进的那些特定对抗式噪声。
38.如图4中所示,系统400可以包括生成器利用解纠缠表示的预训练过程。例如,解纠缠表示可以利用vae。输入401(例如,交通灯图像)可以被馈送到vae 403中。输入401可以包括任何类型的数据输入,诸如图像或视频。vae 403可以在第一次通过时包括编码器。还可能存在多次通过,包括第二次通过、第三次通过、一直到第n次通过。可以顺序地更新隐变量,以在每次前向通过期间从先前更新的隐变量来学习输入数据与重建之间的残差。网络可以输出该重建,作为解纠缠语义向量x

。vae可以包括编码器网络(其可以是gθ)和解码器(其被定义为fθ)。
39.vae 403的解码器可以输出每个内部步骤,并且它们对应的残差可以被输出。该结果可以示出,解码器的输出和残差可以一起工作,以在每个步骤处捕获并输出所学习的解纠缠因子。例如,每个步骤中的因子可以是x位置、y位置、大小、旋转 形状、以及形状、颜色、符号、取向、背景等。在一个示例中,在第一步骤期间生成重建图像的x位置。在步骤二中,可以生成x位置和y位置两者。该过程可以继续,并且在每个步骤处,解码器307根据所学习的隐编码来输出残差并且对图像进行变换。
[0040]“残差学习”机制可以由具有相同(或相似)编码器gθ和解码器fθ的d次前向通过组成。隐变量可以从输入数据与累积的重建之间的残差的编码中被顺序地采样。在每个步骤中,所添加的隐变量可以遵循从当前残差学习到的分布,而先前的隐变量可以遵循从它们对应的残差学习到的相同分布。
[0041]
vae 403可以输出解纠缠表示405。解纠缠表示405可以具有已经更改了原始输入401的解纠缠语义向量407。例如,解纠缠语义向量407可以更改图像的属性(例如,隐变量),使得该图像所表示的对象看起来被更改了。解纠缠语义向量407可以包括对颜色的改变。例如,vae不是示出一个区域中的绿灯,而是可以更改该图像以输出红色交通灯。解纠缠语义向量407可以包括对用于表示该对象的符号的改变。例如,vae不是示出针对该灯而被填充的圆圈,而是可以更改该图像以输出作为该灯的符号,诸如箭头。在另一个示例中,解纠缠语义向量407可以包括交通灯的取向中的改变。在又一个示例中,解纠缠语义向量407可以包括背景颜色中的改变。
[0042]
图5a是原始图像的聚类视图。图5b是具有所学习的对抗式示例的原始图像的聚类视图。因此,对抗式示例可能具有与图像相关联的不同属性。这种属性可以包括颜色、符号、取向、背景等。图5c是所学习的对抗式输入与原始输入之间的像素值差异的聚类视图。该聚类的底部和该图的右下方处的像素可以指示改变量,并且具有较大的差异值。
[0043]
图5a示出了通过具有两个组件的t

sne进行的聚类结果,并且然后在2d平面中对图像进行可视化。左边的一个示出了原始图像,并且右边的一个示出了对应的对抗式生成。图5a的图像可以是能够容易地检测和分类的原始图像。该系统可以在原始图像的顶部上添加对抗式示例。对于图5b而言,该系统可以在其顶部上将对抗式示例进行可视化。图5c将对抗式图像与原始图像之间的像素值差异进行可视化。
[0044]
各图可以示出对抗式图像的模式中的改变(亮度指示改变量:较亮的像素具有较大的差异值):左侧的聚类可以指示灯的许多绿色像素从原始图像中的去除;右上方的聚类减少了黄色像素;并且底部两个聚类可以指示交通灯的轮廓的去除。
[0045]
该系统可以能够通过利用鲁棒性的模型将鲁棒性量化为对抗式示例的得分下降(例如,作为测试结果)在对抗式所要求的改变量之上的比率,如下面所示:如下面所示:是得分差异,并且是均值向量l1距离。该测量可以指示需要多少操纵努力来降低模型性能。该系统还可以测量每个聚类的鲁棒性,并且因此可以理解该模型在其被不同模式攻击时有多么鲁棒。可以通过语义隐空间中的改变(即,)来理解和解释攻击模式。例如,具有大改变的隐维度可以被解释为减少特定颜色或改变对象轮廓。
[0046]
本文公开的过程、方法或算法可以被可递送到处理设备、控制器或计算机/由处理设备、控制器或计算机实现,处理设备、控制器或计算机可以包括任何现有的可编程电子控制单元或专用电子控制单元。类似地,过程、方法或算法可以以多种形式存储为可由控制器或计算机执行的数据和指令,包括但不限于永久存储在诸如rom设备的不可写存储介质上的信息和可变更地存储在诸如软盘、磁带、cd、ram设备以及其他磁性和光学介质之类的可写存储介质上的信息。过程、方法或算法也可以在软件可执行对象中实现。替代地,可以使用合适的硬件组件(诸如,专用集成电路(asic)、现场可编程门阵列(fpga)、状态机、控制器)或其他硬件组件或设备,或者硬件、软件和固件组件的组合,来整体或部分地体现过程、方法或算法。
[0047]
虽然上面描述了示例性实施例,但是不意图这些实施例描述权利要求所涵盖的所有可能的形式。说明书中使用的词语是描述性而不是限制性的词语,并且应理解,在不脱离本公开的精神和范围的情况下,可以进行各种改变。如先前所述,各种实施例的特征可以被组合以形成可能没有被明确描述或图示的本发明的另外实施例。虽然各种实施例可能已经被描述为在一个或多个期望的特性方面提供了优于其他实施例或现有技术实现的优点或比其他实施例或现有技术实现优选,但是本领域的普通技术人员认识到,一个或多个特征或特性可以被折衷以实现期望的总体系统属性,这取决于具体的应用和实现。这些属性可以包括但不限于成本、强度、耐用性、生命周期成本、适销性、外观、包装、尺寸、适用性、重量、可制造性、组装容易性等。照此,在任何实施例被描述为在一个或多个特性方面不如其他实施例或现有技术实现合期望的程度上,这些实施例不在本公开的范围之外,并且对于特定应用可以是合期望的。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献