Это мой код. Здесь я пытаюсь предсказать количество ошибок с помощью регрессора с градиентным повышением.
from sklearn.ensemble import GradientBoostingRegressor
# GradientBoostingRegressor
regr3 = GradientBoostingRegressor(random_state=0)
regr3.fit(X_train, y_train.values.ravel())
pkl_filename = "GradientBoostingRegressor.pkl"
with open(pkl_filename, 'wb') as file:
pickle.dump(regr3, file)
# Load from file
with open(pkl_filename, 'rb') as file:
pickle_model = pickle.load(file)
score = pickle_model.score(X_test, y_test)
print("Test score: {0:.2f} %".format(100 * score))
Ypredict = pickle_model.predict(X_test)
print(Ypredict)
a= Ypredict.reshape(-1,1)
accuracy_score= pickle_model.score(a, y_test)
print(accuracy_score)
И при выполнении легко вычисляется оценка (99,69%). Но на точность не рассчитал. У меня также есть еще одно сомнение - можем ли мы выбрать модель с наивысшим значением test_score как лучшую. или я должен найти точность и найти ту, которая наиболее точна, чтобы получить модель? Произошла ошибка ---- "Количество функций модели должно соответствовать входным. N_features модели - 52, а входные n_features - 1"