Почему мое целевое значение не совпадает, когда я распечатываю его и вычисляю с коэффициентами и перехватом? - PullRequest
0 голосов
/ 12 июля 2020

Я работал над моделью полиномиальной регрессии, чтобы предсказать мои целевые значения. Дело в том, что мое предсказание с помощью метода «предсказать» имеет смысл, но когда я вычисляю целевую переменную с помощью коэффициентов и перехватываю, я получаю значение, очень далекое от заданных значений метода прогнозирования.

pol = PolynomialFeatures(degree= 9)
    
xp = pol.fit_transform(x_train)
    
poly_reg = LinearRegression()
poly_reg.fit(xp,y_train)
    
poly_test = pol.fit_transform(x_test)
    
pred = poly_reg.predict(poly_test)


poly_reg.predict(pol.fit_transform([[2]]))

Output:
array([[6.07673981]])

Если я вычисляю значение y для x = 2 через коэффициенты и точку пересечения, я получаю значение около 90.

[[0.00000000e + 00, 4.66507179e + 00, -7.69101941e-01, -5.47401755e-01, 2.92321976e-01, -5.57600284e-02, 5.44143396e-03, -2.91464609e-04, 8.16565621e-06, -9.36811416e-08]] [[0.99640058]]

1 Ответ

1 голос
/ 12 июля 2020

В полиномиальном преобразовании Значение переменной преобразуется таким образом, чтобы оно соответствовало линейной модели. Поэтому, если уравнение имеет вид

x ^ 3 + x ^ 2 + x + c, это полиномиальное уравнение

Когда вы применяете полиномиальные функции, оно создает значения X, так что мы можем использовать его в линейном уравнении, чтобы мы могли применить линейную модель.

Таким образом, используя линейные коэффициенты с фактическое значение полинома x даст другой ответ

...