Python 如何用输入和输出层的值可视化DNN或CNN模型?

Python 如何用输入和输出层的值可视化DNN或CNN模型?,python,keras,graphviz,image-graphviz,Python,Keras,Graphviz,Image Graphviz,我已经将可视化应用于DNN模型,但是图像只包含一个密集层,没有输入和输出层的值! 下面的代码解释了可视化过程,没有任何错误,我尝试在图像中显示输入和输出层的值 import pandas as pd . . tf.keras.utils.plot_model . . def create_model(): model = Sequential() model.add(Input(n_features)) model.add(BatchNormalization()) model.add(De

我已经将可视化应用于DNN模型,但是图像只包含一个密集层,没有输入和输出层的值! 下面的代码解释了可视化过程,没有任何错误,我尝试在图像中显示输入和输出层的值

import pandas as pd
.
. 
tf.keras.utils.plot_model
.
.
def create_model():

model = Sequential()
model.add(Input(n_features))
model.add(BatchNormalization())
model.add(Dense(51, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(68, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(85, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(85, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(68, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(51, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(n_outputs, activation='sigmoid'))
model.compile(loss='binary_crossentropy', 
              optimizer='Adam', 
              metrics=['accuracy'])
tf.keras.utils.plot_model(model, to_file='model_combined.png')
#model.summary()
return model    

#I have tried to use 
#from keras.utils.vis_utils import plot_model
# but i found this error : TypeError: 'InputLayer' object is not iterable
# so i use the above library to implement visualization without any error.

请注意,我已经下载了所有这些库:Graphviz、pydot、pydotplus、python Graphviz

您是否尝试过:
来自keras.utils import plot_model;进口pydot;plot_model(model,to_file='model.png',show_shapes=True)
同样,在IPython笔记本上,我以前也使用过:
来自IPython.display import SVG;从keras.utils.vis_-utils导入模型_到_-dot;SVG(model-to-dot(model1-bg).create(prog='dot',format='SVG')@ashwingeted'Sa,应用第一个解决方案后,出现此错误:“InputLayer”对象不可移植@AshWingeted'Sa,sconed解决方案,也出现了与之前相同的错误:TypeError:“InputLayer”对象不适用。您需要至少提供输入层中的大小。或者,您可以删除输入层,并在第一层中提及输入的大小/尺寸。