Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Filter 如何在tensorflow上可视化学习的过滤器_Filter_Visualization_Tensorflow - Fatal编程技术网

Filter 如何在tensorflow上可视化学习的过滤器

Filter 如何在tensorflow上可视化学习的过滤器,filter,visualization,tensorflow,Filter,Visualization,Tensorflow,与Caffe框架类似,在CNN训练期间可以观察学习的滤波器,并与输入图像进行卷积,我想知道是否可以对TensorFlow进行同样的操作 可在此链接中查看Caffe示例: 谢谢你的帮助 要在Tensorboard中只查看几个conv1过滤器,可以使用以下代码(它适用于cifar10) 我还编写了一个在网格中显示所有64个conv1过滤器的简单代码。要在Tensorboard中只查看几个conv1过滤器,可以使用以下代码(它适用于cifar10) 我还编写了一个在网格中显示所有64个conv1筛选

与Caffe框架类似,在CNN训练期间可以观察学习的滤波器,并与输入图像进行卷积,我想知道是否可以对TensorFlow进行同样的操作

可在此链接中查看Caffe示例:


谢谢你的帮助

要在Tensorboard中只查看几个conv1过滤器,可以使用以下代码(它适用于cifar10)


我还编写了一个在网格中显示所有64个conv1过滤器的简单代码。

要在Tensorboard中只查看几个conv1过滤器,可以使用以下代码(它适用于cifar10)


我还编写了一个在网格中显示所有64个conv1筛选器的简单方法。

您是否将这段代码放在cifar 10脚本的“推断”函数中?我没有,但这是一个好主意:)我刚刚更新了相应的代码!谢谢我在“convert\u image\u dtype”中遇到错误,所以我将
tf.image.convert\u image\u dtype(kernel\u 0\u to\u 1,dtype=tf.uint8)
更改为
kernel\u 0\u to\u 255\u uint8=tf.cast(kernel\u 0\u to\u 1,dtype=tf.float32)
。奇怪的是,我没有任何错误。。很显然,Tensorboard也可以在[0,1]范围内可视化浮动图像。顺便说一句,
kernel\u 0\u to\u 1
已经是float类型,因此您的强制转换是多余的。我更新了代码它只在conv1中工作。conv2,conv3……怎么样?您是否将这段代码放在cifar 10脚本的“推断”函数中?我没有,但这是一个好主意:)我刚刚更新了代码,效果相当!谢谢我在“convert\u image\u dtype”中遇到错误,所以我将
tf.image.convert\u image\u dtype(kernel\u 0\u to\u 1,dtype=tf.uint8)
更改为
kernel\u 0\u to\u 255\u uint8=tf.cast(kernel\u 0\u to\u 1,dtype=tf.float32)
。奇怪的是,我没有任何错误。。很显然,Tensorboard也可以在[0,1]范围内可视化浮动图像。顺便说一句,
kernel\u 0\u to\u 1
已经是float类型,因此您的强制转换是多余的。我更新了代码它只在conv1中工作。conv2,conv3……怎么样?你可以用这个工具我想这就是我要找的。谢谢然而,张力板应该有这个功能。请参阅可能的副本谢谢!这就是我要找的!非常感谢。你可以用这个工具我想这就是我要找的。谢谢然而,张力板应该有这个功能。请参阅可能的副本谢谢!这就是我要找的!非常感谢。
# this should be a part of the inference(images) function in cifar10.py file

# conv1
with tf.variable_scope('conv1') as scope:
  kernel = _variable_with_weight_decay('weights', shape=[5, 5, 3, 64],
                                       stddev=1e-4, wd=0.0)
  conv = tf.nn.conv2d(images, kernel, [1, 1, 1, 1], padding='SAME')
  biases = _variable_on_cpu('biases', [64], tf.constant_initializer(0.0))
  bias = tf.nn.bias_add(conv, biases)
  conv1 = tf.nn.relu(bias, name=scope.name)
  _activation_summary(conv1)

  with tf.variable_scope('visualization'):
    # scale weights to [0 1], type is still float
    x_min = tf.reduce_min(kernel)
    x_max = tf.reduce_max(kernel)
    kernel_0_to_1 = (kernel - x_min) / (x_max - x_min)

    # to tf.image_summary format [batch_size, height, width, channels]
    kernel_transposed = tf.transpose (kernel_0_to_1, [3, 0, 1, 2])

    # this will display random 3 filters from the 64 in conv1
    tf.image_summary('conv1/filters', kernel_transposed, max_images=3)