我与Caffe合作,并且有兴趣比较我的训练和测试错误,以确定我的网络是否过度拟合或不合适。但是,我似乎无法弄清楚如何让Caffe报告训练错误。它将显示训练损失(在批次上计算的损失函数的值),但这在确定网络是否过度拟合/欠拟合时无效。有这么简单的方法吗?
我使用Python界面加入Caffe(pycaffe)。如果我可以以某种方式访问原始训练集,我可以通过前进传递批量并评估结果。但是,我似乎无法弄清楚如何访问超过当前处理批次的培训数据。这可能吗?我的数据采用LMDB格式。
答案 0 :(得分:1)
在train_val.prototxt
文件中,将source
阶段中的TEST
更改为指向训练LMDB数据库(默认情况下,它指向验证LMDB数据库),然后运行以下命令:
$ ./build/tools/caffe test -solver models/bvlc_reference_caffenet/solver.prototxt -weights models/bvlc_reference_caffenet/<caffenet_train_iter>.caffemodel -gpu 0