您的位置:首页 > 其它

机器学习之偏差和方差(欠拟合和过拟合)

2018-04-03 18:13 246 查看
5.1 基本概念
5.1.1 偏差和方差
期望输出与真实值的差别称之为偏差,即: 
bias2(x) = (fExpectedD(x) - y)2 //与真实值之间的差距
使用样本数相同的不同训练集产生的方差为: 
var(x) = E[(fD(x) - fExpectedD(x))2] //与预测值期望的偏离程度
评价数据拟合的状况,通常采用损失函数 J(X) 
高偏差:Jtrain和Jcv都很大,并且Jtrain≈Jcv。对应欠拟合。
高方差:Jtrain较小,Jcv远大于Jtrain。对应过拟合。
维数越高,越容易过拟合。
高偏差,预示着train和test的预测值和真实值的差距都较大。
高方差,预示着train的预测值与真实值较小,test的预测值与真实值有较大差距。
5.1.2 过拟合和欠拟合出现的原因和解决方案
原因:
过拟合:模型太简单,不能准确表述数据特征。
欠拟合:模型太复杂,描述太准确了,增大数据量可以减少过拟合。
模型修改策略
过拟合:增大数据规模、减小数据特征数(维数)、增大正则化系数λ
欠拟合:增多数据特征数、添加高次多项式特征、减小正则化系数λ
5.1.3 评估偏差的方法
简单采用cross-validation技术K-fold Cross Validation (K折交叉验证), 
此方法帮助我们获得模型关于泛化误差(generalization error)的可信的估计,所谓的泛化误差也即模型在新数据集上的表现。在训练数据上面,我们可以进行交叉验证(Cross-Validation)。 
k-fold cv的k的选择
当k偏小的时候,会导致bias偏高。当k偏大的时候,会导致variance偏高,通常把k控制在5~
4000
10的范围里。
bias-variance判断
根据错误均值判断bias,如果错误均值很低,说明在这个数据集上,该模型准确度是可以的。 
根据错误标准差来判断variance,如果错误标准差很高,说明该模型的泛化能力需要提高。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: