2016-12-10 59 views
0

我想获得卷积层的变量并将其可视化。 然后我的代码是当我得到张量流中卷积层的变量时出现错误

d3 = de_conv(d2, weights2['wc2'], biases2['bc2'], out_shape=[batch_size , c2, c2, 128]) 
    d3 = batch_norm(d3, epsilon=1e-5, decay=0.9) 
    d3 = tf.nn.relu(d3) 

    tf.add_to_collection('weight_2', weights2['wc3']) 

,并在测试

with tf.Session() as sess: 

      saver.restore(sess , model_path) 
      conv_weights = sess.run([tf.get_collection('weight_2')]) 
      #visualize the weights 
      conv_weights = np.array(conv_weights) 

      print(conv_weights.shape) 
      vis_square(conv_weights) 

但我不明白的conv_weights有一个令人困惑的尺寸

(1, 1, 5, 5, 1, 128) 

回答

0

重量为CONV层应该是[filter height, filter width, input channels, number of filters (output channels]。除前两个维度外,你的体重适合。它只是包裹在两个列表中?例如。 [[weights]]而不仅仅是weights