安装Anaconda(optional)
Anaconda是一个python科学计算环境,提供了很多包用于科学计算。如果不使用Anaconda作为主要python开发环境的话,可选择不安装,使用系统提供的python开发环境即可。因为我经常使用python的notebook在浏览器中写python代码,故我会在下面示例脚本中配置notebook。
# 安装Anaconda,安装过程注意分配安装目录, 安装完时会提示是否配置.bashrc, 选择YES。
bash Anaconda2-4.0.0-Linux-x86_64.sh
# 生成notebook默认配置文件, 配置文件路径为~/.jupyter/jupyter_notebook_config.py.
jupyter-notebook --generate-config
# 生成notebook远程登录密码,在ipython中执行如下代码:
In [1]: from notebook.auth import passwd
In [2]: passwd()
password: # 输入你为notebook服务准备的远程登录密码
Verify password: # 重新输入上面的密码
Out[2]: 'sha1:****' # 生成的加密后的远程密码
# 打开notebook默认配置文件~/.jupyter/jupyter_notebook_config.py。添加如下内容:
c.NotebookApp.ip = '*' # notebook服务的IP地址为本机地址
c.NotebookApp.open_browser = False # 启动notebook服务时不打开浏览器
c.NotebookApp.password = u'sha1:****' # 将上面生成的加密后的远程密码复制到这里
c.NotebookApp.port = 8888 # 访问notebook服务的端口
# 启动notebook服务
nohup jupyter-notebook 1>>jupyter-notebook.log 2>>jupyter-notebook.log &
或 nohup jupyter-notebook --config=/path/to/myconfig.py 1>>jupyter_notebook.log 2>>jupyter_notebook.log &
安装Caffe
如果想使用Digts这款可视化环境来进行深度学习的训练,那么使用NVIDIA分支的Caffe,因为BVLC版本的Caffe不支持Digits可视化环境。
# 如果使用Anaconda作为python开发环境,确保.bashrc中已经配置好Anaconda的环境变量,我的.bashrc中Anaconda的环境变量如下.
export PATH="/home/xinxin/software/anaconda2-4.0.0/bin:$PATH"
# 使用cmake编译Caffe, 这样可以使自己的C++工程很方便的在CMakelist.txt引入Caffe的头文件和链接库.
# 在CMakelist.txt中配置python, 是否支持GPU等, 我在CMakeList.txt中禁用了cuDNN, 不然会编译出错.
git clone git@github.com:BVLC/caffe.git
cd caffe && mkdir cmake_build && cd cmake_build
cmake .. -DBUILD_SHARED_LIB=ON # 默认会生成动态库,需要注意的是, 我这里开启动态库的原因是, C++工程链接Caffe动态库最方便,链接静态库的话,会需要额外链接其他的一些依赖库.
make -j 8 && make install # Caffe默认安装位置是build_dir/install.
# 安装Caffe的python接口,方便使用python操作Caffe
cd caffe && make -j8
pip install -r caffe/python/requirements.txt # 安装python依赖
cp Makefile.config.example Makefile.config
vi Makefile.config # 使用Anaconda的话,修改python路径
make pycaffe
make test -j8
make runtest -j8
# 添加Caffe的python接口道.bashrc
export PYTHONPATH=/home/xinxin/caffe/python:$PYTHONPATH
安装Digits
Digits是NVIDIA开发一款Caffe可视化操作工具,可以很方便的在网页中对数据操作和训练模型。
git clone https://github.com/NVIDIA/DIGITS.git
cd digits
pip install -r requirements.txt
nohup ./digits-devserver -p 5001 & # 启动Digts服务,端口是5001
CMake工程中引入Caffe
cmake_minimum_required(VERSION 2.8.8)
find_package(Caffe)
include_directories(${Caffe_INCLUDE_DIRS})
add_definitions(${Caffe_DEFINITIONS})
add_executable(caffeinated_application main.cpp)
target_link_libraries(caffeinated_application ${Caffe_LIBRARIES})