Skip to content
This repository has been archived by the owner on Jul 20, 2024. It is now read-only.

novice03/timm-vis

Repository files navigation

PyTorch Image Models Visualizer

Implementation of various visualization techniques for pytorch image classifiers. This library can be used to visualize and understand any PyTorch image classifier. This is NOT an official PyTorch library, nor is it affiliated with Ross Wightman's pytorch-image-models library. details.ipynb has visual examples of all methods implemented.

Currently, the following methods are implemented:

  • Filter visualization
  • Activations visualization
  • Maximally activated patches
  • Saliency maps [1]
  • Synthetic image generation [1]
  • Adversarial attacks to fool models
  • Feature inversion [2]
  • Grad-CAM [3]
  • Deep Dream [4]

Specific examples and details about the implementation and parameters of the above methods are described in details.ipynb. All of the above visualization techniques are discussed in this lecture.

Installation

$ pip install timm-vis

Usage

from timm_vis.methods import *

# available methods - visualize_filters, visualize_activations, 
#   maximally_activated_patches, saliency_map, 
#   generate_image, fool_model, feature_inversion, deep_dream

Paper References

[1] Karen Simonyan, Andrea Vedaldi, Andrew Zisserman. Deep Inside Convolutional Networks: Visualising Image Classification Models and Saliency Maps. https://arxiv.org/abs/1312.6034.

[2] Aravindh Mahendran, Andrea Vedaldi. Understanding Deep Image Representations by Inverting Them https://arxiv.org/abs/1412.0035

[3] Ramprasaath R. Selvaraju, Michael Cogswell, Abhishek Das, Ramakrishna Vedantam, Devi Parikh, Dhruv Batra. Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization [https://arxiv.org/abs/1610.02391 (https://arxiv.org/abs/1610.02391)]

[4] Alexander Mordvintsev, Christopher Olah, Mike Tyka. Inceptionism: Going Deeper into Neural Networks https://ai.googleblog.com/2015/06/inceptionism-going-deeper-into-neural.html

Code References

[5] Ross Wightman pytorch-image-models

[6] Irfan Alghani Khalid Saliency Map for Visualizing Deep Learning Model Using PyTorch

[7] Utku Ozbulak. pytorch-cnn-adversarial-attacks

[8] Duc Ngo deep-dream-in-pytorch