2017-07-28 37 views
0

我使用keras而不是处理tensorflow,因为它的简单性。但是当我试图通过向model.fit()callbacks参数发送keras.callbacks.Tensorboard实例来对keras中的计算图进行visiualize。我从tensorboard得到的图非常尴尬, 为了演示目的,这里我只创建一个非常简单的线性分类器,其中1个密集层中有1个单元。但是图表看起来像这样: enter image description here如何更好地组织keras中tensorboard中的节点?

我可以做与我们在张量流中所做的相同的事情吗,例如使用name_space将事物分组在一起并给出图层,偏倚,权重名称?我的意思是,在这里的图表中,这是一个混乱,我只能了解Dense图层和logistic loss命名空间。但通常在tensorflow中,我们可以看到诸如train命名空间之类的东西,而没有这么多没有命名空间的节点。我怎样才能让它更清晰?

回答

1

Tensorflow图显示所有正在调用的计算。你将无法简化它。

作为替代方案,Keras拥有自己的逐层图形。这显示了您的网络清晰简洁的结构。你可以通过调用

from keras.utils import plot_model 
plot_model(model, to_file='/some/pathname/model.png') 

最后生成它,你也可以拨打model.summary(),其生成图形的文字版本,额外的摘要。

这里是model.summary()例如一个输出:

Layer (type)      Output Shape   Param #  Connected to      
==================================================================================================== 
input_1 (InputLayer)    (None, 2048)   0            
____________________________________________________________________________________________________ 
activation_1 (Activation)  (None, 2048)   0            
____________________________________________________________________________________________________ 
dense_1 (Dense)     (None, 511)   1047039          
____________________________________________________________________________________________________ 
activation_2 (Activation)  (None, 511)   0            
____________________________________________________________________________________________________ 
decoder_layer_1 (DecoderLayer) (None, 512)   0            
____________________________________________________________________________________________________ 
ctg_output (OrLayer)    (None, 201)   102912          
____________________________________________________________________________________________________ 
att_output (OrLayer)    (None, 312)   159744          
==================================================================================================== 
Total params: 1,309,695.0 
Trainable params: 1,309,695.0 
Non-trainable params: 0.0 
+0

感谢。 'plot_model'不能立即生效,我必须安装'pydot_ng','graphviz'和Graphviz软件。但现在它起作用了。 – StayFoolish