为什么在caffe的训练阶段会有准确的输出?

时间:2017-06-29 01:47:35

标签: machine-learning neural-network deep-learning caffe

您好我一直在基础数据集mnist上使用caffe,我想知道为什么在训练期间有准确性输出?在原型文件lenet_train_test.protoxt中,精度层是

layer {
  name: "accuracy"
  type: "Accuracy"
  bottom: "ip2"
  bottom: "label"
  top: "accuracy"
  include {
    phase: TEST
  }
}

来自caffe Wiki,它说当我运行caffe火车时,我明确表示要在特定阶段进行训练,同样适用于caffe测试。但是为什么当我运行caffe train时,我仍然可以获得准确性,因为准确性层专门说TEST?

1 个答案:

答案 0 :(得分:1)

solver.prototxt;应该有像

这样的行
test_iter: 1000
test_interval: 50

这些是用于检查模型收敛的定期测试。在这种情况下,测试是每50次训练迭代;该测试包含1000次前向迭代。这是您的准确度报告的来源。您应该通过培训看到准确性普遍提高。当这种精确度达到稳定时,你就会达到收敛状态 - 进一步训练可能会降低准确度,因为你会过度拟合。