Gridsearch n_jobs = -1 и RandomForestRegressor n_jobs = -1 не использует должным образом рабочих - PullRequest
0 голосов
/ 03 мая 2019

В настоящее время я запускаю следующий код из model.py

model = RandomForestRegressor(n_estimators=1000, random_state=42, 
n_jobs=-1, criterion='mse')
print('gs start')
# run grid search
grid_search = GridSearchCV(model,
                           param_grid=param_grid,
                           cv=5,
                           scoring='neg_mean_squared_error',
                           verbose=True,
                           n_jobs=-1,
                           refit=True)

с командой nohup python -u model.py &

Затем с помощью top -c я наблюдаю за процессом.

Я вижу, как работают все рабочие, как только я запускаю процесс с подмножеством своих данных, но если я пытаюсь использовать все мои 6 миллионов наблюдений, процесс выходы [Parallel(n_jobs=-1)]: Using backend LokyBackend with 128 concurrent workers.

запускается на нескольких рабочих, а через некоторое время используется только 1 ядро. Если я использую только ~ 200 тыс. Наблюдений, процесс использует все ядра. Почему большой набор данных не может использовать все ядра?

...