关于神经网络调整缓解过拟合的问题?

  统计/机器学习 回归分析 监督式学习 深度学习 模型验证    浏览次数:798        分享
0

5000个数据,50个epoch,batch_size=600,模型三个卷积层+三个全连接,最后一个全连接增加了kernel_regularizer,做回归问题!?目前的这个状况,我应该如何调整?求指教


 

curiositychen   2022-05-06 16:46



   2个回答 
0

有几点供参考

1)样本量5000,用了7层的神经网络,是不是过于复杂了?样本数量要远大于神经网络中的权重的个数,才会发挥比较好的效果。建议减少网络的层数、或者节点数

2)最后一层用L1和L1L2的效果对比,建议放在一张图里,不然也看不出谁好谁坏

3)L1或者L1L2惩罚项的系数,可以调整;调大会降低过拟合

4)如果发现模型开始过拟合,可以采取early stop的方式,让模型训练提前中断

SofaSofa数据科学社区DS面试题库 DS面经

Willyd   2022-05-06 20:52

谢谢 - curiositychen   2022-05-06 22:31
另外,我想请教一下,7层的神经网络大约要多少个样本? - curiositychen   2022-05-06 22:34
0

Data augmentation;减少可训练参数的个数(层数或filter个数,大小);dropout;减小batch size;所有层都加regularizor;GAN;VAE;loss增加一些先验约束项。

最好再描述下数据输入输出,每个数据的需求不一样。

SofaSofa数据科学社区DS面试题库 DS面经

Zealing   2022-05-09 16:28

请问您 loss增加一些先验约束项,怎么加,是重写损失函数吗? - curiositychen   2022-05-09 19:48
每层的regularizor就是在总loss中加入了可训练参数的l1/l2 norm。VAE相当于在loss加入了embedding code gaussian prior。总之是越多的先验约束项,越有可能收敛到合理的结果。不过先验项的选择依赖于经验和对数据的理解,甚至靠运气。 - Zealing   2022-05-09 21:31


  相关讨论

线下训练集和测试集防过拟合

关于LR过拟合的数据集问题

Random Forest 过拟合有什么好办法?

为什么过拟合不好?

决策树模型有什么特点以及如何防止过拟合?

为什么GBDT比RF更容易overfitting?

BatchNorm层能够防止神经网络过拟合嘛?

最小角回归是天然的LASSO化?正则化参数怎么体现?

正则项里的L1,L2是什么意思?

为什么正则项通常都是用L1或者L2,而不是其他的?

  随便看看

激活函数RELU在0点的导数是多少?

matplotlib.pyplot画图的标题中插入变量

怎么把dataframe的一列转成整数类型

统计学中的自变量和因变量分别是什么意思?

python里怎么计算曼哈顿距离?