В зависимости от размера данных и классификатора, это может занять много времени. В качестве альтернативы, вы можете попробовать разбить процесс на более мелкие части, используя только один раз ядро за один раз, как это,
param_rbf = {'kernel': ['rbf'], 'gamma': [1e-2, 1e-3, 1e-4, 1e-5],
'C': [1, 10, 100, 1000]}
Тогда используйте это так
clf = GridSearchCV(reg, param_rbf, cv=timeseries_split, scoring='neg_mean_squared_error')
Точно так же, делайте предсказания отдельно для разных ядер, по словарю разных параметров
params_poly = {'kernel': ['poly'], 'C': [1, 10, 100, 1000], 'degree': [1, 2, 3, 4]}
Я знаю, что это не совсем решение, а всего лишь несколько советов, которые помогут вам сократить время, если это возможно.
Также установите для параметра verbose
значение True
. Это поможет вам показать прогресс классификатора.
Кроме того, установка n_jobs=-1
не обязательно может привести к снижению скорости. См. Этот ответ для справки.