cpu only配置
首先安装caffe所有的依赖包
sudo apt-get install git
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
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install python-dev
下载caffe源码
git clone git://github.com/BVLC/caffe.git
cd caffe
cp Makefile.config.example Makefile.config
修改Makefile.config ,去掉CPU_ONLY前面的注释
make -j4
这边我用make -j的话 笔记本在编译的时候会死机。。。
在编译的过程中会出现如下问题“fatal error: hdf5.h: 没有那个文件或目录”
解决办法是修改Makefile.config文件,将下面第一行改为第二行,多添加一个路径
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/
修改Makefile文件,把下面第一行代码改为第二行代码
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial
解决上面那个问题后,caffe cpu only就能正常编译啦
caffe GPU
首先要确定自己的GPU是否满足caffe计算的要求,用的NVIDIA的GPU可以在它的官网查看GPU的计算能力,https://developer.nvidia.com/cuda-gpus
可能需要3.5以上 。
更新显卡驱动,可以参考这篇文章
我最后使用的驱动如下
之前用的361的版本,但是后面测试cuda时,会提示显卡驱动版本太低了。
然后就去官网下载cuda toolkithttps://developer.nvidia.com/cuda-downloads
,我下载的是runfile文件
在ubuntu下载非常慢,我是从Windows上用迅雷下载来的。
下载完成后,执行下面的命令
sudo sh cuda_8.0.44_linux.run
安装会有3个步骤,第一个步骤会问你是否安装驱动,这步需要选择n,不要安装,下面问是否安装就选择y就行了,安装完成后在~/.bashrc 声明一下环境变量,
export PATH=/usr/local/cuda-8.0/bin:$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-8.0/lib64
用nvidia-smi
可以测试下
创建链接文件
sudo gedit /etc/ld.so.conf.d/cuda.conf
添加如下语句
/usr/local/cuda/lib64
执行
sudo ldconfig
立即生效
测试cuda
cd /usr/local/cuda-7.5/samples/1_Utilities/deviceQuery
make
sudo ./deviceQuery
如果没有错误,显示了的GPU的信息,就说明cuda安装成功
也可以运行一个cuBLAS例程来验证
cd /usr/local/cuda-8.0/samples/7_CUDALibraries/batchCUBLAS/
make
./batchCUBLAS -m4096 -n4096 -k4096
切换到GPU加速模式
修改Makefile.config中的选项:
#CPU_ONLY:=1 加上井号
然后重新编译工程
进入到caffe的目录
make clean
make -j4
等待编译成功就行了
配置python接口
准备python环境
sudo apt-get install update
sudo apt-get install install python-pip python-dev python-numpy
sudo apt-get install gfortran
sudo pip install -r ${CAFFE_ROOT}/python/requirements.txt
sudo pip install pydot
如果 pip的速度太慢,参考使用镜像地址
mkdir ~/.pip
然后在该目录下创建pip.conf文件编写如下内容:
[global]
trusted-host = pypi.douban.com
index-url = http://pypi.douban.com/simple
将caffe根目录下的python文件夹加入到环境变量,配置.bashrz文件,加入
export PYTHONPATH=$PYTHONPATH:/home/fangbinwei/caffe/python
,要改成你自己的caffe目录
source ./.bashrc
,关掉终端重新打开一遍
在命令行测试下import numpy
是否成功
我有出现下面这个问题
出现这个问题的原因是我添加的PYTHONPATH有问题,我原本添加的是这个
export PYTHONPATH=$PYTHONPATH:/home/fangbinwei/caffe/python/caffe(这个需要删掉)
export PYTHONPATH=$PYTHONPATH:/home/fangbinwei/caffe/python
编译pycaffe
cd ${CAFFE_ROOT}
make clean
make -j4
make pycaffe
绘制网络结构图
cd ${CAFFE_ROOT}/python
python draw_net.py ../examples/mnist/lenet_train_test.prototxt lenet5.png
这是绘制好的图
关于pycharm
我后来从桌面图标pycharm进去,import caffe的时候,需要先加sys.path.append("/home/fangbinwei/caffe/python")
因为它不读取 .bashrc里的环境变量
如果从终端进入pycharm则不需要加上面的句
参考:
https://github.com/BVLC/caffe/issues/782
http://blog.csdn.net/autocyz/article/details/52299889
http://blog.csdn.net/u010402483/article/details/51506616
http://blog.csdn.net/xue_wenyuan/article/details/52037121