您的位置:首页 > 其它

MatConvNet的CPU和GPU编译配置

2017-02-15 21:39 267 查看
MatConvNet: Matlab Convolution Neural Network

官方网址: http://www.vlfeat.org/matconvnet/ 

介绍: MatConvNet is a MATLAB toolbox implementing Convolutional
Neural Networks (CNNs) for computer vision applications. It is simple, efficient, and can run and learn state-of-the-art CNNs. Many pre-trained CNNs for image classification, segmentation, face recognition, and text
detection are available. (摘录于官方网站的说明)

中文介绍:MatConvNet是一个MATLAB工具箱,提供了计算机视觉的卷积神经网络(CNN)。 它简单,高效,是一个先进的可以运行和学习的CNN。 许多预测训练的CNN网络可以用于图像分类,分割,面部识别和文本检测。

下载:



进入官网之后点击download进行下载。

文件夹介绍:



data: 读取和存放数据集的位置。

examples:



提供了几个经典的CNN网络

matlab:相关配置文件位置

utils:提供了相关的帮助工具(文件)

接下来我们需要添加相关文件夹至matlab运行路径中,包括了data,examples,matlab,utils以及相关子文件夹。

确认添加完成之后试运行examples下面的vggfaces文件夹里面的cnn_vgg_faces.m文件。直接运行后Matlab会自动下载相关数据集,位置在data下面的models里面,下载完成之后我们再次运行cnn_vgg_faces.m文件就可以得到下面的结果:



说明我们相关下载和路径配置已经完成。

下载之后就需要进行配置(安装),配置方法有两种,官网上面也有详细的介绍。查看方法:点击上方的 Getting Started -> Installing。 既可以看见相关设置方法。

这里我用到的是Matlab2016a和VS2015两个平台去实现的。这里我极力推荐VS2015版本和Matlab2013以后的版本

因为我当时尝试了VS2017不可以,VS2010可以但是必须要按照网上的相关步骤去一步一步的按照顺序的安装SDK,相当的麻烦。所以我强烈推荐大家用VS2015.因为只需要在安装的时候选上开发者工具包并一起安装就可以很简单的进行二者的搭建。(上一篇文章有提到)

两种方法:1. CPU ; 2. GPU

1. CPU 搭建方法相对比较简单,错误相对较少,但是单排运算速度慢,适用于小的数据集。

步骤:

a) 输入:mex -setup cpp          %  启动配置

b) 输入:vl_compilenn  % 配置相关文件



全部通过之后就是CPU配置成功了,就可以开始相关CNN的训练了。

2.GPU的配置相对复杂不过优点就是并排运算,效率非常高,适于大的数据处理。

a)需要先下载安装CUDA。下载地址:https://developer.nvidia.com/cuda-downloads 。

 选择自己电脑的配置进行下载并按步骤安装:

b)下载安装cuDNN。下载地址:https://developer.nvidia.com/cudnn

需要进行一个简单的注册(乱填就好了),在选择版本的时候需要根据CUDA的版本来选择正确的版本(有提示)。

c)将下载好的cuDNN放在你的matconvnet的路径下面,并将cuDD里面的bin文件夹下面的cudnn64_5.dll文件复制至matconvnet的matlab里面的mex文件夹里面。

d)为cuDNN搭建配置:

在matconvnet的路径下面创建一个名字为:compileGPU 的.m文件(CODE如下):

[plain] view
plain copy

 print?

<span style="font-family:SimSun;font-size:18px;">addpath matlab;    

    

% % with cudnn    

vl_compilenn('enableGpu', true, ...    

                'cudaRoot', 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0', ...  % 这里填写你的CUDA的安装路径,基本上是这个位置  

                'cudaMethod', 'nvcc', 'enableCudnn', 'true', ...    

                'cudnnRoot', 'C:\Users\matconvnet-1.0-beta23\matconvnet-1.0-beta23\cudnn-8.0-windows10-x64-v5.1\cuda');  % 这里填写你的cuDNN的路径  </span>  

并运行这个文件没有错误发生,证明GPU安装完成。

接下来就可以在训练数据的时候使用GPU的配置了。

(备注:如果需要比较时间,可以使用tic toc的方法来计算运行时间)

GPU效果图:



可以看出我现在已经达到了3万的Hz。比上一篇我们使用CPU的4千Hz快了接近8被左右,相当给力。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息