Mulai sekarangMulai gratis

Time K-fold

Ingat kembali "Store Item Demand Forecasting Challenge" di mana Anda diberikan data penjualan per toko dan item, lalu harus memprediksi penjualan di masa depan?

Ini adalah kompetisi dengan data deret waktu. Jadi, time K-fold cross-validation harus diterapkan. Tujuan Anda adalah membuat strategi cross-validation ini dan memastikan bahwa strategi tersebut berjalan sebagaimana mestinya.

Perhatikan bahwa DataFrame train sudah tersedia di workspace Anda, dan TimeSeriesSplit telah diimpor dari sklearn.model_selection.

Latihan ini merupakan bagian dari kursus

Memenangi Kompetisi Kaggle dengan Python

Lihat Kursus

Instruksi latihan

  • Buat objek TimeSeriesSplit dengan 3 split.
  • Urutkan data train berdasarkan kolom "date" untuk menerapkan time K-fold.
  • Lakukan loop pada setiap split waktu menggunakan objek time_kfold.
  • Untuk setiap split, pilih fold pelatihan dan pengujian menggunakan train_index dan test_index.

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

# 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
Edit dan Jalankan Kode