神经网络模型的过拟合和欠拟合问题

一、过拟合和欠拟合问题

过拟合定义:模型在训练集上表现良好,但在测试集上表现不好

过拟合原因:

1.原始特征过多,存在一些噪声特征,而模型过于复杂,学习能力过强,捕获了这些错误特征,从而影响了预设的分类规则。

2.训练样本太少,而模型很复杂

欠拟合定义:模型在训练集和测试集上表现的都不好

欠拟合原因:

1.模型复杂度过低,无法对数据进行很好的拟合

2.学习到的数据特征过少

二、如何解决过拟合和欠拟合问题

过拟合解决方法:

1.增加训练数据量或使用数据增强

这样可以减少噪声的影响,可以让模型学习到更多的数据一般特征。

2.使用正则化约束

在代价函数后面添加正则化项,可以避免训练出来的参数过大而使模型过拟合。常用的正则化有L1正则化和L2正则化,具体使用哪种视情况而定。

3.调整参数和超参数

不论什么情况调参都是必须的

4.降低模型的复杂度

5.使用Dropout

降低神经元之间的联合适应性,增强了泛化能力。一般用在全连接层,卷积层一般不用(原因是,卷积层参数较少,一般不易过拟合)

6.提前结束训练

训练时,如果随着迭代次数增加,验证误差不降低反而增加时,就可以提前结束训练了

欠拟合解决方法:

1.增加模型的复杂度

因为模型欠拟合,有可能是因为模型太简单,而学习不到足够的辨别特征

2.增加样本有效特征数,使输入数据具有更强的表达能力。

因为欠拟合是因为学习到的特征比较少,所以要增加输入的特征质量和数量

3.调整参数和超参数

神经网络中的:学习率,学习衰减率,隐藏层数,隐藏层单元数,batch_size大小,Adam优化算法中的β1和β2参数。

4.降低正则化参数,或者直接去除。

正则化是为了防止模型过拟合,现在都欠拟合了,所以可以削弱或者直接删除正则化。

你可能感兴趣的:(深度学习各项知识整理,神经网络,机器学习,深度学习)