CNN Visualization
TensorFlow implementations of visualization of convolutional neural networks, such as Grad-Class Activation Mapping and guided back propagation
- This repository contains implementations of visualizatin of CNN in recent papers. - The source code in the repository can be used to demostrate the algorithms as well as test on your own data. The project is written primarily in Python, distributed under the MIT License license, first published in 2017. Key topics include: class-activation-maps, cnn, computer-vision, deep-learning, grad-cam.
Visualization of Deep Covolutional Neural Networks
<!--- [](https://travis-ci.org/conan7882/CNN-Visualization) [](https://coveralls.io/github/conan7882/CNN-Visualization?branch=master) -->- This repository contains implementations of visualizatin of CNN in recent papers.
- The source code in the repository can be used to demostrate the algorithms as well as test on your own data.
Requirements
- Python 3.3+
- Tensorflow 1.3
- TensorCV
Algorithms
- Visulization of filters and feature maps of GoogLeNet
- Deconvolutional Networks (ECCV'14)
- Guided back propagation (2014)
- Class Activation Mapping (CAM) (CVPR'16)
- Gradient-weighted Class Activation Mapping (Grad-CAM) (ICCV'17)
Visulization of filters and feature maps of GoogLeNet
- The most straightforward approach to visualize a CNN is to show the feature maps (activations) and filters.
- Details of the implementation and more results can be found here
Deconvnet
- Pick a specific activation on a feature map and set other activation to zeros, then reconstruct an image by mapping back this new feature map to input pixel space.
- Details of the implementation and more results can be found here. Some results:
Guided back propagation
<!--- Guided backpropagation generates clearer visulizations than deconvnet for higher layers.-->- Details of the implementation and more results can be found here. Some results:

Class Activation Mapping (CAM)
- The class activation map highlights the most informative image regions relevant to the predicted class. This map can be obtained by adding a global average pooling layer at the end of convolutional layers.
- Details of the implementation and more results can be found here. Some results:

Gradient-weighted Class Activation Mapping (Grad-CAM)
- Grad-CAM generates similar class heatmap as CAM, but it does not require to re-train the model for visualizatin.
- Details of the implementation and more results can be found here. Some results:

Contributors
Showing top 1 contributor by commit count.
This article is auto-generated from conan7882/CNN-Visualization via the GitHub API.Last fetched: 6/19/2026
