Artikel ini membahas ruang lingkup deret waktu, tugas yang harus diselesaikan, dan algoritma yang digunakan. Peramalan time series digunakan dalam tugas-tugas seperti perkiraan permintaan, beban pada pusat kontak, lalu lintas dan lalu lintas Internet, memecahkan masalah cold start dalam sistem rekomendasi dan mencari anomali dalam perilaku peralatan dan pengguna.
Mari kita bahas tugas-tugasnya lebih detail.

1) Peramalan permintaan.
Tujuan: untuk mengurangi biaya gudang dan mengoptimalkan jadwal kerja staf.
Cara dipecahkan: memiliki perkiraan pembelian barang dan jumlah pelanggan, kami meminimalkan jumlah barang di gudang, dan menyimpan persis sebanyak yang mereka beli dalam rentang waktu tertentu. Mengetahui jumlah klien pada setiap saat, kami akan menyusun jadwal kerja yang optimal sehingga dengan biaya minimum, akan ada jumlah personel yang memadai.
2) Prediksi beban pada layanan pengiriman
Tujuan: untuk mencegah jatuhnya logistik pada beban puncak.
Cara dipecahkan: memprediksi jumlah pesanan, membawa jumlah mobil dan kurir yang optimal ke telepon.
3) Meramalkan beban pada pusat kontak
Tujuan: dengan biaya minimum dana upah untuk memastikan ketersediaan pusat kontak yang diperlukan.
Cara mengatasi: memprediksi jumlah panggilan dari waktu ke waktu, kami akan membuat jadwal optimal untuk operator.
4) perkiraan lalu lintas
Tujuan: untuk memprediksi jumlah server dan bandwidth untuk operasi yang berkelanjutan. Agar layanan Anda tidak jatuh pada hari pemutaran perdana seri populer atau pertandingan sepak bola;)
5) Prediksi waktu optimal pengumpulan uang tunai ATM
Tujuan: meminimalkan jumlah uang tunai yang disimpan di jaringan ATM
6) Solusi mulai dingin dalam sistem rekomendasi
Tujuan: Untuk merekomendasikan produk yang relevan kepada pengguna baru.
Ketika pengguna telah melakukan beberapa pembelian, algoritma penyaringan kolaboratif dapat dibangun untuk rekomendasi, tetapi ketika tidak ada informasi pengguna, optimal untuk merekomendasikan produk yang paling populer.
Solusi: Popularitas produk tergantung pada waktu ketika rekomendasi dibuat. Menggunakan peramalan seri waktu membantu mengidentifikasi produk yang relevan pada waktu tertentu.
Peretasan kehidupan untuk membangun sistem rekomendasi dibahas dalam
artikel sebelumnya .
7) Cari anomali
Tujuan: untuk mengidentifikasi masalah dalam pengoperasian peralatan dan situasi non-standar dalam bisnis
Solusi: jika nilai yang diukur dihilangkan dari interval kepercayaan ramalan, anomali terdeteksi. Jika ini adalah pembangkit listrik tenaga nuklir, saatnya untuk meningkatkan kuadrat jarak;)
Algoritma untuk memecahkan masalah
1) Moving Average
Algoritma paling sederhana adalah moving average. Mari kita menghitung rata-rata beberapa elemen terakhir dan membuat prediksi. Dalam ramalan cuaca selama lebih dari 10 hari, pendekatan yang sama digunakan.

Ketika penting bahwa nilai terakhir dalam baris berkontribusi lebih banyak bobot, kami memperkenalkan koefisien tergantung pada keterpencilan tanggal, mendapatkan model tertimbang:

Jadi, Anda dapat mengatur koefisien W sehingga berat maksimum jatuh pada 2 hari terakhir dan input.
Faktor siklikKualitas rekomendasi dapat dipengaruhi oleh faktor-faktor siklus, seperti kebetulan dengan hari dalam seminggu, tanggal, sebelum liburan, dll.
Fig. 1. Contoh dekomposisi deret waktu menjadi tren, komponen musiman, dan derau
Pemulusan eksponensial adalah solusi untuk pertimbangan faktor siklik.
Pertimbangkan 3 pendekatan dasar
1. Smoothing sederhana (model Brown)
Ini adalah perhitungan rata-rata tertimbang untuk 2 elemen terakhir dari seri.
2. Anti-aliasing ganda (model Holt)
Mempertimbangkan perubahan tren dan fluktuasi nilai residu di sekitar tren ini.

Kami menghitung prediksi perubahan residual ® dan tren (d). Nilai akhir dari y adalah jumlah dari kedua kuantitas ini.
3. Triple smoothing (model Holt-Winters)
Triple smoothing juga memperhitungkan fluktuasi musiman.

Formula penghalus rangkap tiga.
Algoritma ARIMA dan SARIMA
Fitur dari deret waktu untuk penggunaan ARIMA adalah koneksi dari nilai masa lalu yang terkait dengan saat ini dan masa depan.
SARIMA adalah perpanjangan untuk seri musiman. SARIMAX adalah ekstensi yang mencakup komponen regresi eksternal.
Model ARIMA memungkinkan Anda untuk mensimulasikan deret waktu terintegrasi atau diferensial-stasioner.
Pendekatan ARIMA terhadap deret waktu adalah bahwa stasioneritas deret dievaluasi terlebih dahulu.
Selanjutnya, seri ditransformasikan dengan mengambil perbedaan urutan yang sesuai dan beberapa model ARMA sedang dibangun untuk model yang ditransformasikan.
ARMA adalah model regresi linier berganda.
Penting bahwa barisnya tidak bergerak, mis. mean dan varians tidak berubah. Jika seri tidak stabil, harus direduksi menjadi bentuk stasioner.
XGBoost - di mana tanpa itu
Jika suatu seri tidak memiliki struktur internal yang diucapkan, tetapi ada faktor-faktor yang mempengaruhi eksternal (manajer, cuaca, dll.), Maka kita dapat dengan aman menggunakan model pembelajaran mesin seperti meningkatkan, hutan acak, regresi, jaringan saraf dan SVM.
Dari pengalaman tim
DATA4 , peramalan deret waktu adalah salah satu tugas utama untuk menyelesaikan optimalisasi biaya gudang, biaya pegawai, mengoptimalkan pemeliharaan jaringan ATM, logistik, dan membangun sistem rekomendasi. Model canggih seperti SARIMA memberikan hasil berkualitas tinggi, tetapi memakan waktu dan hanya cocok untuk berbagai tugas tertentu.
Pada artikel selanjutnya, kami akan mempertimbangkan pendekatan utama untuk mencari anomali.
Agar artikel menjadi relevan dengan minat Anda, ikuti survei di bawah ini, atau tulis komentar tentang topik mana yang akan ditulis artikel berikut.