千家信息网

怎么在Python中执行套索和岭回归

发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,怎么在Python中执行套索和岭回归,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。导入库与任何项目一样,导入常用的库,这
千家信息网最后更新 2024年11月23日怎么在Python中执行套索和岭回归

怎么在Python中执行套索和岭回归,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

导入库

与任何项目一样,导入常用的库,这将有助于执行基本的数据操作和绘图。

现在可以开始探索性数据分析。

探索性数据分析

首先导入数据集并查看前五行:

你应该看到:


请注意,Unnamed:0 列无用。把它拿出来。

现在数据集如下所示:

如您所见,只有三种广告媒介,销售是目标变量。

看看每个变量如何通过制作散点图来影响销售。首先构建一个辅助函数来制作散点图:

现在可以为每个功能生成三个不同的图。


得到以下内容:

关于电视广告上花钱的销售

关于花在广播广告上的钱的销售

关于报纸广告花费的销售额

正如您所看到的,电视和广播广告似乎是销售的良好预测因素,而销售和报纸广告之间似乎没有相关性。

幸运的是,数据集不需要进一步处理,因此准备立即进行建模!

模型

多元线性回归 - 最小二乘拟合

在完成之前,先来看看代码的样子。


首先,导入LinearRegressioncross_val_score 对象。第一个将允许拟合线性模型,而第二个对象将执行k倍交叉验证。

然后定义特征和目标变量。

cross_val_score将返回MSE的阵列为每个交叉验证步骤。在例子中有五个。因此,采用MSE的意思并打印出来。应该得到-3.0729的负MSE。

现在,看看岭回归或套索是否会更好。

岭回归

对于岭回归,引入了GridSearchCV。这将允许使用一系列不同的正则化参数自动执行5次交叉验证,以便找到alpha 的最佳值。

代码如下所示:

然后,可以通过以下方式找到最佳参数和最佳MSE:


应该看到alpha的最佳值为20,负MSE为-3.07267。这是基本多元线性回归的略微改进。

套索

对于套索,遵循与岭回归非常相似的过程:


在这种情况下,alpha的最佳值为1,负MSE为-3.0414,这是所有三个模型的最佳分数!

现在知道如何在Python中使用套索和岭回归。在这种情况下已经看到套索是最合适的方法,正则化值为1。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

0