请使用线性回归,岭回归方法来构建回归模型,并可视化展示预测结果。
时间: 2024-12-21 13:27:24 浏览: 6
线性回归是一种最简单的统计学习方法,用于建立因变量与一个或多个自变量之间的线性关系。它的目标是最小化预测值与真实值之间的残差平方和。而岭回归是对经典线性回归的一种扩展,引入了正则化项,防止过拟合。它通过L2范数(即权重向量的平方和)对模型参数进行约束。
首先,你需要安装一些必要的库,如`pandas`, `numpy`, `matplotlib`, 和 `sklearn`来进行数据处理、模型训练和可视化。以下是构建和展示模型的基本步骤:
```python
# 导入所需库
import pandas as pd
import numpy as np
from sklearn.linear_model import LinearRegression, Ridge
import matplotlib.pyplot as plt
# 加载数据集(假设df是你加载的数据)
df = pd.read_csv('your_data.csv')
# 定义自变量和因变量
X = df[['feature1', 'feature2']] # 自变量
y = df['target'] # 因变量
# 划分训练集和测试集
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 构建线性回归模型
lr = LinearRegression()
lr.fit(X_train, y_train)
# 构建岭回归模型
ridge = Ridge(alpha=1.0) # alpha是正则化强度,默认为None,自动选择
ridge.fit(X_train, y_train)
# 预测
y_pred_lr = lr.predict(X_test)
y_pred_ridge = ridge.predict(X_test)
# 可视化结果
plt.figure(figsize=(10,5))
plt.plot(y_test, label='实际值')
plt.plot(y_pred_lr, label='线性回归预测')
plt.plot(y_pred_ridge, label='岭回归预测')
plt.xlabel('样本编号')
plt.ylabel('预测值')
plt.legend()
plt.show()
阅读全文