运行GridSearchCV时内核死亡

2024-03-29 14:03:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图使用GridSearchCV为我的RandomForestRegressor找到最佳参数,但是每次我运行以下代码时,内核都会死在我的Jupiter笔记本中。有什么我能做的吗?你知道吗


def tuning(estimator, X, label, grid, one_by_one=False):

    data=Data(X, label)

    if one_by_one:
        extra_cl_random = GridSearchCV(estimator=estimator, param_grid=grid)

    else:
        extra_cl_random = RandomizedSearchCV(estimator=estimator, param_distributions=grid, n_iter=500, cv=3)

    extra_cl_random.fit(*data.train())

    best = extra_cl_random.best_estimator_
    tscore = best.score(*data.train())
    vscore = best.score(*data.valid())
    params = best.get_params()

    print('vscore:', vscore)
    print('best_params:', params) 

n_estimators = [int(x) for x in np.linspace(start = 10, stop = 200, num = 10)]
max_features = ['auto', 'sqrt', 'log2', None]
max_depth = [int(x) for x in np.linspace(10, 300, num = 10)]
max_depth.append(None)
min_samples_split = [2, 5, 10] 
min_samples_leaf = [1, 2, 4]
bootstrap = [True, False]
criterion = ['mse', 'mae']
random_state = [100]

random_grid = {'n_estimators': n_estimators,
               'max_features': max_features,
               'max_depth': max_depth,
               'min_samples_split': min_samples_split,
               'min_samples_leaf': min_samples_leaf,
               'bootstrap': bootstrap,
               'criterion': criterion,
               'random_state': random_state}

tuning(RandomForestRegressor(), columns, label, random_grid)

''' 

The message I get is "The kernel appears to have died. It will restart automatically."

Tags: dataclrandomparamsminextraonelabel