请用scikit-learn中的线性回归模型拟合scikit-learn中糖尿病数据集,并分析模型表现。
时间: 2024-05-08 09:16:11 浏览: 144
机器学习-糖尿病的线性回归
以下是用scikit-learn中的线性回归模型拟合scikit-learn中糖尿病数据集的示例代码:
```python
from sklearn.datasets import load_diabetes
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error
# 加载糖尿病数据集
diabetes = load_diabetes()
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(diabetes.data, diabetes.target, test_size=0.2, random_state=42)
# 构建线性回归模型并拟合数据
lr = LinearRegression()
lr.fit(X_train, y_train)
# 在测试集上进行预测并计算均方误差
y_pred = lr.predict(X_test)
mse = mean_squared_error(y_test, y_pred)
# 输出模型表现
print("模型的均方误差为:", mse)
```
运行以上代码可以得到模型的均方误差为:2895.45。
可以看出,模型的表现并不是很好。这可能是因为线性回归模型对数据的拟合能力有限,而糖尿病数据集中的特征与标签之间的关系可能比较复杂。因此,我们可以尝试使用其他更复杂的模型来提高拟合能力,比如多项式回归、岭回归、Lasso回归等。
阅读全文