主要内容

咬合敏感性

通过遮挡输入来解释网络预测

描述

示例

太纪念碑= occlusionsentivity(X.标签计算所指定的类的分类分数的变化的地图标签当部分输入数据时X.用面具堵塞。分类评分的变化相对于未闭塞的原始数据。封闭掩码在输入数据上移动,为每个掩码位置的分类分数进行更改。使用遮挡图来识别输入数据的部分,这些数据大部分影响分类分数。具有较高正值的地图中的区域对应于对指定分类标签贡献的输入数据区域。网络必须包含一个softmaxlayer.其次是A.分类层

ActivationMap.= occlusionsentivity(X.渠道计算输入数据的部分时,计算指定图层和通道的总激活的变化的映射X.用面具堵塞。激活分数的变化是相对于没有闭塞的原始数据。具有较高正值的地图中的区域对应于通过对该频道的所有空间维度进行求和而获得的输入数据区域积极贡献。

___= occlusionsentivity(___名称,价值除了以前语法中的输入参数之外,使用一个或多个名称值对参数指定选项。例如,'stride',50将遮挡掩模的步幅设置为50像素。

例子

崩溃

导入佩带的网络googlenet。

net = googlenet;

导入图像并调整大小以匹配网络的输入大小。

x = imread(“sherlock.jpg”);InputSize = Net.Layers(1).Inputsize(1:2);x = imresize(x,输入);

显示图像。

imshow(x)

图包含轴。轴包含类型图像的对象。

将图像分类以获取类标签。

标签=分类(NET,x)
标签=分类金猎犬

使用咬合敏感性确定图像的哪些部分积极影响分类结果。

scoremap = occlusionsity(net,x,标签);

绘制原始图像的结果,具有透明度,以查看图像的哪个区域会影响分类分数。

图imshow(x)持有ImageC(ScoreMap,'alphadata',0.5);COLOROMAP.喷射器

图包含轴。轴包含2个类型图像的对象。

地图的红色部分显示了对指定标签具有积极贡献的区域。狗的左眼和耳朵强烈影响网络的预测金猎犬

您可以使用梯度类激活映射(Grad-Cam)技术获得类似的结果。Grad-CAM使用分类得分的梯度相对于网络中的最后一个卷积层,以便理解图像的哪些部分对分类最重要。例如,看到Grad-Cam揭示为什么深入学习决策

输入参数

崩溃

训练有素的网络,指定为a系列网络对象或A.Dagnetwork.对象。您可以通过导入预磨损的网络或使用您自己的网络使用培训的网络来获得培训的网络Trainnetwork.功能。有关佩带网络的更多信息,请参阅普里德深度神经网络

必须包含单个输入层。输入层必须是一个imageInputlayer.

观察侦听,指定为数字数组。您可以一次计算一个观察的遮挡图。例如,指定单个图像以了解该图像的哪些部分会影响分类结果。

数据类型:单身|双人间|INT8.|int16|INT32.|INT64.|uint8.|uint16|UINT32|UINT64

用于计算分类评分的变更的类标签,指定为分类,字符数组或字符串数​​组。

如果您指定标签作为向量,软件独立地计算每个类标签的分类分数的变化。在那种情况下,Scoremap(:,:我)对应于遮挡图in标签

数据类型:char||分类

用于计算激活变化的层,指定为字符向量或字符串标量。指定作为图层的名称您要为其计算激活的更改。

数据类型:char|

用于计算激活变化的通道,指定为标量或通道指数的向量。可能的选择渠道取决于所选层。例如,对于卷积层,numfilters.属性指定输出通道的数量。你可以使用分析检查网络并找出每层的输出通道数。

如果渠道被指定为向量,独立计算每个指定通道的总激活的变化。在那种情况下,ActivationMap(:,:,i)对应于遮挡图in渠道

该功能计算由于遮挡引起的总激活的变化。通过对该频道激活的所有空间维度进行求和来计算总激活。遮挡图对应于没有遮挡的原始数据的总激活与遮挡数据的总激活之间的差异。具有较高阳性值的地图中的区域对应于对指定信道激活贡献的输入数据区域。

数据类型:单身|双人间|INT8.|int16|INT32.|INT64.|uint8.|uint16|UINT32|UINT64

名称值对参数

指定可选的逗号分离对名称,价值论点。名称是参数名称和价值是相应的价值。名称必须出现在引号内。您可以以任何顺序指定多个名称和值对参数name1,value1,...,namen,valuen

示例:'masksize',75,'Outputups采样','最近'每侧使用具有大小75像素的遮挡掩模,并使用最近的邻插值将输出上置与输入数据相同的大小

封闭掩码的大小,指定为逗号分隔对组成'masksize'以及以下之一。

  • 'auto'- 使用输入大小的20%的蒙版大小,舍入到最接近的整数。

  • 形式的矢量[H W]- 使用高度的矩形掩模H.和宽度W.

  • 标量 - 使用具有高度和宽度等于指定值的方形掩模。

示例:'masksize',[50 60]

跨越输入数据遍历掩码的步长,指定为逗号分隔对'走吧'以及以下之一。

  • 'auto'- 使用10%的输入大小的步幅,舍入到最接近的整数。

  • 形式的矢量[A B]- 使用垂直迈出A.和水平的跨步B.

  • 标量 - 在垂直和水平方向上使用指定值的步幅。

示例:'走吧',30

封闭区域的替换价值,指定为逗号分隔的配对'maskvalue'以及以下之一。

  • 'auto'- 用输入数据的通道方式替换遮挡像素。

  • 标量 - 用指定值替换遮挡像素。

  • 矢量 - 用针对每个通道指定的值替换遮挡像素。向量必须包含与图层的输出通道数相同数量的元素。

示例:'maskvalue',0.5

输出上采样方法,指定为逗号分隔对组成'OutputupSampling'以及以下之一。

  • 'bicubic'- 使用双向插值,产生平滑的映射与输入数据相同的尺寸。

  • '最近'- 使用最近的邻域插值将映射扩展到与输入数据相同的大小。该地图表示相对于输入数据的大小的遮挡计算分辨率。

  • '没有'- 使用没有上置采样。地图可以小于输入数据。

如果'OutputupSampling''bicubic'或者'最近',计算的地图使用该映射到输入数据的大小imresize.功能。

示例:'OutputupSampling','最近'

封闭掩模的边缘处理,指定为包括的逗号分隔对'massclipping'以及以下之一。

  • '开'- 将第一个遮罩的中心放在输入数据的左上角。数据边缘的掩码不是全尺寸。

  • 'off'- 将第一个面罩的左上角放在输入数据的左上角。面具总是全尺寸。如果是值的面具步行选项意味着一些掩模延长了数据的边界,这些掩码被排除在外。

对于非图像输入数据,您可以确保您始终使用该选项侦听相同数量的输入数据'mastclipping','关闭'。例如,对于Word Embeddings数据,您可以确保在每个点遮挡相同数量的单词。

示例:'mastclipping','关闭'

迷你批处理的大小用于计算分类分数的变化图,指定为逗号分隔的对组成'minibatchsize'和一个正整数。

迷你批处理是当屏蔽在输入图像上移动时的遮挡图像集的子集。所有遮挡图像都用于计算地图;mini-batch确定一次传递给网络的图像数。较大的小型批量尺寸导致更快的计算,以更高的内存成本。

示例:'minibatchsize',256

计算地图的硬件资源,指定为逗号分隔对'executionenvironment'以及以下之一。

  • 'auto'- 如果可用,请使用GPU。否则,使用CPU。

  • 'CPU'- 使用CPU。

  • 'GPU'- 使用GPU。

GPU选项需要并行计算工具箱™。要使用GPU进行深度学习,您还必须具有支持的GPU设备。金宝app有关支持设备的信息,请参阅金宝appGPU通金宝app过发布支持(并行计算工具箱)如果你选择了'executionenvironment','gpu'选项和并行计算工具箱或合适的GPU不可用,然后软件返回错误。

示例:'executionenvironment','gpu'

输出参数

崩溃

分类评分的更改映射,作为数字矩阵或数字数组返回。分类评分的变化是相对于原始输入数据计算而不闭塞。具有较高正值的地图中的区域对应于对指定分类标签贡献的输入数据区域。

如果标签被指定为向量,每个类标签的分类评分的变化是独立计算的。在那种情况下,Scoremap(:,:我)对应于遮挡图in标签

总激活的变化映射,返回为数字矩阵或数字数组。

该功能计算由于遮挡引起的总激活的变化。通过对该频道激活的所有空间维度进行求和来计算总激活。遮挡图对应于没有遮挡的原始数据的总激活与遮挡数据的总激活之间的差异。具有较高阳性值的地图中的区域对应于对指定信道激活贡献的输入数据区域。

如果渠道被指定为向量,独立计算每个指定通道的总激活的变化。在那种情况下,ActivationMap(:,:,i)对应于遮挡图in渠道

在R2019B中介绍