CNN可视化技术总结(一)-特征图可视化

CNN可视化技术总结(二)--卷积核可视化

CNN可视化技术总结(三)--类可视化

导言:

前面介绍了可视化的三种方法--特征图可视化,卷积核可视化,类可视化,这三种方法在很多提出新模型或新方法的论文中很常见,其主要作用是提高模型或者新方法的可信度,或者用来增加工作量,或者用来凑字数,还有一些作用是帮助理解模型针对某个具体任务是如何学习,学到了哪些信息,哪些区域对于识别有影响等。

本文将介绍一些可视化的项目,主要有CNN解释器,特征图、卷积核、类可视化的一些代码和项目,结构可视化工具,网络结构手动画图工具。

1. CNN-Explainer

这是一个中国博士发布的名叫CNN解释器的在线交互可视化工具。主要对于那些初学深度学习的小白们 理解关于神经网络是如何工作很有帮助,如卷积过程,ReLU过程,平均池化过程,中间每一层的特征图的样子,都可以看到,相当于给了一个显微镜,可以随意对任意一层,任何一项操作的前后变化,观察得清清楚楚。

显示卷积的过程中前后特征图的变化,中间的操作。

CNN是如何输出预测的

还可以在线上传图片,看到一张图片在经过每一层的卷积,池化,激活后的变化,最后输出预测结果。

项目链接:

https://github.com/poloclub/cnn-explainer

2. 一些可视化特征图、卷积核、热力图的代码。

可视化特征图

https://github.com/waallf/Viusal-feature-map

可视化卷积核

https://keras.io/examples/vision/visualizing_what_convnets_learn/

https://blog.keras.io/how-convolutional-neural-networks-see-the-world.html

Grad-CAM

https://github.com/ramprs/grad-cam

热力图

https://github.com/heuritech/convnets-keras

下面这个项目是同时包含特征图可视化,卷积核可视化和热力图的一个链接:

https://github.com/raghakot/keras-vis

3. 结构可视化工具

Netscope

用于可视化模型结构的在线工具,仅支持caffe的prototxt文件可视化。需要自己写prototxt格式的文件。

此图来源于网络,侵删

项目地址:

https://github.com/ethereon/netscope

ConvNetDraw

这个工具用两个图可直接说明,第一个是输入,第二个是输出

这两个图来源于网络,侵删

项目地址:

https://github.com/cbovar/ConvNetDraw

PlotNeuralNet

这个稍微麻烦一点点,效果图如下:

项目地址:

https://github.com/HarisIqbal88/PlotNeuralNet

4. 网络结构手动画图工具

很多新手会问的一个问题,论文中那些网络结构图是如何画的。

这里解答一下,我所了解的主要是用PPT, VISIO。当然也可以使用上面那几个。

再补充一个在线工具,NN-SVG

项目地址:http://alexlenail.me/NN-SVG/

总结

这四篇文章基本介绍完了目前CNN可视化的一些方法,即特征图可视化,卷积核可视化和类可视化,总结了一些可视化工具与项目,当然不免也有个别遗漏的,日后若有一些比较重大突破的一些可视化工具出来,将继续补充,将放在公众号(CV技术指南)的技术总结部分。

对于可视化,其实还包括训练过程的可视化,如Loss值,精度等实时更新,这个比较简单,就不在这个总结系列里说明了。

本文来源于公众号《CV技术指南》的技术总结部分,更多相关技术总结请扫描文末二维码关注公众号。

CNN可视化技术总结(四)--可视化工具与项目的更多相关文章

  1. [2]R语言在数据处理上的禀赋之——可视化技术

    本文目录 Java的可视化技术 R的可视化技术 二维做图利器plot的参数配置 *权限机制 *plot独有的参数 *plot的type介绍 *title介绍 *公共参数集合--par *par的权限机 ...

  2. CNN可视化技术总结(一)--特征图可视化

    导言: 在CV很多方向所谓改进模型,改进网络,都是在按照人的主观思想在改进,常常在说CNN的本质是提取特征,但并不知道它提取了什么特征,哪些区域对于识别真正起作用,也不知道网络是根据什么得出了分类结果 ...

  3. CNN可视化技术总结(三)--类可视化

    CNN可视化技术总结(一)-特征图可视化 CNN可视化技术总结(二)--卷积核可视化 导言: 前面我们介绍了两种可视化方法,特征图可视化和卷积核可视化,这两种方法在论文中都比较常见,这两种更多的是用于 ...

  4. CCF虚拟现实与可视化技术专委会丨面向增强现实的可视计算技术研究进展概述

    https://mp.weixin.qq.com/s/I-rNwgXHEtwgdpkWzKtVXw 摘要 新一代增强现实技术需要依赖可视计算理论与方法解决大尺度复杂环境下的场景建模.内容生成.感知交互 ...

  5. 漫谈可视化Prefuse(四)---被玩坏的Prefuse API

    这个双12,别人都在抢红包.逛淘宝.上京东,我选择再续我的“漫谈可视化”系列(好了,不装了,其实是郎中羞涩...) 上篇<漫谈可视化Prefuse(三)---Prefuse API数据结构阅读有 ...

  6. FROONT – 超棒的可视化响应式网页设计工具

    FROONT 是一个基于 Web 的设计工具,在浏览器中运行,使得各类可视化设计的人员都能进行响应式的网页设计,即使是那些没有任何编码技能的设计师.FROONT 使得响应式网页设计能够可视化操作,能够 ...

  7. CNN超参数优化和可视化技巧详解

    https://zhuanlan.zhihu.com/p/27905191 在深度学习中,有许多不同的深度网络结构,包括卷积神经网络(CNN或convnet).长短期记忆网络(LSTM)和生成对抗网络 ...

  8. 用Python画的,5 种非传统的可视化技术,超炫酷的动态图

    数据可以帮助我们描述这个世界.阐释自己的想法和展示自己的成果,但如果只有单调乏味的文本和数字,我们却往往能难抓住观众的眼球.而很多时候,一张漂亮的可视化图表就足以胜过千言万语.本文将介绍 5 种基于 ...

  9. 前端er必须掌握的数据可视化技术

    又是一月结束,打工人准时准点的汇报工作如期和大家见面啦.提到汇报,必不可少的一部分就是数据的汇总.分析. 作为一名合格的社会人,我们每天都在工作.生活.学习中和数字打交道.小到量化的工作内容,大到具体 ...

随机推荐

  1. 如何封装Promise对象?

    最近看到了一个有趣的Promise的方法,这里记录下来 <script> class MyPromise { constructor(executor) { // 初始化state赋值为p ...

  2. OpenStack各组件的常用命令

    openstack命令 openstack-service restart    #重启openstack服务 openstack endpoint-list        #查看openstack的 ...

  3. b站视频_下载_去水印_视频转mp4-批量下载神器

    b站下载_视频_去水印_转mp4_批量下载的解决办法 以下问题均可解决 b站下载的视频如何保存到本地 b站下载的视频在那个文件夹里 b站下载视频转mp4 b站下载app b站下载在哪 b站下载视频电脑 ...

  4. JMETER-正则表达式提取与查看变量是否提取正确

    一.应用场景说明: 在一个线程组中,B请求需要使用A请求返回的数据,也就是常说的关联,将上一个请求的响应结果作为下一个请求的参数,则需要对A请求的响应报文使用后置处理器,其中最方便最常用的就是正则表达 ...

  5. ProbabilityStatistics

    class ProbabilityStatistics: @staticmethoddef simulation_of_probability(v, ratio=10000): assert v &g ...

  6. assert False 与 try 结合 在开发中的使用

    让错误抛出 发现其中的问题 # coding=utf-8 from rest_framework.views import exception_handler from rest_framework. ...

  7. sql 括号

    <select id="chlTransQueryByChlType" parameterType="map" resultType="java ...

  8. Group by 优化

    一个标准的 Group by 语句包含排序.分组.聚合函数,比如 select a,count(*) from t group by a ;  这个语句默认使用 a 进行排序.如果 a 列没有索引,那 ...

  9. 请你尽量全面的说一个对象在 JVM 内存中的结构?

    从 Java 14 开始,Project Valhala引入了 Value Type(或者称为 inline type),参考: Valhalla: https://openjdk.java.net/ ...

  10. Python3爬取猫眼电影信息

    Python3爬取猫眼电影信息 import json import requests from requests.exceptions import RequestException import ...