Keras <一> 可视化model

时间:2022-04-28 14:01:25

    近期在试验中用到keras,想要将模型可视化,查看每一层的节点个数,需要安装几个软件:

第一个:graphviz 

sudo pip3 install graphviz 即可

第二个:pydot

网上说的安装pydot的方法五花八门,有一种是 pip install pydot==1.1.0 这种方法是针对python2可以,但是python3

就不行了,因为Python3安装的1.2.*版本里面有所变动,可视化的地方需要用到visualize_util这样一个api,但是在1.2.*中,这个api被取消掉了,所以python3的用户应该安装 pydot_ng

sudo pip3 install pydot_ng.这样就可以了

from keras.layers import Input , Dense
from keras.models import Model
from keras import regularizers
from keras.utils.visualize_util import plot

encoding_dim = 32

input_img = Input(shape = (784,))
encoded = Dense(encoding_dim , activation = 'relu' )(input_img)
decoded = Dense(784 , activation = 'sigmoid')(encoded)
autoencoder = Model(input = input_img , output = decoded)

# this model maps an input to its encoded representation
encoder = Model(input=input_img, output=encoded)
# create a placeholder for an encoded (32-dimensional) input
encoded_input = Input(shape=(encoding_dim,))
# retrieve the last layer of the autoencoder model
decoder_layer = autoencoder.layers[-1]
# create the decoder model
decoder = Model(input=encoded_input, output=decoder_layer(encoded_input))

autoencoder.compile(optimizer = 'adadelta' , loss = 'binary_crossentropy')

plot(autoencoder, to_file='model1.png',show_shapes=True)


Keras <一> 可视化model


结果就是这样的.