Schmuckbild

HCrystalBall

Ein Interface für die Zeitreihenanalyse-Vorhersage in Python

Wie funktioniert HCrystalBall?

HCrystalBall fußt auf zwei Säulen. Dadurch ist das System einfach zu nutzen und liefert hochwertige Ergebnisse.

Der Wrapper

Der Wrapper umgibt die beliebtesten Zeitreihen-Bibliotheken in Python, damit Nutzer einheitlich mit ihnen kommunizieren können (darunter fbprophet, arima/autoarima, Exponentielle Glättung von statsmodels und (t)bats). Wrapper kann man sich als Reiseadapter vorstellen, mit denen man englische oder amerikanische Stecker an europäische Steckdosen anpassen kann.

Ohne HCrystalBall müssten die Daten mehrmals umgewandelt werden, um von den historischen Trainingsdaten zu einer Vorhersage in der gewünschten Form zu kommen.

Der Wrapper von HCrystalBall dagegen bringt alle Bibliotheken in einem Interface zusammen, für das Sie Ihre Daten vorbereiten müssen; auch Ihre Vorhersage muss dann nur noch einmal in das Format der Trainingsdaten umgewandelt werden.

Durch den Wrapper müssen weniger Daten umgewandelt werden. Zudem ist er die Voraussetzung für die spätere Modellauswahl und ermöglicht die Zusammenfassung mehrerer Modelle zu einer komplexeren, hierarchischen Struktur. Die Komponente kann jedoch auch als Stand-Alone verwendet werden.

Die Modellauswahl

In den meisten unserer Anwendungsfälle sehen die Daten ungefähr so aus wie auf der Abbildung weiter unten im Text – wir haben Spalten, die die Daten aufteilen (hier z. B. nach Bundesland und Geschäft), Informationen über den ISO-Code der Bundesländer (wodurch wir die Auswirkungen gesetzlicher Feiertage berücksichtigen können) und die Zeitreihe, die wir vorhersagen wollen (hier ist das die Spalte „Umsatz“ – das Umsatzvolumen in jedem Geschäft für mehrere Tage).

Diese Daten sind der Input für die Modellauswahl. Die Auswahl hängt von einigen Parametern ab – wichtig ist beispielsweise, für wie viele Tage im Voraus das Modell Vorhersagen treffen soll oder welche Modelle verwendet werden. Daten in Form solcher Tabellen können Sie leicht in Python eingegeben, indem Sie Excel-ähnliche Dateien aus der Pandas-Bibliothek verwenden. Wenn die Modellauswahl beendet ist, erhalten Sie eine detailreiche Darstellung der Statistiken rund um die ausgewählten Modelle über alle Datensegmente. Zudem erhalten Sie Messwerte, die zeigen, warum das gewählte Modell das beste ist. Die nachfolgenden Grafiken geben Ihnen einen Eindruck, wie genau unsere Vorhersagen sind.

Auch ohne Erfahrungen im Programmieren können Sie das System auf My Binder einfach ausprobieren (geben Sie dem Ganzen etwas Zeit und aktualisieren Sie die Seite ein paar Mal – sobald Sie fertig sind, müssen Sie nur den Startbutton drücken und Sie sehen Ihre Ergebnisse).

Anwendung

HCrystalBall hat sich bei zahlreichen Gelegenheiten bewährt: Das Interface ist der wichtigste Baustein für die meisten unserer Anwendungsfälle in allen Geschäftsbereichen und Abteilungen (Logistik, Zement, Transportbeton und viele andere) und wir sind überzeugt, dass auch der Rest der Community davon profitieren kann.

Probieren Sie es aus!

Am einfachsten probieren Sie HCrystalBall aus, indem Sie die Beispiele in der vorgefertigten Systemumgebung durchgehen (es muss nichts installiert werden). Wenn Sie keine interaktive Umgebung benötigen, finden Sie bereits ausgeführte Notebook unter den Dokumenten im Beispiel-Bereich. Lesen Sie in den Anweisungen für die Installation nach, wie Sie Ihre eigene Umgebung einrichten können. Wir haben auch einen technisch orientierten Blogartikel veröffentlicht, der Beispiele für Codes enthält. Sind Sie an einem Code interessiert oder möchten einen Beitrag leisten? Besuchen Sie unser GitHub repository.

Ihr Data-Science-Team von Heidelberg Materials

Michal Chromčák

Data Scientist, OneIT Data Science Team │Heidelberg Materials

Michal Chromčák arbeitet als Data Scientist im OneIT Data Science Team von Heidelberg Materials, seit es 2018 gegründet wurde. Seine Aufgaben reichen von der Datenanalyse über die Python-, die Frontend- und die Anwendungs-Entwicklung bis hin zur parallelen Durchführung von hohen Rechenleistungen und der Arbeit an unterstützenden Programmbibliotheken. Michal ist zudem für die Wartung und Pflege von HCrystalBall zuständig – dem ersten Open-Source-Paket von Heidelberg Materials.