gpt4 book ai didi

python - 难以绘制 2 度线性回归

转载 作者:行者123 更新时间:2023-12-04 09:00:47 25 4
gpt4 key购买 nike

我在用机器学习模型的 2 度曲线绘制二维线性回归时遇到了一些麻烦。
这是我的代码:

m = 100
X = 6 * np.random.rand(m, 1) - 3

y = 0.5 * X**2 + X + 2 + np.random.randn(m, 1)
plt.plot(X, y, "b.")
plt.show()
到这里为止,这是我的散点图:
enter image description here
现在我正在训练一个 2 度线性模型。
from sklearn.preprocessing import PolynomialFeatures

poly_features = PolynomialFeatures(degree=2, include_bias=False)
X_poly = poly_features.fit_transform(X)

lin_reg = LinearRegression()
lin_reg.fit(X_poly, y)
模型训练。
这是我绘制曲线时的结果:
plt.plot(X, lin_reg.predict(X_poly), "r-")
plt.show()
enter image description here
我正在弄清楚如何打印连续曲线,而不是那些线连接点。
下面是我想要的输出,手动绘制。
enter image description here

最佳答案

  • 你要踢自己了,可能是
  • 一切都很好,除了 X需要用 numpy.sort() 排序.
  • 这些线是按顺序绘制的,从点到点。由于点不是按 X 排序的,他们都画完了。

  • np.random.seed(365)已被指定为每次产生相同的值。

  • import numpy
    from sklearn.linear_model import LinearRegression
    from sklearn.preprocessing import PolynomialFeatures

    m = 100
    np.random.seed(365)
    X = 6 * np.random.rand(m, 1) - 3
    X = np.sort(X, axis=0) # sort the values

    y = 0.5 * X**2 + X + 2 + np.random.randn(m, 1)

    # regression code
    poly_features = PolynomialFeatures(degree=2, include_bias=False)
    X_poly = poly_features.fit_transform(X)

    lin_reg = LinearRegression()
    lin_reg.fit(X_poly, y)

    # plot
    plt.plot(X, y, "b.")
    plt.plot(X, lin_reg.predict(X_poly), "r-")
    plt.show()
    enter image description here

    关于python - 难以绘制 2 度线性回归,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63569866/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com