文件帮助中心文件
此示例使用:
此示例显示如何使用梯度加权类激活映射(Grad-Cam)技术来理解为什么深度学习网络使其分类决策。Grad-Cam,由Selvaraju和Coauthings发明[1],使用对由网络确定的卷积特征的分类得分的梯度,以便理解图像的哪些部分对分类最重要。此示例使用Googlenet PretRims网络进行图像。
Grad-Cam是类激活映射(CAM)技术的概括。对于Live WebCAM数据上的激活映射技术,请参阅使用类激活映射调查网络预测。GRAC-CAM也可以应用于非分类示例,例如回归或语义分割。有关展示如何使用Grad-Cam来调查语义分段网络的预测的示例,请参阅使用Grad-Cam探索语义分割网络。
加载googlenet网络。
net = googlenet;
读取googlenet映像大小。
InputSize = Net.Layers(1).InputSize(1:2);
加载sherlock.jpg.。,这个例子包括金毛猎犬的图像。
sherlock.jpg.
img = imread(“sherlock.jpg”);
将图像的大小调整为网络输入维度。
IMG = IMResize(IMG,INPUTSIZE);
分类图像并显示其分类和分类分数。
[classfn,score] =分类(net,img);imshow(img);标题(Sprintf(“%s(%.2f)”,classfn,分数(classfn)));
googlenet正确将图像分类为金毛猎犬。但为什么?图像的特征是导致网络进行此分类?
GRAC-CAM技术利用相对于最终卷积特征图的分类评分的梯度,以识别大多数影响分类评分的输入图像的部分。这种渐变大的地方正是最终得分在数据上取决于最终分数的地方。
这毕业生功能通过针对卷积特征映射取得给定类的减速层输出的衍生来计算重要性图。用于分类任务,毕业生功能自动选择合适的图层以计算重要性映射。您还可以使用该层指定图层'Reganslayer'和'featulexayer'名称值参数。
毕业生
'Reganslayer'
'featulexayer'
计算Grad-Cam Map。
地图= GradCam(Net,IMG,ClassFN);
通过使用使用A的顶部显示渐变凸轮映射'alphadata'值0.5。这'喷射'Colormap具有深蓝色,作为最低的值和深红色。
'alphadata'
'喷射'
imshow(img);抓住上;图像(地图,'alphadata',0.5);COLOROMAP.喷射抓住离开;标题(“Grad-Cam”);
显然,狗的上部和耳朵对分类产生了最大的影响。
对于调查深度网络分类的原因的不同方法,见咬合敏感性和ImageLime.。
咬合敏感性
ImageLime.
[1] Selvaraju,R. R.,M. Cogswell,A. Das,R. Vedantam,D. Parikh和D. Batra。“Grad-CAM:通过基于梯度的本地化的深网络视觉解释。“在IEEE计算机愿景(ICCV)的国际会议中,2017年,第618-626页。可用Grad-Cam在电脑Vision Foundation Open Access网站上。
Grad-Cam
DeepDreamImage.|ImageLime.|咬合敏感性
DeepDreamImage.
您有此示例的修改版本。您是否希望使用您的编辑打开此示例?
您单击了与此MATLAB命令对应的链接:
在MATLAB命令窗口中输入它来运行命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,以便在可用的地方进行翻译的内容,并查看本地活动和优惠。根据您的位置,我们建议您选择:。
您还可以从以下列表中选择一个网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。
联系您当地的办公室