RandomForestRegressor - K-кратное резюме cross_val_predict никогда не завершается - PullRequest
1 голос
/ 02 февраля 2020

Я использую RandomForestRegressor для создания новых функций:

Старый скрипт занимает 20 минут, но он все еще завершен ...

**param_grid = { 
    'n_estimators': [10, 50, 100, 1000],
    'max_depth' : [4,5,6,7,8],
}

def rfr_model(X, Y):

- Выполнить поиск по сетке

gsc = GridSearchCV(
estimator=RandomForestRegressor(),
param_grid=param_grid,
cv=5, scoring='neg_mean_squared_error', verbose=0, n_jobs=-1)

grid_result = gsc.fit(X, Y)
best_params = grid_result.best_params_

rfr = RandomForestRegressor(max_depth=best_params["max_depth"], n_estimators=best_params["n_estimators"], 
                            random_state=False, verbose=False)

- Выполнить K-Fold CV

MSE = cross_val_score(rfr, X, Y, cv=5, scoring='neg_mean_squared_error')
return MSE

Однако теперь я хочу показать свои прогнозные значения, поэтому я добавил cross_val_predict, и модель никогда не завершится:

# Perform K-Fold CV
    MAE = cross_val_score(rfr, X, Y, cv=5, scoring='neg_mean_absolute_error')
    MSE = cross_val_score(rfr, X, Y, cv=5, scoring='neg_mean_squared_error')
    prediction = cross_val_predict(rfr, X, Y, cv=5)
    return print("MAE: ",MAE), print("MSE: ",MSE), prediction

Оба работают на:

**X2=pd.concat([x_test,x_train]) 
Y2=pd.concat([y_test,y_train])
X2 = X2.astype('float64')
Y2 = Y2.astype('float64').values.ravel()**

Есть идеи, как решить эту проблему?

PS: Я новичок, так что будьте осторожны со мной.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...