为什么我的 GridSearchCV 总是崩溃?

数据挖掘 Python 随机森林 交叉验证 python-3.x 网格搜索
2022-02-13 01:35:26

我的随机森林的 GridSearchCV 崩溃了。我需要知道使它起作用的原因和解决方案:

# Grid-Search for Random Forest
param_grid = {
    'bootstrap': [True],
    'n_estimators': [100, 200, 300, 400, 500],
    'max_depth': [50, 100, None],
    'max_features': ['auto', 200],
    'min_impurity_decrease':[0],
    'min_samples_split': [2, 5],
    'min_samples_leaf': [2, 5],
    'oob_score': [True],
    'warm_start': [True]    
}


# Base-Model for improvement
rf_gridsearch = RandomForestRegressor(random_state=42)

# Grid-Search initiation 
rf_gridsearch = GridSearchCV(estimator = rf_gridsearch, param_grid = param_grid, 
                           scoring = 'neg_mean_absolute_error', cv = 5, 
                           n_jobs = -1, verbose = 5)

# Perform the grid search for the model
rf_gridsearch.fit(X_train, y_train)
```
1个回答

首先,你很适合532225=600models 和 n_estimator=500 相当大。当然,这取决于您的数据集和您的计算能力。

我的第一个猜测是你的笔记本电脑上没有足够的 RAM 内存(如果你在那里运行它),这就是它崩溃的原因。

如果错误是这个错误,我建议您将数据采样到 1/10 或更少(取决于您的数据)并在那里搜索最佳超参数,然后将整个数据用于最终模型。