[cv231n] Lecture 12 | Visualizing and Understanding

Lecture 12 | Visualizing and Understanding


[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

Visualizing 

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

 


Maximally Activating Patches

[cv231n] Lecture 12 | Visualizing and Understanding

Saliency 

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

Saliency Maps: Segmentation without supervision

[cv231n] Lecture 12 | Visualizing and Understanding

Intermediate Features via (guided) backprop

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

Visualizing CNN features: Gradient Ascent

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

Adding “multi-faceted” visualization gives even nicer results: (Plus more careful regularization, center-bias)

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding


Fooling Images / Adversarial Examples

(1) Start from an arbitrary image

(2) Pick an arbitrary class

(3) Modify the image to maximize the class

(4) Repeat until network is fooled

[cv231n] Lecture 12 | Visualizing and Understanding


DeepDream: Amplify existing features

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding


Feature Inversion

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding


Texture Synthesis 

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

 Neural Texture Synthesis

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

Neural Style Transfer

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

Fast Style Transfer 

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

[cv231n] Lecture 12 | Visualizing and Understanding

 

[cv231n] Lecture 12 | Visualizing and Understanding

Summary

Many methods for understanding CNN representations

  • Activations: Nearest neighbors, Dimensionality reduction, maximal patches, occlusion
  • Gradients: Saliency maps, class visualization, fooling images, feature inversion
  • Fun: DeepDream, Style Transfer.