caffe 安装与配置 (仅CPU版)以及Ubuntu 14.04 64位机上用Caffe+MNIST训练Lenet网络

mk521mk 2016-05-31 07:50:28
caffe 安装与配置 (仅CPU版)以及Ubuntu 14.04 64位机上用Caffe+MNIST训练Lenet网络
/*布置caffe 时 你会遇到各种各样的问题,希望这篇文章能够对你布置 有所帮助*/
本文主要参考于 以下几个文章:
1、Ubuntu14.04 安装Caffe(仅CPU):http://www.aiuxian.com/article/p-2826126.html
2、Ubuntu14.04安装OpenCV3.0:http://www.lai18.com/content/2179779.html
3、 Ubuntu 14.04 64位机上用Caffe+MNIST训练Lenet网络操作步骤:http://www.linuxidc.com/Linux/2015-11/124913.htm
4、caffe官网:http://caffe.berkeleyvision.org/
一、Ubuntu14.04 安装Caffe(仅CPU)
此步参考于 文章1
(1)下面为shell脚本文件 install1.sh (可以复制此段代码到install1.sh中)然后运行 $bash install.sh 即可)
此步主要用于安装依赖库1 以及安装BLAS
[code=text
#only cpu
#first install propration library
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
#second install blas
sudo apt-get install libatlas-base-dev
#third install python (Ubuntu 14.04 own python)
#install gcc (Ubuntu own gcc)
#install matlab (if you don't use matlab it's not necessary)
][/code]
(2)安装opencv3.0
下面为安装opencv的脚本文件:
installopencv3.0.sh

#install opencv 3.0 (*****it's necessary)
# ************* da jian bian yi huan jing *****/
sudo apt-get install build-essential

#****************2 install dependent library**********/
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
# ********************** 3 download opencv*******/
mkdir ~/opencv
cd ~/opencv
wget https://github.com/Itseez/opencv/archive/3.0.0-alpha.zip -O opencv-3.0.0-alpha.zip
unzip opencv-3.0.0-alpha.zip
#************ install opencv*******/
cd opencv-3.0.0-alpha # important step maybe appear error
cmake .
sudo make
sudo make install
sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig
#**88 complie program simple**************8/
cd samples
sudo cmake .
sudo make -j $(nproc)
# run test program if appear image a gril it's sucessful
cd cpp/
./cpp-example-facedetect lena.jpg
# the end install opencv


弹出图像说明你安装成功了进行下一步
(3)安装依赖库以及下载caffe

# install next dependent library
cd ~/opencv/opencv-3.0.0-alpha
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
# download caffe
cd ~
git clone git://github.com/BVLC/caffe.git
echo "下载完成 请继续"
sudo gedit ~/caffe/Makefile
sudo gedit ~/caffe/examples/cpp_classification/classification.cpp
echo "如果修改完成 请保存 并进行下一步

注意此步一定要按照文章1 的内容进行配置 否则会出错
$ cd ~/caffe
$ cp Makefile.config.example Makefile.config
# 修改Makefile.config文件:去掉CPU_ONLY:= 1的注释
(4)build caffe 和配置Python install5.sh

cd ~/caffe
make all
make test
make runtest
# peizhi pycaffe
sudo apt-get install python-numpy python-scipy python-matplotlib python-sklearn python-skimage python-h5py python-protobuf python-leveldb python-networkx python-nose python-pandas python-gflags Cython ipython
sudo apt-get install protobuf-c-compiler protobuf-compiler
cd ~/caffe
make pycaffe
sudo gedit /etc/profile


按文章1 手动配置文件 接下来执行
$ source /etc/profile
至此 caffe配置完毕

二、Ubuntu 14.04 64位机上用Caffe+MNIST训练Lenet网络操作步骤

以上默认的是在GPU模式下运行,如果想让其在CPU模式下运行,只需将lenet_solver.prototxt文件中的solver_mode字段值由原来的GPU改为CPU即可;

1.将终端定位到Caffe根目录;注意此步一定要在根目录下进行 不然会出现错误 convert_..data.bin:not no found;

2.下载MNIST数据库并解压缩:$ ./data/mnist/get_mnist.sh

3.将其转换成Lmdb数据库格式:$ ./examples/mnist/create_mnist.sh

执行完此shell脚本后,会在./examples/mnist下增加两个新目录,mnist_test_lmdb和mnist_train_lmdb

4.train model:$ ./examples/mnist/train_lenet.sh

(1)、使用LeNet网络(《Gradient-BasedLearning Applied to Document Recognition》);

(2)、使用./examples/mnist/lenet_train_test.prototxtmodel;

(3)、使用./examples/mnist/lenet_solver.prototxtmodel;

(4)、执行train_lenet.sh脚本,会调用./build/tools目录下的caffe执行文件,此执行文件的实现是./tools目录下的caffe.cpp文件;

(5)、执行此脚本后,会生成几个文件,其中./examples/mnist/lenet_iter_10000.caffemodel则是最终训练生成的model文件;

以上默认的是在GPU模式下运行,如果想让其在CPU模式下运行,只需将lenet_solver.prototxt文件中的solver_mode字段值由原来的GPU改为CPU即可;
...全文
281 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

24,855

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧