Skip to content

🎯 An attempt to solve the mystery behind deep learning models

Notifications You must be signed in to change notification settings

GauthamSks/Visualizing-CNNs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Visualizing CNNs

It’s often said that deep-learning models are “black boxes”: learning representations that are difficult to extract and present in a human-readable form. Although this is partially true for certain types of deep-learning models, it’s definitely not true for convnet's.Interpreting neural network's decision-making is an ongoing area of research, and it’s quite an important concept to understand. Neural networks are used in the real-world, so we can’t treat them like black boxes, we need to learn what they interpret, how they interpret, and what information each layer/channel in a neural network has learned.This interpretability matters because in order to build trust in intelligent systems and move towards their meaningful integration into our everyday lives, it is clear that we must build ‘transparent’ models that has the ability to explain why they predict what they predict.A solution to this problem is by visualizing the output of your deep learning model and see how its processing the given infromation. Here I shall demonstrate two of the techniques for visualizing what the convnet's has learned they are Saliency Mapping and Class Activation Mapping.

Saliency Mapping

Saliency map is an image that shows each pixel's unique quality. The goal of a saliency map is to simplify and/or change the representation of an image into something that is more meaningful and easier to analyze. The Saliency map shows which pixels need to be changed the least to affect the class score the most. One can expect that such pixels correspond to the object location in the image. There are many implementations of this technique but here I shall be demonstrating the two most popular ones mainly Saliency Map, Guided Backpropagation .

Class Activation Mapping

Class activation Mapping is a simple technique to get the discriminative image regions used by a CNN to identify a specific class in the image. In other words, a class activation map (CAM) lets us see which regions in the image were relevant to this class.This technique consists of producing heatmaps of “class activation” over input images. A “class activation” heatmap is a 2D grid of scores associated with a specific output class, computed for every location in an input image, indicating how important each location is with respect to the class considered. There are many implementations of this technique but here I shall be demonstrating the three most popular ones mainly CAM, Grad-CAM and Grad-CAM++.

References

About

🎯 An attempt to solve the mystery behind deep learning models

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published