在张量流中,如何在不实际训练的情况下评估神经元网络
In tensorflow, how to evaluate a Neuron Net without actually training it
在 tensorflow 中,我想在每个 epoch 之后使用相同的测试数据集评估模型。我做了什么:
# Train data.
cTr,train_summary,_ = sess.run([loss,summary_op,optimizer], feed_dict={input_tensor: batch_xTr,output_tensor:batch_yTr})
# Test data.
batch_xTe,batch_yTe = get_batch(newsgroups_test,0,len(newsgroups_test.target)) # can also be adjusted batch size
cTe,test_summary, _ = sess.run([loss,summary_op, optimizer], feed_dict={input_tensor: batch_xTe,output_tensor:batch_yTe})
结果是模型最终可以达到接近100%的准确率。这不合理,原因可能是我在评估时实际上 "training"。
我是否可以在不使用测试数据 "training" 的情况下评估模型?
不要运行优化器使用测试数据。试试这个
cTe = sess.run([loss], feed_dict={input_tensor: batch_xTe, output_tensor: batch_yTe})
在 tensorflow 中,我想在每个 epoch 之后使用相同的测试数据集评估模型。我做了什么:
# Train data.
cTr,train_summary,_ = sess.run([loss,summary_op,optimizer], feed_dict={input_tensor: batch_xTr,output_tensor:batch_yTr})
# Test data.
batch_xTe,batch_yTe = get_batch(newsgroups_test,0,len(newsgroups_test.target)) # can also be adjusted batch size
cTe,test_summary, _ = sess.run([loss,summary_op, optimizer], feed_dict={input_tensor: batch_xTe,output_tensor:batch_yTe})
结果是模型最终可以达到接近100%的准确率。这不合理,原因可能是我在评估时实际上 "training"。
我是否可以在不使用测试数据 "training" 的情况下评估模型?
不要运行优化器使用测试数据。试试这个
cTe = sess.run([loss], feed_dict={input_tensor: batch_xTe, output_tensor: batch_yTe})