1.增加数据集的数量
由于深度神经网络需要喂入大量的数据才能提高他的性能(特点),有时候简单的增加容量可以提高准确
(吴恩达大佬视频内介绍深度学习崛起制作的图)
2.提高数据的差异性,随机性,即增加数据的特征不要选取过于接近的样本
3.对数据进行预处理
归一化,标准化...
4.调整batch_size大小
Batch_Size 太小,算法在 相当多的epoch内不收敛。
随着 Batch_Size 增大,处理相同数据量的速度越快。
随着 Batch_Size 增大,达到相同精度所需要的 epoch 数量越来越多。
由于上述两种因素的矛盾, Batch_Size 增大到某个时候,达到时间上的最优。
由于最终收敛精度会陷入不同的局部极值,因此 Batch_Size 增大到某些时候,达到最终收敛精度上的最优。
原文链接:https://blog.csdn.net/qq_41853758/article/details/81436731
5.打乱测试集的顺序即使用 shuffle=True
6.调整超参(学习率或者epochs次数)
7.使用L2正则化
L2约束通常对稀疏的有尖峰的权重向量施加大的惩罚,而偏好于均匀的参数。这样的效果是鼓励神经单元利用上层的所有输入,而不是部分输入。所以L2正则项加入之后,权重的绝对值大小就会整体倾向于减少,尤其不会出现特别大的值(比如噪声),即网络偏向于学习比较小的权重。所以L2正则化在深度学习中还有个名字叫做“权重衰减”(weight decay),也有一种理解这种衰减是对权值的一种惩罚,所以有些书里把L2正则化的这一项叫做惩罚项(penalty)。
原文链接:https://blog.csdn.net/github_34589902/article/details/113884761
8.droput()参数及位置
随机丢弃一定的数据,提高模型的泛化能力
9.参数初始化
例如yolo一般就会引用初始化参数来提高准确率
10.调整网络的结构(层数,大小,函数)
标签:正则,提高,Batch,识别率,神经网络,L2,Size From: https://www.cnblogs.com/ohj666/p/16796753.html