(Ref) Tools to Design or Visualize Architecture of Neural Network

Page content

소개

  • 항상 좋은 글을 올려주시는 존경하는 Pega님의 소개로 올려드립니다.

Tools to Design or Visualize Architecture of Neural Network

  1. draw_convnet : Python script for illustrating Convolutional Neural Network (ConvNet)

img

  1. NNSVG

AlexNet style

enter image description here

enter image description here

  1. PlotNeuralNet : Latex code for drawing neural networks for reports and presentation. Have a look into examples to see how they are made. Additionally, lets consolidate any improvements that you make and fix any bugs to help more people with this code.

img

img

  1. Tensorboard - TensorBoard’s Graphs dashboard is a powerful tool for examining your TensorFlow model.

enter image description here

  1. Caffe - In Caffe you can use caffe/draw.py to draw the NetParameter protobuffer:

enter image description here

  1. Matlab

enter image description here

  1. Keras.js

enter image description here

  1. keras-sequential-ascii - A library for Keras for investigating architectures and parameters of sequential models.

    VGG 16 Architecture

           OPERATION           DATA DIMENSIONS   WEIGHTS(N)   WEIGHTS(%)

              Input   #####      3  224  224
         InputLayer     |   -------------------         0     0.0%
                      #####      3  224  224
      Convolution2D    \|/  -------------------      1792     0.0%
               relu   #####     64  224  224
      Convolution2D    \|/  -------------------     36928     0.0%
               relu   #####     64  224  224
       MaxPooling2D   Y max -------------------         0     0.0%
                      #####     64  112  112
      Convolution2D    \|/  -------------------     73856     0.1%
               relu   #####    128  112  112
      Convolution2D    \|/  -------------------    147584     0.1%
               relu   #####    128  112  112
       MaxPooling2D   Y max -------------------         0     0.0%
                      #####    128   56   56
      Convolution2D    \|/  -------------------    295168     0.2%
               relu   #####    256   56   56
      Convolution2D    \|/  -------------------    590080     0.4%
               relu   #####    256   56   56
      Convolution2D    \|/  -------------------    590080     0.4%
               relu   #####    256   56   56
       MaxPooling2D   Y max -------------------         0     0.0%
                      #####    256   28   28
      Convolution2D    \|/  -------------------   1180160     0.9%
               relu   #####    512   28   28
      Convolution2D    \|/  -------------------   2359808     1.7%
               relu   #####    512   28   28
      Convolution2D    \|/  -------------------   2359808     1.7%
               relu   #####    512   28   28
       MaxPooling2D   Y max -------------------         0     0.0%
                      #####    512   14   14
      Convolution2D    \|/  -------------------   2359808     1.7%
               relu   #####    512   14   14
      Convolution2D    \|/  -------------------   2359808     1.7%
               relu   #####    512   14   14
      Convolution2D    \|/  -------------------   2359808     1.7%
               relu   #####    512   14   14
       MaxPooling2D   Y max -------------------         0     0.0%
                      #####    512    7    7
            Flatten   ||||| -------------------         0     0.0%
                      #####       25088
              Dense   XXXXX ------------------- 102764544    74.3%
               relu   #####        4096
              Dense   XXXXX -------------------  16781312    12.1%
               relu   #####        4096
              Dense   XXXXX -------------------   4097000     3.0%
            softmax   #####        1000
  1. Netron

screenshot.png

  1. DotNet

Simple net

  1. Graphviz : Tutorial

img

  1. Keras Visualization - The keras.utils.vis_utils module provides utility functions to plot a Keras model (using graphviz)

enter image description here

  1. Conx - The Python package conx can visualize networks with activations with the function net.picture() to produce SVG, PNG, or PIL Images like this:

enter image description here

  1. ENNUI - Working on a drag-and-drop neural network visualizer (and more). Here’s an example of a visualization for a LeNet-like architecture.

A visualization of a LeNet-like architecture

  1. NNet - R Package - Tutorial
data(infert, package="datasets")
plot(neuralnet(case~parity+induced+spontaneous, infert))

[neuralnet](https://

  1. GraphCore - These approaches are more oriented towards visualizing neural network operation, however, NN architecture is also somewhat visible on the resulting diagrams.

AlexNet

alexnet_label logo.jpg

ResNet50resnet50_label_logo.jpg

  1. Neataptic

Neataptic offers flexible neural networks; neurons and synapses can be removed with a single line of code. No fixed architecture is required for neural networks to function at all. This flexibility allows networks to be shaped for your dataset through neuro-evolution, which is done using multiple threads.

img

  1. TensorSpace : TensorSpace is a neural network 3D visualization framework built by TensorFlow.js, Three.js and Tween.js. TensorSpace provides Layer APIs to build deep learning layers, load pre-trained models, and generate a 3D visualization in the browser. By applying TensorSpace API, it is more intuitive to visualize and understand any pre-trained models built by TensorFlow, Keras, TensorFlow.js, etc.

    Tutorial

    enter image description here

  2. Netscope CNN Analyzer

enter image description here

  1. Monial

Interactive Notation for Computational Graphs https://mlajtos.github.io/moniel/

img

  1. Texample

Neural Network

  1. Quiver

gzqll3

References :

  1. https://datascience.stackexchange.com/questions/12851/how-do-you-visualize-neural-network-architectures

  2. https://datascience.stackexchange.com/questions/2670/visualizing-deep-neural-network-training

  3. https://github.com/ashishpatel26/Tools-to-Design-or-Visualize-Architecture-of-Neural-Network