Skip to content

A python library for visualizing Keras Neural Network Architectures

License

Notifications You must be signed in to change notification settings

Dicksonchin93/keras-architecture-visualizer

Repository files navigation

Keras Architecture Visualizer

A great visualization python library used to work with Keras. It uses python's graphviz library to create a presentable graph of the neural network you are building.

Installation

From Github

  1. Download the keras_architecture_visualizer folder from the github repository.
  2. Place the keras_architecture_visualizer folder in the same directory as your main python script.

From pip

Use the following command:

pip install keras_architecture_visualizer

Make sure you have graphviz installed. Install it using:

sudo apt-get install graphviz && pip install graphviz

Usage

from keras_architecture_visualizer.visualize import ann_viz;
#Build your model here
keras_architecture_viz(model)

Documentation

keras_architecture_viz(model, view=True, filename="network.gv", title="MyNeural Network")

  • model - The Keras Sequential model
  • view - If True, it opens the graph preview after executed
  • filename - Where to save the graph. (.gv file format)
  • title - A title for the graph

Example keras_architecture_viz

import keras;
from keras.models import Sequential;
from keras.layers import Dense;

network = Sequential();
        #Hidden Layer#1
network.add(Dense(units=6,
                  activation='relu',
                  kernel_initializer='uniform',
                  input_dim=11));

        #Hidden Layer#2
network.add(Dense(units=6,
                  activation='relu',
                  kernel_initializer='uniform'));

        #Exit Layer
network.add(Dense(units=1,
                  activation='sigmoid',
                  kernel_initializer='uniform'));

from keras_architecture_visualizer.visualize import ann_viz;

keras_architecture_viz(network, title="");

This will output: photo

Example CNN

import keras;
from keras.models import Sequential;
from keras.layers import Dense;
from keras_architecture_visualizer.visualize import ann_viz
model = build_cnn_model()
ann_viz(model, title="")

def build_cnn_model():
  model = keras.models.Sequential()

  model.add(
      Conv2D(
          32, (3, 3),
          padding="same",
          input_shape=(32, 32, 3),
          activation="relu"))
  model.add(Dropout(0.2))

  model.add(
      Conv2D(
          32, (3, 3),
          padding="same",
          input_shape=(32, 32, 3),
          activation="relu"))
  model.add(MaxPooling2D(pool_size=(2, 2)))
  model.add(Dropout(0.2))

  model.add(
      Conv2D(
          64, (3, 3),
          padding="same",
          input_shape=(32, 32, 3),
          activation="relu"))
  model.add(Dropout(0.2))

  model.add(
      Conv2D(
          64, (3, 3),
          padding="same",
          input_shape=(32, 32, 3),
          activation="relu"))
  model.add(MaxPooling2D(pool_size=(2, 2)))
  model.add(Dropout(0.2))

  model.add(Flatten())
  model.add(Dense(512, activation="relu"))
  model.add(Dropout(0.2))

  model.add(Dense(10, activation="softmax"))

  return model

This will output: photo

About

A python library for visualizing Keras Neural Network Architectures

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%