Parameter richtig Wählen
Was bewirkt die "forecast_length"?
Die forecast_length gibt an, wie viele zukünftige Werte das Modell vorhersagen soll. Dabei wird die zeitliche Distanz der Vorhersage basierend auf dem durchschnittlichen Zeitabstand der letzten gespeicherten Daten in Eliona berechnet.
Wie funktioniert das?
Wenn Werte in regelmäßigen Intervallen gespeichert werden, z. B. alle 5 Minuten, bedeutet eine forecast_length von
3
, dass das Modell den Wert für (3 x 5min) 15 Minuten in der Zukunft vorhersagt.Werden Werte täglich gespeichert, prognostiziert eine forecast_length von
5
, was der Zustand des Zielattributs in (5 x 1Tag) 5 Tagen sein wird.
Worauf muss geachtet werden?
Die Vorhersage funktioniert nur zuverlässig, wenn die Daten regelmäßig in Eliona gespeichert werden. Unregelmäßige Daten, z. B. teils im 5-Minuten-Takt und teils täglich, können die Vorhersage verfälschen, da der Zeitabstand nicht einheitlich ist und keine sehr sinnvolle Prognose mehr möglich ist.
Was ist die "context_length" und wie sollte sie gewählt werden?
Die context_length definiert, wie viele vergangene Datenpunkte das Modell betrachtet, um zukünftige Werte vorherzusagen. Sie steuert, wie tief das Modell in die Vergangenheit blickt, um Muster und Abhängigkeiten zu erkennen.
Wie sollte die context_length gewählt werden?
Analyse der Daten: Betrachten Sie Ihre Daten grafisch und beurteilen Sie, wie weit in die Vergangenheit Sie schauen müssten, um zukünftige Werte sinnvoll vorherzusagen. Die context_length sollte die Zeitspanne abdecken, in der wichtige Muster erkennbar sind.
Abhängigkeit von den Datenmustern:
Bei kurzfristigen Mustern (z. B. tägliche Schwankungen) reicht eine kleinere context_length.
Bei Daten mit saisonalen oder längerfristigen Trends ist eine größere context_length sinnvoll.
Effizienz und Genauigkeit: Eine größere context_length liefert mehr Informationen, verlängert jedoch die Trainingszeit. Zu kurze Werte können wichtige Muster übersehen, was die Vorhersage ungenau macht.
Wie nutzen LSTMs die context_length?
LSTMs können durch ihre Gedächtnisstruktur langfristige Trends in den Daten erkennen, auch wenn die context_length relativ begrenzt ist. Sie behalten wichtige Informationen im Gedächtnis und verwerfen irrelevante Details.
Empfehlung:
Wählen Sie die context_length basierend auf der typischen Länge relevanter Muster in den Daten. Testen Sie verschiedene Werte und optimieren Sie, um die Balance zwischen Trainingszeit und Vorhersagegenauigkeit zu finden.
Target Attribute: Worauf sollte man achten?
Keine stetig wachsenden Werte: Verwenden Sie keine Zählerstände oder ähnliche Werte direkt. Berechnen Sie stattdessen Differenzen oder prozentuale Änderungen, um das Verhalten des Attributs darzustellen:
Regelmäßige Erfassung: Das Zielattribut sollte in gleichmäßigen Zeitabständen vorliegen, um konsistente und aussagekräftige Prognosen zu ermöglichen.
Gut vorbereitet: Problematische Daten (z. B. stark schwankend oder unregelmäßige Ausreißer oder Rauschen) können durch den -> Filter gesäubert werden.
Mit diesen Eigenschaften legen Sie die Basis für präzise und verlässliche Vorhersagen.
Feature Attributes: Unterstützende Daten für bessere Prognosen
Die Forecast App bietet eine einfache Möglichkeit, Zeitmerkmale und zusätzliche Attribute aus dem gleichen Asset als Features zu verwenden. Zeitliche Feature Attributes werden automatisch berechnet, wenn sie im JSON angegeben werden, während andere Features explizit zum Asset hinzugefügt werden müssen.
Mögliche Zeit-Features
Die App unterstützt folgende Zeit-Features, die automatisch berechnet werden, wenn sie im JSON enthalten sind:
Diese Zeitmerkmale basieren auf zyklischen Daten und werden mithilfe von Sinus- und Kosinus-Funktionen transformiert. Dadurch kann das Modell besser mit zyklischen Mustern umgehen, wie z. B.:
Stunde des Tages: Energieverbrauch steigt tagsüber.
Tag der Woche: Unterschiede zwischen Arbeitstagen und Wochenenden.
Monat des Jahres: Saisonale Schwankungen.
Beispiel:
Eine Stunde 23
und eine Stunde 0
sind numerisch weit voneinander entfernt, aber in einem zyklischen Kontext eng verbunden. Die Sinus- und Kosinus-Transformationen machen diese Beziehung für das Modell erkennbar.
Andere Feature Attributes
Zusätzlich zu Zeit-Features können Sie Attribute aus demselben Asset hinzufügen, die mit dem Zielattribut korrelieren. Beispiele:
Temperatur: Hilfreich bei Energieverbrauchsvorhersagen.
Luftfeuchtigkeit: Relevant für Wasserverbrauch oder Klimasteuerung.
Wichtig:
Attribute wie Zählerstände sollten nicht direkt genutzt werden. Stattdessen können Differenzen oder prozentuale Änderungen berechnet werden, um das Verhalten darzustellen.
Beispiel mit dem Eliona Calculator:
Feature Engineering mit dem Eliona Calculator
Mit dem Eliona Calculator können Sie neue Attribute erstellen oder bestehende Attribute transformieren, um sie für das Modell nützlicher zu machen.
Möglichkeiten des Feature Engineerings:
Kombination von Attributen: Fassen Sie korrelierte Attribute zusammen, z. B.:
Differenzen oder Wachstumsraten: Zeigen Sie Veränderungen auf, z. B.:
Fourier-Polynome: Fourier-Polynome eignen sich hervorragend, um komplexe zyklische Muster darzustellen:
F₁(x): 2sinx
F₂(x): 2sinx−sin2x
F₃(x): 2sinx−sin2x+ 3/2 sin3x
F₄(x): 2sinx−sin2x+ 3/2 sin3x− 2/1 sin4x
F₅(x): 2sinx−sin2x+ 3/2 sin3x− 2/1 sin4x+ 5/2 sin5x
... Fourier-Polynome können wie Sinus- und Kosinus-Features verwendet werden, bieten jedoch zusätzliche Präzision für periodische Daten.
Glättung von Daten: Nutzen Sie auch die -> Filter Funktion von Eliona um daten zu glätten oder Ausreißer zu filtern.
Worauf sollten Sie achten?
Relevanz: Stellen Sie sicher, dass die Attribute einen Einfluss auf das Zielattribut haben.
Sichtbarkeit: Transformieren Sie die Attribute so, dass der Einfluss auf das Zielattribut für das Modell sichtbar wird, z. B. durch Differenzen oder prozentuale Änderungen.
Keine irrelevanten Attribute: Vermeiden Sie Features, die keine Beziehung zum Zielattribut haben, da diese das Modell unnötig belasten.
Beispiel für eine Anfrage
Details:
Zeit-Features wie
hour_of_day_sin
,day_of_week_sin
werden automatisch berechnet.Asset-Features wie
temperature
undhumidity
müssen Teil des gleichen Assets sein oder vorher mit dem Eliona Calculator hinzugefügt werden.
Startdatum der Datenanalyse festlegen
Mit der Option start_date
können Sie festlegen, ab welchem Datum die Daten für das Training und die Vorhersage verwendet werden sollen. Das Format für das Startdatum ist %Y-%m-%d
(Jahr-Monat-Tag).
Standardwert: Wenn kein Datum angegeben wird, verwendet die App automatisch den 1. Januar 2024 (
"start_date": "2024-01-01"
).
Beispiel zur Verwendung:
Wenn Sie möchten, dass das Modell nur Daten ab dem 15. Februar 2024 berücksichtigt, können Sie dies im JSON einstellen:
Trainings- und Forecast-Einstellungen anpassen
Mit den Parametern train
und forecast
können Sie steuern, ob das Modell trainiert oder Vorhersagen berechnet werden sollen. Diese Einstellungen sind besonders nützlich, wenn Sie gezielt nur eine der beiden Aktionen ausführen möchten.
Parameterübersicht:
train
: Steuert das Training des Modells.true
(Standardwert): Das Modell wird trainiert.false
: Das Training wird deaktiviert.
forecast
: Steuert die Erstellung von Vorhersagen.true
(Standardwert): Es werden Vorhersagen berechnet und im Forecast-Attribut gespeichert.false
: Das Forecasting wird deaktiviert.
Beispiel zur Verwendung:
Wenn Sie das Training deaktivieren, aber vorhandene Modelle zur Vorhersage nutzen möchten, setzen Sie:
Wenn Sie nur trainieren möchten, ohne direkt Vorhersagen zu erstellen:
Wann ist das nützlich?
train: false
: Wenn Sie bereits ein fertiges Modell haben und nur die Vorhersagen aktualisieren möchten.forecast: false
: Während der Hyperparameter-Suche oder bei großen Datensätzen, um Rechenleistung zu sparen. Forecasting kann später aktiviert werden, sobald das beste Modell gefunden ist.
Last updated