GridSearchCV с данными, индексированными по времениPython

Программы на Python
Ответить
Anonymous
 GridSearchCV с данными, индексированными по времени

Сообщение Anonymous »

Я пытаюсь использовать GridSearchCV из sklearn.model_selection. Мои данные представляют собой набор классификаций, индексированных по времени. В результате при перекрестной проверке я хочу, чтобы обучающий набор представлял собой исключительно данные со временем, предшествующие данным в тестовом наборе.
Итак, мой обучающий набор X_train, y_train выглядит

Код: Выделить всё

Time        feature_1 feature_2 result
2020-01-30  3         6         1
2020-02-01  4         2         0
2021-03-02  7         1         0
и тестовый набор X_test, y_test выглядит так:

Код: Выделить всё

Time        feature_1 feature_2 result
2023-01-30  3         6         1
2023-02-01  4         2         0
2024-03-02  7         1         0
Предположим, я использую такую ​​модель, как xgboost, затем для оптимизации гиперпараметров я использовал GridSearchCV, и код выглядит так:

Код: Выделить всё

param_grid = {
'max_depth': [1,2,3,4,5],
'min_child_weight': [0,1,2,3,4,5],
'gamma': [0.5, 1, 1.5, 2, 5],
'colsample_bytree': [0.6, 0.8, 1.0],
}

clf = XGBClassifier(learning_rate=0.02,
n_estimators=600,
objective='binary:logistic',
silent=True,
nthread=1)

grid_search = GridSearchCV(
estimator=clf,
param_grid=param_grid,
scoring='accuracy',
n_jobs= -1)

grid_search.fit(X_train, y_train)
Однако как мне установить резюме в Grid_search? Заранее большое спасибо.
Изменить: поэтому я попытался установить cv=0, так как хочу, чтобы мои данные обучения были строго «раньше». ", затем протестируйте данные, и я получил следующие ошибки: InvalidParameterError: Параметр 'cv' GridSearchCV должен быть целым числом в диапазоне [2, inf), объект, реализующий 'split' и 'get_n_splits', итерируемый или Никто. Вместо этого получил 0.

Подробнее здесь: https://stackoverflow.com/questions/793 ... ed-by-time
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»