CN112541520A - 用于为神经网络生成反事实数据样本的设备和方法 - Google Patents

用于为神经网络生成反事实数据样本的设备和方法 Download PDF

Info

Publication number
CN112541520A
CN112541520A CN202010985612.6A CN202010985612A CN112541520A CN 112541520 A CN112541520 A CN 112541520A CN 202010985612 A CN202010985612 A CN 202010985612A CN 112541520 A CN112541520 A CN 112541520A
Authority
CN
China
Prior art keywords
counterfactual
image data
neural network
data samples
candidate
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
CN202010985612.6A
Other languages
English (en)
Inventor
A·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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of CN112541520A publication Critical patent/CN112541520A/zh
Pending legal-status Critical Current

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
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/043Architecture, e.g. interconnection topology based on fuzzy logic, fuzzy membership or fuzzy inference, e.g. adaptive neuro-fuzzy inference systems [ANFIS]
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Automation & Control Theory (AREA)
  • Computational Mathematics (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

本公开涉及用于为神经网络生成反事实数据样本的方法和设备。根据各种实施例,描述了一种用于基于输入传感器数据样本为神经网络生成反事实数据样本的方法,包括:使用神经网络确定对于输入传感器数据样本的类别预测,除了类别预测之外,还确定类别预测的不确定性的估计,生成神经网络针对其确定与输入传感器数据样本不同的类别预测的候选反事实数据样本,确定损失函数,其中所述损失函数包括由所述神经网络对于候选反事实数据样本做出的类别预测的不确定性的估计,基于所确定的损失函数修改所述候选反事实数据样本以获得反事实数据样本,并输出所述反事实数据样本。

Description

用于为神经网络生成反事实数据样本的设备和方法
技术领域
本公开涉及用于为神经网络生成反事实数据样本的方法和设备。
背景技术
使用神经网络的深度学习模型正被越来越广泛地使用,然而,在它们被部署到现场之前,尤其是当它们被应用于诸如自动驾驶或医学诊断之类的高风险任务时,理解这些模型如何得出它们的结果(预测)是至关重要的。
要理解一个模型,重要的是能够定量地建立它已经将期望的输入-输出关系学习到什么程度。然而,深度学习模型和技术典型地缺乏量度和实践来测量该效果,并且经常产生与可用数据量相比被过度参数化的模型。对于用于分类任务的模型来说尤其如此,其中大量的模型参数允许对象类别之间的决策边界变得越来越复杂和非线性。这通常导致模型实际学习到的东西和模型实现者认为它已经学习到的东西之间的巨大差距。
在Alex Kendall 和Yarin Gal的论文“What Uncertainties Do We Need inBayesian Deep Learning for Computer Vision
Figure 311539DEST_PATH_IMAGE001
”中描述的方法给出了对于神经网络的预测正确性的估计,并且因此有助于评估模型/神经网络真正学到了什么。
Ruth C. Fong和Andrea Vedaldi的论文“Interpretable Explanations ofBlack Boxes by Meaningful Perturbation”描述了一种增加深度学习模型的可解释性的方法。这样的和类似的方法主要集中于图像分类的任务,并且产生显著图,该图示出图像的哪些部分/像素对神经网络的分类负有最大责任。
然而,在寻找有意义的解释时,一个重要的问题典型地是对抗效应的存在,对抗效应由如下内容构成:对输入数据样本所做出的小的改变导致分类得分的大的改变。这些小的改变,例如输入图像的仅仅几个像素,可能与表示语义对象的部分不相关,并且因此可能对解释分类得分没有帮助。
鉴于以上所述,合期望的是获得对于深度学习模型的结果(预测)的有意义的解释,特别是描述给定输入样本附近的模型决策边界的解释。
更进一步地,合期望的是对模型结果(预测)可靠性的置信度的指示。
发明内容
独立权利要求的方法和设备允许生成反事实数据样本,从而为神经网络的预测提供有意义的解释。这允许基于反事实数据样本和对应的输入传感器数据样本之间的差异来提供对神经网络的预测的可靠性的测量。对于反事实生成设备,对从神经网络获得的类别预测的可靠性的解释和测量可以进一步用于设备的控制,诸如用于自动驾驶的车辆控制。
以下描述了进一步的示例:
一种用于基于输入传感器数据样本来为神经网络生成反事实数据样本的方法可以包括:使用神经网络确定对于输入传感器数据样本的类别预测;除了类别预测之外,还确定对类别预测的不确定性的估计;生成神经网络针对其确定与针对输入传感器数据样本不同的类别预测的候选反事实数据样本;确定损失函数,其中损失函数包括由神经网络对候选反事实数据样本的类别预测的不确定性的估计;基于所确定的损失函数修改候选反事实数据样本以获得反事实数据样本;并输出反事实数据样本。
本段中提到的方法提供了第一示例。
确定对类别预测的不确定性的估计,并且将该估计添加到损失函数具有如下效果:生成的反事实数据样本不太可能是不需要的和/或(对于找到分类的解释而言)无用的数据样本,诸如例如对抗的数据样本。这意味着所生成的反事实数据样本将更通常是网络对于其分类具有高置信度的反事实数据样本。
这使得能够使用所生成的反事实数据样本来找到对类别预测的有意义的(对人类来说可理解的和/或看似合理的)解释,和/或标识分类的根本原因,和/或向该方法的用户示出为了改变给定输入传感器数据样本的分类得分,对于神经网络的哪些显著和有意义的改变是必要的。
该方法可以包括迭代地生成候选反事实数据样本序列,其中,在每次迭代中,基于所确定的损失函数,当前候选反事实被修改为随后的候选反事实,或者当前候选反事实被接受作为反事实数据样本。本段中提到的特征与第一示例相组合提供了第二示例。
(例如利用多次迭代)迭代地确定反事实数据样本,允许找到高质量的反事实数据样本。
该方法可以包括如果所确定的损失函数高于预定阈值,则将当前候选反事实修改为随后的候选反事实,并且如果所确定的损失函数低于预定阈值,则接受当前候选反事实。本段中提到的特征与第一或第二示例相组合提供了第三示例。
即使还没有找到损失函数的真正最小值(最佳值),但是只要找到它的一个很好的近似值,就停止损失函数的迭代确定,这确保了将在合理的时间之后停止反事实数据样本的生成。
应当注意的是,损失函数的迭代确定的目标通常是最小化损失函数,然而在一些情况下,目标可能是最大化损失函数。
在损失函数的迭代确定的目标是最大化损失函数的情况下,该方法可以包括如果所确定的损失函数低于预定阈值,则将当前候选反事实修改为随后的候选反事实,并且如果所确定的损失函数高于预定阈值,则接受当前候选反事实。
该方法可以包括:损失函数包括(至少)包含神经网络对于输入传感器数据样本的输出的第一项和包含对类别预测的不确定性的估计的第二项。本段中提到的特征与第一示例至第三示例中的任何一个相组合提供了第四示例。
该方法可以包括:损失函数进一步包含代表输入传感器数据样本和反事实数据样本之间的差异的项。本段中提到的特征与第一示例至第四示例中的任何一个相组合提供了第五示例。
知道输入传感器数据样本和反事实数据样本之间的差异允许找到“最小”的反事实,即与输入传感器数据样本尽可能少地不同的反事实。这允许反事实数据样本接近决策边界,并且因此允许对决策边界的精确检验和/或当所生成的反事实数据样本被用于进一步训练时改进决策边界。
该方法可以包括:损失函数进一步包含指示由神经网络生成的针对反事实数据样本的目标类别的项。本段中提到的特征与第一示例至第五示例中的任何一个相组合提供了第六示例。
指示反事实数据样本的目标类别使得能够迫使反事实数据样本被神经网络利用想要的/特定的目标类别进行分类。这有助于检验神经网络如何区分特定的类别。特别地,反事实数据样本的目标类别可以接近(对于人类而言)输入传感器数据样本的类别,例如,输入传感器数据样本的类别可以是自行车,而反事实数据样本的目标类别可以是摩托车。
该方法可以包括基于损失函数的梯度下降来修改候选反事实数据样本。本段中提到的特征与第一示例至第六示例中的任何一个相组合提供了第七示例。
该方法可以包括:生成候选反事实数据样本包括将掩模应用于输入传感器数据样本,并且其中修改候选反事实数据样本包括修改掩模。本段中提到的特征与第一示例至第七示例中的任何一个相组合提供了第八示例。
使用掩模作为反事实生成处理的基础的优点是:输出突出显示输入传感器数据样本的部分(例如输入图像的像素)的显著图,所述部分对分类(得分)中的改变负有最大责任。可以特别地以这样的方式选取应用于输入传感器数据样本的掩模:使得引起分类中的改变的扰动具有某些特征,例如是小的、斑点状的、减少图像伪影的,等。
该方法可以包括:借助于生成式对抗网络GAN来生成候选反事实数据样本,其中修改候选反事实数据样本包括修改生成式对抗网络GAN的输入。本段中提到的特征与第一示例至第八示例中的任何一个相组合提供了第九示例。
该方法可以包括:神经网络输入传感器数据样本是图像数据样本。本段中提到的特征与第一示例至第九示例中的任何一个相组合提供了第十示例。
将该方法应用于图像可以例如允许用于自主驾驶或目视检查***的对象分类。特别是,它可以允许为用于自动驾驶和目视检查***的对象分类找到有意义的解释。
该方法可以包括:所述神经网络是贝叶斯神经网络BNN,其中对不确定性的估计是从由BNN的权重概率分布引发的预测不确定性中导出的。本段中提到的特征与第一示例至第十示例中的任何一个相组合提供了第十一示例。
使用BNN作为对输入传感器数据样本进行分类的神经网络使得能够捕捉包含在类别预测中的不确定性(的至少一部分),因为它们不再是点估计而是分布。更进一步地,使用BNN使得能够基于该引发的预测不确定性使用不确定性测量。
该方法可以包括:确定输入传感器数据样本和反事实数据样本之间的差异,将所确定的输入传感器数据样本和反事实数据样本之间的差异存储在存储装置中,以及基于至少所存储的差异来控制设备。本段中提到的特征与第一示例至第十一示例中的任何一个相组合提供了第十二示例。
基于所存储的输入传感器数据样本和反事实数据样本之间的差异,设备的控制器能够确定需要对神经网络进行哪些修改,从而以高置信度改变输入传感器数据样本的分类。例如,在制造处理/***中,诸如图1中图示的具有依赖于所学习的模型预测的(目视)检查***组件的制造处理/***中,可以在考虑样本(部件)被分类为“不好”的原因之后调整制造处理的控制参数。所存储的差异进一步使得能够检测出意外或关键的异常。在检测到这样的异常的情况下,控制器可以例如停止制造处理,将处理置于安全模式,提示人类操作员接管控制等。
一种用于确定使用神经网络为两个或更多个输入传感器数据样本确定的类别预测的可靠性的方法可以包括:根据第一至第十二示例中的任何一个为每个输入传感器数据样本生成反事实数据样本;为每个输入样本确定输入传感器数据样本和对应的反事实数据样本之间的差异;计算所确定的输入传感器数据样本和反事实数据样本之间的差异的至少一个统计信息;将所述至少一个统计信息对照至少一个预定义准则进行比较;以及基于比较的结果确定由神经网络进行的类别预测的可靠性。本段中提到的特征与第一示例至第十二示例中的任何一个相组合提供了第十三示例。
第十三示例的方法提供了一种安全的方式来确定模型需要多少“能量”(或“功”)来将给定输入不同地进行分类,并且通过计算关于将若干个输入传感器数据样本修改为反事实数据样本所需的“能量”的统计(诸如平均值和方差)并且将其与先前定义的阈值进行比较,使得能够找出潜在的已经被错误标记/错误分类的输入传感器数据样本,或者网络对于分类不确定的地方。
例如,如果修改输入传感器数据样本所必要的“能量”的量显著低于将输入传感器数据样本修改为反事实数据样本所需的“能量”的预期(平均)量,则所生成的反事实数据样本可能是对抗性的。在这样的情况下,所生成的反事实数据样本可以被丢弃和/或输入传感器数据样本可以被标记为(潜在地)被错误分类。更进一步地,取决于输入传感器数据样本的错误分类所需的“能量”的量,***可以自动标示潜在地被错误标记的输入传感器数据样本。
因此,该方法特别地可以用于使用神经网络来对输入传感器数据样本进行分类的***的验证和确认处理。
一种用于训练神经网络的方法可以包括:提供训练数据集的训练传感器数据样本;利用训练数据集来训练神经网络;根据第一至第十一示例中的任何一个生成一个或多个反事实;将所生成的一个或多个反事实添加到训练数据集以获得增强的训练数据集;以及利用增强的训练数据集来训练神经网络和/或另一个神经网络。本段中提到的特征与第一示例至第十三示例中的任何一个相组合提供了第十四示例。
第十四示例的方法使得能够细化现有的模型/数据集,以获得被更好地训练且更鲁棒的神经网络,或者从头训练新的模型/神经网络。特别地,在原始模型的决策边界在输入传感器数据样本附近高度非线性的情况下(指示可能被错误分类的样本),将新生成的反事实数据样本用作增强的训练数据集中的附加数据样本将有助于使决策边界平滑。
用于确定类别预测的可靠性的方法可以包括:输入传感器数据样本和反事实数据样本是包括单独数据元素的数据阵列,并且输入传感器数据样本和对应的反事实数据样本之间的差异是输入传感器数据样本的数据元素和对应的反事实数据样本的元素之间的差异的总和。本段中提到的特征与第十四示例相组合提供了第十五示例。
用于确定类别预测的可靠性的方法可以包括:所述至少一个预定义准则是预定义阈值。本段中提到的特征结合第十四或第十五示例提供了第十六示例。
用于确定类别预测的可靠性的方法可以包括:当不满足所述至少一个预定义准则时输出警报信号。本段中提到的特征与第十四至第十六示例中的任何一个相组合提供了第十七示例。
反事实生成设备可以被配置为执行第一示例至第十七示例中的任何一个的方法。本段中提到的设备提供了第十八示例。
车辆可以包括:提供输入传感器数据样本的至少一个传感器和被配置为根据第一至第十七示例中的任何一个生成反事实数据样本的驾驶辅助***,其中驾驶辅助***被配置为基于所述至少一个输入传感器数据样本和所生成的反事实数据样本之间的差异来控制车辆。本段中提到的特征提供了第十九示例。
车辆可以包括:对车辆进行控制包括控制车辆的致动器。本段中提到的特征与第十九示例相组合提供了第二十示例。
车辆可以包括:输入传感器数据样本是图像,以及基于输入传感器数据样本和反事实数据样本之间的差异来控制车辆包括确定该差异是否在语义上对应于对于图像的类别预测。本段中提到的特征与第十九或第二十示例相组合提供了第二十一示例。
计算机程序可以具有程序指令,所述程序指令被配置为当被一个或多个处理器执行时,使所述一个或多个处理器执行根据第一示例至第十七示例中的一个或多个的方法。
计算机程序可以存储在机器可读存储介质中。
根据第一示例至第十七示例中的一个或多个的方法可以是计算机实现的方法。
附图说明
在附图中,相同的附图标记贯穿于不同视图通常指代相同的部件。附图不一定按比例绘制,相反通常将重点放在图示本发明的原理上。在以下描述中,参考以下附图描述了各种方面,其中:
图1示出了用于缺陷部件的检测的示例性制造***;
图2示出了自主驾驶环境中的对象分类的示例;
图3示出了神经网络的示例;
图4示出了反事实生成布置;
图5示出了图示用于确定由神经网络输出的结果的可靠性的示例性方法的流程图;
图6示出了图示用于使用神经网络生成反事实数据样本的示例性方法的流程图。
具体实施方式
下面的详细描述涉及随附附图,所述随附附图通过图示的方式示出了本公开的可以在其中实践本发明的具体细节和各方面。在不脱离本发明的范围的情况下,可以利用其它方面,并且可以进行结构、逻辑和电气改变。本公开的各种方面不一定是互斥的,因为本公开的一些方面可以与本公开的一个或多个其它方面相组合以形成新的方面。
在下文中,将更详细地描述各种示例。
图1示出了制造***100,其图示了用于缺陷部件的检测的示例。
在图1的示例中,部件101位于组装线102上。
控制器103包括数据处理组件,例如处理器(例如CPU(中央处理器))104和存储器105,存储器105用于存储控制器103根据其进行操作的控制软件以及处理器104对其进行操作的数据。
在该示例中,所存储的控制软件包括指令,所述指令在由处理器104执行时,使得处理器104实现检查***106,检查***106包括反事实生成***并且包含神经网络107(或者可能包含多个神经网络107)。
输入数据样本可以由数据阵列形成,其中每个数据阵列包括多个单独的数据元素。
反事实数据样本是所生成的数据样本,其具有与对应的输入数据样本不同的分类(当由神经网络107进行分类时)和/或与对应的输入数据样本显著不同的分类得分(例如,分类得分下降到预定阈值以下)。
存储在存储器105中的数据可以例如包括来自一个或多个图像源108(例如相机)的图像数据。图像可以包括表示一个或多个对象或模式的数据的集合。一个或多个图像源108可以例如输出部件101中的每一个的一个或多个灰度或彩色图片。一个或多个图像源108可以响应可见光或者诸如红外光或紫外光、超声波或雷达波、或其它电磁或声波信号之类的非可见光。
由神经网络107对图像数据进行分类。包含在检查***106中的反事实生成***提供了对由神经网络107进行的分类有多可靠的估计。
应当注意,对图像的分类可以被视为等同于对图像中所示出的对象的分类。如果原始图像示出多个对象或模式,则可以执行分割(可能由另一个神经网络),使得每个片段示出一个对象或模式,并且所述分段被用作图像分类神经网络的输入。
控制器103可以基于来自一个或多个图像源108的图像数据来确定部件101中的一个有缺陷。例如,如果部件满足所有质量准则,则神经网络107将该部件分类为“好”,否则,如果部件不满足至少一个质量准则,则该部件被分类为“不好”。
检查***106可以进一步提供对部件101被分类为“不好”的解释。通过设计,解释可以被约束于一组离散的可能性,例如部件的特定位置中的物理缺陷或诸如在制造期间的照明等的控制条件的改变。
在控制器103已经确定部件101有缺陷的情况下,它可以向错误处置模块110发送反馈信号109。反馈信号109包含为什么部件101被确定为有缺陷的解释,即代表原因的信息(诸如部件的特征)。
错误处置模块110然后可以使用反馈信号109来相应地适配制造***/处理。例如,解释示出部件在特定位置中有特定的物理缺陷。在该情况下,错误处置模块110可以修改制造处理的操作参数,诸如所施加的压力、热、焊接时间等,以降低这样的故障的风险。响应于有缺陷部件的对制造处理的操作参数的这种适配可以被看作类似于强化学习方法。
在由检查***106产生的解释根据预定义(和/或用户定义)准则是例如意外的或关键的情况下,错误处置模块110在接收到反馈信号109之后可以控制***(制造处理)以安全模式运行。
更进一步地,所述解释可以用于确定必须如何修改“不好”的图像,以便神经网络107将其分类为“好”。然后,该信息可以用于生成可以被合并到未来训练数据集中的新的数据样本,以细化所使用的基于一个或多个神经网络的深度学习模型(或者训练另一个模型)。由包含在检查***106中的反事实生成***生成的反事实数据样本也可以被添加到未来训练数据集,以细化所使用的深度学习模型。
应当注意的是,用于提供解释的“好”/“不好”分类只是反事实生成***可能在其中有帮助的一个具体示例。其它示例包括复杂场景的语义分割、标准对象分类、场景识别等。
除了由图1图示的***之外,可以通过学习解释和操作参数设置之间的对应关系来训练机器学习***,以学习制造***/处理的最佳操作参数设置。
与图1中所图示的***类似的***可以用于其它技术领域,例如,访问控制***、计算机控制的机器,诸如机器人、家用电器、电动工具或个人助理。
图2示出了用于自主驾驶场景中的对象检测的示例200。
在图2的示例中,车辆201(例如汽车、货车或摩托车),被提供有车辆控制器202。
车辆控制器202包括数据处理组件,例如处理器(例如CPU(中央处理器))203和存储器204,存储器204用于存储车辆控制器202根据其操作的控制软件和处理器203对其进行操作的数据。
例如,所存储的控制软件包括指令,所述指令在由处理器203执行时,使得处理器实现反事实生成***205和神经网络206(或者可能是多个神经网络206)。
存储在存储器204中的数据可以包括来自一个或多个传感器207的输入传感器数据。例如,所述一个或多个传感器207可以是获取图像的一个或多个相机。图像可以包括表示一个或多个对象或模式的数据集合。一个或多个传感器(相机)207可以例如输出车辆环境的灰度或彩色图片。所述一个或多个传感器207可以响应可见光或者诸如红外光或紫外光、超声波或雷达波或其它电磁或声波信号之类的非可见光。例如,传感器207可以输出雷达传感器数据,该数据测量距车辆201前方和/或后方的对象的距离。
神经网络206可以基于输入传感器数据(例如图像数据)来确定对象的存在,所述对象例如固定对象(诸如交通标志或道路标记)和/或移动对象(诸如行人、动物和其它车辆)。
反事实生成***205可以为输入图像、特别是为所确定的对象中的每一个提供反事实数据样本。反事实数据样本是生成的数据样本,其具有与对应的输入数据样本不同的分类(当被神经网络206分类时)和/或与对应的输入数据样本显著不同的分类得分(例如,分类得分下降到预定阈值以下)。
所生成的反事实数据样本可以是数据阵列,其中每个数据阵列包括多个单独的数据元素。特别地,反事实数据样本可以是生成的图像,该图像与对应的输入数据样本具有小的、优选可能的最小的差异量,同时具有不同的分类。
反事实数据样本和相关联的输入数据样本之间的差异可以(根据显著性表示方法)以显著图的形式表达。显著图可以通过突出显示输入数据样本的很可能与预测高度相关的部分,即通过标识对神经网络预测贡献最大的图像像素,来解释神经网络的预测(分类)。
车辆201可以由车辆控制器202根据对象的存在和所生成的反事实(对于反事实数据样本的简称)和/或对应的显著图的确定来控制。例如,车辆控制器202可以控制致动器208来控制车辆的速度,例如以致动车辆的制动器,或者可以提示人类驾驶员接管车辆201的控制。
在神经网络206在从一个或多个传感器207接收的输入图像中检测到对象,但是对应的显著图突出显示了图像的与所述对象语义上不相关联的部分的情况下,神经网络206的对象确定被确定为不可靠。例如,在神经网络确定车辆201附近的对象是公共汽车,但是对应的显著图突出显示了用于对象分类的图像中与公共汽车不相关联的部分(例如交通标志、另一车辆或天空)的情况下,那么认为没有对被标识为公共汽车的对象进行可靠的分类。
在这样的情况下,即当对象的分类被确定为不可靠时,控制器202可以从一个或多个图像传感器207请求新的图像,或者可以激活紧急程序,例如通过致动车辆的制动器来停止车辆201,或者可以提示人类驾驶员接管车辆的控制。
如图1和2图示的控制***的示例中所提到的,控制是基于由神经网络(或者可能是多个神经网络)执行的对象分类来执行的。
图3示出了神经网络300的示例,该神经网络300可以用于将输入传感器数据分类到预定义数量的类别中。
在该示例中,神经网络300包括一个输入层301、两个隐藏层302a和302b以及一个输出层303。
应当注意,神经网络300是用于分类目的的实际深度神经网络(例如深度前馈神经网络)的简化示例,其可以包括许多更多的处理节点和层。
输入数据对应于输入层301,并且通常可以被看作值的多维阵列,例如,输入图像可以被看作对应于图像的像素值的单个值的二维阵列。
来自输入层301的输入然后被连接到处理节点304。典型的节点304将每个输入与权重相乘,并将加权值相加。另外,节点304可以将偏置添加到总和中。权重可以被提供为具有经学习的均值和方差的分布,例如高斯分布。在这样的情况下,神经网络被称为贝叶斯神经网络,BNN。
节点304典型地每个后面都跟随有非线性激活函数305,例如整流线性单元、ReLU(
Figure 200998DEST_PATH_IMAGE002
)或sigmoid函数(
Figure 142409DEST_PATH_IMAGE003
)。所得到的值通常被输入到下一层。
如图3中所示,隐藏层302a和302b可以是全连接层,其中一层的每个节点连接到另一层的每个节点。
隐藏层也可以是非全连接层(或由非全连接层补充),例如在卷积神经网络情况下的卷积层或池化层、循环层或自注意力层。
在为分类而设计的神经网络(诸如神经网络300)中,输出层303从前面的隐藏层中的至少一个(例如从隐藏层302b)接收值。然后,可以由输出层例如通过对这些值应用softmax函数(
Figure 521438DEST_PATH_IMAGE004
,其中vi,i = 1,…,K,是由输出层接收的值)或sigmoid函数来将这些值转换成概率。输出向量中包含的最高概率值对应于类别预测。
在下文中,类别预测也可以被称为预测、预测类别标签或预测分类标签。
因此,输出层303的输出向量是概率向量,对于预定义类别中的每个,该概率向量指示输入传感器数据样本对应于预定义类别(例如,其示出了预定义对象)的概率。例如,假设一个数字的输入图像有10个预定义的类别(0,1,…,9),输出向量是由10个元素组成的向量,其中每个元素对应一个数字的概率。类别预测将是对应于输出向量中最高概率的数字。输出层303可以输出由概率值构成的整个向量,或者仅输出类别预测。
应当注意,在BNN的情况下,神经网络的输出预测是分布,而不是单独的(浮点)数。
为了使神经网络300能够对输入传感器数据、特别是图像数据进行分类,首先基于输入训练(图像)数据对神经网络300进行相应的训练。
在将包括深度神经网络的深度学习模型用于分类任务时的一个核心问题是,难以解释神经网络如何达到其分类输出。这在当大量模型参数允许对象类别之间的决策边界变得越来越复杂和非线性时尤其如此。
对于映射到决策边界附近的输入样本的预测不如距离决策边界更远的预测可信。假设输入样本遵循严重非线性边界附近的分布,则改变对于输入样本的预测所必要的“能量”的量(即“功”的量或总差异)小于决策边界平滑且不太精确符合样本分布的情况。改变对于输入样本的预测所必要的“能量”或“功”的量可以由例如将样本跨决策边界移动(即改变其分类)所需的对输入样本的(像素)改变/编辑的总数来表示。低的“能量”表示输入样本中为了使神经网络改变其分类所需要的改变较小。
在诸如图1中图示的制造***中,重要的是对将部件分类为“好”/“不好”具有高置信度和信任,并且因此,可能需要深度学习模型以对人类操作员而言可理解和/或合理的解释的形式提供其分类的理由。
这些解释通常是视觉解释的形式,诸如显著图,其突出显示图像的哪些部分对于神经网络获得其分类预测是最重要的。理想情况下,最对分类预测负责的像素应当与表示语义对象或部分的图像部分相关,即应当与人类操作者在确定图像上有什么对象时也会看到的图像部分相关。
反事实是具有与其所基于的输入样本不同的分类的数据样本,反事实的生成可以用作为神经网络/模型预测提供更好解释的一种方式。反事实可以用于探索给定模型的输入和输出之间的因果关系。更详细地说,反事实可以被设计成以“如果X不发生,那么Y就不会发生”或者可替代地,“如果Y发生,那么就暗示X已经发生”的形式来调查模型行为中的因果关系。这是通过分析用以生成对应输入数据样本的反事实所必要的“能量”来完成的。例如,在如图1中图示的制造***中,X可以被解释为“部件有缺陷”,而Y可以被解释为“部件被分类为不好”。
在实践中,使用反事实来增加神经网络的预测的可解释性的一个问题是对抗效应的存在,对抗效应是对输入数据样本做出小的改变,导致分类(得分)中的大的改变。
就边界描绘而言,这些对抗效应可以被解释为由反事实生成处理采取的捷径。人类操作员在显著图上观察到改变几个随机像素导致神经网络改变其分类可能是无用的。为了理解模型的预测并能够验证和确认模型,重要的是解释是有意义的,即,对分类(得分)的改变负有最大责任的像素与表示语义对象或部分的图像部分——即人类操作者在对对象进行分类时也可能看到的图像部分——相关。然而,模型越复杂,解释将越不可能是有意义的和/或由人类操作员可理解的,并且对抗效应越有可能是分类(得分)改变的原因。
因此,合期望的是生成避免对抗效应的反事实,并且其因此提供描述给定输入样本附近的模型决策边界的有意义的解释。
根据一个实施例,提供了一种反事实生成方法和***,其允许通过对反事实生成器采用不确定性正则化项来允许减少/减轻对抗效果。
根据进一步的实施例,提供了一种训练神经网络的方法,该方法允许将由所提供的反事实生成方法和***生成的反事实数据样本添加到训练数据集,这允许使神经网络更加鲁棒并且平滑输入传感器数据样本附近的(高度)非线性决策边界。
下面,利用图像数据解释反事实生成处理。应当注意,所提出的方法和***不限于与作为输入数据的图像一起使用,而是还可以用于诸如视频、声音、雷达等的其它数据类型,一般来说,可以用于可以针对其定义有效的数据生成处理的任何类型的数据。
图4示出了根据一个实施例的反事实生成布置400。
反事实生成布置400包括(深度学习)分类模型401,在下文中是例如对应于神经网络300的神经网络,以及输入数据样本402,在下文中是用于模型401的输入图像。输入数据样本402例如由一个或多个传感器提供,所述传感器在下文中是图像传感器。
输入图像402由神经网络401进行分类,神经网络401为输入图像中的每个输出分类O。
反事实生成设备400实现生成反事实的反事实(数据)生成处理403,即生成具有不同于对应输入图像402的分类O的分类O’的数据样本。
对于给定输入图像402的分类模型401的局部行为的解释是通过使输入图像经历反事实生成处理403并评估O的因果效应而导出的。
在下文中,描述了示例性反事实生成处理403。注意,许多其它类型的数据(反事实)生成处理,例如在生成式对抗网络GAN的帮助下建模的处理,可以用于构建反事实。
Figure 899199DEST_PATH_IMAGE005
标注例如由神经网络401实现的预测函数,其将输入空间X映射到输出空间Y。
在该示例中,反事实生成处理403是在其期间掩模
Figure 389086DEST_PATH_IMAGE006
被细化的处理。掩模m的大小与输入图像相同,并输出[0,1]范围中的元素。在反事实生成处理403的每次迭代中,将掩模m应用于输入图像402中的一个(将针对其生成反事实),从而导致扰动图像,将标量值
Figure 653845DEST_PATH_IMAGE007
与每个像素
Figure 407037DEST_PATH_IMAGE008
关联。
针对掩模m和输入图像
Figure 85143DEST_PATH_IMAGE009
的扰动图像的像素值u如下给出:
Figure 316405DEST_PATH_IMAGE010
(1)
其中
Figure 763566DEST_PATH_IMAGE011
是表示扰动的函数。例如,
Figure 405769DEST_PATH_IMAGE011
可以是每个像素的独立且同分布(i.i.d.)的高斯噪声样本、固定颜色、椒盐噪声、颜色去饱和、局部仿射变换等。
对于给定像素u,如果该像素处的掩模等于1,则在该像素处显示原始图像。如果掩模值为零,则显示预先选择的扰动目标的像素值。扰动目标是先验选取的,并且表示可以根据其修改图像的“规则”。例如,如果选取全黑图像作为扰动目标,那么处理P将尝试向原始输入图像I添加黑色像素。掩模m在0和1这两个极值之间进行插值。
反事实生成处理403使用简单的、未细化的掩模——例如随机掩模、默认掩模或者在使用GAN来生成反事实的情况下的随机输入——来生成第一候选反事实404。
反事实生成***412的目标是找到引起分类得分
Figure 571171DEST_PATH_IMAGE012
显著下降的最小掩模,其中c是输入数据样本的类别,并且
Figure 606123DEST_PATH_IMAGE013
指代输出层中类别c的输入x的输出分类得分。
合期望的是掩模具有进一步的特性,例如是斑点状的,这例如对于密集场景识别中的图像有帮助。理想情况下,掩模还不应当太过依赖于局部图像伪影。
将所有这些考虑在内,找到合适的掩模m可以例如被公式化为以下优化问题:
Figure 111054DEST_PATH_IMAGE014
(2)
在当前上下文中,应当注意的是,优化被理解为是基于某一时间段或某一迭代次数的优化。因此,上述优化问题只能例如经由随机梯度下降来近似求解。
在上面的等式(2)中,
Figure 737208DEST_PATH_IMAGE015
鼓励关闭大部分掩模,即仅删除输入图像
Figure 327589DEST_PATH_IMAGE016
的小的子集。等式(2)的第二项迫使掩模相对于输入改变其分类得分,并且等式(2)的第三项具有通过使用总变差范数将掩模正则化来使掩模更加呈斑点状的效果。最后,利用等式(2)的第四项,掩模被计算为原始输入图像的抖动版本的平均值,从而避免它太过依赖于局部图像伪影。
然而,对于使用诸如由等式(2)所描述的优化问题的数据生成处理403,尽管有等式(2)的第一项和第三项,但是不想要的掩模/反事实、特别是对抗掩模仍然是一个问题。也就是说,由数据生成处理403返回的掩模通常表示不对应于人类操作员可理解的语义对象的对抗掩模。
因此,在本示例中,为了避免不想要的/对抗的掩模,通过求解总损失函数
Figure 897723DEST_PATH_IMAGE017
411的最小化问题来确定掩模m。最小化问题例如可以公式化为:
Figure 257160DEST_PATH_IMAGE018
(3)
因此,在每次迭代中,m*应当比在之前的迭代中更小。
应当注意,最小化被理解为是基于某一时间段或某一迭代次数的最小化。因此,上述最小化问题只能近似求解。
在***406中为当前候选反事实404计算总损失函数411,并且结果被反馈(由箭头413图示)到反事实生成处理403,反事实生成处理403相应地使掩模m适配所计算的总损失函数411,并且然后将适配的掩模应用于输入图像402,从而修改当前候选反事实404。
在405处,最后一次迭代产生最后的反事实数据样本输出。
第k次迭代中的总损失函数411包括由
Figure 523056DEST_PATH_IMAGE019
标注的项407、由
Figure 850001DEST_PATH_IMAGE020
标注的项409以及可选地由
Figure 492335DEST_PATH_IMAGE021
标注的进一步的项410,诸如例如进一步的损失正则化项。因此,要在第k次迭代中最小化的总损失函数
Figure 706279DEST_PATH_IMAGE022
411由以下等式给出:
Figure 939814DEST_PATH_IMAGE023
(4)。
Figure 239209DEST_PATH_IMAGE019
标注的项407是在反事实生成期间的(子)损失的测量,并且可以例如以如下方式来公式化:
Figure 216392DEST_PATH_IMAGE024
(5)
其中,I是输入图像402,
Figure 554617DEST_PATH_IMAGE025
是迭代k处对候选反事实的修改,
Figure 959054DEST_PATH_IMAGE026
是第k次迭代中数据生成处理403的输出,
Figure 11324DEST_PATH_IMAGE027
是模型401的输入到输出映射(例如,softmax层的输出),并且函数
Figure 464302DEST_PATH_IMAGE028
是选取损失量度,例如p-范数或交叉熵。
因此,项
Figure 715154DEST_PATH_IMAGE029
特别地可以被看作包括神经网络的输出的项,例如softmax层的输出,即softmax值。
函数
Figure 228175DEST_PATH_IMAGE030
是可选的,并且是返回输入I的反事实输出的函数,因此反事实目标类别408可以是对
Figure 564479DEST_PATH_IMAGE031
407的输入。例如,如果分类“汽车”在输出中被编码为[0,1],并且分类“自行车”被编码为[1,0],并且优化旨在从汽车的图像(汽车样本)开始创建自行车反事实,则
Figure 70415DEST_PATH_IMAGE032
。因此,项
Figure 847878DEST_PATH_IMAGE033
407是当利用函数
Figure 797380DEST_PATH_IMAGE034
明确给出反事实目标类别时的反事实损失。可替代地,在反事实的特定类别不相关的情况下,可以省略函数
Figure 355400DEST_PATH_IMAGE034
。然后,汽车的反事实例如不是通过迫使模型明确地将其误认为自行车而生成的,而是针对输出Y中包含的任何其它类别而生成的。
为了避免对抗掩模,或者至少减少它们/减轻它们的影响,对神经网络在其预测中的不确定性的测量(估计)被引入作为总损失函数411中由
Figure 665028DEST_PATH_IMAGE020
标注的附加项409(不确定性损失)。
神经网络传统上使用点估计,其给出在给定输入x和权重配置W的情况下,类别y的区分概率
Figure 624893DEST_PATH_IMAGE035
,作为所有其它可能类别的函数。换句话说,神经网络的输出表示输入数据样本属于相应类别的概率。然而,这些点估计不适合被解释为置信度或确定性值,并且不能区分类别预测中的不确定性的根本原因是数据本身的特性(例如传感器噪声)还是模型的特性(例如模型没有在作为测试集一部分的特定类型的数据上训练)。特别地,由神经网络的softmax层输出的分类得分不适合提供对神经网络在其预测中的置信度的测量这一事实可以例如在神经网络输出对抗者的分类得分时观察到,所述对抗者尽管被网络错误分类,但是通常具有高的分类得分。
因此,为了获得对神经网络在其预测中的不确定性的测量,不确定性估计方法利用置信度估计来扩展点预测,即,允许模型在进行预测的同时测量模型对预测有多少置信度,并且进一步给出不确定性来自哪里、模型还是数据的测量。
为此,BNN可以用作神经网络401,即,其中每个权重被建模为具有经学习的均值和方差的分布(通常是高斯分布)的神经网络,所述神经网络被用于提供不确定性测量。
在BNN中,权重分布的方差描述了观察到给定权重的可能性,并且因此测量不确定性来作为与经学***均值的距离。输出预测也是以该方式建模的。找到权重需要计算后验概率
Figure 479717DEST_PATH_IMAGE036
,其中X是训练点,Y是对应的预测,并且W是我们想要找到的权重。计算该后验概率通常是棘手的,因为所需项
Figure 790613DEST_PATH_IMAGE037
的计算在所有可能的权重配置上进行边缘化(平均),这在具有许多权重的大型神经网络中是棘手的任务。然而,有几种方法可以找到该后验概率的(数值)近似值。
然而,应当注意,不确定性估计不需要使用BNN,可以使用允许不确定性估计分析的任何网络。
例如,在神经网络401使用点估计的情况下,可以使用蒙特卡罗随机失活(dropout)方法。对于蒙特卡罗随机失活方法,应用了一定百分比的节点的随机失活。因此,预测不再是确定性的,而是取决于随机选取保留哪些节点。因此,在给定相同的输入图像的情况下,模型每次可以预测不同的值,即蒙特卡罗随机失活可以生成不同的预测,并将它们解释为来自概率分布的样本,这有时被称为贝叶斯解释。
上述两种类型的不确定性中的第一种通常被称为偶然不确定性,它是由传感器输入数据样本中固有的噪声(例如传感器噪声或运动噪声)引起的不确定性。即使收集了更多的数据,也无法减少偶然不确定性。
第二种类型的不确定性通常被称为认知不确定性,它计及了模型参数中的不确定性,即模型的质量,并且表示模型基于其训练数据不能预测的东西。可以利用更多的训练数据来减少认知不确定性,即给定无限的训练数据,认知不确定性将为零。
应当注意,使用BNN作为分类器允许输出预测分布,而不是点估计。当在(近似的)权重后验分布上进行边缘化时,BNN的权重中的不确定性引发了预测的不确定性。因此,使用BNN作为分类器使得能够捕捉神经网络的预测不确定性。
偶然不确定性进一步区分为同方差不确定性和异方差不确定性,在同方差不确定性中,对于不同输入,不确定性保持恒定,在异方差不确定性中,不确定性取决于对模型的输入,一些输入可能比其它输入具有更多的噪声输出,例如,由于遮挡和眩光等,场景中的不同区具有不同的不确定性。
在不确定性测量中也可以考虑偶然不确定性。这可以例如通过在模型的输出上放置一个分布——例如通过将高斯随机噪声添加到输出——来实现,由此同方差模型对于每个输入点(像素)假设一个恒定噪声,而异方差模型取决于区/输入点(像素)假设一个变化的噪声。在非贝叶斯神经网络中,噪声参数通常是固定的,作为模型权重衰减的一部分,并被忽略,但是可以使其取决于数据,并作为数据的函数来学习。
因此,不确定性项409可以建模(反映)包含在输入图像中的认知不确定性、包含在输入图像中的偶然不确定性或这两种不确定性的组合。
Figure 389084DEST_PATH_IMAGE020
标注的损失项409合并了经由反事实生成处理403生成的对于当前(中间)候选反事实数据样本的不确定性测量。不确定性项409的较低值指示神经网络401在其分类中的较高置信度。这意味着在总损失函数411的最小化处理中,模型401对其分类具有较高置信度的数据样本将受到青睐。
因此,该方法丢弃了潜在的不想要的或无用的反事实、特别是利用对抗掩模获得的反事实,并且因此使得能够获得关于神经网络如何对图像进行分类的有意义的解释。
不确定性项409可以例如基于在上面提到的随机失活蒙特卡罗方法来确定,其中对于单个输入图像402的预测整体可以被解释为是概率分布的样本。不确定性项409反映了该分布是否具有预期形式,例如该分布预期为高斯分布,或者它是否具有意外形式,例如该分布预期为高斯分布但具有比预期更大的尾部。
在BNN的情况下,不确定性项409可以基于预测的分布来确定,并且反映预测的分布的意外形式。
进一步地,可以使用更复杂的方法来确定不确定性项409,诸如例如在上面提到的Alex Kendall 和Yarin Gal的论文“What Uncertainties Do We Need in Bayesian DeepLearning for Computer Vision
Figure 203456DEST_PATH_IMAGE038
”中所描述的方法。
应当注意,不同的不确定性估计
Figure 494760DEST_PATH_IMAGE020
将对原始模型401施加关于训练、架构等的不同要求。
Figure 27373DEST_PATH_IMAGE022
标注的总损失函数411可以包括进一步的(损失)项410,诸如例如进一步的损失正则化项。
在最小化(优化)处理结束时,在405处,由反事实生成***412输出最终的反事实。
反事实生成***412因此包括利用反事实生成处理403并且利用***406迭代地优化候选反事实404的循环。
405处的最终反事实输出和原始输入图像402之间的差异可以被可视化为显著图,从而突出显示每个空间位置处为了使模型产生在其中模型401具有一定(高)置信度的不同分类所必要的差异。
由图4所图示的反事实生成布置进一步使得能够给出对于模型/神经网络对给定输入进行不同分类需要多少“能量”的可靠测量。这对于模型验证和确认目的来说是一个有用的测量。这可以进一步用于控制机器和/或处理。
图5示出了流程图500,其图示了用于通过测量模型改变给定输入图像的分类需要多少“能量”来确定由神经网络输出的结果的可靠性的示例性方法。
在步骤501中,几个样本,例如一批样本,被用作神经网络的输入。
在步骤502中,针对每个输入样本运行图4中所图示的反事实生成***。
在步骤503中,对于每个输入样本,记录生成(最终)反事实所需的总“能量”。例如,所需总“能量”的测量可以是(最终)优化掩模中所有活动元素的总和。
在步骤504中,计算步骤503的结果的统计。例如,在所有(或一部分)输入上计算总“能量”的均值和方差。
在步骤505中,将步骤504的所计算的统计(诸如平均值和方差)对照某些准则进行比较,所述准则例如所需总“能量”的平均值和方差的预定义阈值,并且在不满足所述准则的情况下,例如在不满足预定阈值的情况下,提供反馈信号,该反馈信号可以采取返回单独的或几个输入样本的形式。
总而言之,如图6中所图示的,根据各种实施例,提供了一种用于基于输入数据样本为神经网络生成反事实数据样本的方法。
在步骤601中,使用神经网络,确定对于输入传感器数据样本的类别预测。
在步骤602中,生成神经网络针对其确定与输入传感器数据样本不同的类别预测的候选反事实数据样本。
在步骤603中,确定损失函数,其中损失函数包含代表由神经网络针对候选反事实数据样本所做出的类别预测的不确定性的项。
在步骤604中,基于所确定的损失函数修改候选反事实数据样本,以获得反事实数据样本。
在步骤605中,输出反事实数据样本。
根据各种实施例,换句话说,基于损失函数的优化处理生成和修改候选反事实数据样本,其中损失函数包括考虑神经网络的预测不确定性的项,换句话说,其考虑包含在神经网络的类别预测中的偶然和/或认知不确定性。候选反事实数据样本的修改的结果是反事实数据样本,然后输出反事实数据样本。
应当注意,“基于损失函数的优化处理”意味着在每次迭代中,为了减少(优化)损失函数,对权重和/或其它参数进行调整。优化处理可能仅持续某一时间段或某一迭代次数,即优化问题可能仅被近似求解。
图6的方法可以由一个或多个处理器来执行。术语“处理器”可以理解为允许处理数据或信号的任何类型的实体。例如,可以根据由处理器执行的至少一个(即,一个或多于一个)特定功能来处理数据或信号。处理器可以包括模拟电路、数字电路、复合信号电路、逻辑电路、微处理器、中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器(DSP)、可编程门阵列(FPGA)集成电路或其任意组合,或者从其中形成。将在下面更详细地描述的实现相应功能的任何其它方式也可以被理解为处理器或逻辑电路。应当理解,本文中详细描述的方法步骤中一个或多个可以由处理器通过该处理器执行的一个或多个特定功能来执行(例如,实现)。
图6的方法可以用于从任何传感器接收传感器信号的神经网络,即对诸如视频、雷达、LiDAR、超声波和运动的任何种类的输入传感器数据进行操作。
应当特别注意的是,输入数据不限于图像,而是也可以应用于任何类似图像的数据(例如,以一个或多个二维或还有更高维阵列的形式构造的数据),诸如声音的频谱图、雷达频谱、超声图像等。此外,原始1D(例如音频)或3D数据(视频或RGBD(红、绿、蓝深度)数据)也可以用作输入。
尽管本文已经图示和描述了特定的实施例,但是本领域普通技术人员应当领会,在不脱离本发明的范围的情况下,各种替代和/或等效的实现可以替代所图示和描述的特定实施例。本申请旨在覆盖本文讨论的特定实施例的任何适配或变型。因此,旨在仅由权利要求及其等同物来限制本发明。

Claims (12)

1.一种计算机实现的方法(600),用于基于输入图像数据样本(402)为图像数据分类神经网络(300,401)生成反事实图像数据样本(405),所述计算机实现的方法(600)包括:
使用神经网络确定(601)对于输入图像数据样本的类别预测;
生成(602)神经网络针对其确定与输入图像数据样本不同的类别预测的候选反事实图像数据样本(404 );
确定对于候选反事实图像数据样本的类别预测的不确定性的估计(409),其中对不确定性的估计是从通过使用蒙特卡罗随机失活方法引发的预测不确定性导出的,或者其中所述图像数据分类神经网络是贝叶斯神经网络BNN,并且对不确定性的估计是从由BNN的权重概率分布引发的预测不确定性导出的;
确定(603)损失函数(411),其中损失函数包括对由神经网络对于候选反事实图像数据样本做出的类别预测的不确定性(409)的估计;
基于所确定的损失函数,修改(604)候选反事实图像数据样本,以获得反事实图像数据样本;和
输出(605)反事实图像数据样本。
2.根据权利要求1所述的计算机实现的方法,包括:
迭代地生成(403)候选反事实图像数据样本序列,其中,在每次迭代中,基于所确定的损失函数,当前候选反事实被修改为随后的候选反事实,或者当前候选反事实被接受作为反事实图像数据样本。
3.根据权利要求2所述的计算机实现的方法,包括:
如果所确定的损失函数高于预定阈值,则将当前候选反事实修改为随后的候选反事实,并且如果所确定的损失函数低于预定阈值,则接受当前候选反事实。
4.根据权利要求1至3中任一项所述的计算机实现的方法,其中所述损失函数包括第一项(407),所述第一项包含神经网络对于输入图像数据样本的输出,以及第二项(409),所述第二项包含对于候选反事实图像数据样本的类别预测的不确定性的估计。
5.根据权利要求1至4中任一项所述的计算机实现的方法,其中所述损失函数进一步包含代表所述输入图像数据样本和所述反事实图像数据样本之间的差异的项。
6.根据权利要求1至5中任一项所述的计算机实现的方法,其中所述损失函数进一步包含指示要由所述神经网络生成的对于反事实图像数据样本的目标类别的项(408)。
7.根据权利要求1至6中任一项所述的计算机实现的方法,其中生成候选反事实数据样本包括将掩模应用于输入图像数据样本,并且其中修改候选反事实图像数据样本包括修改掩模。
8.根据权利要求1至7中任一项所述的计算机实现的方法,其中所述神经网络是贝叶斯神经网络BNN,其中,对所述不确定性的估计是从由BNN的权重概率分布引发的预测不确定性中导出的。
9.根据权利要求1至8中任一项所述的计算机实现的方法,包括:
确定图像数据样本和反事实图像数据样本之间的差异;
将所确定的图像数据样本和反事实数据样本之间的差异存储在存储器中;和
基于至少所存储的差异来控制设备。
10.一种计算机实现的方法(500),用于使用图像数据分类神经网络来确定为两个或更多个输入图像数据样本确定的类别预测的可靠性,所述计算机实现的方法(500)包括:
使用权利要求1至9中任一项所述的方法为每个输入图像数据样本生成(502)反事实图像数据样本;
为每个输入样本确定(503)输入图像数据样本和对应的反事实图像数据样本之间的差异;
计算(504)输入图像数据样本和反事实图像数据样本之间的所确定的差异的至少一个统计信息;
将所述至少一个统计信息对照至少一个预定义准则进行比较(505 );和
基于比较的结果,确定由神经网络做出的类别预测的可靠性。
11.一种训练图像数据分类神经网络的计算机实现的方法,包括:
提供训练数据集的训练图像数据样本;
利用所述训练数据集训练神经网络;
根据权利要求1至8中的任一项生成一个或多个反事实图像数据样本;
将所生成的所述一个或多个反事实图像数据样本添加到所述训练数据集,以获得增强的训练数据集;和
利用所述增强的训练数据集训练神经网络和/或另外的神经网络。
12.一种反事实生成设备,被配置为执行权利要求1至11中任一项所述的方法。
CN202010985612.6A 2019-09-20 2020-09-18 用于为神经网络生成反事实数据样本的设备和方法 Pending CN112541520A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP19198520.9 2019-09-20
EP19198520.9A EP3796228A1 (en) 2019-09-20 2019-09-20 Device and method for generating a counterfactual data sample for a neural network

Publications (1)

Publication Number Publication Date
CN112541520A true CN112541520A (zh) 2021-03-23

Family

ID=67998240

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010985612.6A Pending CN112541520A (zh) 2019-09-20 2020-09-18 用于为神经网络生成反事实数据样本的设备和方法

Country Status (3)

Country Link
US (1) US20210089895A1 (zh)
EP (1) EP3796228A1 (zh)
CN (1) CN112541520A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112988851A (zh) * 2021-04-27 2021-06-18 腾讯科技(深圳)有限公司 反事实预测模型数据处理方法、装置、设备及存储介质
CN113378655A (zh) * 2021-05-24 2021-09-10 电子科技大学 一种基于深度神经网络的对抗性能量分解方法
CN114491261A (zh) * 2022-01-27 2022-05-13 北京有竹居网络技术有限公司 用于获得推荐解释的方法、设备和计算机可读介质
CN114637921A (zh) * 2022-05-12 2022-06-17 中国科学技术大学 基于建模偶然不确定性的物品推荐方法、装置和设备
CN115270634A (zh) * 2022-08-04 2022-11-01 南京航空航天大学 一种适用于自主空战领域的反事实解释生成方法及***
WO2022228251A1 (zh) * 2021-04-26 2022-11-03 华为技术有限公司 一种车辆驾驶方法、装置及***
CN117077761A (zh) * 2023-07-31 2023-11-17 浙江大学 一种基于反事实对比的深度神经网络模型可视化解释方法及***

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11734592B2 (en) 2014-06-09 2023-08-22 Tecnotree Technologies, Inc. Development environment for cognitive information processing system
US11645620B2 (en) 2019-03-15 2023-05-09 Tecnotree Technologies, Inc. Framework for explainability with recourse of black-box trained classifiers and assessment of fairness and robustness of black-box trained classifiers
US20210097382A1 (en) * 2019-09-27 2021-04-01 Mcafee, Llc Methods and apparatus to improve deepfake detection with explainability
CN113034424A (zh) * 2019-12-24 2021-06-25 中强光电股份有限公司 模型训练方法与电子装置
US11393182B2 (en) 2020-05-29 2022-07-19 X Development Llc Data band selection using machine learning
WO2023012351A1 (en) * 2021-08-05 2023-02-09 Telefonaktiebolaget Lm Ericsson (Publ) Controlling and ensuring uncertainty reporting from ml models
US11880464B2 (en) * 2021-08-18 2024-01-23 General Electric Company Vulnerability-driven cyberattack protection system and method for industrial assets
CN113824725B (zh) * 2021-09-24 2023-04-07 中国人民解放军国防科技大学 一种基于因果机器学习的网络安全监测分析方法与***
JP7452563B2 (ja) * 2022-03-03 2024-03-19 横河電機株式会社 装置、方法およびプログラム
DE102022205139A1 (de) 2022-05-23 2023-11-23 Robert Bosch Gesellschaft mit beschränkter Haftung Ermitteln universeller Störungs-Patches für Machine Learning-Modelle zur Bildanalyse

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112567398A (zh) * 2018-08-10 2021-03-26 维萨国际服务协会 用于匹配不同输入数据的技术
US10825148B2 (en) * 2018-11-29 2020-11-03 Adobe Inc. Boundary-aware object removal and content fill
US11042803B2 (en) * 2019-02-14 2021-06-22 General Electric Company Method and apparatus for using generative adversarial networks in magnetic resonance image reconstruction
US20210019541A1 (en) * 2019-07-18 2021-01-21 Qualcomm Incorporated Technologies for transferring visual attributes to images
US11373064B2 (en) * 2019-07-22 2022-06-28 Raytheon Company Cross-modality automatic target recognition

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022228251A1 (zh) * 2021-04-26 2022-11-03 华为技术有限公司 一种车辆驾驶方法、装置及***
CN112988851B (zh) * 2021-04-27 2021-07-27 腾讯科技(深圳)有限公司 反事实预测模型数据处理方法、装置、设备及存储介质
CN112988851A (zh) * 2021-04-27 2021-06-18 腾讯科技(深圳)有限公司 反事实预测模型数据处理方法、装置、设备及存储介质
CN113378655A (zh) * 2021-05-24 2021-09-10 电子科技大学 一种基于深度神经网络的对抗性能量分解方法
CN113378655B (zh) * 2021-05-24 2022-04-19 电子科技大学 一种基于深度神经网络的对抗性能量分解方法
CN114491261A (zh) * 2022-01-27 2022-05-13 北京有竹居网络技术有限公司 用于获得推荐解释的方法、设备和计算机可读介质
CN114491261B (zh) * 2022-01-27 2024-05-14 北京有竹居网络技术有限公司 用于获得推荐解释的方法、设备和计算机可读介质
CN114637921B (zh) * 2022-05-12 2022-09-09 中国科学技术大学 基于建模偶然不确定性的物品推荐方法、装置和设备
CN114637921A (zh) * 2022-05-12 2022-06-17 中国科学技术大学 基于建模偶然不确定性的物品推荐方法、装置和设备
CN115270634A (zh) * 2022-08-04 2022-11-01 南京航空航天大学 一种适用于自主空战领域的反事实解释生成方法及***
CN115270634B (zh) * 2022-08-04 2023-10-20 南京航空航天大学 一种适用于自主空战领域的反事实解释生成方法及***
CN117077761A (zh) * 2023-07-31 2023-11-17 浙江大学 一种基于反事实对比的深度神经网络模型可视化解释方法及***
CN117077761B (zh) * 2023-07-31 2024-03-26 浙江大学 一种基于反事实对比的深度神经网络模型可视化解释方法及***

Also Published As

Publication number Publication date
US20210089895A1 (en) 2021-03-25
EP3796228A1 (en) 2021-03-24

Similar Documents

Publication Publication Date Title
CN112541520A (zh) 用于为神经网络生成反事实数据样本的设备和方法
Feng et al. A review and comparative study on probabilistic object detection in autonomous driving
KR20190136893A (ko) 강건한 자동화 학습 시스템을 생성하고 훈련된 자동화 학습 시스템을 시험하기 위한 방법, 장치 및 컴퓨터 프로그램
US11531899B2 (en) Method for estimating a global uncertainty of a neural network
US20210125061A1 (en) Device and method for the generation of synthetic data in generative networks
US20230386167A1 (en) System for detection and management of uncertainty in perception systems
CN112149491A (zh) 用于确定探测到的对象的信任值的方法
CN113811894B (zh) 对车辆的驾驶功能的ki模块的监测
CN112241757A (zh) 用于操作神经网络的设备和方法
WO2022171428A1 (en) Computer-implemented method for generating reliability indications for computer vision
US20230260259A1 (en) Method and device for training a neural network
CN112241758A (zh) 用于评估显著性图确定器的设备和方法
US20230031755A1 (en) Generative adversarial network for processing and generating images and label maps
EP3696771A1 (en) System for processing an input instance, method, and medium
US20220383146A1 (en) Method and Device for Training a Machine Learning Algorithm
EP4341913A2 (en) System for detection and management of uncertainty in perception systems, for new object detection and for situation anticipation
US20210390419A1 (en) Device and Method for Training and Testing a Classifier
KR20210127638A (ko) 분류기를 훈련하고 분류기의 강건성을 평가하기 위한 디바이스 및 방법
CN112149790A (zh) 用于检查人工神经网络的鲁棒性的方法和设备
CN113302630A (zh) 改进针对“对抗示例”的鲁棒性的设备和方法
US20230351741A1 (en) Method and device for training a neural network
EP3893160A1 (en) System, apparatus and method for evaluating neural networks
CN116263884A (zh) 用于确定机器学习***的数据集关于触发事件的覆盖率的方法和装置
Yu et al. Uncertainty Quantification for Bird's Eye View Semantic Segmentation: Methods and Benchmarks
JP2022519594A (ja) 敵対的サンプルに対するロバストネスを改善するためのデバイス及び方法

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