【问题标题】:why is my draw of 3-degree polymonial so weird?为什么我绘制的 3 次多项式如此奇怪?
【发布时间】:2017-12-12 21:49:36
【问题描述】:

我正在使用 scikit learn 研究线性回归和多项式回归。我生成了 2 度多项式数据集,并训练了一个 3 度多项式模型。我希望用原始数据过度拟合情节。但情节看起来不像 3 度曲线。如果我将度数更改为 1,它将显示一条很好的线。我在这里错过了什么?

# over fit
poly_features_3 = PolynomialFeatures(degree=3, include_bias=False)
X_poly_3 = poly_features_3.fit_transform(X)
lin_reg_3 = LinearRegression()
lin_reg_3.fit(X_poly_3, y)
y_predict = lin_reg_3.predict(X_poly_3)
plt.scatter(X, y, color='black')
plt.plot(X, y_predict, color='red')
plt.show()

【问题讨论】:

    标签: matplotlib machine-learning scikit-learn


    【解决方案1】:

    值没有排序,所以情节来回跳跃。

    我猜你会想要绘图

    plt.plot(np.sort(X), y_predict[np.argsort(X)], color='red')
    

    【讨论】:

    • 从来不知道np.argsort() 存在。漂亮!
    猜你喜欢
    • 2018-07-21
    • 2020-07-18
    • 1970-01-01
    • 1970-01-01
    • 2021-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-14
    相关资源
    最近更新 更多