用sklearn实现线性回归和岭回归

此文为ai创作,今天写文章的时候发现创作助手限时免费,想测试一下,于是就有了这篇文章,看的出来,效果还可以,一行没改。

线性回归

在sklearn中,可以使用线性回归模型做多变量回归。下面是一个示例:

假设我们有以下数据集,其中X是输入特征,y是输出:

复制代码
X = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]
y = [6, 15, 24, 33]

我们可以使用sklearn中的LinearRegression模型来训练一个多变量线性回归模型:

python 复制代码
from sklearn.linear_model import LinearRegression

# 创建线性回归模型对象
model = LinearRegression()

# 训练模型
model.fit(X, y)

# 预测
new_X = [[2, 4, 6], [3, 5, 7]]
predictions = model.predict(new_X)
print(predictions)

输出:

复制代码
[ 9. 12.]

这样,我们就得到了一个多变量回归模型,并使用新数据进行了预测。

岭回归

岭回归是一种线性回归算法,它通过L2正则化来解决过拟合问题。在sklearn中,可以使用Ridge类来实现岭回归。

下面是一个简单的例子:

python 复制代码
from sklearn.linear_model import Ridge
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error

# 加载数据集
boston = load_boston()
X = boston.data
y = boston.target

# 划分数据集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# 实例化岭回归模型,设置 alpha 值
ridge = Ridge(alpha=1.0)

# 训练模型
ridge.fit(X_train, y_train)

# 预测
y_pred = ridge.predict(X_test)

# 评估模型
mse = mean_squared_error(y_test, y_pred)
print("MSE:", mse)

在以上代码中,通过使用load_boston函数加载波士顿房价数据集,使用train_test_split将数据集拆分为训练集和测试集。然后,使用Ridge实例化岭回归模型,并将alpha值设置为1。最后,使用fit方法训练模型并使用predict方法进行预测。

以上是一个简单的岭回归实现。你可以根据自己的需要调整alpha值和其他参数来提高模型的性能。

相关推荐
运维老王13 分钟前
运维人如何用 Python 自动化提升 10 倍效率
python
AI-小柒27 分钟前
OpenClaw技术深度解析:从智能助手到自动化引擎的范式革命(附DataEyes实战)
大数据·运维·开发语言·人工智能·python·http·自动化
哥布林学者30 分钟前
高光谱成像(七)线性光谱混合模型 LMM
机器学习·高光谱成像
所谓伊人,在水一方33332 分钟前
【Python数据可视化精通】第1讲 | 数据可视化的本质与认知心理学基础
开发语言·python·信息可视化·matplotlib
ding_zhikai33 分钟前
【Web应用开发笔记】Django笔记9:Django部署注意事项补充
笔记·后端·python·django
所谓伊人,在水一方33334 分钟前
【Python数据科学实战之路】第18章 | 大模型与数据科学:LLM赋能数据分析新时代
开发语言·python·深度学习·神经网络·数据分析·tensorflow
吃吃喝喝小朋友39 分钟前
Django Admin后台系统
后端·python·django
赵谨言41 分钟前
摘要本研究旨在构建一套基于OpenCV与CNN融合技术的银行卡号自动识别系统,重点解决不同银行卡号字体格式差异、倾斜污损等复杂场景下的识别难题
大数据·开发语言·经验分享·python
怪侠_岭南一只猿1 小时前
爬虫阶段一实战练习题:爬取豆瓣电影 Top250 复盘
css·经验分享·爬虫·python·学习·正则表达式