是否有一种简单的方法可以在Tensorflow中获得类似Keras model.summary的内容?

Car*_*ten 23 keras tensorflow

我一直在与Keras合作并且非常喜欢model.summary() 它.它很好地概述了不同层的大小,特别是模型所具有的参数数量的概述.

Tensorflow中是否有类似的功能?我在Stackoverflow或Tensorflow API文档上找不到任何内容.

mrg*_*oom 40

看起来你可以使用Slim

例:

import numpy as np

from tensorflow.python.layers import base
import tensorflow as tf
import tensorflow.contrib.slim as slim

x = np.zeros((1,4,4,3))
x_tf = tf.convert_to_tensor(x, np.float32)
z_tf = tf.layers.conv2d(x_tf, filters=32, kernel_size=(3,3))

def model_summary():
    model_vars = tf.trainable_variables()
    slim.model_analyzer.analyze_vars(model_vars, print_info=True)

model_summary()
Run Code Online (Sandbox Code Playgroud)

输出:

---------
Variables: name (type shape) [size]
---------
conv2d/kernel:0 (float32_ref 3x3x3x32) [864, bytes: 3456]
conv2d/bias:0 (float32_ref 32) [32, bytes: 128]
Total size of variables: 896
Total bytes of variables: 3584
Run Code Online (Sandbox Code Playgroud)

  • 这应该是公认的答案:) (4认同)
  • Slim 在 Tensorflow 中不再可用 (2认同)

Pad*_*ddy -1

我还没有看到像 model.summary() 这样的张量流......但是,我认为你不需要它。有一个 TensorBoard,您可以在其中轻松检查神经网络的架构。

https://www.tensorflow.org/tensorboard

在此输入图像描述 https://www.tensorflow.org/get_started/graph_viz

  • 这并没有回答OP的问题。 (28认同)
  • 如何使用张量板知道每一层的形状和参数数量? (5认同)