Baik Anda mengalokasikan sumber daya secara lebih efisien untuk lalu lintas web, memperkirakan permintaan pasien untuk kebutuhan staf, atau mengantisipasi penjualan produk perusahaan, peramalan adalah alat penting di banyak bisnis. Satu kasus penggunaan tertentu, yang dikenal sebagai prakiraan awal yang dingin, membuat perkiraan untuk rangkaian waktu yang memiliki sedikit atau tanpa data historis yang ada, seperti produk baru yang baru saja memasuki pasar di industri ritel. Metode peramalan deret waktu tradisional seperti rata-rata pergerakan terintegrasi autoregresif (ARIMA) atau pemulusan eksponensial (ES) sangat bergantung pada deret waktu historis dari masing-masing produk, dan oleh karena itu tidak efektif untuk peramalan cold start.
Dalam posting ini, kami mendemonstrasikan cara membuat mesin peramalan start dingin menggunakan AutoGluon AutoML untuk perkiraan deret waktu, paket Python open-source untuk mengotomatiskan pembelajaran mesin (ML) pada data gambar, teks, tabular, dan deret waktu. AutoGluon menyediakan saluran pembelajaran mesin otomatis (AutoML) ujung ke ujung untuk pemula hingga pengembang ML berpengalaman, menjadikannya solusi otomatis yang paling akurat dan mudah digunakan. Kami menggunakan yang gratis Lab Studio Amazon SageMaker layanan untuk demonstrasi ini.
Pengantar deret waktu AutoGluon
Perekat Otomatis adalah pustaka sumber terbuka terkemuka untuk AutoML untuk teks, gambar, dan data tabular, memungkinkan Anda menghasilkan model yang sangat akurat dari data mentah hanya dengan satu baris kode. Baru-baru ini, tim telah bekerja untuk memperluas kemampuan ini ke data deret waktu, dan telah mengembangkan modul perkiraan otomatis yang tersedia untuk umum di GitHub. itu autogluon.forecasting
modul secara otomatis memproses data deret waktu mentah ke dalam format yang sesuai, lalu melatih dan menyetel berbagai model pembelajaran mendalam yang canggih untuk menghasilkan perkiraan yang akurat. Dalam posting ini, kami menunjukkan cara menggunakan autogluon.forecasting
dan menerapkannya pada tugas prakiraan cold start.
Ikhtisar solusi
Karena AutoGluon adalah paket Python open-source, Anda dapat mengimplementasikan solusi ini lokal di laptop Anda atau di Amazon SageMaker Studio Lab. Kami berjalan melalui langkah-langkah berikut:
- Siapkan AutoGluon untuk Amazon SageMaker Studio Lab.
- Siapkan kumpulan datanya.
- Tentukan parameter pelatihan menggunakan AutoGluon.
- Latih mesin peramalan start dingin untuk peramalan deret waktu.
- Visualisasikan prediksi perkiraan cold start.
Asumsi utama peramalan cold start adalah bahwa item dengan karakteristik serupa harus memiliki lintasan deret waktu yang serupa, yang memungkinkan prakiraan cold start membuat prediksi pada item tanpa data historis, seperti yang diilustrasikan pada gambar berikut.
Dalam penelusuran kami, kami menggunakan kumpulan data sintetis berdasarkan konsumsi listrik, yang terdiri dari rangkaian waktu per jam untuk 370 item, masing-masing dengan item_id
dari 0โ369. Dalam kumpulan data sintetis ini, masing-masing item_id
juga dikaitkan dengan fitur statis (fitur yang tidak berubah seiring waktu). Kami melatih Jauh model menggunakan AutoGluon untuk mempelajari perilaku khas item serupa, dan mentransfer perilaku tersebut untuk membuat prediksi pada item baru (item_id
370โ373) yang tidak memiliki data deret waktu historis. Meskipun kami mendemonstrasikan pendekatan peramalan cold start hanya dengan satu fitur statis, dalam praktiknya, memiliki fitur statis yang informatif dan berkualitas tinggi adalah kunci untuk prakiraan cold start yang baik.
Diagram berikut memberikan gambaran tingkat tinggi dari solusi kami. Kode sumber terbuka tersedia di GitHub repo.
Prasyarat
Untuk penelusuran ini, Anda harus memiliki prasyarat berikut:
- An Akun Lab Amazon SageMaker Studio
- GitHub akses akun
Masuk ke akun Amazon SageMaker Studio Lab Anda dan atur lingkungan menggunakan terminal:
Petunjuk ini juga harus berfungsi dari laptop Anda jika Anda tidak memiliki akses ke Amazon SageMaker Studio Lab (kami sarankan untuk menginstal Anaconda di laptop Anda terlebih dahulu).
Saat Anda memiliki lingkungan virtual yang sepenuhnya diatur, luncurkan notebook AutoGluon-cold-start-demo.ipynb
dan pilih lingkungan khusus .conda-autogluon:Python
inti.
Siapkan deret waktu target dan set data meta item
Unduh kumpulan data berikut ke instance notebook Anda jika tidak disertakan, dan simpan di bawah direktori data/
. Anda dapat menemukan kumpulan data ini di . kami GitHub repo:
- Tes.csv.gz
- coldStartTargetData.csv
- itemMetaData.csv
Jalankan cuplikan berikut untuk memuat kumpulan data deret waktu target ke dalam kernel:
Deret waktu AutoGluon memerlukan fitur statis untuk direpresentasikan dalam format numerik. Ini dapat dicapai melalui penerapan LabelEncoder()
pada fitur statis kami type
, di mana kita mengkodekan A=0, B=1, C=2, D=3 (lihat kode berikut). Secara default, AutoGluon menyimpulkan fitur statis menjadi ordinal atau kategoris. Anda juga dapat menimpanya dengan mengonversi kolom fitur statis menjadi tipe data objek/string untuk fitur kategoris, atau tipe data integer/float untuk fitur ordinal.
Siapkan dan mulai pelatihan model AutoGluon
Kita perlu menentukan save_path = โautogluon-coldstart-demoโ
sebagai nama folder artefak model (lihat kode berikut). Kami juga mengatur eval_metric
as rata-rata kesalahan persentase absolut, atau โMAPEโ
singkatnya, di mana kami mendefinisikan prediction_length
sebagai 24 jam. Jika tidak ditentukan, AutoGluon secara default menghasilkan prakiraan probabilistik dan menilainya melalui kehilangan kuantil tertimbang. Kami hanya melihat Model DeepAR dalam demo kami, karena kami tahu algoritme DeepAR memungkinkan prakiraan cold start berdasarkan desain. Kami mengatur salah satu hyperparameters DeepAR secara sewenang-wenang dan meneruskan hyperparameter itu ke ForecastingPredictor().fit()
panggilan. Ini memungkinkan AutoGluon untuk melihat hanya ke dalam model yang ditentukan. Untuk daftar lengkap hyperparameter yang dapat disetel, lihat paket gluonts.model.deepar.
Pelatihan ini memakan waktu 30-45 menit. Anda bisa mendapatkan ringkasan model dengan memanggil fungsi berikut:
Perkiraan pada item awal yang dingin
Sekarang kami siap membuat perkiraan untuk item cold start. Kami merekomendasikan memiliki setidaknya lima baris untuk masing-masing item_id
. Oleh karena itu, untuk item_id
yang memiliki kurang dari lima pengamatan, kita isi dengan NaN. Dalam demo kami, keduanya item_id
370 dan 372 memiliki pengamatan nol, masalah start dingin murni, sedangkan dua lainnya memiliki lima nilai target.
Muat dalam kumpulan data deret waktu target cold start dengan kode berikut:
Kami memasukkan rangkaian waktu target cold start ke dalam model AutoGluon kami, bersama dengan set data meta item untuk cold start item_id
:
Visualisasikan prediksi
Kita dapat membuat fungsi plotting untuk menghasilkan visualisasi pada peramalan cold start, seperti terlihat pada grafik berikut.
Membersihkan
Untuk mengoptimalkan penggunaan sumber daya, pertimbangkan untuk menghentikan waktu proses di Amazon SageMaker Studio Lab setelah Anda menjelajahi notebook sepenuhnya.
Kesimpulan
Dalam posting ini, kami menunjukkan cara membuat mesin prakiraan cold start menggunakan AutoGluon AutoML untuk data deret waktu di Amazon SageMaker Studio Lab. Bagi Anda yang bertanya-tanya perbedaan antara Prakiraan Amazon dan AutoGluon (deret waktu), Amazon Forecast adalah layanan terkelola dan didukung sepenuhnya yang menggunakan pembelajaran mesin (ML) untuk menghasilkan perkiraan yang sangat akurat tanpa memerlukan pengalaman ML sebelumnya. Sedangkan AutoGluon adalah proyek open-source yang didukung oleh komunitas dengan kontribusi penelitian terbaru. Kami menelusuri contoh ujung ke ujung untuk mendemonstrasikan kemampuan AutoGluon untuk deret waktu, dan menyediakan kumpulan data dan kasus penggunaan.
AutoGluon untuk data deret waktu adalah paket Python open-source, dan kami berharap posting ini, bersama dengan contoh kode kami, memberi Anda solusi langsung untuk mengatasi masalah prakiraan cold start yang menantang. Anda dapat mengakses seluruh contoh di . kami GitHub repo. Cobalah, dan beri tahu kami pendapat Anda!
Tentang Penulis
Ivan Cui adalah Ilmuwan Data dengan Layanan Profesional AWS, di mana dia membantu pelanggan membangun dan menerapkan solusi menggunakan pembelajaran mesin di AWS. Dia telah bekerja dengan pelanggan di berbagai industri, termasuk perangkat lunak, keuangan, farmasi, dan perawatan kesehatan. Di waktu luangnya, ia senang membaca, menghabiskan waktu bersama keluarga, dan memaksimalkan portofolio sahamnya.
Jonas Muller adalah Ilmuwan Terapan Senior dalam grup Penelitian dan Pendidikan AI di AWS, tempat ia mengembangkan algoritme baru untuk meningkatkan pembelajaran mendalam dan mengembangkan pembelajaran mesin otomatis. Sebelum bergabung dengan AWS untuk mendemokratisasikan ML, ia menyelesaikan PhD-nya di MIT Computer Science and Artificial Intelligence Lab. Di waktu luangnya, ia menikmati menjelajahi pegunungan dan alam bebas.
Wenming kamu adalah Manajer Produk Riset di AWS AI. Dia bersemangat membantu peneliti dan pelanggan perusahaan dengan cepat meningkatkan inovasi mereka melalui teknologi pembelajaran mesin sumber terbuka dan tercanggih. Wenming memiliki pengalaman R&D yang beragam dari Microsoft Research, tim teknik SQL, dan perusahaan rintisan yang sukses.
- Coinsmart. Pertukaran Bitcoin dan Crypto Terbaik Eropa.
- Platoblockchain. Intelijen Metaverse Web3. Pengetahuan Diperkuat. AKSES GRATIS.
- CryptoHawk. Radar Altcoin. Uji Coba Gratis.
- Sumber: https://aws.amazon.com/blogs/machine-learning/build-a-cold-start-time-series-forecasting-engine-using-autogluon/
- "
- 100
- 9
- Tentang Kami
- Mutlak
- mengakses
- Akun
- tepat
- dicapai
- di seluruh
- AI
- ai penelitian
- algoritma
- algoritma
- Membiarkan
- Meskipun
- Amazon
- Menerapkan
- pendekatan
- buatan
- kecerdasan buatan
- Otomatis
- tersedia
- rata-rata
- AWS
- membangun
- membangun
- bisnis
- panggilan
- Bisa Dapatkan
- kemampuan
- CD
- perubahan
- Pembayaran
- kode
- Kolom
- masyarakat
- Perusahaan
- Komputer Ilmu
- konsumsi
- pelanggan
- data
- ilmuwan data
- Permintaan
- menyebarkan
- Mendesain
- mengembangkan
- dikembangkan
- pengembang
- Tidak
- Pendidikan
- Efektif
- listrik
- Teknik
- masuk
- Enterprise
- Lingkungan Hidup
- penting
- contoh
- pengalaman
- berpengalaman
- memperpanjang
- keluarga
- Fitur
- Fitur
- Angka
- keuangan
- Pertama
- berikut
- format
- Gratis
- penuh
- fungsi
- masa depan
- menghasilkan
- pergi
- baik
- Kelompok
- memiliki
- kesehatan
- membantu
- sangat
- historis
- Seterpercayaapakah Olymp Trade? Kesimpulan
- How To
- HTTPS
- gambar
- melaksanakan
- memperbaiki
- termasuk
- Termasuk
- sendiri-sendiri
- industri
- industri
- terpadu
- Intelijen
- IT
- kunci
- dikenal
- laptop
- Terbaru
- jalankan
- terkemuka
- BELAJAR
- pengetahuan
- Perpustakaan
- baris
- Daftar
- sedikit
- memuat
- mesin
- Mesin belajar
- Membuat
- manajer
- Pasar
- meta
- Microsoft
- MIT
- ML
- model
- model
- paling
- bergerak
- produk baru
- buku catatan
- kode sumber terbuka
- Lainnya
- di luar rumah
- persentase
- farmasi
- portofolio
- Prediksi
- Masalah
- masalah
- proses
- menghasilkan
- Produk
- Produk
- profesional
- proyek
- menyediakan
- R & D
- Mentah
- Bacaan
- sarankan
- penelitian
- sumber
- Sumber
- eceran
- penjualan
- Skala
- skala
- Ilmu
- ilmuwan
- Seri
- layanan
- Layanan
- set
- Pendek
- mirip
- Perangkat lunak
- Solusi
- Pengeluaran
- awal
- Startups
- saham
- studio
- sukses
- Didukung
- target
- tugas
- tim
- Teknologi
- terminal
- Melalui
- waktu
- bersama
- tradisional
- lalu lintas
- Pelatihan
- kereta
- us
- menggunakan
- maya
- visualisasi
- jaringan
- Apa
- SIAPA
- dalam
- tanpa
- Kerja
- bekerja
- kerja
- nol