首页 文章

如何用keras更好地组织张量板中的节点?

提问于
浏览
1

我正在使用keras而不是处理tensorflow因为它的简单性 . 但是当我试图通过向 model.fit()callbacks 参数发送 keras.callbacks.Tensorboard 实例来实现keras中的计算图形时 . 我从 tensorboard 获得的图表非常笨拙,为了演示目的,这里我只构建一个非常简单的线性分类器,在1个密集层中有1个单元 . 但图表看起来像这样:
enter image description here

我可以做与在tensorflow中所做的相同的事情,比如使用name_space将事物分组在一起并给出图层,偏见,权重名称?我的意思是,在这里的图表中,它是如此混乱,我只能理解 Dense 层和 logistic loss 命名空间 . 但通常使用tensorflow,我们可以看到像 train 名称空间这样的东西,而没有那么多没有命名空间的节点 . 我怎样才能说得更清楚?

1 回答

  • 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
    

相关问题