简体   繁体   English

尝试拆分神经网络测试时出错

[英]Error when trying to split neural network testing

If I have tensorflow neural network, which I ran on the test data like this: 如果我有tensorflow神经网络,则可以像这样在测试数据上运行:

   result = sess.run(y_conv, feed_dict={x: test_inputs})

However, this would have memory issues, so I tried to break up the computation like this: 但是,这可能会遇到内存问题,因此我尝试按以下方式分解计算:

result = []
for i in range(0, len(test_inputs), 100):
   end = min(i+100 - 1, len(test_inputs)  - 1)
   r = sess.run(y_conv, feed_dict={x: test_inputs.loc[i:end, :]})
   result.append(r)

However, now I get this error: 但是,现在出现此错误:

InvalidArgumentError (see above for traceback): You must feed a value for placeholder tensor 'Placeholder_2' with dtype float
     [[Node: Placeholder_2 = Placeholder[dtype=DT_FLOAT, shape=<unknown>, _device="/job:localhost/replica:0/task:0/cpu:0"]()]]

So what is the cause of this problem? 那么,这个问题的原因是什么呢? I would have thought that the network would work well on smaller batch of examples. 我本以为网络可以在较小的示例批次上很好地工作。

If this bares any relevance, the neural network is created like this: 如果没有相关性,则将按如下方式创建神经网络:

W_conv1 = weight_variable([5, 5, 1, 32])
b_conv1 = bias_variable([32])
x_image = tf.reshape(x, [-1, 28, 28, 1])
h_conv1 = tf.nn.relu(conv2d(x_image, W_conv1) + b_conv1)
h_pool1 = max_pool_2x2(h_conv1)
W_conv2 = weight_variable([5, 5, 32, 64])
b_conv2 = bias_variable([64])

h_conv2 = tf.nn.relu(conv2d(h_pool1, W_conv2) + b_conv2)
h_pool2 = max_pool_2x2(h_conv2)

W_fc1 = weight_variable([7 * 7 * 64, 1024])
b_fc1 = bias_variable([1024])

h_pool2_flat = tf.reshape(h_pool2, [-1, 7*7*64])
h_fc1 = tf.nn.relu(tf.matmul(h_pool2_flat, W_fc1) + b_fc1)

keep_prob = tf.placeholder(tf.float32)
h_fc1_drop = tf.nn.dropout(h_fc1, keep_prob)

W_fc2 = weight_variable([1024, 10])
b_fc2 = bias_variable([10])

y_conv = tf.matmul(h_fc1_drop, W_fc2) + b_fc2

You have fed x as your input but not fed keep_prob . 您已输入x作为输入,但未输入keep_prob Your network looks similar to Deep MNIST for Experts . 您的网络看起来类似于Deep MNIST for Experts An example snippet: 示例片段:

train_step.run(feed_dict={x: batch[0], y_: batch[1], keep_prob: 0.5})

For inference, you should change keep_prob to 1.0. 为了进行推断,您应该将keep_prob更改为1.0。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 尝试从 mode.evaluate 中返回多个指标的值时出错 Keras 神经网络 - Getting an error when trying to return the values of multiple metrics from mode.evaluate of Keras neural Network 使用TensorFlow训练神经网络时出错 - Error when training a neural network with TensorFlow 使用TensorFlow训练神经网络时dtype错误 - dtype error when training neural network with TensorFlow 试图了解3层神经网络中的梯度检查错误 - Trying to understand Gradient Checking error in 3-layer Neural Network 试图修复神经网络的构造(错误信息:负维度?) - Trying to fix the construction of a neural network (error message: negative dimension?) 尝试在 python 中使用 tensorflow 实现卷积神经网络程序时,我不断收到奇怪的“无效语法”错误 - I keep receiving a weird "invalid syntax" error when trying to implement a convolution neural network program using tensorflow in python AttributeError: 'dict' object has no attribute 'train' 尝试在 python 中使用 tensorflow 实现卷积神经网络程序时出现错误 - AttributeError: 'dict' object has no attribute 'train' error when trying to implement a convolution neural network program using tensorflow in python 运行Tensorflow卷积神经网络代码时无效的参数错误 - Invalid Argument Error when running Tensorflow Convolutional Neural Network code 在Keras中构建简单的前馈神经网络时遇到关键错误 - Running into key error when building simple feedforward neural network in Keras 在python中的神经网络中训练数据时出现断言错误? - Getting Assertion Error when training data in neural network in python?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM