首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

OneDayOnePyModel之岭回归

岭回归(Ridgeregression)是一种专用于共线性数据分析的有偏估计回归方法,实质上是一种改良的最小二乘估计法,通过放弃最小二乘法的无偏性,以损失部分信息、降低精度为代价获得回归系数更为符合实际、更可靠的回归方法,对病态数据的拟合要强于最小二乘法。

Ridge回归通过对系数的大小施加惩罚来解决普通最小二乘法的一些问题。岭系数最小化的是带罚项的残差平方和。

其中,α>=0 是控制系数收缩量的复杂性参数: α 的值越大,收缩量越大,模型对共线性的鲁棒性也更强。

与其他线性模型一样,Ridge用fit方法完成拟合,并将模型系数存储在其coef_成员中:

RidgeCV通过内置的关于的 alpha 参数的交叉验证来实现岭回归。该对象与 GridSearchCV 的使用方法相同,只是它默认为 Generalized Cross-Validation(广义交叉验证 GCV),这是一种有效的留一验证方法(LOO-CV):

指定 cv 属性的值将触发(通过GridSearchCV的)交叉验证。例如,cv=10将触发10折的交叉验证,而不是广义交叉验证(GCV)。

Python示例

可视化结果:

小概念

病态矩阵:对于有些矩阵,矩阵中某个元素的一个很小的变动,会引起最后计算结果误差很大,这种矩阵称为“病态矩阵”。

交叉验证:在给定的建模样本中,拿出大部分样本进行建模型,留小部分样本用刚建立的模型进行预报,并求这小部分样本的预报误差,记录它们的平方加和。例如10折交叉验证(10-fold cross validation),将数据集分成十份,轮流将其中9份做训练1份做验证,10次的结果的均值作为对算法精度的估计,一般还需要进行多次10折交叉验证求均值,例如:10次10折交叉验证,以求更精确一点。

-END-

与AlphaKnow一起进步

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200104A0C6GS00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券