Linear regression with regularization
当我们的λ很大时,hθ(x)≈θ0,是一条直线,会出现underfit;当我们的λ很小时(=0时),即相当于没有做regularization,会出现overfit;只有当我们的λ取intermediate值时,才会刚刚好。那么我们怎么自动来选择这个λ的值呢?
正则化时的Jtrain(θ),Jcv(θ),Jtest(θ)的表达式
正则化时的Jtrain(θ),Jcv(θ),Jtest(θ)的表达式不带有regularization式子,cost function J(θ)有regularization式子
怎样选择regularization parameter λ(model selection for λ)
计算不同的 λ的值(从0至10.24(为了方便写成10),下一个是上一个的二倍)的cost function,求出使cost function最小的parametersθ,然后再计算Jcv(θ),选择最小的Jcv(θ)的那个model,如上图中是θ(5)以及其对应的λ的值,然后再计算test error,看其预测准确率.
Jtrain(θ)(how well my hypothesis do on trainning set),Jcv(θ)(how well my hypothesis do on validation set)与λ的关系
当λ很小时,可以认为没有做正则化,则会出现overfitting(high variance)现象,即Jtrain(θ)很小但是Jcv(θ)很大;当λ很大时,会出现underfit(high bias)现象,即Jtrain(θ)与Jcv(θ)都很大;
上面的这个图有点理想化,实际数据画出来的图可能会有些噪声与曲折,但是大致曲线的走向是一致的,所以我们可以通过画这样一个图来看我们设置的λ的值是否适合,或者通过编制程序来自动选择最合适的那个λ的值