caffe for windows 训练cifar10

1 cifar10数据库

60000张32*32 彩色图片 共10类

50000张训练

10000张测试

下载cifar10数据库:http://www.cs.toronto.edu/~kriz/cifar-10-binary.tar.gz

这是binary格式的,所以我们要把它转换成leveldb格式。



2 在../caffe-windows/examples/cifar10文件夹中有一个 convert_cifar_data.cpp

将他include到MainCaller.cpp中。如下:

caffe for windows 训练cifar10_第1张图片

 

编译....我是一次就通过了 ,在bin文件夹里出现convert_cifar_data.exe。然后 就可以进行格式转换。binary→leveldb

可以在bin文件夹下新建一个input文件夹。将cifar10.binary文件放在input文件夹中,这样转换时就不用写路径了。

cmd进入bin文件夹


执行后,在output文件夹下有cifar_train_leveldb和cifar_test_leveldb两个文件夹。里面是转化好的leveldb格式数据。

当然,也可以写一个bat文件处理,方便以后再次使用。



3 下面我们要求数据图像的均值

编译../../tools/comput_image_mean.cpp

caffe for windows 训练cifar10_第2张图片

编译成功后。接下来求mean

cmd进入bin。

执行后,在bin文件夹下出现一个mean.binaryproto文件,这就是所需的均值文件。


4 训练cifar网络

在.../examples/cifar10文件夹里已经有网络的配置文件,我们只需要将cifar_train_leveldb和cifar_test_leveldb两个文件夹还有mean.binaryproto文件拷到cifar0文件夹下。

修改cifar10_quick_train.prototxt中的source: "cifar-train-leveldb"    mean_file: "mean.binaryproto" 和cifar10_quick_test.prototxt中的source: "cifar-test-leveldb"
    mean_file: "mean.binaryproto"就可以了,

后面再训练就类似于MNIST的训练。写一个train_quick.bat,内容如下:

copy ..\\..\\bin\\MainCaller.exe ..\\..\\bin\\train_net.exe
SET GLOG_logtostderr=1
"../../bin/train_net.exe" cifar10_quick_solver.prototxt  
pause

先编译一遍 train_net.cpp

运行train_quick.bat

  


5 运行结果



你可能感兴趣的:(C++,windows,源代码,CUDA,DeepLearning)