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 plaincopy print?
  1. <span style="font-family:SimSun;font-size:18px;">addpath matlab;
  2. % % with cudnn
  3. vl_compilenn('enableGpu', true, ...
  4. 'cudaRoot', 'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0', ...  % 这里填写你的CUDA的安装路径,基本上是这个位置
  5. 'cudaMethod', 'nvcc', 'enableCudnn', 'true', ...
  6. '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被左右,相当给力。

MatConvNet的CPU和GPU编译配置相关推荐

  1. CPU?GPU?+配置CUDA

    CPU?GPU?+配置CUDA 一.CPU和GPU区别 1.内部结构区别 2.结构不同能力不同 二.配置GPU环境(CUDA) 1.必要条件 2.安装正确的版本 三.参考博客 一.CPU和GPU区别 ...

  2. android配置参数详解,安卓手机CPU与GPU等配置参数含义详解【详细介绍】

    我们在关注一些手机配置信息的时候,很多手机配置表上常常会标识CPU,GPU,RAM,ROM以及GSM,WCDMA等一系列英文配置参数的数据,而这一些相似的英文配置都代表了什么意思呢?关于这个问题,一起 ...

  3. Caffe-SSD(single-shot-multibox)在Windows平台下的配置(CPU和GPU)与训练记录

    1在windows上面训练和测试ssd的方法很少,而且配置也相当之麻烦,搞了几天才调试成功.现在写一下过程分享到博客上,顺便也可以作为今后再次安装的参考.我的配置环境: windows: 10  gp ...

  4. Windows7下Caffe-SSD的应用(一)——在Windosw7下编译配置Caffe-SSD CPU版本

    前言 1.用过Caffe的GooglNet做图像分类的相关项目,比起传统的办法,效果要好很,在目标检测这块,之前也用传统的HOG加SVM实现过车辆,行人和马匹的检测,但正样本要上万图像,才能达到能应用 ...

  5. 关于做深度学习,如何配置本地工作站(CPU、GPU等一系列问题扫盲和推荐)

    前言 大家都知道做深度学习研究,特别是进行多层次神经网络的运算,需要耗费大量的计算机算力和时间,而一个好的硬件可以大大减少降低训练的时间成本,特别是当我们需要对模型进行反复调参数时,时间成本的增加将会 ...

  6. 小米跑分不仅仅是配置,跑的是CPU性能+GPU性能等综合性能

    小米跑分不仅仅是配置,而是 CPU性能+GPU性能+内存及ROM存取效率+WIFI及2G/3G上网效率+整体系统优化的综合性能,其中系统优化是非常关键的! 作为一款国产手机,小米2不管是在性能上还是系 ...

  7. Fast RCNN 训练自己数据集 (1编译配置)

    Fast RCNN 训练自己数据集 (1编译配置) FastRCNN 训练自己数据集 (1编译配置) 转载请注明出处,楼燚(yì)航的blog,http://www.cnblogs.com/louyi ...

  8. 【caffe-Windows】caffe+VS2013+Windows无GPU快速配置教程

    前言 首先来一波地址: happynear大神的第三方caffe:http://blog.csdn.net/happynear/article/details/45372231 Neil Z大神的第三 ...

  9. 深度解析:CPU与GPU有什么区别?xPU又是什么鬼?

    先了解什么是异构并行计算 同构计算是使用相同类型指令集和体系架构的计算单元组成系统的计算方式. 而异构计算主要是指使用不同类型指令集和体系架构的计算单元组成系统的计算方式,常见的计算单元类别包括CPU ...

最新文章

  1. 当机器学习性能遭遇瓶颈时,如何优化?如何去尝试解决问题?
  2. java设置native内存大小_如何定位native内存泄露问题?
  3. java卸载_java快速入门篇之windows-MySQL-5.6安装与卸载
  4. Exchange系列—使用系统自带的备份工具来备份数据库
  5. eclipse插件egit安装使用
  6. MATLAB设置x为0到10所有数,MATLAB教学_10数值微积分
  7. 7收不到邮件 contact form_Contact Form 7基本使用教程
  8. 为什么有的人有心事就容易失眠?
  9. Asp.Net MVC 自定义登录过滤器
  10. php 如果则,如果python脚本在phpfi中运行,则导入python模块时会出错
  11. VMware虚拟机启动后出现黑屏,挂起关机无响应解决方案
  12. java dump分析工具_java线程dump分析工具
  13. 解决Ubuntu环境搜狗拼音候选区乱码问题
  14. 【181018】纯C 编写的太空大战打字游戏
  15. 爱上小西装外套的16个瞬间
  16. mkv linux 封装字幕,【多媒体封装格式详解】---MKV【1】
  17. 只要60页!金融量化博士总结的Python数据分析入门知识手册
  18. 安卓逆向小案例——阿里系某电影票务APP加密参数还原-Unidbg篇
  19. 高数 | 积分中值定理的开闭区间、积分第一中值定理及其推广
  20. 第二章 ObjectARX类库简介

热门文章

  1. vue中文翻译拼音组件_Vue组件可简化文本的翻译方式:通过内联翻译
  2. android 文本框 大文件,关于解决安卓手机超大文件夹(thumbnails)
  3. 微信5秒超时 php异步,微信公众号-5秒内不回复测试并处理方案,顺便复习php 时间执行...
  4. spicy.parser
  5. Appy Couple:婚礼策划应用 用户个性化定制
  6. 一梦江湖卡在服务器信息100,一梦江湖卡69、89、129到底有什么区别?这一篇讲的很清楚了...
  7. Thinking In Design Pattern——工厂模式演绎
  8. 同时安装Office和Visio
  9. python里raise是什么意思_Python中raise与raise...from之间有何区别?
  10. 最美诗词可切换网站单页源码