Neural network visualization toolkit for tf.keras
Project description
tf-keras-vis
tf-keras-vis is a visualization toolkit for debugging tf.keras models in Tensorflow2.0+.
Currently supported algorisms for visualization include:
- Activation Maximization
- Class Activation Maps
- Saliency Maps
tf-keras-vis is designed to be ease of use, light-weight and flexible. 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 batch-wise processing, so, be able to efficiently process multiple inputs.
- Support the model that have either multiple inputs or multiple outputs, or both.
- Support Optimizers embeded 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
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.4.0
If you have GPU processors,
$ docker run -itd --runtime=nvidia -p 8888:8888 keisen/tf-keras-vis:0.4.0-gpu
You can find other images at Docker Hub.
Usage
Please see below for details:
- examples/attentions.ipynb
- examples/visualize_dense_layer.ipynb
- examples/visualize_conv_filters.ipynb
[NOTE] If you have ever used keras-vis, perhaps you may feel that tf-keras-vis is similar with keras-vis. Yes, tf-keras-vis derived from keras-vis. And then it was designed to support features in the description of this README such as multiple inputs/outputs, batchwise processing and so on. Therefore, although both provided visualization algorisms are almost the same, those software architectures are different. Please notice that tf-keras-vis APIs doesn’t have compatibility with keras-vis.
ToDo
- API documentations
- We're going to add some algorisms such as below.
- ScoreCAM: Score-Weighted Visual Explanations for Convolutional Neural Networks
- Deep Dream
- Style transfer
Known Issues
- With InceptionV3, ActivationMaximization doesn't work well, that's, it might generate meanninglessly bulr image.
- With cascading model, Gradcam and Gradcam++ don't work well, that's, it might occur some error.
- Unsupport
channels-firstmodels and datas.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tf-keras-vis-0.4.0.tar.gz.
File metadata
- Download URL: tf-keras-vis-0.4.0.tar.gz
- Upload date:
- Size: 13.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d9e7ddb27b94e170df92ab8f7e0b020565d8a6fd98905bf059be895e4793c4e8
|
|
| MD5 |
0e7daf98cc8fb5c6341c1c5a1343e908
|
|
| BLAKE2b-256 |
5c03e668c9adbfa409eda3e0efb252a3c9c901f2316c09d00589e7338ce79b88
|
File details
Details for the file tf_keras_vis-0.4.0-py3-none-any.whl.
File metadata
- Download URL: tf_keras_vis-0.4.0-py3-none-any.whl
- Upload date:
- Size: 16.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e5016f8a9e447abd5d27d8f4412ed5fe8e7210a4ee86fe9d83426e15990c8a4b
|
|
| MD5 |
173fa0317357072571641d333a87cf1a
|
|
| BLAKE2b-256 |
512e70a0ce0e0c21e2b6542336e551da5ae0d0a5a3e1b7b7cbcfcf03ab34cd92
|