当前位置: 首页 > news >正文

怀宁县住房与城乡建设局网站app开发自学教程

怀宁县住房与城乡建设局网站,app开发自学教程,电商平台代运营服务,大二网络营销实训报告文章目录一、CAM算法1.1 概述1.2 CAM算法介绍二、Grad-CAM算法2.1 概述2.2 Guided Backpropagation2.3 Occlusion Sensitivity2.4 Grad-CAM 整体结构和效果2.5 Grad-CAM 实现细节一、CAM算法 1.1 概述 本文介绍 2016 年提出的 CAM (Class Activation Mapping) 算法&#xff0…

文章目录

  • 一、CAM算法
    • 1.1 概述
    • 1.2 CAM算法介绍
  • 二、Grad-CAM算法
    • 2.1 概述
    • 2.2 Guided Backpropagation
    • 2.3 Occlusion Sensitivity
    • 2.4 Grad-CAM 整体结构和效果
    • 2.5 Grad-CAM 实现细节

一、CAM算法

1.1 概述

本文介绍 2016 年提出的 CAM (Class Activation Mapping) 算法,能够可视化卷积神经网络的特征图,并映射到原始图像中得到不同区域的重要性。

CAM 利用了全局平均池化 GAP (Global Average Pooling) 和最后一层 softmax 的参数将特征图线性加权起来,从而获得模型对于不同类别重点关注的区域。

在这里插入图片描述
CAM 算法是论文《Learning Deep Features for Discriminative Localization》中提出的,作者发现 CNN 网络虽然在训练时可能未提供对象的位置,但是仍然具有很强的定位特征能力,如上图所示。

上图是 CAM 运行的效果,可以看到对于刷牙这一类,CNN 能有效地定位到牙刷,而对于锯树,CNN 能有效定位到电锯。

但是 CNN 后面通常会接全连接层,作者认为全连接层会影响 CNN 的定位能力。因此提出了 CAM 算法,用全局平均池化 GAP 代替全连接层,从而保留模型的定位特征能力。全局平均池化 GAP 通常起到正则化的作用,防止训练时的过拟合,GAP 和其他池化方法的区别如下图所示,全局的池化方法就是把池化的范围扩大到整个特征图的尺寸。

在这里插入图片描述
作者也在 ILSVRC 数据集上测试了 CAM 的目标定位能力,CAM 使用的是弱监督目标定位训练,得到了 37.1% 的 top-5 错误率,而使用完全监督目标定位训练的 AlexNet 的 top-5 错误率为 34.2%,二者非常接近。

弱监督目标定位训练和完全监督目标定位训练的区别如下图所示,即弱监督时图片只有类别没有目标框,而完全监督图片是有目标框的。

img

1.2 CAM算法介绍

img

上图是 CAM 的模型示意图,最后一个卷积层后面采用了 GAP,GAP 后再利用 Softmax 层进行分类。图中最后一层卷积层的通道数为 nnn,因此 GAP 后得到的向量维度是 n,分别对应每个通道。图中的 w1w_1w1, ……, wnw_nwn 指 Softmax 层的权重,这里对应的是一个类 class 的权重 (图中的类是 Australian terrier 即澳大利亚梗犬)。

最后一层卷积层输出的特征图包含 nnn 个通道,利用该类的权重将特征图的 nnn 个通道加权求和,再映射到原始图片上即可得到不同区域的重要程度。这里是由于特征图和原始图尺寸不同,所以要映射,CAM 直接使用 resize 将特征图缩放到和原始图一样的大小。接下来介绍 CAM 的一些公式。

对于一幅图像,可以用下面的公式计算出其属于类别 ccc 的得分,其中 kkk 表示最后一个卷积层的通道,xxxyyy 表示特征图的坐标,fff 表示特征图,www 表示 Softmax 的权重:

Sc=∑kwkc∑x,yfk(x,y)=∑x,y∑kwkcfk(x,y)S_c=\sum_kw_k^c\sum_{x,y}f_k(x,y)\\ =\sum_{x,y}\sum_kw_k^cf_k(x,y) Sc=kwkcx,yfk(x,y)=x,ykwkcfk(x,y)

对于类别 ccc,我们可以得到图片各个区域重要性的映射图,公式如下,即将特征图加权求和得到:
Mc(x,y)=∑kwkcfk(x,y)M_c(x,y)=\sum_kw_k^cf_k(x,y) Mc(x,y)=kwkcfk(x,y)

下面是 CAM 可视化的效果,能够比较清晰地定位到图像中比较相关的地方。
img

同时 CAM 对于不同的类别 class 生成的热力图是有所区别的,如下所示,对于类别 dome (圆顶),热力图重点关注建筑的顶部。

img

二、Grad-CAM算法

2.1 概述

CAM 可以用于可视化 CNN,通过视觉解释 CNN 做出预测时重点关注的区域。但是 CAM 的实现依赖于全局平均池化层,通过全局平均池化得到 feature map 每一个通道的权重,然后线性加权求和得到网络关注区域的热力图。因此对于很多网络都不能直接使用,需要把网络后面的全连接层改为全局平均池化。CAM 算法的示意图如下:

img

本文介绍《Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization》论文提出的 Grad-CAM 算法,Grad-CAM 利用网络反向传播的梯度计算出 feature map 每一个通道的权重从而得到热力图。因此 Grad-CAM 可以直接用于各种 CNN 网络而无需重新训练 (如 VGG、ResNet),同时 Grad-CAM 也可以用于针对不同任务的网络 (如图像分类、看图说话、图像问答)。

在 Grad-CAM 论文里还提到了一些别的可视化方法,在这里先简单地介绍一下其中两种: Guided BackpropagationOcclusion Sensitivity

2.2 Guided Backpropagation

Guided Backpropagation 出自论文《Striving for Simplicity: The All Convolutional Net》,主要可视化网络反向传播的梯度,从而了解网络。这一种可视化方法具有很高的分辨率,能够展示图像中的细粒度细节,但是可视化的效果对于类别没有很好的判别性。

下图是 Guided Backpropagation 的原理以及可视化的效果:

img

img

2.3 Occlusion Sensitivity

Occlusion Sensitivity 出自论文《Visualizing and Understanding Convolutional Networks》,Occlusion Sensitivity (遮挡敏感) 主要是使用灰色的方块遮挡图片上的不同区域,并记录各个区域被遮挡后模型预测置性度的变化。如果说某一个位置被遮挡后,模型预测的置性度大幅度下降,则说明该区域是比较重要的。Occlusion Sensitivity 可视化的效果如下图所示,图中的第四列表示的就是遮挡不同区域后的置性度。

img

2.4 Grad-CAM 整体结构和效果

img

上面是 Grad-CAM 的示意图,右边的部分表示不同的计算机视觉任务,Image Classification、Image Captioning 等,即 Grad-CAM 可用于各式各样的任务。

图片左侧的部分表示可视化的过程,其中包括三个部分,其中 Grad-CAM 是本文介绍的重点:

  • Guided Backpropagation: 就是上一节中简要介绍的方法,具有高分辨率和高细粒度,但是可视化结果的判别性 (对于不同类别区分的能力) 较弱。
  • Grad-CAM: Grad-CAM 可视化的结果,分辨率不高,但是判别性强。
  • Guided Grad-CAM: Grad-CAM 和 Guided Backpropagation 的结果按位相乘得到,这样可以融合 Grad-CAM 和 Guided Backpropagation 的优点,使可视化即具有高分辨率也具有好的判别性。

img

上面是不同方法可视化效果的对比,第一行是针对 label 猫的可视化效果,第二行是针对 label 狗的可视化效果。

  • 第一列是原始图片。
  • 第二列是 Guided Backpropagation 的可视化,可以看到分辨率比较高,能够展示不少细粒度的细节,但是对于不同的类别 (猫和狗) 没有足够的判别性,二者的可视化效果很相近。
  • 第三列是 Grad-CAM 的可视化效果,具有比较好的判别性,能够区分猫和狗。
  • 第四列是 Guided Grad-CAM 即 Guided Backpropagation 和 Grad-CAM 相结合,既有高分辨率也有判别性。
  • 第五列是 Occlusion Sensitivity 的可视化效果,Occlusion Sensitivity 在第一节中介绍了。
  • 第六列是 Grad-CAM 可视化 ResNet 的效果。

2.5 Grad-CAM 实现细节

img

接下来重点介绍 Grad-CAM 的实现细节,如上图所示。和 CAM 算法类似,对于一个类别 c,首先需要获得 feature map 每一个通道的权重,然后线性加权求和得到热力图,权重就是图中的 w1w_1w1, …, wnw_nwn

Grad-CAM 利用反向传播的梯度计算权重,因此不用把网络最后一层改为全局平均池化,公式如下,其中 ccc 表示类别,ycy_cyc 是该类别对应的 logits (即还没经过 Softmax 的值),AAA 表示卷积输出的 feature map,kkk 表示 feature map 的通道,iiijjj 表示 feature map 的横纵坐标,ZZZ 表示 feature map 的尺寸 (即长乘宽)。这一过程相当于求 feature map 上梯度的均值,等价于一个全局平均池化操作。

img

得到权重后将 feature map 的通道线性加权融合在一起即得到热力图,公式如下,Grad-CAM 对融合后的热力图增加一个 Relu 操作,只保留对于类别 ccc 有正作用的区域。

img

http://www.sczhlp.com/news/31908/

相关文章:

  • 25-8-23日记 - Ghost
  • Rocky系统yum和dnf安装常见选项与命令
  • 网站怎么做cdnseo实战优化
  • 做网站的艰辛营销咨询服务
  • 2016年网站建设总结口碑营销的案例
  • 学校建设网站拓扑图对网站和网页的认识
  • 在什么网站做兼职翻译代写文案的软件
  • 上海做原创网站在线资源搜索神器
  • wordpress博客转换小程序seo搜索引擎优化公司
  • 移动商城官网肇庆seo排名外包
  • 做中英双语切换的网站金华百度推广公司
  • 设计网站流程什么是网站seo
  • 建立网站教程视频浏览器广告投放
  • 网站做图片滚动酒店机票搜索量暴涨
  • 阳江网站制作公司中关村标准化协会
  • 3个典型网站建设公司网站推广优化怎么做最好
  • 手机论坛网站怎么做google推广一年的费用
  • 网站开发部经理招聘石家庄网站seo外包
  • playbook剧本-初始化yum
  • 20250823组会
  • 外贸网络推广方法seo整站优化外包公司
  • 电商网站增加客户百度关键词排名点
  • 投资公司收到分红要交什么税seo外链要做些什么
  • 网页版哔哩哔哩优化标题关键词技巧
  • 拼多多网站建设框架图sem是指什么
  • 做个淘宝客网站怎么做河南关键词排名顾问
  • 租腾讯服务器做网站行吗上海牛巨微网络科技有限公司
  • 经营网站需要什么费用seo网站内容优化
  • 开商城网站落实20条优化措施
  • 建设b2c商城网站定推广恶意点击软件怎样使用