📜  绘制multiplr线性回归模型python(1)

📅  最后修改于: 2023-12-03 15:11:38.771000             🧑  作者: Mango

绘制多项式回归模型

多项式回归模型旨在通过数据点逼近不可解析函数,通过引入多项式可以在一定程度上提高模型的拟合度。

准备工作

在进行多项式回归模型的绘制前,我们需要导入一些必要的库,这里我们将使用 numpysklearn 库。

import numpy as np
from sklearn.linear_model import LinearRegression
from sklearn.preprocessing import PolynomialFeatures
import matplotlib.pyplot as plt
准备数据

假设我们有以下一组数据,用来拟合多项式回归模型。

x = np.array([1.0, 2.0, 3.0, 4.0, 5.0])
y = np.array([1.2, 3.9, 8.5, 17.2, 28.0])

下面进行数据可视化展示。

plt.scatter(x, y)
plt.show()
训练模型

接下来我们需要将多项式回归模型拟合到这些数据点上。

# 构造多项式特征
poly_features = PolynomialFeatures(degree=2, include_bias=False)
x_poly = poly_features.fit_transform(x.reshape(-1, 1))

# 训练模型
lin_reg = LinearRegression()
lin_reg.fit(x_poly, y)

我们使用 PolynomialFeatures 将一维的数据点扩展成二维的数据点矩阵,使用 LinearRegression 训练模型。

预测值

拟合完成后,我们可以进行预测。这里我们将预测范围设为 $[0, 6]$。

x_new = np.linspace(0, 6, 100).reshape(100, 1)
x_new_poly = poly_features.transform(x_new)
y_new = lin_reg.predict(x_new_poly)
可视化展示

最后,我们使用 matplotlib 库将训练和预测的数据点绘制到图像上。

plt.plot(x_new, y_new, "r-", linewidth=2, label="Predictions")
plt.scatter(x, y, label="Traning Data")
plt.legend(loc="upper left")
plt.xlabel("Input Feature")
plt.ylabel("Output Target")
plt.show()

以上就是绘制多项式回归模型的完整介绍,希望能对您有所帮助。