学习MatConvNet之路

来源:互联网 发布:java 哈希表 编辑:程序博客网 时间:2024/06/05 17:27

       在学习MatConvNet之前,还学习了简单的CNN Toolbox--------DeepLearnToolbox-master。学习了Matlab基础知识,然后查资料运行这个matalab工具箱中CNN(卷积神经网络)的简单列子。由于工具箱里还没有minist数据集,自己后来找到,又发现还缺少文件夹util(里面包含了许多写好的函数)。这样完成了最早的最简单的一个卷积神经网络的实例。然后我又想替换原来的数据集,不断的摸索,不断模仿minist这个数据集在输入CNN之前的结构。经过很多次的尝试,终于也成功了。

  想了解DeepLearnToolbox-master,可以参看http://blog.csdn.net/qq_20259459/article/details/53995621

  接下来,就是发现了这个MatConvNet,是在一篇博客里发现了它,发现它可以实现语义分割,然后我就开始了学习MatConvNet的旅程。这篇博客是:http://blog.csdn.net/zhjm07054115/article/details/51569450

1.首先就是配置MatConvNet,可以看上一篇博客http://blog.csdn.net/qq_37274615/article/details/72529112

2.然后就是熟悉这个MatConvNet,我参看了一个人工智能的社区http://studyai.com/,主要学习了课程MatConvNet源码全解析和基于MatConvNet的FCN图像语义分割算法

3.小结一下,在学习MatConvNet源码全解析时:

        编译完成后,运行cnn_cifa.m文件,运行结果如下:


蓝色是训练错误率  绿色是测试错误率。

其中top1是前1命中错误率,top1是只让你猜一次;

top5 是前5命中错误率 ,top5是让你猜5次,只要这5次里面有一次正确,就算正确。

在FCN图像语义分割算法,以下几个记忆犹新:

(1)数据的路径

                        

(2)安放完压缩包还会去下载,最后又将压缩包copy了一份到这个data/archives文件夹

                    

(3)运行fcn_Test.m

opts.gpus = [] ;%cpu运行

opts.gpus = [1] ;%gpu运行

        发现gpu运行报错,从报错看是配置的问题,可能就是显卡太低。cpu下运行通过,但是笔记本电脑快炸了。就先这样告一段落了。学习了MatConvNet,还是有不少收获的,学习了卷积神经网络的基本知识,学习了MATLAB的调试。


原创粉丝点击