卷积神经网络开发环境搭建
框架(Frameworks)
Caffe, Torch, Theano, Tensorflow, Caffe2, Pytorch, PaddlePaddle, CNDK, MXNet等等,如今最常用的框架当属 Pytorch 和 Tensorflow, 而 Caffe 和 Caffe2 次之。不同的框架有不同的第三方库要求,为了避免潜在第三方库冲突,使用虚拟环境则能有效保护系统环境。因此,推荐基于 Anaconda 来部署需要的深度学习平台。
Anaconda 安装
Anaconda大版本有 Anaconda 2 和 Anaconda 3, 两者最大的区别是 conda 系统环境默认安装的 python 版本不同, Anaconda 2 默认使用的 python 2, Anaconda 3 则是使用 python 3。目前 python 2 已不再受官方维护,所以建议下载适合自己系统的最新版本(Anaconda3 官方安装教程)。
安装完成后需要配置环境变量,才能正常使用 anaconda
。以 Linux 版本为例,默认安装地址是 /home/<you user>/anaconda3
(注意<you user>
是你的Linux用户名), 则通过 vim ~/.bashrc
修改环境变量
export PATH=$PATH:/home/<you user>/anaconda3/bin
并生效 source ~/.bashrc
。此时当前系统就使用的是 anaconda 里的 python 了。
`conda list` #查看安装时自带的 Python 扩展
Anaconda的使用见 伯乐在线。
Tensorflow环境搭建
安装Tensorflow前,建议先使用 conda create -n TF python=3.6
创建一个名为 TF
的虚拟环境,并且在该环境中安装 python 3.6
(虽然最新版 python 3.7
已经发布,但新版python很容易造成问题)。然后使用命令 source activate TF
(Linux)/ activate TF
(Windows)进入TF
环境。接下来,利用pip
安装 TensorFlow:
pip install tensorflow # GPU版本用 tensorflow-gpu 这会自动安装 tensorflow 最稳定版本
最新版 TensorFlow 2.0 并不稳定,如果想尝鲜 2.0 的话,可以安装夜版
pip install tf-nightly-gpu-2.0-preview
-
验证安装是否成功
命令行输入
python
,进入 python 环境在 python 环境中,输入
import tensorflow as tf hello = tf.constant('Hello, TensorFlow!') sess = tf.Session() print(sess.run(hello))
如果tensorflow安装成功,将会输出
Hello, TensorFlow!
参考资料
[1] tensorflow 使用及神经网络搭建教程 Wangxiao博客
二、Caffe Linux环境搭建
-
依赖包确认与安装
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 instal libgflags-dev libgoogle-glog-dev liblmdb-dev
-
矩阵计算包安装,可选
BLAS
,OpenBLAS
,MKL
,推荐OpenBLAS
,可在caffe
CNN训练中多线程运行git clone https://github.com/xianyi/OpenBLAS cd OpenBlas make FC=gfortran #这一步可能会出现 cannot find lgfortran的错误,原因是gcc版本与gfortran版本不符 sudo make PREFIX=/opt/OpenBLAS install #指定安装路径
-
安装
caffe
git clone https://github.com/bvlc/caffe.git cp Makefile.config.example Makfile.config vim Makefile.config
Makefile.config 仔细阅读注释,修改下面几行
BLAS = open
#
#
#
BLAS_INCLUDE: = /opt/OpenBLAS/include
BLAS_LIb := /opt/OpenBLAS/lib
...
MALTAB_DIR := /usr/local/MATLAB/R2015b #Matlab 安装的根目录,根据自己情况更改
# MATLAB_DIR := Application/MALTAB_R2012b.app
# NOTE; this is required only if you will compile the python interface.
# We need to be able to find Python.h and numpy/arrayobject.h.
PYTHON_INCLUDE := /usr/include/pyhon2.7 \
/usr/lib/python2.7/dist-packages/numpy/cor/include
#若是Python 3.x版本, 在下面的Python 3中修改
....
最后, 编译
make all -j8
make test -j8
make runtest -j8
make pycaffe -j8
make matcaffe -j8
参阅 官网编译文档