CNN-QR-Algorithmus - Amazon Forecast

Amazon Forecast ist für Neukunden nicht mehr verfügbar. Bestehende Kunden von Amazon Forecast können den Service weiterhin wie gewohnt nutzen. Erfahren Sie mehr“

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

CNN-QR-Algorithmus

Amazon Forecast CNN-QR, Convolutional Neural Network — Quantile Regression, ist ein proprietärer Algorithmus für maschinelles Lernen zur Prognose skalarer (eindimensionaler) Zeitreihen mithilfe kausaler neuronaler Faltungsnetzwerke (). CNNs Dieser überwachte Lernalgorithmus trainiert ein globales Modell aus einer großen Sammlung von Zeitreihen und verwendet einen Quantildecoder, um probabilistische Vorhersagen zu treffen.

Erste Schritte mit CNN-QR

Sie können einen Prädiktor mit CNN-QR auf zwei Arten trainieren:

  1. Manuelles Auswählen des CNN-QR-Algorithmus.

  2. Wählen Sie AutoML (CNN-QR ist Teil von AutoML).

Wenn Sie sich nicht sicher sind, welchen Algorithmus Sie verwenden sollen, empfehlen wir, AutoML auszuwählen. Forecast wählt CNN-QR aus, wenn dies der genaueste Algorithmus für Ihre Daten ist. Um zu überprüfen, ob CNN-QR als das genaueste Modell ausgewählt wurde, verwenden Sie entweder die DescribePredictorAPI oder wählen Sie den Prädiktornamen in der Konsole aus.

Hier sind einige wichtige Anwendungsfälle für CNN-QR:

  • Forecast mit großen und komplexen Datensätzen — CNN-QR funktioniert am besten, wenn es mit großen und komplexen Datensätzen trainiert wird. Das neuronale Netzwerk kann aus vielen Datensätzen lernen, was nützlich ist, wenn Sie über verwandte Zeitreihen und Elementmetadaten verfügen.

  • Forecast mit historischen Bezugszeitreihen — CNN-QR verlangt nicht, dass verwandte Zeitreihen Datenpunkte innerhalb des Prognosehorizonts enthalten. Diese zusätzliche Flexibilität ermöglicht es Ihnen, ein breiteres Spektrum verwandter Zeitreihen und Artikelmetadaten wie Artikelpreise, Ereignisse, Webmetriken und Produktkategorien einzubeziehen.

Wie funktioniert CNN-QR

CNN-QR ist ein sequence-to-sequence (Seq2Seq) -Modell für probabilistische Prognosen, das testet, wie gut eine Vorhersage die Dekodierungssequenz rekonstruiert, abhängig von der Kodierungssequenz.

Der Algorithmus berücksichtigt unterschiedliche Merkmale in den Kodierungs- und Dekodierungssequenzen, sodass Sie eine verwandte Zeitreihe im Encoder verwenden und sie im Decoder weglassen können (und umgekehrt). Standardmäßig sind verwandte Zeitreihen mit Datenpunkten im Prognosehorizont sowohl im Encoder als auch im Decoder enthalten. Verwandte Zeitreihen ohne Datenpunkte im Prognosehorizont werden nur im Encoder berücksichtigt.

CNN-QR führt eine Quantilregression durch, wobei ein hierarchisches kausales CNN als Extraktor für erlernbare Merkmale dient.

Um das Erlernen zeitabhängiger Muster, wie z. B. Spitzenwerte an Wochenenden, zu erleichtern, erstellt CNN-QR automatisch Feature-Zeitreihen, die auf der Granularität von Zeitreihen basieren. CNN-QR erstellt beispielsweise zwei Feature-Zeitreihen (day-of-month und) mit wöchentlicher Zeitreihenfrequenz. day-of-year Der Algorithmus verwendet diese abgeleiteten Merkmals-Zeitreihen zusammen mit den benutzerdefinierten Feature-Zeitreihen, die während des Trainings und der Inferenz bereitgestellt werden. Das folgende Beispiel zeigt eine Zielzeitreihe und zwei Features für abgeleitete Zeitreihen: ui,1,t stellt die Stunde des Tages und den Wochentag ui,2,t dar. zi,t

Bild: CNN-QR mit abgeleiteten Merkmalen für Zeitfrequenzen.

CNN-QR schließt diese Merkmals-Zeitreihen automatisch auf der Grundlage der Datenfrequenz und der Größe der Trainingsdaten ein. In der folgenden Tabelle sind die Funktionen aufgeführt, die für jede unterstützte Basiszeithäufigkeit abgeleitet werden können.

Häufigkeit der Zeitreihe Abgeleitete Funktionen
Minute minute-of-hour, hour-of-day, day-of-week, day-of-month, day-of-year
Stunde hour-of-day, day-of-week, day-of-month, day-of-year
Tag day-of-week, day-of-month, day-of-year
Woche week-of-month, week-of-year
Monat month-of-year

Während des Trainings besteht jede Zeitreihe im Trainingsdatensatz aus zwei benachbarten Kontext- und Prognosefenstern mit festen vordefinierten Längen. Dies ist in der Abbildung unten dargestellt, in der das Kontextfenster grün und das Prognosefenster blau dargestellt ist.

Sie können ein Modell verwenden, das mit einem bestimmten Trainingssatz trainiert wurde, um Vorhersagen für Zeitreihen im Trainingssatz und für andere Zeitreihen zu generieren. Der Trainingsdatensatz besteht aus einer Zielzeitreihe, die mit einer Liste verwandter Zeitreihen und Elementmetadaten verknüpft werden kann.

Die folgende Abbildung zeigt, wie dies für ein Element eines Trainingsdatensatzes funktioniert, das von i indexiert ist. Der Trainingsdatensatz besteht aus einer Zielzeitreihezi,t, und zwei zugehörigen verwandten Zeitreihen, xi,1,t undxi,2,t. Die erste zusammenhängende Zeitreihexi,1,t,, ist eine zukunftsorientierte Zeitreihe, und die zweitexi,2,t, ist eine historische Zeitreihe.

Bild: CNN-QR mit historischen und zukunftsweisenden Zeitreihen

CNN-QR lernt anhand der Zielzeitreihen und der zugehörigen Zeitreihen und generiert so Vorhersagen im Prognosefensterxi,2,t, das durch die orange Linie dargestellt wird. zi,t xi,1,t

Verwendung verwandter Daten mit CNN-QR

CNNQR unterstützt sowohl historische als auch zukunftsgerichtete verwandte Zeitreihendatensätze. Wenn Sie einen zukunftsgerichteten verwandten Zeitreihendatensatz bereitstellen, wird jeder fehlende Wert mit der future Füllmethode gefüllt. Weitere Informationen zu historischen und zukunftsbezogenen Zeitreihen finden Sie unter Verwenden verwandter Zeitreihendatensätze.

Sie können Datensätze mit Artikelmetadaten auch mit CNN-QR verwenden. Dies sind Datensätze mit statischen Informationen zu den Elementen in Ihrer Zielzeitreihe. Elementmetadaten sind besonders nützlich für Kaltstart-Prognoseszenarien, in denen nur wenige bis gar keine historischen Daten vorliegen. Weitere Informationen zu Elementmetadaten finden Sie unter Elementmetadaten.

CNN-QR-Hyperparameter

Amazon Forecast optimiert CNN-QR-Modelle für ausgewählte Hyperparameter. Wenn Sie CNN-QR manuell auswählen, haben Sie die Möglichkeit, Trainingsparameter für diese Hyperparameter einzugeben. In der folgenden Tabelle sind die einstellbaren Hyperparameter des CNN-QR-Algorithmus aufgeführt.

Name des Parameters Werte Beschreibung
context_length
Zulässige Werte

Positive Ganzzahlen

Gültiger Bereich

10 bis 500

Typische Werte

2 * ForecastHorizon bis 12 * ForecastHorizon

HPO optimierbar

Ja

Die Anzahl der Zeitpunkte, die das Modell liest, bevor Vorhersagen getroffen werden. Normalerweise hat CNN-QR höhere Werte für context_length als DeePar+, da CNN-QR keine Lags verwendet, um weitere historische Daten zu betrachten.

Wenn der Wert für außerhalb eines vordefinierten Bereichs context_length liegt, setzt CNN-QR den Standardwert automatisch auf einen entsprechenden Wert. context_length

use_related_data
Zulässige Werte

ALL

NONE

HISTORICAL

FORWARD_LOOKING

Standardwert

ALL

HPO optimierbar

Ja

Legt fest, welche Arten von verwandten Zeitreihendaten in das Modell aufgenommen werden sollen.

Wählen Sie eine von vier Optionen:

  • ALL: Schließt alle bereitgestellten zugehörigen Zeitreihen ein.

  • NONE: Schließt alle bereitgestellten verwandten Zeitreihen aus.

  • HISTORICAL: Schließt nur verwandte Zeitreihen ein, die sich nicht bis in den Prognosezeitraum erstrecken.

  • FORWARD_LOOKING: Schließt nur verwandte Zeitreihen ein, die sich bis in den Prognosehorizont erstrecken.

HISTORICALumfasst alle historischen Bezugszeitreihen und FORWARD_LOOKING schließt alle zukunftsbezogenen Zeitreihen ein. Sie können keine Teilmenge HISTORICAL oder FORWARD_LOOKING verwandte Zeitreihen auswählen.

use_item_metadata
Zulässige Werte

ALL

NONE

Standardwert

ALL

HPO optimierbar

Ja

Bestimmt, ob das Modell Elementmetadaten enthält.

Wählen Sie eine von zwei Optionen:

  • ALL: Schließt alle bereitgestellten Element-Metadaten ein.

  • NONE: Schließt alle bereitgestellten Element-Metadaten aus.

use_item_metadatabeinhaltet entweder alle bereitgestellten Elementmetadaten oder keine. Sie können keine Teilmenge der Elementmetadaten auswählen.

epochs
Zulässige Werte

Positive Ganzzahlen

Typische Werte

10 bis 1.000

Standardwert

100

HPO optimierbar

Nein

Die maximale Anzahl abgeschlossener Durchläufe durch das Trainingsdaten. Kleinere Datensätze erfordern mehr Epochen.

Bei großen Werten von ForecastHorizon und sollten Sie erwägencontext_length, die Epochen zu verringern, um die Trainingszeit zu verbessern.

Hyperparameter-Optimierung (HPO)

Hyperparameter-Optimierung (HPO) ist die Aufgabe, die optimalen Hyperparameterwerte für ein bestimmtes Lernziel auszuwählen. Mit Forecast können Sie diesen Prozess auf zwei Arten automatisieren:

  1. Wenn Sie AutoML wählen, wird HPO automatisch für CNN-QR ausgeführt.

  2. Manuelles Auswählen von CNN-QR und Einstellung. PerformHPO = TRUE

Zusätzliche zugehörige Zeitreihen- und Artikelmetadaten verbessern nicht immer die Genauigkeit Ihres CNN-QR-Modells. Wenn Sie AutoML ausführen oder HPO aktivieren, testet CNN-QR die Genauigkeit Ihres Modells mit und ohne die bereitgestellten zugehörigen Zeitreihen- und Elementmetadaten und wählt das Modell mit der höchsten Genauigkeit aus.

Amazon Forecast optimiert während des HPO automatisch die folgenden drei Hyperparameter und stellt Ihnen die endgültigen trainierten Werte zur Verfügung:

  • context_length — bestimmt, wie weit das Netzwerk in die Vergangenheit blicken kann. Der HPO-Prozess legt automatisch einen Wert fest, der context_length die Modellgenauigkeit maximiert und gleichzeitig die Trainingszeit berücksichtigt.

  • use_related_data — bestimmt, welche Formen verwandter Zeitreihendaten in Ihr Modell aufgenommen werden sollen. Der HPO-Prozess überprüft automatisch, ob Ihre zugehörigen Zeitreihendaten das Modell verbessern, und wählt die optimale Einstellung aus.

  • use_item_metadata — bestimmt, ob Elementmetadaten in Ihr Modell aufgenommen werden sollen. Der HPO-Prozess prüft automatisch, ob Ihre Elementmetadaten das Modell verbessern, und wählt die optimale Einstellung aus.

Anmerkung

Wenn use_related_data auf NONE oder HISTORICAL wenn die Holiday Zusatzfunktion ausgewählt ist, bedeutet dies, dass die Einbeziehung von Feiertagsdaten die Modellgenauigkeit nicht verbessert.

Sie können die HPO-Konfiguration für den context_length Hyperparameter festlegen, wenn Sie dies PerformHPO = TRUE bei der manuellen Auswahl vorgenommen haben. Sie können jedoch keinen Aspekt der HPO-Konfiguration ändern, wenn Sie AutoML wählen. Weitere Informationen zur HPO-Konfiguration finden Sie in der API. IntergerParameterRange

Tipps und bewährte Methoden

Vermeiden Sie große Werte für ForecastHorizon — Die Verwendung von Werten über 100 für ForecastHorizon verlängert die Trainingszeit und kann die Modellgenauigkeit verringern. Wenn Sie Prognosen für einen Zeitpunkt weiter in der Zukunft erstellen wollen, sollten Sie Daten für eine höhere Häufigkeit aggregieren. Verwenden Sie z. B. 5min statt 1min.

CNNs eine höhere Kontextlänge zulassen - Mit CNN-QR können Sie die context_length etwas höhere als die für DeePar+ einstellen, da diese in der Regel effizienter CNNs sind als. RNNs

Feature-Engineering verwandter Daten — Experimentieren Sie beim Training Ihres Modells mit verschiedenen Kombinationen aus verwandten Zeitreihen und Elementmetadaten und beurteilen Sie, ob die zusätzlichen Informationen die Genauigkeit verbessern. Verschiedene Kombinationen und Transformationen verwandter Zeitreihen und Elementmetadaten führen zu unterschiedlichen Ergebnissen.

CNN-QR prognostiziert nicht beim mittleren Quantil — Wenn Sie mean mit der CreateForecastAPI ForecastTypes auf diese Einstellung setzen, werden Prognosen stattdessen beim Medianquantil (oder) generiert. 0.5 P50