Machine learning 为什么在caffe的培训阶段会有准确度输出?

Machine learning 为什么在caffe的培训阶段会有准确度输出?,machine-learning,neural-network,deep-learning,caffe,Machine Learning,Neural Network,Deep Learning,Caffe,您好,我在基本数据集mnist上使用了caffe,我想知道为什么在训练期间会有准确度输出?在prototxt文件lenet\U train\U test.protoxt中,精度层为 layer { name: "accuracy" type: "Accuracy" bottom: "ip2" bottom: "label" top: "accuracy" include { phase: TEST } } caffe维基上说,当我运行caffe训练时,我明确

您好,我在基本数据集mnist上使用了caffe,我想知道为什么在训练期间会有准确度输出?在prototxt文件lenet\U train\U test.protoxt中,精度层为

layer {
  name: "accuracy"
  type: "Accuracy"
  bottom: "ip2"
  bottom: "label"
  top: "accuracy"
  include {
    phase: TEST
  }
}
caffe维基上说,当我运行caffe训练时,我明确表示要在特定阶段进行训练,caffe测试也是如此。但是,为什么当我运行caffe train时,当精度层明确表示“测试”时,我仍能获得精度?

请查看solver.prototxt;应该有这样的线条

test_iter: 1000
test_interval: 50

这些是检查模型收敛性的定期测试。在这种情况下,每50次训练迭代进行一次测试;该测试由1000次前向传递迭代组成。这是您准确性报告的来源。您应该看到,通过培训,准确性总体上有所提高。当精度稳定时,您已经达到收敛-当您进入过度拟合时,进一步的训练可能会降低精度。

您可以发布完整的proto_test.protext,我怀疑有一个层有准确性,但没有提及include指令。你也可以发布一部分输出,显示训练期间的准确性输出。