【算法】可解释机器学习-ZFNet(Datawhale)

news2024/11/23 8:27:16

可解释机器学习-ZFNet


ZFNet算法介绍:

AlexNet的提出使得大型卷积网络开始变得流行起来,但是人们对于CNN网络究竟为什么能表现这么好,以及怎么样能变得更好尚不清楚。
因此为了解决上述两个问题,ZFNet提出了一种可视化技术,用于理解网络中间的特征层和最后的分类器层,并且找到改进神经网络的结构的方法。ZFNet是Matthew D.Zeiler 和 Rob Fergus 在2013年撰写的论文Visualizing and Understanding Convolutional Networks中提出的,是当年ILSVRC的冠军。ZFNet使用反卷积(deconv)和可视化特征图来达到可视化AlexNet的目的,并指出不足,最后修改网络结构,提升分类结果。

特征可视化过程如下流程图:
在这里插入图片描述
在这里插入图片描述

可视化时每一层的操作如下:

Unpooling:在前向传播时,记录相应max pooling层每个最大值来自的位置,在unpooling时,根据来自上层的map直接填在相应位置上,如上图所示,Max Locations “Switches”是一个与pooling层输入等大小的二值map,标记了每个局部极值的位置。

Rectification:因为使用的ReLU激活函数,前向传播时只将正值原封不动输出,负值置0,“反激活”过程与激活过程没什么分别,直接将来自上层的map通过ReLU。

Deconvolution:使用的是原来正向卷积核的转置(也就是行列互换)。转置卷积没有需要学习的参数,是一个完全无监督的过程。

ZFNET结构:
在这里插入图片描述
实践过程:
例如,从第 2 层中选出16个卷积核(左边),找到原图中能够使得这16个卷积核最大激活的图片(每一个卷积核9张图)。能够使得它最大激活的图片是从原始数据中挑出来的,比如说右图第二个数值条纹的图片能够使得左图第二个激活最大

然后,我们把这 9 张图片传到第 2 层的feature map,再使用反卷积的技巧重构回原始输入的像素空间。就得到左边灰色图。

举例说明:
第2个卷积核其实就在提取数字条纹特征
第5个卷积核在提取晚霞色的特征
第8个卷积核在提取1/4圆的这个右下角的圆环+同心圆的特征
第14个卷积核在提取金黄色的特征
第16个卷积核是在提取这样的直角的特征

两边的对应关系:
右边彩色图:是数据中真实存在的小图
左边灰色图:是把右边九张图喂到网络里面,把第 2 层对应的feature map用反卷积技巧重构回原始输入像素空间得到的图。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/100671.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何治理谐波问题?——有源滤波器

安科瑞 华楠 一、谐波的定义 任何一种周期性非正弦波形都可以看成是由若干种频率不同的正弦波合成的,其中频率为工频的波形我们称为基波,大于1 整数倍基波频率的正弦波分量称为谐波。 总谐波畸变由不同频率的分次谐波合成,各次谐波频率与基…

asp写的百度ocr识别文字-通用文字识别(高精度版)源码下载

今天接到一个客户需求,需要用ASP写一个百度OCR文字识别代码,他的程序都是用ASP写的,所以我们也需要用ASP给他实现百度OCR文字识别,我们在百度AI网站上启用了通用文字识别高精度版,利用高精度板来实现它的业务需求。在上…

【C++】泛型编程 _函数模板和类模板的基本使用

1.泛型编程 如何实现一个通用的交换函数?这在C语言中是无法实现的,但是C却可以。 C语言一次只能实现一个类型的交换: void Swap(int& left, int& right) {int temp left;left right;right temp; } void Swap(double& left, …

计算机毕设Python+Vue学生信息管理系统 (程序+LW+部署)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

关于小程序订单中心页设置的公告

为进一步规范小程序交易生态、提升用户购物体验、满足用户在有交易的小程序中便捷查看订单信息的诉求,自2022年12月31日起,对于有“选择商品/服务-下单-支付”功能的小程序,需按照平台制定的规范,在小程序内设置订单中心页。 开发…

创建DataFrame()对象--Pandas

1. DataFrame DateFrame对象是Pandas最常用的数据结构,是由不同类型的列组成的二维数据表结构,类似于EXCEL表,语法格式如下: pandas.DataFrame(dataNone, indexNone, columnsNone, dtypeNone, copyNone)1.1 函数参数:data 参数…

计算机操作系统笔记总结:Part2 进程与线程

文章目录1 进程1.1 进程的概念、组成与特征1.2 进程的状态与转换1.3 进程的组织1.4 进程控制1.5 进程通信2 线程与多线程模型2.1 线程的概念2.2 线程的实现方式2.3 多线程模型2.4 线程的状态与转换3 处理机调度3.1 调度的三个层次3.2 进程的挂起态与七状态模型3.3 进程调度3.3.…

[附源码]Nodejs计算机毕业设计健身房预约平台Express(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流 项目运行 环境配置: Node.js Vscode Mysql5.7 HBuilderXNavicat11VueExpress。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分…

【浙工商期末报告】研一Python期末作业B题(思路分享+源代码分享+原报告分享)

目录:研一Python期末作业B题(思路分享)一、题目介绍1.1 A题1.2 B题二、B题思路讲解2.1 问题的引入2.2 不平衡数据集2.2.1 不平衡数据的实例2.2.2 不平衡数据集导致的问题2.2.3 不平衡数据集的主要处理方法2.2.4 不平衡(均衡&#…

数据结构实验大作业(将之前预测ACM获奖的模型搬到Vue和django上)

目录 前言 成品展示(UI写的确实有点糊弄,太懒了不想弄了) Vue部分 App.vue(中间感觉还行,不算难看) result组件: 路由: Django部分 view functionset(自己建的&am…

Java岗最全面试攻略,吃透这些技术栈Offer拿到手软

前言 我分享的这份 Java 后端开发面试总结包含了 JavaOOP、Java 集合容器、Java 异常、并发编程、Java 反射、Java 序列化、JVM、Redis、Spring MVC、MyBatis、MySQL 数据库、消息中间件 MQ、Dubbo、Linux、ZooKeeper、 分布式 &数据结构与算法等 25 个专题技术点&#xff…

重学React之高阶函数(Higher Order Function)

高阶函数(Higher Order Function) “把函数传给一个函数,返回另一个函数”,就是高阶函数。 高阶函数是一个常见的函数,它接受其他函数作为参数,然后返回一个函数。听起来很绕,但是这是个很常见的模式,比如有一个ajax函数,可以传一个callback作为处理函数,然后调用的地…

设计模式原则 - 里氏替换原则(四)

一 背景: 里氏替换原则是针对继承的。介绍前先聊聊继承性的特点 继承优势 提高代码的复用性(每个子类有拥有父类的属性和方法)提高代码的可扩展性 继承劣势 继承是侵入性的(只要继承,就必须拥有父类的属性和方法&…

Linux中的Chrony时间同步服务

目录 一、时间同步 1.概念 2.时间同步在运维工作中的作用 3.时间同步完成方法 (1)NTP时间服务(centos 6 ) (2)Chrony时间服务 二、Chrony时间服务 1.Chrony介绍 2.Chrony的优点 三、Chrony安装 …

linux基础学习-基本命令

基本命令 拷贝和移动 tree[目录名]:以树状图列出文件目录结构 -d:只显示目录cp 源文件 目标文件:复制文件或者目录 -f:已存在的目标文件直接覆盖,不会提示-i:覆盖文件前提示-r:若给出的源文件是…

SQLMAP高级用法

目录 前言 一、语法 1.利用google浏览器进行批量扫描 2.针对http请求头进行扫描 3.写入shell的几种方法 4.挂代理的方式 二、演示 1.批量扫描谷歌代理 2.http请求ua扫描 3.写入shell(一) 4.写入shell(二) 三、小结 前…

[附源码]计算机毕业设计Python的花店售卖系统的设计与实现(程序+源码+LW文档)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…

Windows与网络基础 | 管理_NTFS_注册表... | 系统性学习 | 无知的我费曼笔记

无知的我正在复盘Windows与网络基础 该笔记特点是 重新整理了涉及资料的一些语言描述、排版而使用了自己的描述对一些地方做了补充说明。比如解释专有名词、类比说明、对比说明、注意事项提升了总结归纳性。尽可能在每个知识点上都使用一句话 || 关键词概括更注重在实际上怎么…

【毕业设计_课程设计】在线免费小说微信小程序的设计与实现(源码+论文)

文章目录0 项目说明1 系统介绍1.1 业务层面1.2 产品层面1.3 技术层面2 项目运行3 项目截图3.1 小程序3.2 后台管理系统3.3 论文概览4 项目源码0 项目说明 在线免费小说微信小程序的设计与实现 提示:适合用于课程设计或毕业设计,工作量达标,…

word页码如何设置为章节加页码,例如第一章第一页1-1、第二章第一页2-1

由于用到word页码分章节页码的形式,从网上查了一下,质量真的很差,没有一篇文章讲清楚的,有的所答非所问,一怒之下,利用几个小时的时间解决问题并写下这篇文章,以供大家学习参考!&…