Zum Hauptinhalt springen
ToolPotion

N-BEATS

N-BEATS ist ein auf neuronalen Netzen basierendes Modell für die univariate Zeitreihenprognose. Entwickelt von ServiceNow Research, implementiert es den N-BEATS-Algorithmus für reproduzierbare experimentelle Ergebnisse. Dieses Repository bietet die PyTorch-Implementierung, Dataset-Loader und Experimentkonfigurationen für fortgeschrittene Zeitreihenanalysen.

URL besuchen

Beschreibung

N-BEATS ist ein hochentwickeltes, auf neuronalen Netzen basierendes Modell, das speziell für die univariate Zeitreihenprognose entwickelt wurde. Es stellt einen bedeutenden Beitrag von ServiceNow Research dar, dessen Ursprünge auf Element AI zurückgehen. Das Projekt zielt darauf ab, eine robuste Implementierung des N-BEATS-Algorithmus bereitzustellen, die es Forschern und Praktikern ermöglicht, die im zugehörigen Paper vorgestellten experimentellen Ergebnisse zu reproduzieren.

Das Repository ist so strukturiert, dass ein einfacher Zugriff und eine einfache Nutzung ermöglicht werden. Die Kern-PyTorch-Implementierung des N-BEATS-Modells befindet sich in der Datei `models/nbeats.py`. Für die Datenverarbeitung sind die Dataset-Loader für verschiedene im Paper verwendete Datensätze im Verzeichnis `datasets/*.py` untergebracht. Das Verzeichnis `experiments/*` enthält die experimentellen Setups, die zur Replikation der Paper-Ergebnisse erforderlich sind, wobei jedes Verzeichnis ein `main.py`-Skript für die Trainings- und Prognoselogik sowie Konfigurationsdateien für generische und interpretierbare Modellvarianten enthält.

Ergebnisse und Leistungskennzahlen sind im Verzeichnis `notebooks` dokumentiert, wobei für jedes Experiment ein dediziertes Notebook vorhanden ist. Diese Notebooks zeigen die Endergebnisse und Einblicke in die Effektivität verschiedener Ensemblegrößen und stellen fest, dass kleinere Ensembles oft vergleichbare Ergebnisse wie größere erzielen. Diese Implementierung wird als eine "leichtere" Version des ursprünglichen N-BEATS beschrieben und bietet eine Leistung, die im Allgemeinen auf dem gleichen Stand der Technik liegt, mit gelegentlichen Abweichungen bei den Ergebnissen.

Das Projekt legt Wert auf Reproduzierbarkeit durch Docker, wodurch es für Benutzer mit oder ohne NVIDIA-GPUs zugänglich ist. Das `Makefile` bietet Befehle zur Initialisierung des Docker-Images, zum Herunterladen von Datensätzen, zum Ausführen von Tests, zum Erstellen von Experimenten und zum Ausführen von Prognosen auf CPU und GPU. Detaillierte Anweisungen werden für die Einrichtung der Umgebung, das Erstellen des Docker-Images, das Herunterladen von Datensätzen und das Ausführen von Experimenten mit anpassbaren Parametern wie Wiederholungen und Lookback-Perioden bereitgestellt. Die Ausgabe von Experimenten, einschließlich Protokolle, Verluste, Snapshots und endgültige Prognosen, wird im Verzeichnis `storage/experiments` gespeichert.

N-BEATS ist besonders wertvoll für Data Scientists, Machine Learning Engineers und Forscher, die sich mit Zeitreihenanalysen, Prognosen und prädiktiver Modellierung beschäftigen. Seine interpretierbare Natur und seine Spitzenleistung machen es zu einem leistungsstarken Werkzeug für das Verständnis und die Vorhersage zukünftiger Trends in univariaten Daten über verschiedene Domänen hinweg.

N-BEATS im Überblick

  • Auf neuronalen Netzen basierendes Modell für univariate Zeitreihenprognose

  • Implementierung des N-BEATS-Algorithmus

  • Reproduzierbare experimentelle Ergebnisse

  • PyTorch-Implementierung verfügbar

  • Dataset-Loader für verschiedene Datensätze

  • Konfigurationsdateien für generische und interpretierbare Modelle

  • Docker-Unterstützung für die Umgebungsgestaltung

  • Unterstützung für CPU- und GPU-Ausführung

  • Detaillierte Anleitungen zur Reproduktion

  • Speicher für Experimentprotokolle, Verluste und Prognosen

Erste Schritte mit N-BEATS

  1. Umgebung einrichten: Stellen Sie sicher, dass Docker installiert ist, und passen Sie das Makefile an Ihre Umgebung an.

  2. Docker-Image erstellen: Führen Sie `make init` aus, um das Docker-Image zu erstellen.

  3. Datensätze herunterladen: Führen Sie `make dataset` aus, um die erforderlichen Datensätze herunterzuladen.

  4. Experiment erstellen: Verwenden Sie `make build config=<pfad_zur_config.gin>`, um Experimentkonfigurationen zu generieren.

  5. Experimente ausführen: Verwenden Sie `make run command=<pfad_zum_command>` für CPU oder `make run command=<pfad_zum_command> gpu=<gpu-id>` für GPU.

  6. Experimentstatistiken abrufen: Führen Sie ein JupyterLab-Notebook über `make notebook port=<port>` aus, um die Leistung zu analysieren.

N-BEATS's Anwendungsfälle

  • Zeitreihenprognose
  • Prädiktive Analytik
  • Nachfrageprognose
  • Finanzprognose
  • Ressourcenplanung

FAQ von N-BEATS

N-BEATS Bewertungen

Wird geladen...

Beliebte KI-Tools wie N-BEATS

GluonTS ist ein Python-Paket für probabilistische Zeitreihenmodellierung, das Deep-Learning-Modelle auf Basis von PyTorch und MXNet nutzt. Es ermöglicht präzise Prognosen durch…

KI-Modelle & LLMs

KI-Modelle

PatchTST ist eine offizielle Implementierung eines Transformer-basierten Modells für die langfristige Zeitreihenprognose. Es segmentiert Zeitreihen in Patches und verarbeitet…

KI-Modelle & LLMs

KI-Modelle

LSTNet ist ein Deep-Learning-Modell, das für die Zeitreihenprognose entwickelt wurde. Es modelliert effektiv sowohl langfristige als auch kurzfristige zeitliche Muster durch eine…

KI-Modelle & LLMs

KI-Modelle

FEDformer ist ein Frequency Enhanced Decomposed Transformer, der für effiziente Langzeit-Zeitreihenprognosen entwickelt wurde. Er erreicht eine lineare Komplexität in Bezug auf…

KI-Modelle & LLMs

KI-Modelle

Autoformer ist ein KI-Modell für die langfristige Zeitreihenprognose, das auf Dekompositionstransformatoren und Autokorrelationsmechanismen basiert. Es erzielt Spitzenleistungen…

KI-Modelle & LLMs

KI-Modelle

LTSF-Linear ist eine offizielle PyTorch-Implementierung für "Are Transformers Effective for Time Series Forecasting?". Sie stellt eine Familie von linearen Modellen (Linear,…

KI-Modelle & LLMs

Prophet ist ein Open-Source-Prognoseverfahren, das in R und Python implementiert ist. Es automatisiert Zeitreihenprognosen mit schnellen, abstimmbaren Modellen. Entwickelt für…

Forecasting & Predictive Analytics

Dieses Repository bietet eine PyTorch-Implementierung des Modells "Simple and Deep Graph Convolutional Networks" (GCNII). Es enthält Code zur Reproduktion von semi-überwachten und…

KI-Modelle & LLMs