为什么机器学习(二)—— 为什么说欠拟合和过拟合会导致模型不准确

为什么说欠拟合和过拟合会导致模型不准确

学习机器学习理论的时候很多教材都会提到欠拟合和过拟合的问题。
在这里插入图片描述
在这里插入图片描述
上图分别代表欠拟合和过拟合

欠拟合是模型过于简单或者特征太少而导致模型不能很好描述数据和结论的关系;过拟合是模型过于复杂或者特征过多而到导致模型过度关心数据里的噪声。

感性上的认识是这样的,但是欠拟合和过拟合是如何影响模型预测效果的,如何定量的表示他们的影响,我们可以通过定量计算的方法看看:

  • y y 代表实际数据, y ^ \hat{y} 代表模型预测数据
  • 假设 y = f ( x ) + σ , σ y = f(x)+\sigma,\sigma 是噪声
  • 模型和实际的误差我们用 E [ ( y ^ y ) ] 2 E[(\hat{y}-y)]^2 代表(为了计算方便去除了对数据数量的平均)

我们根据定义,可以得到:
b i a s = E ( y ^ y ) bias = E(\hat{y} - y)
D ( y ^ ) = E ( y ^ 2 ) E 2 ( y ^ ) D(\hat{y}) = E(\hat{y}^2) - E^2(\hat{y})
接下来计算模型和实际的误差
E [ ( y ^ y ) 2 ] = E ( y ^ 2 2 y y ^ + y 2 ) = E ( y 2 ^ E ( 2 y y ^ ) + E ( y 2 ) ) = D ( y ^ 2 ) + E 2 ( y ^ ) + D ( y 2 ) + E ( y 2 ) E ( 2 y y ^ ) = D ( y ^ 2 ) + D ( y 2 ) + E [ ( y y ^ ) ] 2 = σ 2 + D ( y ^ 2 ) + b i a s 2 E[(\hat{y}-y)^2] = E(\hat{y}^2-2y\hat{y}+y^2) = E(\hat{y^2}-E(2y\hat{y})+E(y^2) ) = D(\hat{y}^2)+E^2(\hat{y})+D(y^2)+E(y^2)-E(2y\hat{y})=D(\hat{y}^2)+D(y^2)+E[(y-\hat{y})]^2 = \sigma^2 + D(\hat{y}^2) + bias^2

从而我们可以发现,误差相当于数据本身噪声的平方+模型方差(过拟合)+ 模型偏差的平方(欠拟合)

发布了11 篇原创文章 · 获赞 4 · 访问量 1130

猜你喜欢

转载自blog.csdn.net/qq_37477357/article/details/104862265
今日推荐