Python 什么是sklearn线性回归的系数?以及如何从中解释公式

Python 什么是sklearn线性回归的系数?以及如何从中解释公式,python,machine-learning,scikit-learn,Python,Machine Learning,Scikit Learn,当我在sklearn中使用线性回归时,我会 m = 100 X = 6*np.random.rand(m,1)-3 y = 0.5*X**2 + X+2 + np.random.randn(m,1) lin_reg = LinearRegression() lin_reg.fit(X,y) y_pred_1 = lin_reg.predict(X) y_pred_1 = [_[0] for _ in y_pred_1] 当我绘制(X,y)和(X,y_pred_1)时,它似乎是正确的 我想通过以

当我在sklearn中使用线性回归时,我会

m = 100
X = 6*np.random.rand(m,1)-3
y = 0.5*X**2 + X+2 + np.random.randn(m,1)
lin_reg = LinearRegression()
lin_reg.fit(X,y)
y_pred_1 = lin_reg.predict(X)
y_pred_1 = [_[0] for _ in y_pred_1]
当我绘制(X,y)和(X,y_pred_1)时,它似乎是正确的

我想通过以下方式创建最佳拟合线的公式:

y=(lin_注册系数)x+lin_注册截距

我已经手动将值插入到我使用coef_uu,intercept_u得到的公式中,并将其与lin_reg.predict(value)中的预测值进行比较,它们是相同的,因此lin_reg.predict实际上使用了我上面使用coef,intercept得到的公式

我的问题是如何创建简单多项式回归的公式

我愿意

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

poly_reg_2 = LinearRegression()
poly_reg_2.fit(X_poly_2, y)
然后
poly_reg_2.coef_
给我
数组([[0.93189329,0.43283304]])
poly_reg_2.intercept=数组([2.20637695])

因为它是“简单的”多项式回归,所以它应该看起来像

y=x^2+x+b,其中x是相同的变量

poly_reg_2.coef_
哪个是x^2,哪个不是

多亏了我的洞察力,我发现了如何解释多项式回归公式

所以
poly_reg_2.coef=数组([[0.93189329,0.43283304]])

你知道简单的线性回归看起来像
y=b+m1x

然后二次多项式回归看起来像
y=b+m1x+m2(x^2)

和3度:
y=b+m1x+m2(x^2)+m3(x^3)

等等。。。所以在我的例子中,两个系数就是m1和m2

最后,我的公式变成:

y=b+0.93189329x+0.43283304(x^2)