Tids-K-fold
Minns du "Store Item Demand Forecasting Challenge", där du utgår från försäljningsdata för butiker och artiklar och ska förutsäga framtida försäljning?
Det är en tävling med tidsseriedata, vilket innebär att korsvalidering med tids-K-fold bör tillämpas. Ditt mål är att skapa den här korsvalideringsstrategin och kontrollera att den fungerar som förväntat.
Observera att train-DataFramen redan finns tillgänglig i din arbetsyta och att TimeSeriesSplit har importerats från sklearn.model_selection.
Den här övningen är en del av kursen
Vinna en Kaggle-tävling i Python
Övningsinstruktioner
- Skapa ett
TimeSeriesSplit-objekt med 3 uppdelningar. - Sortera träningsdatan efter kolumnen "date" för att tillämpa tids-K-fold.
- Iterera över varje tidsuppdelning med hjälp av objektet
time_kfold. - Välj tränings- och testfold för varje uppdelning med
train_indexochtest_index.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Create TimeSeriesSplit object
time_kfold = TimeSeriesSplit(n_splits=____)
# Sort train data by date
train = train.sort_values(____)
# Iterate through each split
fold = 0
for train_index, test_index in ____.____(____):
cv_train, cv_test = ____.____[____], ____.____[____]
print('Fold :', fold)
print('Train date range: from {} to {}'.format(cv_train.date.min(), cv_train.date.max()))
print('Test date range: from {} to {}\n'.format(cv_test.date.min(), cv_test.date.max()))
fold += 1