当X为多维时,多项式回归有效吗?

我正在学习线性回归,特别是如何使用带有

当X为多维时,多项式回归有效吗?

给出的公式的MLE来导出参数

但是,我想问一下,当X为多维时,此公式是否有效,或者当X只是N×1向量时,它是否有效。因为当我使用sklearn.linear_models.LinearRegresion实现此公式时,我得到了完全不同的答案。例如,我有以下代码,输出不同的值:

from sklearn import datasets
boston_dataset = datasets.load_boston()
features = ['TAX','LSTAT']
X = df[features]
Y = boston_dataset.target
model = LinearRegression()
model.fit(X)
print(f"Gradient: {model.coef_}")
print(f"y-intercept: {model.intercept_}")

输出

Gradient: [-0.0052125  -0.88312682]
y-intercept: 35.83500136724426

但是:

Phi = np.hstack((np.ones((len(X),1)),X))
theta = np.dot(np.dot(np.linalg.inv(np.dot(Phi.T,Phi)),Phi.T),np.expand_dims(boston_dataset.target,1))
theta

输出以下内容:

array([[ 3.58350014e+01],[-5.21249838e-03],[-8.83126823e-01]])

如您所见,对于梯度和y截距,我得到的答案完全不同。有人可以帮我实现我的问题,还是可以给我看一篇实现此公式的文章,以使用MLE(而不是sklearn)来找到参数

zucker19782002 回答:当X为多维时,多项式回归有效吗?

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3125111.html

大家都在问