当前位置:
首页 >
深度学习笔记整理(五)——提高泛化能力的方法
发布时间:2023/12/20
67
豆豆
生活随笔
收集整理的这篇文章主要介绍了
深度学习笔记整理(五)——提高泛化能力的方法
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
1.训练样本
数据增强
- 方法:通过对样本图像平移、旋转或镜像翻转,增加样本数量;
- 优点:使有限的数据得到最大程度的有效利用。
使用大规模数据集
- ImageNet:基于WorldNet,按层级图像分类,动物植物食物等,末梢节点包含多张对应图像;
- Place:在SVNDatabase基础上的扩展,包括多种场景,室内、室外、交通工具、建筑物等。
其它
- 设置图像中间区域为感兴趣区域,可以防止变换后的样本偏离图像区域;
- 对样本会产生形状变化的情况,如手写字符识别,先变形再数据增强,可以使用弹性变换算法,包括双线性插值或双三次插值等插值法。
2.预处理
原因:当样本类别内差异较大时,为了减少样本差异,会进行预处理。
方法:均值减法、归一化、白化。
均值减法
- 大规模的物体识别预处理的方式;
- eg:图像识别中,训练样本-均值图像=输入数据(差分图像),经过处理后,数据平均值会变为0,图像整体亮度变化可以得到抑制。
归一化
- 为样本的均值和方差添加约束的一种预处理方法。
- 首先计算各数据标准差,然后对样本图像进行均值减法,再除以标准差;
- 可以得到均值为0,方差为1的标准化数据,可以得到高度差异更小的图像样本。
白化
- 消除数据间的相关性,增强图像边缘。
- 首先使用均值减法使数据均值为0,得到;然后进行白化处理,,PD分别为奇异值分解后的正交矩阵和对角矩阵;
- 该方法可以消除相关性较高的信息,保留边缘等相关性较低的信息,可以提高图像的识别性能。
3.激活函数
maxout:从k个单元输出值中取最大值作为单元的最终输出。
- 卷积层使用:在多个特征图的相同位置选取最大值,用来减少特征图的个数;
- 池化层使用:最大池化,用来缩小特征图。
ReLU函数的衍生函数
- 其中,R ReLU性能最优,但是差异不大。
4.DropOut
原理:在网络训练的过程中,按照一定的概率将一部分中间层单元暂时从网络中丢弃,把该单元的输出设置为0,使其不工作来避免过拟合。
- 丢弃概率通常是50%,可以在不同层设置不同的DropOut概率。
注意:
- 对被舍弃的单元进行误差反向传播计算时,使用被丢弃之前的原始输出值;
- 用训练好的网络进行识别时,经过进行过DropOut处理的层时,输出值要在原始输出的基础上乘以训练时DropOut的概率。
5.DropConnect
原理:将一部分连接权重设置为0,达到舍弃一部分单元,防止过拟合的目的。
与DropOut比较:
- 性能更好,被丢弃的单元数更多;
- 训练难度更高,需要随机选择设置为0的连接权重,对随机数依赖性比较高。
总结
以上是生活随笔为你收集整理的深度学习笔记整理(五)——提高泛化能力的方法的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: Kali渗透-ARP断网攻击与监听
- 下一篇: 101页下载 机器学习、深度学习绘图模板