1、计算图片数据的均值
图片减去均值后,再进行训练和测试,会提高速度和精度。因此,一般在各种模型中都会有这个操作。这个均值,实际上就是计算所有训练样本的平均值,计算出来后,保存为一个均值文件,在以后的测试中,就可以直接使用这个均值来相减,而不需要对测试图片重新计算。
命令如下:
build/tools/compute_image_mean examples/mnist/mnist_train_lmdb examples/mnist/mean.binaryproto
带两个参数:
第一个参数:examples/mnist/mnist_train_lmdb, 表示需要计算均值的训练数据(data.mdb)所在的目录。
第二个参数:examples/mnist/mean.binaryproto, 计算出来的结果保存文件。
caffe中使用的均值数据格式是binaryproto, 作者为我们提供了一个计算均值的文件compute_image_mean.cpp,放在caffe根目录下的tools文件夹里面。编译后的可执行体放在 build/tools/ 下面,我们直接调用就可以了。
2、mirror(镜像)参数的作用
在各个epoch中随机水平翻转图片。
就是一种数据扩增的方法,相当于增加了样本量,对防止过拟合有一定的效果,是一个最基本的办法。
因为是随机翻转,所以第二个epoch和第一个epoch被翻转的图不一样,所以最理想的情况是相当于数据集double了。