8000 GitHub - HuihuiTong/mirror: Visualise tool for cnn in pythorch
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

HuihuiTong/mirror

 
 

Repository files navigation

Mirror

Pytorch CNN Visualisation Tool

This is a raw beta so expect lots of things to change and improve over time.

alt

Getting started

To install mirror run

pip install git+https://github.com/FrancescoSaverioZuppichini/mirror.git

Basic example:

from mirror import mirror
from mirror.visualisations import *

from PIL import Image

from torchvision.models import resnet101, resnet18, vgg16, alexnet
from torchvision.transforms import ToTensor, Resize, Compose

# create a model
model = vgg16(pretrained=True)
# get an image
cat = Image.open("./cat.jpg")
# resize the image and make it a tensor
input = Compose([Resize((224,224)), ToTensor()])(cat)
# add 1 dim for batch
input = input.unsqueeze(0)
# call mirror with the input and the model
mirror(input, model, visualisations=[DeepDreamVis, BackPropVis, GradCamVis])

It will automatic open a new tab in your browser

alt

Available Visualisations

Weights

alt

Deep Dream

alt

Back Prop / Guide Back Prop

By clicking on the radio button 'guide', all the relus negative output will be set to zero producing a nicer looking image alt

Grad Cam / Guide Grad Cam

  • Add text field for class
  • alt

Create a Visualisation

You can find an example below

from mirror.visualisations.Visualisation import Visualisation

class DummyVisualisation(Visualisation):

    def __call__(self, inputs, layer):
        return inputs.repeat(self.params['repeat']['value'],1, 1, 1)

    @property
    def name(self):
        return 'dummy'

    def init_params(self):
        return {'repeat' : {
                 'type' : 'slider',
                 'min' : 1,
                 'max' : 100,
                 'value' : 3,
                 'step': 1,
                 'params': {}
                 }}

alt

The __call__ function is called each time you click a layer or change a value in the options on the right.

The init_params function returns a dictionary of options that will be showed on the right drawer of the application. For now only slider and radio are supported

TODO

About

Visualise tool for cnn in pythorch

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Jupyter Notebook 99.0%
  • Other 1.0%
0