• CNN可视化技术总结(四)--可视化工具与项目


    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技术指南》的技术总结部分,更多相关技术总结请扫描文末二维码关注公众号。

  • 相关阅读:
    博客园如何统计个人博客的访问量
    博客园博客如何设置不显示日历,公告,相册,收藏夹等
    [Functional Programming] From simple implementation to Currying to Partial Application
    [Nginx] Configuration for SPA
    [Unit Testing] Using Mockito Annotations
    [Functional Programming] Using Lens to update nested object
    [Functional Programming + React] Provide a reasonable default value for mapStateToProps in case initial state is undefined
    [Angular CLI] Build application without remove dist folder for Docker Volume
    [Spring Boot] Introduce to Mockito
    [Tool] Enable Prettier in VSCode as Format on Save and add config files to gitingore
  • 原文地址:https://www.cnblogs.com/wxkang/p/14409089.html
Copyright © 2020-2023  润新知