欢迎关注,敬请点赞!
机器学习基础概念——过拟合和欠拟合
1. 基本概念1.1 偏差和方差2. 欠拟合和过拟合2.1 学习曲线2.2 复杂程度曲线2.3 支持向量机的过拟合和欠拟合2.4 KNN回归的过拟合和欠拟合3. 如何解决欠拟合和过拟合3.1 解决欠拟合3.2 解决过拟合文章转载自:欠拟合、过拟合、偏差、方差
1. 基本概念
偏差:偏差度量了学习算法的期望预测与真实结果的偏离程度,即刻画了算法本身的拟合能力。hθ(xi)−yih_\theta (x_i) - y_ihθ(xi)−yi方差:方差度量了训练集的变动所导致的学习性能的变化,即刻画了数据扰动所造成的影响。1m∑i=1m(hθ(xi)−yi)2\displaystyle \frac {1}{m} \sum^m_{i = 1} (h_\theta (x_i) - y_i)^2m1i=1∑m(hθ(xi)−yi)2欠拟合:模型太简单,经验误差大,在训练的过程中基本没学到有价值的内容。过拟合:模型学习了太多的训练样本的“个性”,经验误差小,但是对于未知的样本泛化能力差(泛化误差大)。经验误差:模型关于训练样本集的平均误差(也称经验风险)。结构风险:结构风险在经验风险的基础上加上表示模型复杂度的正则化项。泛化误差:模型在新样本集(测试集)上的平均误差。泛化误差 = 偏差 + 方差 + 噪声噪声:描述了在当前任务上任何学习算法所能达到的期望泛化误差的下界,即刻画了学习问题本身的难度。
1.1 偏差和方差
返回顶部
如果模型是低偏差和低方差,那肯定是最好的一个选择。
但是偏差和方差在一定程度上是矛盾的:
如果偏差降低,那方差可能会相应的升高;
如果方差降低,那偏差可能相应升高。
所以我们是尽量的寻求偏差和方差的一个平衡点。
下图比较形象的表达偏差和方差的含义:
偏差太大,说明模型欠拟合; 方差太大,说明模型过拟合。
2. 欠拟合和过拟合
返回顶部
2.1 学习曲线
通过学习曲线来识别模型是否发生了欠拟合、过拟合:
模型过拟合【中图】的情形,随着样本的增大,可能变成模型正常【右图】。
横轴为训练样本数量,纵轴为误差
2.2 复杂程度曲线
横轴为模型复杂程度,纵轴为误差
上图中:模型在点A处,在训练集以及测试集上同时具有较高的误差,此时模型的偏差较大,模型欠拟合;
模型在点C处,在训练集上具有较低的误差,在测试集上具有较高的误差,此时模型的方差较大,模型过拟合;
模型复杂程度控制在点B处为最优。
2.3 支持向量机的过拟合和欠拟合
返回顶部
支持向量机采用的正则化系数C=1λC = \frac{1}{\lambda}C=λ1是常规正则化系数的导数,C越大,过拟合;C越小,欠拟合,更容易记忆。
2.4 KNN回归的过拟合和欠拟合
返回顶部
邻居数(n-neighbors)越大,欠拟合(bias);越小,过拟合(vias)。
3. 如何解决欠拟合和过拟合
返回顶部
3.1 解决欠拟合
增加特征项;添加多项式特征项;减小正则化系数;增加模型复杂度。3.2 解决过拟合
过拟合问题是机器学习和深度学习里面主要需解决的一个问题。解决过拟合的办法主要有:
重新做特征工程;增加训练样本数量;降低模型复杂程度;增大正则项系数;采用dropout方法【用于神经网络】;early stoping,早停法【当模型在验证集上的误差比上一次训练结果差的时候停止训练】;减少迭代次数;增大学习率;添加噪声数据;树结构中,可以对树进行剪枝。
以上只是举一些例子,不同的问题还是需要根据不同的情况分析
欢迎关注,敬请点赞!
返回顶部
如果觉得《机器学习基础概念——过拟合和欠拟合》对你有帮助,请点赞、收藏,并留下你的观点哦!