[英]Tensorflow: shape must be rank 5 but is rank 1 for 'conv3D'
import tensorflow as tf
import numpy as tf
if __name__ == '__main__':
with tf.Graph().as_default():
inputs = np.zeros([5,10,10,10,3])
print(inputs)
outputs = tf.nn.conv3d(
input=inputs,
filter=[5, 5, 5, 3, 8], # filter:[filter_depth, filter_height, file_width, in_channels, out_channels]
strides=[1, 4, 4, 4, 1],
padding='SAME'
)
# outputs = get_model(inputs, True)
print(outputs)
When I run the plain code in pycharm, it return the error information: 当我在pycharm中运行普通代码时,它返回错误信息:
ValueError: shape must be rank 5 but is rank 1 for 'conv3D'(op: 'Conv3D') with input shapes: [5,10,10,10,3],[5].
引用链接: https : //www.tensorflow.org/api_docs/python/tf/nn/conv3d过滤器应该是张量,具体来说是一个变量(可训练),因此将filter=[5, 5, 5, 3, 8]
5,5,5 filter=[5, 5, 5, 3, 8]
filter=tf.get_variable(shape=[5, 5, 5, 3, 8], dtype=tf.float64, name='filter')
然后运行它并可以正常运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.