偏差(Bias)与方差(Variance)
记协变量为,预测变量为,设和之间的关系可通过模型,其中误差项服从均值为0的正态分布,即。
设通过某个统计模型得到的估计为,在点处的均方预测误差(泛化误差)定义为,模型在点的预测值与真实值差值平方的期望,即:
该项可做以下分解:
假设我们重复建模无数次,每次都重新收集数据,建立一个新的模型。由于数据集的随机性,建立的模型不完全一致,我们将得到无数个估计值,偏差就是这些估计值平均地偏离真实值多远,方差就是这些估计值的波动幅度。
- IrreducibleError:噪声项的方差,是数据本身自有的误差,不能被消除,是模型所能达到的期望泛化误差的下界;
- 偏差,是估计值的期望与真实值的偏离程度,刻画了模型本身的拟合能力;
- 方差Variance是指估计值的方差,刻画了数据集的变动所导致的模型性能的变化,即数据扰动所造成的影响。
可以通过如下所示的bulls-eye图描述方差与偏差的关系。假设中间的靶心是可以完美地预测真实值的模型,将我们的建模过程类比为掷靶,离靶心越远,偏差越大,越集中方差越小。偏差反映了模型预测的准确度,方差则反映了模型的稳定性。
一般地,不存在偏差、方差均达到最小的模型,而是呈现如下关系。
欠拟合(Underfitting)与过拟合(Overfitting)
- 欠拟合:模型不够复杂或者训练数据过少时,模型均无法捕捉训练数据的内在关系,会出现偏差,模型一直会错误地预测数据,准确率降低。
- 过拟合:模型过于复杂或者没有足够的数据支持模型的训练时,模型含有训练集的特有信息,对训练集过于依赖,即模型会对训练集高度敏感,这种现象称之为模型过拟合。
避免欠拟合的方法:
1、增加新特征,可以考虑加入进特征组合、高次特征,来增大假设空间;
2、尝试非线性模型,比如核SVM 、决策树、DNN等模型;
3、如果有正则项可以较小正则项参数 ;
4、Boosting ,Boosting 往往会有较小的 Bias,比如 Gradient Boosting 等.
避免过拟合的方法:
1、交叉检验,通过交叉检验得到较优的模型参数;
2、特征选择,减少特征数或使用较少的特征组合,对于按区间离散化的特征,增大划分的区间;
3、正则化,常用的有 L1、L2 正则。而且 L1正则还可以自动进行特征选择;
4、如果有正则项则可以考虑增大正则项参数 lambda;
5、增加训练数据可以有限的避免过拟合;
6、Bagging ,将多个弱学习器Bagging 一下效果会好很多,比如随机森林等.
7、降低模型复杂度:在数据较少时,降低模型复杂度是比较有效的方法,适当的降低模型复杂度可以降低模型对噪声的拟合度。神经网络中可以减少网络层数,减少神经元个数,dropout;决策树可以控制树的深度,剪枝等。
欠拟合-过拟合与偏差-方差的关系
欠拟合 | 过拟合 | 备注 | |
---|---|---|---|
偏差 | 一定大 | 较大 | 主要指训练集 |
方差 | 一定小 | 一定大 | 主要指验证集 |
模型复杂度 | 可能低 | 高 | |
训练集数据量 | 可能少 | 多 | |
训练集得分 | 低 | 一定高 | 一般指判定系数、准确率等 |
验证集得分 | 一定低 | 有高有低,总体较低,方差大 | 一般指判定系数、准确率等 |
参考:
Understanding the Bias-Variance Tradeoff
偏差与方差、欠拟合与过拟合
过拟合与欠拟合及方差偏差
来源:CSDN
作者:Hanx09
链接:https://blog.csdn.net/Hanx09/article/details/104634894