使用Keras框架(后端可选tensorflow或者theano),可以画出卷积神经网络的结构图帮助我们理解或确认自己创立的模型。
问题的关键在于使用from keras.utils.visualize_util import plot中的plot函数。
但是直接使用会提示缺少pydot。
首先安装sudo pip3 install pydot以及sudo apt-get install graphviz(在Ubuntu上)。
但是会提示一个和新版keras的兼容问题。于是我们需要安装sudo pip3 install pydot-ng来解决这个问题。
现在就可以画出结构图了:
使用样例一
from keras.layers import Input, Convolution2D, Flatten, Dense, Activation
from keras.models import Sequential
from keras.optimizers import SGD , Adam
from keras.initializations import normal
from keras.utils.visualize_util import plot
# apply a 3x3 convolution with 64 output filters on a 256x256 image:
model = Sequential()
model.add(Convolution2D(64, 3, 3, border_mode='same', dim_ordering='th',input_shape=(3, 256, 256)))
# now model.output_shape == (None, 64, 256, 256)