Corrected code
Source Link

I am using GridSearchCV for optimising my predictions and its been 5 hours now that the process is running.and its been 5 hours now that the process is running.

rf_h = RandomForestRegressor()
rf_a = RandomForestRegressor()

# Using GridSearch for Optimisation
param_grid = {
    'n_estimators': [200, 700],
    

'n_estimators': [200, 700],

'max_features': ['auto', 'sqrt', 'log2']
}

rf_g_h = GridSearchCV(estimator=rf_h, param_grid=param_grid, cv=8cv=3, n_jobs=-1)
rf_g_a = GridSearchCV(estimator=rf_a, param_grid=param_grid, cv=8cv=3, n_jobs=-1)

# Fitting dataframe to prediction engine
rf_g_h.fit(X_h, y_h)
rf_g_a.fit(X_a, y_a)

My questions are:

1. How do I optimise GridSearchCV for multicore processing? I don't mind running the system all night long to get best_params_ but, somewhere it is being bottlenecked and I cannot seem to understand why?

Processor snapshot

  1. How doAm I optimiseusing GridSearchCV for multicore processingcorrectly? How would I don't mind runninggo about choosing param_grid for the system all night longbest parameters because the whole point of this exercise is to get best_params_ but, somewhere it is being bottlenecked and I cannot seem
  2. What could be an optimal start to understand whyexploring best parameters?

Processor snapshot

  1. Am I using GridSearchCV correctly? How would I go about choosing param_grid for the best parameters because the whole point of this exercise is to get best_params_

Without GrisSearchCV, and using defaults for RandomForestRegressor, the process completes in 10 minutes. I am running it for the first time on my dataset and I am curious of the results. I have a relatively capable computer running on Ryzen 7, 8 cores and a 32 GB RAM.

Edit: Corrected code as per suggestions. I saw a massive improvement from all night running with no output to improved output in 9 minutes

I am using GridSearchCV for optimising my predictions and its been 5 hours now that the process is running.

rf_h = RandomForestRegressor()
rf_a = RandomForestRegressor()

# Using GridSearch for Optimisation
param_grid = {
    'n_estimators': [200, 700],
    'max_features': ['auto', 'sqrt', 'log2']
}

rf_g_h = GridSearchCV(estimator=rf_h, param_grid=param_grid, cv=8)
rf_g_a = GridSearchCV(estimator=rf_a, param_grid=param_grid, cv=8)

# Fitting dataframe to prediction engine
rf_g_h.fit(X_h, y_h)
rf_g_a.fit(X_a, y_a)

My questions are:

  1. How do I optimise GridSearchCV for multicore processing? I don't mind running the system all night long to get best_params_ but, somewhere it is being bottlenecked and I cannot seem to understand why?

Processor snapshot

  1. Am I using GridSearchCV correctly? How would I go about choosing param_grid for the best parameters because the whole point of this exercise is to get best_params_

Without GrisSearchCV, and using defaults for RandomForestRegressor, the process completes in 10 minutes. I am running it for the first time on my dataset and I am curious of the results. I have a relatively capable computer running on Ryzen 7, 8 cores and a 32 GB RAM.

I am using GridSearchCV for optimising my predictions and its been 5 hours now that the process is running.

rf_h = RandomForestRegressor()
rf_a = RandomForestRegressor()

# Using GridSearch for Optimisation
param_grid = {

'n_estimators': [200, 700],

'max_features': ['auto', 'sqrt', 'log2']
}

rf_g_h = GridSearchCV(estimator=rf_h, param_grid=param_grid, cv=3, n_jobs=-1)
rf_g_a = GridSearchCV(estimator=rf_a, param_grid=param_grid, cv=3, n_jobs=-1)

# Fitting dataframe to prediction engine
rf_g_h.fit(X_h, y_h)
rf_g_a.fit(X_a, y_a)

My questions are:

1. How do I optimise GridSearchCV for multicore processing? I don't mind running the system all night long to get best_params_ but, somewhere it is being bottlenecked and I cannot seem to understand why?

Processor snapshot

  1. Am I using GridSearchCV correctly? How would I go about choosing param_grid for the best parameters because the whole point of this exercise is to get best_params_
  2. What could be an optimal start to exploring best parameters?

Without GrisSearchCV, and using defaults for RandomForestRegressor, the process completes in 10 minutes. I am running it for the first time on my dataset and I am curious of the results. I have a relatively capable computer running on Ryzen 7, 8 cores and a 32 GB RAM.

Edit: Corrected code as per suggestions. I saw a massive improvement from all night running with no output to improved output in 9 minutes

Source Link

Can I run this job quicker for GridSearchCV?

I am using GridSearchCV for optimising my predictions and its been 5 hours now that the process is running.

I am running a fairly large dataset and I am afraid I have not optimised the parameters enough.

df_train.describe():

         Unnamed: 0           col1           col2           col3           col4          col5
count  8.886500e+05  888650.000000  888650.000000  888650.000000  888650.000000  888650.000000
mean   5.130409e+05       2.636784       3.845549       4.105381       1.554918       1.221922
std    2.998785e+05       2.296243       1.366518       3.285802       1.375791       1.233717
min    4.000000e+00       1.010000       1.010000       1.010000       0.000000       0.000000
25%    2.484332e+05       1.660000       3.230000       2.390000       1.000000       0.000000
50%    5.233705e+05       2.110000       3.480000       3.210000       1.000000       1.000000
75%    7.692788e+05       2.740000       3.950000       4.670000       2.000000       2.000000
max    1.097490e+06      90.580000      43.420000      99.250000      22.000000      24.000000

df_test.describe():
         Unnamed: 0      col1        col2        col3        col4        col5
count  390.000000  390.000000  390.000000  390.000000         0.0         0.0
mean   194.500000    3.393359    4.016821    3.761385         NaN         NaN
std    112.727548    4.504227    1.720292    3.479109         NaN         NaN
min      0.000000    1.020000    2.320000    1.020000         NaN         NaN
25%     97.250000    1.792500    3.272500    2.220000         NaN         NaN
50%    194.500000    2.270000    3.555000    3.055000         NaN         NaN
75%    291.750000    3.172500    4.060000    4.217500         NaN         NaN
max    389.000000   50.000000   18.200000   51.000000         NaN         NaN

The way I am using GridSearchCV is as follows:

rf_h = RandomForestRegressor()
rf_a = RandomForestRegressor()

# Using GridSearch for Optimisation
param_grid = {
    'n_estimators': [200, 700],
    'max_features': ['auto', 'sqrt', 'log2']
}

rf_g_h = GridSearchCV(estimator=rf_h, param_grid=param_grid, cv=8)
rf_g_a = GridSearchCV(estimator=rf_a, param_grid=param_grid, cv=8)

# Fitting dataframe to prediction engine
rf_g_h.fit(X_h, y_h)
rf_g_a.fit(X_a, y_a)

My questions are:

  1. How do I optimise GridSearchCV for multicore processing? I don't mind running the system all night long to get best_params_ but, somewhere it is being bottlenecked and I cannot seem to understand why?

Processor snapshot

  1. Am I using GridSearchCV correctly? How would I go about choosing param_grid for the best parameters because the whole point of this exercise is to get best_params_

Without GrisSearchCV, and using defaults for RandomForestRegressor, the process completes in 10 minutes. I am running it for the first time on my dataset and I am curious of the results. I have a relatively capable computer running on Ryzen 7, 8 cores and a 32 GB RAM.