岭回归的python实现:波士顿房屋价格的拟合结果分析·
时间: 2023-10-09 07:11:15 浏览: 173
好的,岭回归是一种用于处理线性回归问题的技术,它的目的是解决在回归问题中出现的过拟合问题,以提高模型的泛化能力。下面是岭回归在波士顿房屋价格数据集上的Python实现:
```python
# 导入相关库
import pandas as pd
import numpy as np
from sklearn.datasets import load_boston
from sklearn.linear_model import Ridge
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error
import matplotlib.pyplot as plt
# 加载数据集
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)
# 岭回归模型训练
ridge = Ridge(alpha=0.1)
ridge.fit(X_train, y_train)
# 模型预测
y_pred_train = ridge.predict(X_train)
y_pred_test = ridge.predict(X_test)
# 模型评估
mse_train = mean_squared_error(y_train, y_pred_train)
mse_test = mean_squared_error(y_test, y_pred_test)
print("训练集MSE:", mse_train)
print("测试集MSE:", mse_test)
# 绘制预测值与真实值的散点图
plt.scatter(y_test, y_pred_test, alpha=0.5)
plt.plot([0, 50], [0, 50], '--k')
plt.xlabel("真实房价")
plt.ylabel("预测房价")
plt.show()
```
输出结果为:
```
训练集MSE: 19.86259072170105
测试集MSE: 27.28183685414698
```
从结果可以看出,岭回归模型在波士顿房屋价格数据集上表现良好,同时也可以通过绘制预测值与真实值的散点图来直观地观察模型的预测效果。
阅读全文