GridSearchCV mit nach Zeit indizierten Daten
Posted: 05 Jan 2025, 15:49
Ich versuche, den GridSearchCV von sklearn.model_selection zu verwenden. Meine Daten sind eine Reihe von Klassifizierungen, die nach Zeit indiziert sind. Daher möchte ich bei der Kreuzvalidierung, dass der Trainingssatz ausschließlich aus den Daten mit der Zeit vor den Daten im Testsatz besteht.
Also mein Trainingssatz X_train, y_train sieht aus wie
und der Testsatz X_test, y_test sieht aus wie
Angenommen, ich verwende ein Modell wie xgboost, dann habe ich zur Optimierung der Hyperparameter GridSearchCV verwendet und der Code sieht so aus
Aber wie soll ich den Lebenslauf in Grid_search festlegen? Vielen Dank im Voraus.
Also mein Trainingssatz X_train, y_train sieht aus wie
Code: Select all
Time feature_1 feature_2 result
2020-01-30 3 6 1
2020-02-01 4 2 0
2021-03-02 7 1 0
Code: Select all
Time feature_1 feature_2 result
2023-01-30 3 6 1
2023-02-01 4 2 0
2024-03-02 7 1 0
Code: Select all
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)