огромная ошибка MSE 3400 с регрессором повышения градиента - sklearn - PullRequest
0 голосов
/ 28 октября 2019

Я использую стандартный набор данных диабета, регрессионное задание.

import pandas as pd
from sklearn.datasets import load_diabetes
from sklearn.ensemble import GradientBoostingRegressor
from sklearn.metrics import mean_squared_error
from sklearn.model_selection import  train_test_split
from sklearn.utils import shuffle

diab =load_diabetes()

df = pd.DataFrame(diab.data,columns=diab.feature_names)
df['target'] = diab.target

X = df.iloc[:,:-1]
y = df.iloc[:,-1:]

X_train, X_test,y_train, y_test= train_test_split(X,y,test_size = 0.3,random_state=42)

grad_boost = GradientBoostingRegressor(learning_rate=0.001,loss='ls',max_depth=19,
                                       max_features=5)

grad_boost = grad_boost.fit(X_train,y_train)

mse = mean_squared_error(y_test, grad_boost.predict(X_test))

print("MSE: %.4f" % mse) #gives error of 3400-5000 depending on params

Я проверил форму X, y, поезд и размеры тестов. в чем может быть причина огромной ошибки MSE?

...