Skip to main content

Neural network visualization toolkit for tf.keras

Project description

tf-keras-vis

Downloads PyPI version Build Status License: MIT

tf-keras-vis is a visualization toolkit for debugging tf.keras models in Tensorflow2.0+. Currently supported methods for visualization include:

tf-keras-vis is designed to be light-weight, flexible and ease of use. All visualizations have the features as follows:

  • Support N-dim image inputs, that's, not only support pictures but also such as 3D images.
  • Support batchwise processing, so, be able to efficiently process multiple input images.
  • Support the model that have either multiple inputs or multiple outputs, or both.
  • Support Optimizers embedded in tf.keras to process Activation maximization.

Visualizations

Visualize Dense Layer

Visualize Convolutional Filer

GradCAM

The images above are generated by GradCAM++.

Saliency Map

The images above are generated by SmoothGrad.

Requirements

  • Python 3.5-3.8
  • tensorflow>=2.0.2

Installation

  • PyPI
$ pip install tf-keras-vis tensorflow
  • Docker (container that run Jupyter Notebook)
$ docker run -itd -p 8888:8888 keisen/tf-keras-vis:0.5.0

If you have GPU processors,

$ docker run -itd --runtime=nvidia -p 8888:8888 keisen/tf-keras-vis:0.5.0-gpu

You can find other images at Docker Hub.

Usage

Please see below for details:

Getting Started Guides

[NOTE] If you have ever used keras-vis, you may feel that tf-keras-vis is similar with keras-vis. Actually tf-keras-vis derived from keras-vis, and both provided visualization methods are almost the same. But please notice that tf-keras-vis APIs does NOT have compatibility with keras-vis.

Guides (ToDo)

  • Visualizing multiple attention or activation images at once utilizing batch-system of model
  • Define various loss functions
  • Visualizing attentions with multiple inputs models
  • Visualizing attentions with multiple outputs models
  • Advanced loss functions
  • Tuning Activation Maximization
  • Visualizing attentions for N-dim image inputs

ToDo

  • Guide documentations
  • API documentations
  • We're going to add some methods such as below.
    • Deep Dream
    • Style transfer

Known Issues

  • With InceptionV3, ActivationMaximization doesn't work well, that's, it might generate meaninglessly blur image.
  • With cascading model, Gradcam and Gradcam++ don't work well, that's, it might occur some error. So we recommend, in this case, to use FasterScoreCAM.
  • channels-first models and data is unsupported.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tf-keras-vis-0.5.4.tar.gz (15.9 kB view hashes)

Uploaded Source

Built Distribution

tf_keras_vis-0.5.4-py3-none-any.whl (19.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page