Saat ini saya sedang mengerjakan tugas perkiraan permintaan, dengan data puluhan ribu produk di beberapa ribu toko. Lebih khusus lagi, saya memiliki data penjualan harian setiap tahun selama beberapa tahun di setiap toko, dan tujuan saya adalah meramalkan penjualan setiap item di setiap toko di masa depan, satu hari ke depan; lalu dua hari ke depan, dll.
Sejauh ini saya telah mempertimbangkan memecah setiap pasangan toko produk menjadi satu seri waktu, dan melakukan perkiraan untuk setiap seri waktu seperti yang dilakukan dalam makalah Neal Wagner, teknik-teknik Cerdas untuk meramalkan seri waktu banyak dalam sistem dunia nyata . Dengan kata lain, saya hanya akan menggunakan informasi historis tentang penjualan produk toko tertentu untuk memperkirakan penjualan produk tersebut di masa depan.
Namun, saya telah menelusuri Kaggle dan kompetisi seperti Corporaci Favorita Grocery Sales Forecasting menyarankan pendekatan yang berbeda, yaitu menggunakan informasi dari semua toko dan semua produk untuk memprediksi penjualan di masa depan. Seperti yang saya pahami, informasi penjualan historis dari semua produk di semua toko dibuang ke dalam set pelatihan, dari mana model akan belajar untuk meramalkan penjualan di masa depan. Ini sangat berbeda dari metode deret waktu tradisional, tetapi tampaknya, berdasarkan hasil kompetisi, ini berhasil.
Metode yang terakhir tampaknya menjanjikan dan lebih kuat. Namun, ada masalah karena harus memproses ratusan juta titik data.
Metode mana yang lebih tepat untuk tugas saya? Bagi mereka yang telah mengerjakan masalah serupa, metodologi mana yang akan Anda rekomendasikan?
Jawaban:
Saya tidak akan merekomendasikan pendekatan yang digunakan oleh Neal et al. . Data mereka unik karena dua alasan:
Mereka bekerja dengan data makanan, yang biasanya lebih padat dan lebih stabil daripada data dale produk ritel lainnya. Lokasi tertentu akan menjual puluhan karton susu atau paket telur per minggu dan akan telah menjual produk-produk yang sama selama beberapa dekade, dibandingkan dengan fesyen atau suku cadang mobil di mana tidak biasa memiliki penjualan satu barang tunggal setiap 3 atau 4 minggu, dan data tersedia hanya untuk satu atau dua tahun.
Mereka memperkirakan gudang bukan toko. Satu gudang mencakup beberapa toko, sehingga datanya bahkan lebih padat daripada rata-rata. Bahkan gudang biasanya digunakan sebagai tingkat agregasi / pengelompokan alami untuk toko, sehingga mereka pada dasarnya sudah melakukan pengelompokan data toko.
Karena sifat data mereka, mereka dapat langsung memodelkan serangkaian waktu individual. Tetapi sebagian besar data pengecer akan terlalu jarang pada tingkat sku / toko individu untuk melakukan itu.
Seperti yang dikatakan zbicyclist, masalah ini biasanya didekati dengan menggunakan peramalan hierarkis atau multi-eselon . Paket peramalan permintaan komersial semua menggunakan beberapa bentuk peramalan hierarki
Idenya adalah untuk mengelompokkan produk dan menyimpannya ke dalam produk dan wilayah yang serupa, di mana prakiraan agregat dihasilkan dan digunakan untuk menentukan keseluruhan musim dan tren, yang kemudian diselaraskan dengan menggunakan pendekatan Top-Down dengan prakiraan dasar yang dihasilkan untuk masing-masing individu. / kombinasi toko.
Selain tantangan yang disebutkan zbicyclist, masalah yang lebih besar adalah bahwa menemukan pengelompokan produk dan toko yang optimal bukanlah tugas sepele, yang membutuhkan kombinasi keahlian domain dan analisis empiris. Produk dan toko biasanya dikelompokkan bersama dalam hierarki yang rumit (Menurut departemen, pemasok, merek, dll. Untuk produk, berdasarkan wilayah, iklim, gudang, dll ... untuk lokasi) yang kemudian dimasukkan ke algoritma peramalan bersama dengan penjualan historis data itu sendiri.
Mengatasi komentar merax
Mereka melakukan pengelompokan secara implisit dengan menggunakan store, item, famlily, class, cluster sebagai fitur kategorikal.
Tiga poin tentang ini:
sumber