RNN mit mehreren Zeitreihen


14

Ich versuche, ein neuronales Netzwerk mit Zeitreihen als Eingabe zu erstellen, um es basierend auf dem Typ jeder Reihe zu trainieren. Ich habe gelesen, dass man mit RNNs die Eingabe in Gruppen aufteilen und jeden Punkt der Zeitreihe in einzelne Neuronen aufteilen und schließlich das Netzwerk trainieren kann.

Ich versuche jedoch, mehrere Zeitreihen als Eingabe zu verwenden. So könnten Sie beispielsweise Eingaben von zwei Sensoren erhalten. (Also zwei Zeitreihen), aber ich möchte beide verwenden, um ein Endergebnis zu erhalten.

Außerdem versuche ich nicht, zukünftige Werte der Zeitreihen vorherzusagen, sondern versuche, eine Klassifizierung auf der Grundlage aller dieser Werte zu erhalten.

Wie soll ich dieses Problem angehen?

  • Gibt es eine Möglichkeit, mehrere Zeitreihen als Eingabe für eine RNN zu verwenden?

  • Soll ich versuchen, die Zeitreihen zu einer zusammenzufassen?

  • Oder sollte ich nur zwei verschiedene neuronale Netze verwenden? Und wenn dieser letzte Ansatz richtig ist, wenn die Anzahl der Zeitreihen zunimmt, wäre das nicht zu computerintensiv?

Antworten:


10

Multivariate Zeitreihen sind ein aktives Forschungsthema, zu dem Sie in jüngster Zeit zahlreiche Artikel finden werden.

Um Ihre Fragen zu beantworten, können Sie eine einzelne RNN verwenden. Sie können für jeden Zeitschritt einen Wert eingeben. Nichts hindert Sie daran, bei jedem Zeitschritt einen weiteren Wert hinzuzufügen (wenn Ihr Sensor synchronisiert ist). Ihr Modell wird dann lernen, wie man mit einer zweidimensionalen Zeitreihe klassifiziert.

Sie überprüfen diesen Blog . In Ihrem Fall unterscheidet sich nur die Ausgabe.

Was die beiden letzten Punkte betrifft, ist das Zusammenfassen der Zeitreihen zu einem riskant, da Sie möglicherweise wichtige Informationen während des Vorgangs verlieren. Schließlich besteht der Hauptnachteil Ihres letzten Punktes darin, dass Sie für die endgültige Klassifizierung keine mögliche Korrelation zwischen den beiden Zeitreihen verwenden können.


Wenn Sie mehrere Zeitreihen verwenden, wie reagiert das Netzwerk, wenn Sie aus irgendeinem Grund für Probe1 5 Reihen haben, für Probe2 4 (möglicherweise, weil Sie keine Daten vom letzten Sensor haben). Ist es notwendig, dass, wenn Sie mit 5 Serien beginnen, es immer 5 sein sollte? Sollten Sie eine 5. Zeitreihe für sample2 mit gefälschten gemittelten Daten einschließen, um alle 5 zu haben?
Ploo

1
na ja, es gibt verschiedene Ansätze für fehlende Daten. Ich würde Ihnen empfehlen, den Wert 0 zu verwenden, wenn Sie keine Werte haben. Es wird oft verwendet, wenn wir nicht die gesamte Folge X_t haben, aber dennoch eine Folge der Länge t eingeben müssen. Es wird als Auffüllen bezeichnet, wenn Sie mehr darüber erfahren möchten.
Daerken
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.