【深度学习】笔记6:基于CIFAR10网络,训练自己的分类网络的记录
来源:互联网 发布:淘宝十字绣回收 编辑:程序博客网 时间:2024/04/30 06:06
本部分的实验主要记录调整网络的过程,并记录实验结果。——Jeremy
模型1
实验结果:
- Iteration 60000, loss = 0.801631
- Iteration 60000, Testing net (#0)
Test net output #0: accuracy = 0.5287
Test net output #1: loss = 1.47174 (* 1 = 1.47174 loss)
从实验结果可以知道,当前模型的识别效果较差,只有 52.87% 的识别率,同时比较Train过程中的loss和测试过程中的loss,可以知道,二者相差较大,出现过拟合现象。。
下一个模型中,我们增加一个FC层,加大网络可学习的参数个数。
模型2:(增加一个FC层)
实验结果:
- Iteration 60000, loss = 0.609769
- Iteration 60000, Testing net (#0)
Test net output #0: accuracy = 0.5467
Test net output #1: loss = 1.40912 (* 1 = 1.40912 loss)
此结果与模型1相比,其识别效果有所提升,从52.87% 提高到 54.67% 。训练阶段的loss和测试阶段的loss都有所降低。因此,下一步我们再增加2个FC层的输出个数,来看看识别效果是否会进一步提升。
模型3:(增加2个FC层的的输出个数)
实验结果:
- Iteration 60000, loss = 0.603354
- Iteration 60000, Testing net (#0)
Test net output #0: accuracy =0.5423
Test net output #1: loss = 1.45162
从模型3的实验结果中,我们可以发现,其识别效果并没有得到提升,可见,单独地增加FC层的输出个数并不是一个很好的方法。
因此,我在下一步中,考虑卷积层对识别结果的影响。在模型3的基础上增加一个卷积层。
模型4:(增加一个卷积层)
实验结果:
- Iteration 60000, loss = 0.690654
- Iteration 60000, Testing net (#0)
Test net output #0: accuracy = 0.5815
Test net output #1: loss = 1.24061
从模型4的实验结果中,我们可以发现,增加了一个卷积层后,训练阶段的loss相比于模型3,提高了0.0873.而测试阶段的loss降低了0.21101.总的来说,这是一个好的现象,它在一定程度上降低了过拟合。
在下一个模型中,我们在第2个卷积层后面添加一个MaxPooling,同时降低FC层的输出。
模型5:(增加一个max poooling)
实验结果:
- Iteration 60000, loss = 0.73147
- Iteration 60000, Testing net (#0)
Test net output #0: accuracy = 0.6335
Test net output #1: loss = 1.06225
增加pool层后,训练阶段和测试阶段的loss的差别,进一步变小,过拟合有所降低,不过识别效果还是不佳,因此,在下一步中我考虑在pool层后面增加一个Sigmoid层。
模型6:(增加一个Sigmoid层)
实验结果:
- Iteration 60000, loss = 2.29934
- Iteration 60000, Testing net (#0)
Test net output #0: accuracy = 0.1
Test net output #1: loss = 2.30292
可见加了sigmoid层的方法在此模型中无效。
模型7:(换成ReLU层)
实验结果:
- Iteration 60000, loss = 0.620338
- Iteration 60000, Testing net (#0)
Test net output #0: accuracy = 0.6391
Test net output #1: loss = 1.05354
模型8:(全部换成ReLU层)
实验结果:
- Iteration 60000, loss = 0.416507
- Iteration 60000, Testing net (#0)
Test net output #0: accuracy = 0.6794
Test net output #1: loss = 1.15119
在两个卷积层后面加上ReLU层后,识别效果提升了较多,识别率为67.94%。
模型9:(加一个Dropout层)
实验结果:
- Iteration 60000, loss = 0.563472
- Iteration 60000, Testing net (#0)
Test net output #0: accuracy = 0.6728
Test net output #1: loss = 1.03333
从实验结果可以知道,加了Dropout层之后,虽然没有提高识别效果,但是降低了过拟合。因此,下一步增加FC层的输出看看。
模型10:(增加FC层的输出个数)
实验结果:
- Iteration 60000, loss = 0.446714
- Iteration 60000, Testing net (#0)
Test net output #0: accuracy = 0.6903
Test net output #1: loss = 0.990431
模型11:(再增加一个Dropout)
实验结果:
- Iteration 60000, loss = 0.586936
- Iteration 60000, Testing net (#0)
Test net output #0: accuracy = 0.7013
Test net output #1: loss = 0.92605
模型12:(调整卷积层的输出)
实验结果:
- Iteration 60000, loss = 0.273988
- Iteration 60000, Testing net (#0)
Test net output #0: accuracy = 0.7088
Test net output #1: loss = 1.1117
本文地址:http://blog.csdn.net/linj_m/article/details/49428601
0 0
- 【深度学习】笔记6:基于CIFAR10网络,训练自己的分类网络的记录
- 【深度学习】笔记6:使用caffe中的CIFAR10网络模型和自己的图片数据训练自己的模型(步骤详解)
- 深度学习-CAFFE利用CIFAR10网络模型训练自己的图像数据获得模型-1.制作自己的数据集
- 深度学习-CAFFE利用CIFAR10网络模型训练自己的图像数据获得模型-3结合caffe中的CIFAR10修改相关配置文件并训练
- 深度学习-CAFFE利用CIFAR10网络模型训练自己的图像数据获得模型-4应用生成模型进行预测
- 深度学习-CAFFE利用CIFAR10网络模型训练自己的图像数据获得模型-2生成图像库的均值文件
- VggNet10模型的cifar10深度学习训练
- 学习笔记:自训练Cifar10网络数据结果
- 【深度学习】训练网络的方法总结
- caffe + win10基于CaffeNet网络框架训练自己的图片进行分类(实践篇)
- 基于keras的二分类的网络训练代码
- 深度学习实战——caffe windows 下训练自己的网络模型
- 深度学习实战——caffe windows 下训练自己的网络模型
- 深度学习12:能力提升, 一步一步的介绍如何自己构建网络和训练,利用MatConvNet
- 深度网络的预训练
- matconvnet环境下训练自己的数据集及模型测试-mnist网络结构-cifar10部分数据集
- 【神经网络与深度学习】深度学习实战——caffe windows 下训练自己的网络模型
- 基于深度学习的网络表示 [session]
- IStorage
- 2016-11-03
- VMware Workstation Pro中的常见网络连接配置
- 按钮拖拽移动
- git教程
- 【深度学习】笔记6:基于CIFAR10网络,训练自己的分类网络的记录
- 说说JSON和JSONP,也许你会豁然开朗,含jQuery用例
- NSTimer怎样调用类方法
- linux 开机以某一个用户执行脚本
- 第九周对称矩阵的压缩存储及基本运算
- mybaties处理mysql删除(子查询结果集报错)
- informatica 配置
- 【数据结构】顺序队列 如何实现栈增长
- 第9周项目2-对称矩阵压缩存储的实现与应用(1)