我想在网络训练时计算并显示测试集的准确性。
在使用Feed的MNIST tutorial中,可以看到通过提供测试数据而不是训练数据可以轻松完成。解决一个简单问题的简单方法。
但是,在使用队列进行批处理时,我无法找到这么简单的示例。 AFAICS,文档提出了两个解决方案:
在运行时是否有第三种简单的方法来计算测试指标?或者在第二个测试网络的某个地方有一个例子,它具有共享权重,通过超级简单的实现证明我错了吗?
答案 0 :(得分:0)
如果我正确理解您的问题,您希望在使用队列输入而不是feed_dict进行培训时验证您的模型吗? 看到我这样做的program。 这是一个简短的解释:
首先,您需要将数据转换为火车和验证文件,例如' train.tfreords'和' valid.tfreocrds'
你的训练计划中的第二个开始两个解析这两个文件的队列, 并使用共享变量来获取train和valid
的两个logits在我的程序中,这是由
完成的with tf.variable_scope("inference") as scope:
logits = mnist.inference(images)
scope.reuse_variables()
validation_logits = mnist.inference(validation_images)
然后使用logits
获取火车损失并将其最小化并使用validation_logits
来获得有效的准确度