MatConvNet 主页: http://www.vlfeat.org/matconvnet/

转自:https://blog.csdn.net/qq_20259459/article/details/54093550

本文为原创文章转载请注明出处,博主博客地址:http://blog.csdn.net/qq_20259459  和

作者( jinweizhi93@gmai.com )信息。

(如有需要可以邮件联系我)

上一篇文章我直接使用了MatConvNet(去看上一篇文章:http://blog.csdn.net/qq_20259459/article/details/54092277),这里我将详细介绍和说明作为补充,以免有同学不太理解。

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的训练了。

{

https://blog.csdn.net/marleylee/article/details/76164091

编译完之后会多了一个mex文件夹,在matlab文件夹下面

编译完之后应该有除了cudnn64_4.dll外的mexw64文件,可以看出,这些文件主要是vl_conv,vl_imreadjpeg等。这些文件是由cuda C写的,并不是由MATLAB语言写的,格式是 xx.cu。然后通过mex将这些.cu文件编译成可以由MATLAB调用的函数,也就是说mexw64就相当于MATLAB的函数文件xx.m一样了。你可以看看MATLAB下面的vl_nnconv.m,可以看到文件里面全部都是注释,这样的话,调用时咋运行的啊。原来要先编译,编译好了多了mex文件,调用时是调用mexw64文件啊。这里的cudnn64_4.dll是后面用gpu编译时用到的。

}

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

https://blog.csdn.net/marleylee/article/details/76164091

{

一定要下载对应matlab版本的cuda,一开始我安装最新cuda8.0出错了,我的matlab是R2016a,重新安装了最新的cuda7.5,安装在默认路径下。

配置VS2013+cuda7.5:具体参考http://blog.csdn.NET/listening5/article/details/50240147

}

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如下):

<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的方法来计算运行时间)

可以看出我现在已经达到了3万的Hz。比上一篇我们使用CPU的4千Hz快了接近8被左右,相当给力。

深度学习 3. MatConvNet (CNN)的介绍和下载以及CPU和GPU的安装配置,Matlab2016相关推荐

  1. 深度学习常用的训练数据集介绍以及下载

    前言:数据是深度学习的血液,本文介绍一下当前非常常见的一些数据集. 1 ImageNet ImageNet是一个计算机视觉系统识别项目,是目前世界上图像识别最大的数据库.是美国斯坦福的计算机科学家李飞 ...

  2. 深度学习 | MATLAB实现CNN卷积神经网络结构及参数概述

    深度学习 | MATLAB实现CNN卷积神经网络结构及参数概述 目录 深度学习 | MATLAB实现CNN卷积神经网络结构及参数概述 基本介绍 模型描述 训练过程 计算函数 参考资料 基本介绍 卷积神 ...

  3. [深度学习] 分布式Tensorflow 2.0 介绍(二)

    [深度学习] 分布式模式介绍(一) [深度学习] 分布式Tensorflow 2.0介绍(二) [深度学习] 分布式Pytorch 1.0介绍(三) [深度学习] 分布式Horovod介绍(四) 一 ...

  4. 深度学习推荐系统之wide deep介绍和代码实现

    阅读前思考 在你的应用场景中,哪些特征适合放在Wide侧,哪些特征适合放在Deep侧,为什么呢? 为什么Wide部分要用L1 FTRL训练? 为什么Deep部分不特别考虑稀疏性的问题? 系列导读 深度 ...

  5. 深度学习的三种硬件方案:ASIC,FPGA,GPU;你更看好?

    原文链接:http://www.sohu.com/a/123574005_465947 深度学习的三种硬件方案:ASIC,FPGA,GPU:你更看好? 2017-01-06 10:59 硬件十万个为什 ...

  6. ​【斯坦福出品】吴恩达CS230深度学习课小抄来了 | 附下载

    这份人气深度学习秘籍,涵盖了吴恩达老师斯坦福大学CS230深度学习课程重点, 篇幅短 & 内容精简.并配备大量高清插图,不怕你看不下去,就怕看得停不下来.目前,清单地址已经公开,还有PDF版可 ...

  7. 【深度学习】你有哪些深度学习(RNN、CNN)调参的经验?

    No.1 总结一下在旷视实习两年来的炼丹经验,我主要做了一些 RL,图像质量,图像分类,GAN 相关的任务,日常大概占用 5 - 10 张卡. 可复现性和一致性 有的同学在打比赛的时候,从头到尾只维护 ...

  8. 深度学习 --- 卷积神经网络CNN(LeNet-5网络详解)

    卷积神经网络(Convolutional Neural Network,CNN)是一种前馈型的神经网络,其在大型图像处理方面有出色的表现,目前已经被大范围使用到图像分类.定位等领域中.相比于其他神经网 ...

  9. 深度学习专业术语之英文介绍——附含历届ILSVRC冠亚军结果

    既然要研究深度学习这一门学科,外文的论文和资料阅读是必不可少的,下面就总结一些深度学习相关方面的专有英文,并做一些必要解释. 1. 深度学习常用中英文 英文 中文解释 说明 MNIST MNIST数据 ...

  10. (十四)从零开始学人工智能-深度学习基础及CNN

    文章目录 一.深度学习基础 1.1 深度学习及其发展历史 1.1.1 什么是学习? 1.1.2 什么是机器学习? 1.1.3 什么是深度学习? 1.1.4 深度学习发展历史 1.1.5 小结 1.2 ...

最新文章

  1. java中json重复数据结构_怎么将有JSON中有相同值放在一组?
  2. mysql查询索引数组_mysql-索引
  3. 今日arXiv精选 | 29篇顶会论文:ACM MM/ ICCV/ CIKM/ AAAI/ IJCAI
  4. PinyinUtil
  5. 搭建bitwarden_Docker轻松部署Bitwarden私有密码管理系统服务
  6. C语言精要总结-内存地址对齐与struct大小判断篇
  7. 处理Easyui的Datagrid无法及时刷新问题
  8. 网管工具使用与技巧大全
  9. 马哥Linux命令大全
  10. 本地Blast2GO安装
  11. 程序员最常用的6大技术博客排行榜
  12. 音诺恒RK3568高性能智能商显安卓广告机主板解决方案
  13. 渲染多层材料的综合框架
  14. 最新开源版知音QQ助手V1.0.16版本
  15. 甲方和乙方怎么区别?
  16. [ZT]系统学习Linux的11点建议
  17. 内涵段子爬取及re匹配
  18. 二十六个英语字母相关的公司商标
  19. android应用卸载后,出现的本地数据库内容未删除现象
  20. 仓库建设细节及注意事项

热门文章

  1. php代码执行函数解析
  2. poi-tl——Word模板生成器
  3. 简单的http客户端
  4. Graphpad prism 更改图表形状和尺寸教程
  5. 可实现ffmpeg转码的cuda显卡
  6. 山东大学单片机原理与应用实验 3.8 ADC0808/9信号采集实验
  7. 2020 工业机器人行业研究报告
  8. SAP-SD-学习笔记0923
  9. 计算机专业保研预推免面试记录
  10. 基于openpose的人体姿态识别部署详细过程