cifar-10之matlab初步

来源:互联网 发布:mac电脑中英文切换 编辑:程序博客网 时间:2024/06/08 05:35

要做数图的作业,使用matlab来训练cifar-10数据集,总共花了四五天的时间,把该跑的跑通了,还有很多不明白之处,以后继续学习。
系统:win10 x64位系统
首先作业的任务是:使用神经网络框架,对cifar-10数据集进行测试,待选的框架有:Caffe, Tensorflow, MatConvnet, Pytorch,我使用了matlab,所以用MatConvnet框架。
前面的几个作业都很好做,网上基本上都有现成的代码,一些需要总结的地方以后再总结。这个作业显然没有现成的例子可以抄,所以需要自行百度。
cifar-10图像数据集: Cifar-10是由Hinton的两个大弟子Alex Krizhevsky、Ilya Sutskever收集的一个用于普适物体识别的数据集。Cifar是加拿大政府牵头投资的一个先进科学项目研究所。
Cifar-10由60000张32*32的RGB彩色图片构成,共10个分类。50000张训练,10000张测试(交叉验证)。这个数据集最大的特点在于将识别迁移到了普适物体,而且应用于多分类(姊妹数据集Cifar-100达到100类,ILSVRC比赛则是1000类)。
这篇博客简单介绍了cifar-10,也有下载地址:
http://blog.csdn.net/qq_20259459/article/details/62889208
这篇介绍了怎么使用数据集,一些简单操作,还有解压的代码:
http://blog.csdn.net/awdac/article/details/54143377
这篇是训练技巧,看不懂,mark一下:
https://www.cnblogs.com/neopenx/p/4480701.html
MatConvnet:MatConvnet是一个实现卷积神经网络(CNN)的MATLAB工具箱,MatConvNet提供了几个在MNIST,CIFAR 10和Image Net数据上学习具有随机梯度下降和CPU或GPU的CNN的示例,在examples/cifar文件夹下,是MatConvNet自带的模型,可供调用学习。
下载在官网下载即可:http://www.vlfeat.org/matconvnet
最好放在matlab根目录下,如图。matlab目录
关于卷积神经网络,这个专题来写,这里只写怎么实现,重点是MatConvnet的配置。
http://blog.csdn.net/striker_v/article/details/52800857 这里收集了两篇文章,都挺好的,参考。
MatLab版本:R2017a。
在计算过程中,Matconvnet需要调用C来完成计算,所以需要用到mex功能,MEX文件是一种可在matlab环境中调用的C语言(或fortran)衍生程序。
C编译器版本:visual studio2015 enterprise。不同版本matlab需要的编译器版本不同,matlab R2017a要求vs版本在2015以上。官网可查:
https://www.mathworks.com/support/compilers.html?s_cid=pi_scl_5_R2017a_win64
我是先装的matlab,后装vs,matlab不能正常调用vs功能,报错。把matlab卸载重装后问题解决,所以我的经验是先装vs再装matlab。
可以使用Cpu和Gpu两种方式来计算,Gpu计算需要安装Cuda和Cudnn,
Cuda显卡厂商NVIDIA推出的运算平台,可以理解成支持GPU运算的计算架构,Cudnn是用于深度神经网络的GPU加速库,基于Duda之上的计算工具。
它们之间关系:http://blog.csdn.net/fangjin_kl/article/details/53906874
Cuda版本:8.0.61,Cudnn:8.0
安装基本按照这个来的:http://blog.csdn.net/xsc_c/article/details/23470565,
http://blog.csdn.net/xuezhisdc/article/details/48651003

按照最开始给的网页教程,就可以运行了:http://blog.csdn.net/zhjm07054115/article/details/49964597

中间遇到很多问题,待补。