Ich erwäge zwei Strategien zur "Datenerweiterung" bei der Vorhersage von Zeitreihen.
Zunächst ein bisschen Hintergrundwissen. Ein Prädiktor zur Vorhersage des nächsten Schritts einer Zeitreihe ist eine Funktion, die typischerweise von zwei Dingen abhängt, den Zeitzuständen vergangener Zeitreihen, aber auch den vergangenen Zuständen des Prädiktors:
Wenn wir unser System anpassen / trainieren wollen, um ein gutes , benötigen wir genügend Daten. Manchmal reichen die verfügbaren Daten nicht aus, daher ziehen wir eine Datenerweiterung in Betracht.
Erste Ansatz
Angenommen, wir haben die Zeitreihe mit . Und nehmen wir auch an, dass wir , das die folgende Bedingung erfüllt: .
Wir können eine neue Zeitreihe konstruieren , wobei eine Realisierung der Verteilung .
Anstatt die Verlustfunktion nur über minimieren , tun wir dies auch über . Wenn der Optimierungsprozess also Schritte umfasst, müssen wir den Prädiktor mal "initialisieren" und berechnen ungefähr interne Zustände des Prädiktors.
Zweiter Ansatz
Wir berechnen wie zuvor, aktualisieren jedoch nicht den internen Status des Prädiktors mit , sondern mit . Wir verwenden die beiden Reihen zum Zeitpunkt der Berechnung der Verlustfunktion nur zusammen, sodass wir ungefähr interne Zustände des Prädiktors berechnen .
Natürlich gibt es hier weniger Rechenarbeit (obwohl der Algorithmus etwas hässlicher ist), aber das spielt im Moment keine Rolle.
Der Zweifel
Das Problem ist: Was ist aus statistischer Sicht die "beste" Option? Und warum?
Meine Intuition sagt mir, dass die erste besser ist, weil sie hilft, die mit dem internen Zustand verbundenen Gewichte zu "regulieren", während die zweite nur hilft, die mit der Vergangenheit der beobachteten Zeitreihen verbundenen Gewichte zu regulieren.
Extra:
- Haben Sie weitere Ideen zur Datenerweiterung für die Vorhersage von Zeitreihen?
- Wie werden die synthetischen Daten im Trainingssatz gewichtet?