专栏首页机器学习、深度学习从零开始安装 Caffe --CPU only----没有 pycaffe

从零开始安装 Caffe --CPU only----没有 pycaffe

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhangjunhit/article/details/73456860

最近新发了一台服务器, i7-4790/3.6GHz 处理器, 显卡 GTX 1080 Ti Pascal 开始新一轮的装机旅程。 系统是厂家安装的 Ubuntu14.04

下面从零开始安装Caffe

sudo apt-get update sudo apt-get update

(2)安装caffe的依赖项 1)一般依赖项 sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler sudo apt-get install --no-install-recommends libboost-all-dev

2)BLAS依赖项 sudo apt-get install libatlas-base-dev sudo apt-get install libopenblas-dev

3)python依赖项 安装python及其头文件 sudo apt-get install python sudo apt-get install python-dev

安装python的其他依赖 sudo apt-get install python-numpy sudo apt-get install ipython sudo apt-get install ipython-notebook sudo apt-get install python-sklearn sudo apt-get install python-skimage sudo apt-get install python-protobuf

4)谷歌glog和gflags和lmdb依赖项 sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

(5)安装git,并且下载代码 sudo apt-get install git git clone https://github.com/BVLC/caffe.git 然后进入到源码目录 cd caffe

(6)编译Caffe cp Makefile.config.example Makefile.config 然后修改Makefile.config设置你的python的路径和matlab的路径 # 修改Makefile.config文件:去掉CPU_ONLY:= 1的注释

注意:-j8表示使用多核进行编译,8是核心个数

$ make all $ make test $make runtest

接着看看在 Caffe 中怎么用 LetNet-5 进行训练和测试,整个流程如下:(先cd到 Caffe 的根目录下) 1)下载 minist 数据的命令: \$cd data/mnist $ ./get_mnist.sh

这个脚本主要内容是从 http://yann.lecun.com 上下载 mnist 训练和测试数据,并解压

2)将下载的数据转换为 Caffe 能识别的数据格式 LEVELDB 或 LMDB,对应的命令为: $ ./examples/mnist/create_mnist.sh 上面的脚本调用了 build/examples/mnist/convert_mnist_data.bin这个可执行程序,对应的源文件为 convert_mnist_data.cpp 完成之后,在目录 examples/mnist 发现生成了 examples/mnist/mnist_train_\ lmdb/ (对应训练集) 和 examples/mnist/mnist_test_lmdb/ (对应测试集或验证集)两个目录,每个目录下都有两个文件: data.mdb和lock.mdb

3)定义 LetNet-5 网络模型,在 lenet.prototxt 中描述了广义的LetNet-5网络层设置,在 lenet_train_test.prototxt 中描述了 LetNet-5 训练和 测试时各网络层的设置。大致是差不多的,就是有些细节不一样。

4)有了网络模型,在训练前我们还需要指定一些训练参数,在lenet_solver.prototxt 中实现该功能的。这个文件最后一行是 GPU,如果没有GPU,需要改为CPU。不然报错

可以修改一下训练迭代次数,这样时间不太长 # The maximum number of iterations max_iter: 1000 # snapshot intermediate results snapshot: 500

  1. 现在我们有了训练数据、网络模型、指定了相关训练参数,可以开始训练网络 LetNet-5 了,使用下面的命令: $./examples/mnist/train_lenet.sh,训练完成之后,我们得到了一个关于 LetNet-5 在 mnist 数据上的模型 caffemodel

6)使用训练好的模型对数据进行预测,运行下面的代码: $ ./build/tools/caffe.bin test -model examples/mnist/lenet_train_test.prototxt -weights examples/mnist/lenet_iter_1000.caffemodel -iterations 100

命令行解释: ./build/tools/caffe.bin test,表示只做预测(前向传播计算),不进行参数更新(后向传播计算) -model examples/mnist/lenet_train_test.prototxt,指定模型描述文本文件 -weights examples/mnist/lenet_iter_1000.caffemodel 指定模型预先训练好的权值文件 -iterations 100,指定测试迭代次数,参与侧测试的样本数目为 (iterations*batch_size), test batch 设置为 100, 所以iterations =100时,刚好覆盖 10000个测试样本。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 深度摄影风格转换--Deep Photo Style Transfer

    Deep Photo Style Transfer https://arxiv.org/abs/1703.07511

    用户1148525
  • Linux下批量重命名文件名为数字索引编号(0~N.xxx)的方法

    在处理一些数据集的时候,我们经常会碰到数据集的文件名是按时间戳(time stamp),或者其他方式命名的文件,比如下图所示:

    用户1148525
  • Tensorflow 源码安装成功,导入报错 ImportError: cannot import name 'build_info'

    ImportError: cannot import name ‘build_info’

    用户1148525
  • How to install cmake 3.2 on ubuntu 14.04? caffe安装错误的解决

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/haluoluo211/article/details...

    bear_fish
  • ubuntu下python thrift

    py3study
  • Ubuntu安装ImageMagick库

    ImageMagick 是一个用来创建、编辑、合成图片的软件。它可以读取、转换、写入多种格式的图片。图片切割、颜色替换、各种效果的应用,图片的旋转、组合,文本,...

    hedeqiang
  • Ubuntu下搭建python开发环境

    Sudo apt-get install python-dev(编译外部模块文件使用的)

    py3study
  • tf.py_func

    封装一个python函数并将其用作TensorFlow op。给定一个python函数func,它以numpy数组作为参数并返回numpy数组作为输出,将这个函...

    于小勇
  • 没想到你是这样的Kali Linux | Kali 终端美化Figlet

    周俊辉
  • 东哥陪你学DAX——Treatas

    相信大家都遇到过下图这种情况,两表之间拉扯半天,虚线就是没法变成实线,表关联就是这么倔,不给面子

    公众号PowerBI大师

扫码关注云+社区

领取腾讯云代金券