机器学习过拟合和欠拟合怎么判断,如何解决?(面试回答)
Posted Better Bench
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机器学习过拟合和欠拟合怎么判断,如何解决?(面试回答)相关的知识,希望对你有一定的参考价值。
过拟合和欠拟合怎么判断,如何解决?
(1)判断:训练集误差和验证集误差,从而判断算法达到什么效果
- 训练误差大和验证误差都大,是欠拟合
- 训练误差和验证误差差不多,都较低,是适度拟合
- 训练误差小,验证误差大,是过拟合
(2)过拟合的解决方法
-
数据集角度
- 增加样本量
- 数据集扩增
-
原有数据加随机噪声
-
重采样
-
特征角度
-
特征选择
-
特征降维
-
-
模型角度
-
降低模型复杂度
-
正则化 ,正则化正是通过在损失函数上添加额外的参数稀疏性惩罚项(正则项),来限制网络的稀疏性,以此约束网络的实际容量,从而防止模型出现过拟合。L1正则化是将权值的绝对值之和加入损失函数,使得权值中0值比重增大,因此得到的权值较为稀疏。L2正则化是将权重的平方之和加入损失函数,使得权值分布更加平均,所以权值较为平滑。
-
Dropout舍弃,在深度学习网络的训练过程中,对于神经网络单元,按照一定的概率将其暂时从网络中丢弃,使得每次训练的网络结构多样。
-
-
训练角度
-
早停止,如在训练中多次迭代后发现模型性能没有显著提高就停止训练
-
交叉验证
-
(3)欠拟合的解决方法
- 增加新特征,可以考虑加入进特征组合、高次特征,来增大假设空间,添加多项式特征
- 减少正则化参数,正则化的目的是用来防止过拟合的,但是模型出现了欠拟合,则需要减少正则化参数
- 使用非线性模型,比如核SVM 、决策树、深度学习等模型
- 使用集成学习方法,如Bagging ,将多个弱学习器Bagging
以上是关于机器学习过拟合和欠拟合怎么判断,如何解决?(面试回答)的主要内容,如果未能解决你的问题,请参考以下文章
斯坦福大学公开课机器学习: advice for applying machine learning - evaluatin a phpothesis(怎么评估学习算法得到的假设以及如何防止过拟合或欠