Deskripsi
N-BEATS adalah model canggih berbasis jaringan saraf yang dirancang khusus untuk peramalan deret waktu univariat. Model ini merupakan kontribusi signifikan dari ServiceNow Research, dengan asal-usulnya yang berasal dari Element AI. Proyek ini bertujuan untuk menyediakan implementasi yang kuat dari algoritma N-BEATS, memungkinkan peneliti dan praktisi untuk mereproduksi hasil eksperimental yang disajikan dalam makalah terkait.
Baca Selengkapnya
Repositori ini disusun untuk memfasilitasi akses dan penggunaan yang mudah. Implementasi PyTorch inti dari model N-BEATS dapat ditemukan di dalam file `models/nbeats.py`. Untuk penanganan data, pemuat dataset untuk berbagai dataset yang digunakan dalam makalah terletak di direktori `datasets/*.py`. Direktori `experiments/*` menampung pengaturan eksperimental yang diperlukan untuk mereplikasi hasil makalah, masing-masing berisi skrip `main.py` untuk logika pelatihan dan peramalan, bersama dengan file konfigurasi untuk varian model generik dan yang dapat diinterpretasikan.
Hasil dan metrik kinerja didokumentasikan di direktori `notebooks`, dengan notebook khusus untuk setiap eksperimen. Notebook-notebook ini menampilkan skor akhir dan wawasan tentang efektivitas berbagai ukuran ensemble, mencatat bahwa ensemble yang lebih kecil sering kali memberikan hasil yang sebanding dengan yang lebih besar. Implementasi ini digambarkan sebagai versi 'lebih ringan' dari N-BEATS asli, menawarkan kinerja yang umumnya berada pada tingkat state-of-the-art yang sama, dengan variasi hasil sesekali.
Proyek ini menekankan reproduktibilitas melalui Docker, membuatnya dapat diakses oleh pengguna dengan atau tanpa GPU NVIDIA. `Makefile` menyediakan perintah untuk menginisialisasi citra Docker, mengunduh dataset, menjalankan pengujian, membangun eksperimen, dan mengeksekusi peramalan pada CPU dan GPU. Instruksi terperinci diberikan untuk menyiapkan lingkungan, membangun citra Docker, mengunduh dataset, dan menjalankan eksperimen dengan parameter yang dapat disesuaikan seperti pengulangan dan periode lookback. Output eksperimen, termasuk log, loss, snapshot, dan peramalan akhir, disimpan di direktori `storage/experiments`.
N-BEATS sangat berharga bagi ilmuwan data, insinyur machine learning, dan peneliti yang terlibat dalam analisis deret waktu, peramalan, dan pemodelan prediktif. Sifatnya yang dapat diinterpretasikan dan kinerja state-of-the-art menjadikannya alat yang ampuh untuk memahami dan memprediksi tren masa depan dalam data univariat di berbagai domain.
- KategoriModel AI & LLM
- Model HargaOpen source
- PenerapanCloud, Di-host sendiri
- PlatformLinux, macOS, Windows
Fitur Inti N-BEATS
Model berbasis jaringan saraf untuk peramalan deret waktu univariat
Implementasi algoritma N-BEATS
Hasil eksperimental yang dapat direproduksi
Implementasi PyTorch tersedia
Pemuat dataset untuk berbagai dataset
File konfigurasi untuk model generik dan yang dapat diinterpretasikan
Dukungan Docker untuk penyiapan lingkungan
Dukungan eksekusi CPU dan GPU
Instruksi terperinci untuk reproduksi
Penyimpanan untuk log eksperimen, loss, dan peramalan
Memulai dengan N-BEATS
Siapkan lingkungan: Pastikan Docker terinstal dan sesuaikan Makefile untuk lingkungan Anda.
Bangun citra Docker: Jalankan `make init` untuk membangun citra Docker.
Unduh dataset: Jalankan `make dataset` untuk mengunduh dataset yang diperlukan.
Bangun eksperimen: Gunakan `make build config=<path_to_config.gin>` untuk menghasilkan konfigurasi eksperimen.
Jalankan eksperimen: Gunakan `make run command=<path_to_command>` untuk CPU atau `make run command=<path_to_command> gpu=<gpu-id>` untuk GPU.
Dapatkan statistik eksperimen: Jalankan notebook JupyterLab melalui `make notebook port=<port>` untuk menganalisis kinerja.
Kasus Penggunaan N-BEATS
- Peramalan deret waktu
- Analitik prediktif
- Peramalan permintaan
- Peramalan keuangan
- Perencanaan sumber daya








