为什么theta数值大代表模型过拟合

来源:8-8 模型泛化与岭回归

GeXeLr

2018-05-03

老师想问下如何直观地理解theta数值大意味着模型过拟合程度大?

写回答

1回答

liuyubobobo

2018-05-03

首先,这个说法严格来说是有问题的。严格来说,是sum(theta(i)^2)越小,前拟合程度越高。其中i=1,2,3,...,n,即我们加入的正则项。这个很好理解,sum(theta(i)^2)的最小值为0,此时我们的模型就是y=theta0,即对于任意x,我们都预测他的y值为theta0。这个模型近乎没有什么信息,欠拟合程度最高。


反向来说,准确地说法是:对于MSE(theta)取最小值的那个theta,过拟合程度最高。因为在让MSE(theta)最小的过程中,就要照顾一些极端的数据点,是的我们的模型变化幅度极大。而过拟合,就是由于过度考虑了一些极端数据点,使得生成的模型不具有普遍性(所谓的泛化能力差)。因此,这个时候,过拟合程度最高。


至于直观地理解,我认为在8-8和8-9这两个小节,我们做出的图像已经非常直观了。sum(theta(i)^2)越大,曲线变化越大,过拟合程度越高;sum(theta(i)^2)越小,曲线越平缓,欠拟合程度越高。具体可以参考官方github上的jupyter notebook:)


8-8

https://github.com/liuyubobobo/Play-with-Machine-Learning-Algorithms/blob/master/08-Polynomial-Regression-and-Model-Generalization/08-Model-Regularization-and-Ridge-Regression/08-Model-Regularization-and-Ridge-Regression.ipynb


8-9

https://github.com/liuyubobobo/Play-with-Machine-Learning-Algorithms/blob/master/08-Polynomial-Regression-and-Model-Generalization/09-LASSO-Regression/09-LASSO-Regression.ipynb


可以对于这两个小节的示例,具体求出sum(theta(i)^2)再看一看:)

2
0

Python3入门机器学习 经典算法与应用  

Python3+sklearn,兼顾原理、算法底层实现和框架使用。

5894 学习 · 2455 问题

查看课程