您的位置:首页 > Web前端

Windows10+CUDA8.0+VS2015+CUDNN5.1下配置 caffe 2017.11.17号

2017-11-17 17:54 573 查看


转载自http://blog.csdn.net/zhj_matlab/article/details/69943869,在此基础上根据自己的安装过程做出修改,非常感谢原作者(尽量保持原文,蓝色字体为修改处)。


前言

在参照了网上的博客和官方给的说明后我终于配置好了我的caffe,比较坑爹的是我一开始是直接按照博客给的方法配置的,总是出问题。待我静下心来去看官方的文档发现文档是有调整的,所以按部就班地按别人的思路是配置不好的。另外由于它配置的命令build_win.cmd命令是有可能会修改的,如果大家发现我说的和他给的build_win.cmd不一样,还需要多加留心。


1.下载所需要的文件

我所用的caffe地址,里面的官方说明。 


 
必须需要的环境是: 

根据官方的说明,需要VS2015或2013(Ninja 也可以)。 

cmake需要3.4版本以上的。 
可供选择的是: 

Anaconda Python2.7 or 3.5 x64(or Miniconda) 

MATLAB的接口 

CUDA8.0 

cuDNN v5

我的环境是 
1.VS2015 
2.cmake 3.10.0-rc5 
3.miniconda3 Python 3.5 x64
(官方下载只能安装3.6的,可以通过https://conda.io/docs/user-guide/tasks/manage-python.html的说明,创建一个python3.5的包,下面详细介绍)
4.CUDA8.0 
5.cuDNN v5.1

一定要明白自己的配置环境,因为官方给的配置环境不一定和你的一样,我就进行了一定的修改,待会我会写出来修改的地方,如果你的环境和我不一样需要留心。

下载链接以及说明: 

1.caffe代码按照官方教程下载windows分支下面的就可以了(https://github.com/BVLC/caffe/tree/windows)。

2.cmake(https://cmake.org/download/

3.miniconda3  python3.6  x64(https://conda.io/miniconda.html)
(注意:官方只能下载python 3.6版本的,在安装完python3.6版本的miniconda之后,注意在安装的时候将目录添加到环境变量中,然后命令行中执行:
conda create -n py35 python=3.5 anaconda,执行之后,会下载并安装python3.5下面的库,成功之后;

命令行中执行 activate py35,即可激活python3.5,但是当退出之后仍然是默认的3.6,这个时候命令行执行:

conda info --envs,可以看到有2个python环境:一个是root,一个是py35,并且可以看到py35这个包的安装路径。

然后在windows的环境变量中,把py35这个环境的路径和这个路径下的scripts路径添加到path路径中,

并在系统变量的path路径中删除掉原来的miniconda3/bin和miniconda3/scripts路径,这个再进入命令行中输入python,

默认就是python3.5了。

4.下载相应的caffe依赖包,地址https://github.com/willyd/caffe-builder/releases/ (注意我这里下载的是:libraries_v140_x64_py35_1.1.0.tar.bz2 
   ,这个文件非常难下载,我下载了很多次都没下载下来,如果有需要的,请看百度云链接: https://pan.baidu.com/s/1bp4hJiv 密码: zwn8)

仅GPU: 

5.CUDA8.0 (https://developer.nvidia.com/cuda-downloads) 


 

6.cuDNN v5.1 

初次下载会让你注册,注册完就可以下载了。 (推荐在百度云上找这个文件,目前官网一直无法下载,2017.11.17号)


 
我下的是5.1的。 



根据要求,下载完成后,需要将cuDNN v5.1解压后的cuda文件拷贝至NVIDIA GPU Computing Toolkit\CUDA\v8.0文件夹下,比如我的是 
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0。


2.配置caffe:

官方说明: 



1.首先打开cmd命令行,切换到文件存储的路径。然后执行Git等一系列命令,按照说明的来,先执行前三句,比如我的是:


 

2.接着根据自己的情况修改caffe\scripts\bulid_win.cmd命令,使用文件编辑器或者notepad++打开这个文件。 
2.1修改里面的26-29行。
if !PYTHON_VERSION! EQU 3 (
        set CONDA_ROOT=C:\Users\cuiyongming\AppData\Local\conda\conda\envs\py35   修改为py35这个环境所在的路径
    )
1
2
3
4

2.2修改里面的68-90行
) else (
:: Change the settings here to match your setup
:: Change MSVC_VERSION to 12 to use VS 2013
if NOT DEFINED MSVC_VERSION set MSVC_VERSION=14 //用vs2013的把这里修改成12
:: Change to 1 to use Ninja generator (builds much faster)
if NOT DEFINED WITH_NINJA set WITH_NINJA=1  //用vs2015的把这里修改成0
:: Change to 1 to build caffe without CUDA support
if NOT DEFINED CPU_ONLY set CPU_ONLY=0   //只编译CPU的把这里修改成1
:: Change to Debug to build Debug. This is only relevant for the Ninja generator the Visual Studio generator will generate both Debug and Release configs
if NOT DEFINED CMAKE_CONFIG set CMAKE_CONFIG=Release
:: Set to 1 to use NCCL
if NOT DEFINED USE_NCCL set USE_NCCL=0
:: Change to 1 to build a caffe.dll
if NOT DEFINED CMAKE_BUILD_SHARED_LIBS set CMAKE_BUILD_SHARED_LIBS=0
:: Change to 3 if using python 3.5 (only 2.7 and 3.5 are supported)
if NOT DEFINED PYTHON_VERSION set PYTHON_VERSION=2   //由于使用的是python3.5,需要将这里改为3
:: Change these options for your needs.
if NOT DEFINED BUILD_PYTHON set BUILD_PYTHON=1
if NOT DEFINED BUILD_PYTHON_LAYER set BUILD_PYTHON_LAYER=1
if NOT DEFINED BUILD_MATLAB set BUILD_MATLAB=0  //需要MATLAB接口的把这里设置为1
:: If python is on your path leave this alone
if NOT DEFINED PYTHON_EXE set PYTHON_EXE=python
:: Run the tests
if NOT DEFINED RUN_TESTS set RUN_TESTS=0
:: Run lint
if NOT DEFINED RUN_LINT set RUN_LINT=0
:: Build the install target
if NOT DEFINED RUN_INSTALL set RUN_INSTALL=0
)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

2.3 在命令行下运行最后一句配置命令。 


 

3.当你执行最后一句命令的时候,它会下载一个依赖包,并且自动在C盘用户文件夹上生成.caffe文件夹,下载的依赖包就放到里面。如你所见,下载速度贼慢,而且有可能出错,所以推荐自己下载然后放在指定位置。把你下载的caffe依赖包压缩文件放到C盘用户文件夹下生成.caffe文件夹,如我的位置是在C:\Users\John.caffe\dependencies\download(这个位置可以在运行这个命令的界面中找到,将之前下载的文件放在这个位置,再重新运行此命令即可)。 
建议先运行build_win.cmd命令,如果速度太慢再把它关闭,这样就不需要自己创建对应的文件夹,只需把压缩文件拷贝就行。 
4.再运行一次build_win.cmd命令,这次不会有什么问题,等待一小段时间后cmake就把vs2015的项目给创建出来了。 
5.在caffe\scripts\build文件夹下就生成了caffe.sln,用vs2015将其打开,并在release x64或者Debug x64生成ALL_BUILD文件即可 


 
最后没有报错,那么配置就告一段落了。


3.测试caffe.exe

参见Windows下VS2015编译caffe(CPU ONLY) 

下载MNIST数据库​https://pan.baidu.com/s/1o7YrhKe,解压缩后将mnist-test-leveldb与mnist-train-leveldb文件夹放到\examples\mnist下

修改lenet_train_test.prototxt文件:
//需要修改四处地方,如下红色部分标注
name: "LeNet"
layer {
name: "mnist"
type: "Data"
top: "data"
top: "label"
include {
phase: TRAIN
}
transform_param {
scale: 0.00390625
}
data_param {
source: "....省略/examples/mnist/mnist-train-leveldb" //写上你的绝对路径 ,比如我的是E:\caffe\examples\mnist\mnist-train-leveldb
batch_size: 64
backend: LEVELDB //格式改成LEVELDB
}
}
layer {
name: "mnist"
type: "Data"
top: "data"
top: "label"
include {
phase: TEST
}
transform_param {
scale: 0.00390625
}
data_param {
source: "....省略/examples/mnist/mnist-test-leveldb" //写上你的绝对路径
batch_size: 100
backend: LEVELDB  //格式改成LEVELDB
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36

修改lenet_solver.prototxt文件:
net: "....省略/examples/mnist/lenet_train_test.prototxt"  //绝对路径

snapshot_prefix: "....省略/examples/mnist/lenet" //绝对路径

solver_mode: CPU //CPU模式如果的配置了GPU也可以选择GPU
1
2
3
4
5

编写批处理文件run.bat内容如下:
E:\caffe\scripts\build\tools\Release\caffe.exe  train--solver=E:\caffe\examples\mnist\lenet_solver.prototxt
//exe处写自己的绝对路径
Pause
1
2
3

上面替换为你的文件绝对路径就可以 

​双击run.bat程序能够运行,并且之后也不会报错,那么恭喜你,Caffe-Windows配置成功了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: