您的位置:首页 > 运维架构 > Linux

CentOS6.8 + cuda + caffe安装记录 (之二 caffe测试)

2016-09-05 16:05 597 查看
作者默认在读该文之前,已经成功安装了caffe。

若尚未安装并且操作系统为CentOS,请移步http://blog.csdn.net/u011636440/article/details/52440207

若尚未安装并且操作系统为Ubuntu,请移步http://blog.csdn.net/u011636440/article/details/52438666

在make all,make test和make runtest执行过之后,便认为caffe可以使用了。但是是不是真的可以用呢?这里便需要通过实际的例子来跑一下,看一下caffe跑完以后究竟会产生什么。

Caffe包中有给出的已经写好的脚本,可以直接运行。其实如果只是想看看运行完成后是什么样的,不需要了解内部的原理,只需要三行命令就够了(这三行命令均在caffe-master下执行)。以mnist为例:

./data/mnist/get_mnist.sh
./examples/mnist/create_mnist.sh
./examples/mnist/train_lenet.sh


下面来解释一下这都是干嘛的。

首先mnist是大牛提出了的最早的神经网络进行图片识别的经典例子,用来识别图片中的手写数字,当然这些图片是都是经过大小归一和中心化的。

get_mnist.sh是用来下载数据的脚本,所以上面第一行命令是用来获取测试数据的。当然也可以自己从官网下载。个人觉得这样比较简便。下载成功会有如下两个数据集:/data/mnist/mnist-train-leveldb和/data/mnist/mnist-test-leveldb

create_mnist.sh是把下载下来的数据转换为caffe可以处理的数据类型的脚本。执行完成后在/example/mnist中会多两个文件mnist_test_lmdb和mnist_train_lmdb。

train_mnist.sh是进行训练的脚本,但是在训练之前,需要认识一下两个文件,lenet.prototxt和lenet_solver.prototxt。lenet.prototxt中放了网络的配置信息,包括网络中分了多少层,每一层有多少个节点等;lenet_solver.prototxt是运行时的网络条件,因为我的在安装caffe时只有CPU配置,所以在训练之前要把lenet_solver.prototxt的最后一行处理器配置改为CPU





训练时,官方给出的mnist网络,会每迭代100次打印一下损失信息,迭代10000次然后结束。训练结束后文件夹中多了结果文件caffemodel,里边存的是网络中各节点的参数,存的是二进制文件,使用vim编辑器打开是乱码,但是caffemodel就可以使用Python调用了。



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  caffe centos