случайный лесной регрессор перекрестной проверки слишком низок по сравнению со случайным лесным регрессором r2 для всего набора данных - PullRequest
0 голосов
/ 01 марта 2020

У меня есть набор данных с 19 функциями и 90 записями.

X.shape
Out[196]: (90, 19)

Форма выходной переменной:

Y.shape
Out[197]: (90,)

Я пытаюсь запустить регрессор случайного леса на моем данные, которые дают довольно хороший квадрат r2 на всей выборке данных:

 random_forest = RandomForestRegressor(n_estimators=50, random_state=0, min_impurity_split = 0.05, max_depth = 5).fit(X,Y)
 random_forest_r2 = random_forest.score(X,Y)
 random_forest_r2
 Out[205]: 0.8896383918938593

однако при использовании перекрестной проверки для проверки точности модели среднее значение r2 является отрицательным:

random_forest_cross_validation = cross_val_score(random_forest,X,Y,cv = 5, scoring = 'r2').mean()
random_forest_cross_validation = -0.4020013625

Помогает ли Gridsearchcv найти параметры с высокой общей точностью или с моими характеристиками и данными, «Случайный лес» не является хорошим выбором?

...