打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Coursera机器学习笔记(六)
发表于 |


一. 过拟合

如下图所示, 使用三种不同的多项式作为假设函数对数据进行拟合, 从左一和右一分别为过拟合和欠拟合.


对率回归:

解决过拟合问题大致分为两种, 一种是减少特征的数量, 可以人工选择一些比较重要的特征留下, 也可以使用模型选择算法(Model selection algorithm,后面的课程会介绍);另一种就是正则化(Regularization).

二. 正则化

如图所示的两个假设函数, 其中第二个为过拟合. 那么该如何改变代价函数能够让最中的假设函数不过拟合? 对比两个假设函数我们可以看到, 它们的区别就在于第二个多了两个高阶项. 也就是说, 我们不希望出现后面两个高阶项, 即希望θ3, θ4越小越好.


通过上面的想法, 我们把θ3, θ4放到代价函数里, 并且加上很大的权重(1000):
J(θ)=12mi=1m(hθ(x(i))y(i))2+1000θ32+1000θ42
现在如果要最小化代价函数, 那么最后两项也必须得最小. 这个时候, 就有θ30, θ40. 从而这个四次多项式就变成了一个二次多项式, 解决了过拟合的问题.

对于正则化的一般思路是, 减少特征的数量, 降低模型的复杂度. 所以我们要对每个参数进行惩罚, 从而得到’更简单’的并且可以防止过拟合的模型. 但是在实际问题中我们很难判断哪些特征比较重要, 所以对每一个参数(除了第一个)参数进行惩罚, 将代价函数改为:

J(θ)=12m[i=1m(hθ(x(i))y(i))2+λi=1nθj2]
其中, λi=1nθj2叫做正则化项(Regularization Term), λ叫做正则化参数(Regularization Parameter). λ的作用就是在”更好地拟合数据”和”防止过拟合”之间权衡.


如过λ过大的话, 就会导致θ1θ2θ3…近似于0, 这样我们的假设函数就为:hθ(x)=θ0. 这时就变成了欠拟合(Underfit). 所以需要选择一个合适的λ. 后面的课程会讲到自动选择合适的λ的方法.

三. 正则化线性回归

通过正则化之后的J(θ)我们可以得到对应的梯度下降算法, 如下图所示. 因为我们不对θ0进行惩罚, 所以将θ0的规则单独写出来, 其余的参数更新规则如下图第三行公式. 公式前半部分1αλm是一个比1小一点点的数(教授举了个例子大概是0.99), 而公式的后半部分和没有进行正则化的梯度下降的公式的后半部分是完全一样的. 所以区别就在于前半部分会将θj缩小(因为乘了一个小于1的数).


同样, 在正规方程中, 我们只需要在公式中加上一部分如下图所示.

即:
θ=(XTX+λ[000000100000100000100000000001])1XTy
并且对于正则化后的正规方程, 只要λ>0, 括号里的那一项总是可逆的:

四. 正则化对率回归

类似地, 正则化逻辑回归中的代价函数和梯度下降如下图所示.



下图是使用正则化的高级优化算法, 只需要在计算jVal时在后面加上一个正则化项以及在梯度后面减去一个λmθj.

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
约束优化方法之拉格朗日乘子法与KKT条件
RankNet与LambdaRank
FTRL代码实现
线性回归与岭回归参数向量公式推导
概率论 各种分布及其期望、方差、分布函数
泊松分布的期望和方差推导
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服