内核崩溃,试图在1个图像上运行单个卷积层

时间:2018-03-17 18:56:41

标签: tensorflow conv-neural-network convolution

我正在使用MNIST数据并为cnn加载单个图像,我想看看图像在单个图层后的样子。我已经浏览了文档,看看我的输入是否有任何错误,或者我是如何整合数据的。代码是错误的还是仅仅是我的电脑?

filtersw = tf.Variable(tf.random_normal(shape=[5, 5, 1, 1], mean=0.5, stddev=0.01))
filtersb = tf.Variable(tf.zeros(1))
conv = tf.nn.conv2d(x, filtersw, strides=[1, 1, 1, 1], padding='VALID') + filtersb
sess = tf.Session()
sess.run(tf.global_variables_initializer())
afterimage = sess.run(conv, feed_dict={x : X_train[0:1]})

1 个答案:

答案 0 :(得分:-2)

您需要拨打tf.layers.conv2d而不是tf.nn.conv2d。这两个函数具有相同的名称,但它们执行不同的操作。 tf.layers.conv2d在CNN中创建卷积层,tf.nn.conv2d使用已知过滤器或一组过滤器执行卷积。