Schritt 2: Daten vorbereiten
Sobald Ihnen Rohdaten zur Verfügung stehen, müssen Sie sich mit Komplikationen wie fehlenden Daten befassen und sicherstellen, dass Sie für die Prognosemodelle Daten vorbereiten, die die beabsichtigte Interpretation am besten erfassen.
Umgang mit fehlenden Daten
Bei realen Prognoseproblemen kommt es häufig vor, dass in den Rohdaten Werte fehlen. Fehlt in einer Zeitreihe ein Wert, so bedeutet das, dass der wahre entsprechende Wert zu jedem Zeitpunkt mit der angegebenen Häufigkeit für die weitere Verarbeitung nicht verfügbar ist. Werte können aus mehreren Gründen als fehlend markiert werden.
Es kann vorkommen, dass Werte fehlen, weil es keine Transaktionen gab, oder weil bei der Messung Fehler gemacht wurden (z. B. weil ein Dienst, der bestimmte Daten überwacht hat, nicht richtig funktioniert hat oder weil die Messung nicht richtig durchgeführt werden konnte). Das Hauptbeispiel für einen solchen Fall in der Einzelhandelsfallstudie ist ein Fehlbestand in der Nachfrageprognose, denn das bedeutet, dass die Nachfrage an diesem Tag nicht dem Umsatz entspricht.
Ähnliches kann in Cloud-Computing-Szenarien vorkommen, wenn ein Dienst ein Limit erreicht hat (z. B. alle Amazon EC2
Fehlende Werte können auch mithilfe von Komponenten zur Bearbeitung von Features eingefügt werden. Auf diese Weise kann sichergestellt werden, dass die Zeitreihe genauso lang ist wie das Padding. Bei ausreichender Prävalenz können fehlende Werte die Genauigkeit eines Modells signifikant beeinflussen.
Beispiel 1
Füllen ist der Prozess des Hinzufügens standardisierter Werte zu fehlenden Einträgen in Ihrem Dataset. Die folgende Abbildung veranschaulicht eine Reihe von Methoden, die Amazon Forecast zum Behandeln fehlender Werte bietet: Vorfüllen, mittlere Füllung, Nachfüllen und zukünftige Füllung – für Element 2 in einem Dataset mit drei Elementen.
Amazon Forecast unterstützt Füllmethoden für Zielzeitreihen und verwandte Zeitreihen. Das globale Startdatum ist das früheste Startdatum der Startdaten aller in Ihrem Dataset enthaltenen Elemente. Im folgenden Beispiel wird das globale Startdatum für Element 1 angezeigt. Ähnlich wird das globale Enddatum als das späteste Enddatum der Zeitreihe für alle Elemente festgelegt. Das gilt für Element 2.
Beim Vorfüllen werden alle Werte vom Beginn der jeweiligen Zeitreihe bis zum globalen Startdatum ausgefüllt. Zum Zeitpunkt der Veröffentlichung dieses Dokuments aktiviert Amazon Forecast kein Vorfüllen und erlaubt, dass alle Zeitreihen zu unterschiedlichen Zeitpunkten beginnen. Mittlere Füllung bezeichnet Werte, die in der Mitte der Zeitreihe ausgefüllt wurden (z. B. zwischen dem Start- und dem Enddatum der Elemente). Beim Nachfüllen werden Werte vom letzten Datum dieser Zeitreihe bis zum globalen Enddatum ausgefüllt.
Für die Zielzeitreihe befolgt die Methode der mittleren Füllung und die Nachfüllmethode eine Standardfülllogik NULL. Die zukünftige Füllung (nur für verwandte Zeitreihen) füllt alle fehlenden Werte zwischen dem globalen Enddatum der Artikel und dem vom Kunden angegebenen Prognosehorizont aus. Zukünftige Werte sind für die Verwendung des verwandten Zeitreihen-Datasets mit Prophet und DeePar+ erforderlich. Für die Verwendung mit CNN-QR sind sie optional.
Amazon-Forecast-Methoden für den Umgang mit Werten
In der vorherigen Abbildung bezeichnet das globale Startdatum das früheste Startdatum für die Startdaten aller Elemente, und das globale Enddatum bezeichnet das späteste Enddatum für die Enddaten aller Elemente. Der Prognosehorizont ist der Zeitraum, in dem Forecast Prognosen für den Zielwert bereitstellt.
Dies ist ein gängiges Einzelhandelsszenario, das für Transaktionsdaten für verfügbare Artikel einen Null-Umsatz darstellt. Diese Werte werden als echte Nullen behandelt und in der Komponente zur Kennzahlbewertung verwendet. Amazon Forecast ermöglicht es dem Benutzer, tatsächlich fehlende Werte zu identifizieren und sie als NaN (Not a Number) zu codieren, damit die Algorithmen sie verarbeiten können. In diesem Whitepaper wird als Nächstes untersucht, worin sich diese beiden Fälle unterscheiden und wann sie jeweils nützlich sind.
In der Einzelhandelsfallstudie unterscheidet sich die Information, dass ein Einzelhändler null Einheiten eines verfügbaren Artikels verkauft hat, von der Information, dass null Einheiten eines nicht verfügbaren Artikels verkauft wurden, und zwar entweder in den Zeiträumen, in denen er nicht existiert hat (z. B. vor seiner Markteinführung oder nach seiner Abschaffung), oder in Zeiträumen, in denen er existiert hat (z. B. als er teilweise vergriffen war oder als für diesen Zeitraum keine Verkaufsdaten aufgezeichnet wurden). Im ersten Fall wird die Standardfüllung NULL angewandt. Im zweiten Fall werden für den als fehlend markierten Wert zusätzliche Informationen übermittelt, obwohl der entsprechende Zielwert typischerweise Null ist. Es empfiehlt sich, die Information darüber, dass Daten gefehlt haben, aufzubewahren und diese nicht zu löschen. Im folgenden Beispiel wird veranschaulicht, warum es wichtig ist, Informationen aufzubewahren.
Amazon Forecast unterstützt zusätzliche Fülllogiken für Wert, Mittelwert, Median, Minimum und Maximum. Für die verwandte Zeitreihe (z. B. Preis oder Werbeaktion) wurden für die mittlere Füllung, das Nachfüllen oder die zukünftige Füllung keine Standardfülllogiken angegeben, da die korrekte Logik für fehlende Werte je nach Attributtyp und Anwendungsfall variiert. Die Fülllogik, die für verwandte Zeitreihen unterstützt wird, umfasst Null, Wert, Mittelwert, Median, Minimum und Maximum.
Um fehlende Werte auszufüllen, geben Sie die zu implementierenden Füllarten an, wenn Sie den Vorgang CreatePredictor aufrufen. Die Fülllogik wird inFeaturizationMethod-Objekten definiert. Um beispielsweise einen Wert zu codieren, der nicht den Null-Umsatz eines nicht verfügbaren Produkts in der Zielzeitreihe darstellt, markieren Sie einen Wert als wirklich fehlend, indem Sie den Fülltyp auf NaN setzen. Im Gegensatz zur Null-Füllung werden die als NaN kodierten Werte als wirklich fehlend behandelt und in der Komponente zur Kennzahlbewertung nicht verwendet.
Die Auswirkung der Füllung mit 0 im Vergleich zur Füllung mit NaN auf die Prognosen für denselben Artikel
In der vorherigen Abbildung (linke Grafik) sind die Werte links von der vertikalen schwarzen Linie mit Nullen gefüllt, was zu einer Unterprognose führt (rechts von der vertikalen schwarzen Linie). In der rechten Grafik sind diese Werte als NaN gekennzeichnet, was zu einer richtigen Prognose führt.
Beispiel 2
Die vorherige Abbildung veranschaulicht, wie wichtig es ist, fehlende Werte bei einem linearen Zustandsraummodell wie ARIMA oder ETS korrekt zu behandeln. Es stellt die Nachfrageprognose für einen Artikel dar, der teilweise vergriffen ist. Die Trainingsregion ist in der linken Grafik grün markiert, der Vorhersagebereich ist im rechten Feld rot markiert und das echte Ziel ist schwarz markiert. Die roten Linien bzw. der schattierte Bereich repräsentieren die Median-, p10- und p90-Prognosen. Die vergriffenen Artikel (80 % der Daten) sind unten in Rot dargestellt. Im linken Diagramm wurden die Werte für vergriffene Artikel ignoriert und mit 0 ausgefüllt.
Infolgedessen gehen die Prognosemodelle davon aus, dass viele Nullen vorhergesagt werden müssen und die Prognosen daher zu niedrig sind. Im rechten Diagramm werden die Fehlbestandsbereiche als tatsächlich fehlend gekennzeichnet, weshalb die Nachfrage in der Region, in der die Artikel vergriffen sind, ungewiss wird. Da die fehlenden Werte für die vergriffenen Artikel entsprechend mit NaN ausgefüllt wurden, sehen Sie in diesem Diagramm im Prognosebereich keine Unterprognose. Amazon Forecast füllt diese Datenlücken aus und erleichtert Ihnen den korrekten Umgang mit fehlenden Daten, ohne dass Sie alle Eingabedaten explizit ändern müssen.
Konzepte der Featurisierung und verwandte Zeitreihen
Amazon Forecast ermöglicht es Benutzern, verwandte Daten einzugeben, um die Genauigkeit bestimmter unterstützter Prognosemodelle zu verbessern. Bei diesen Daten kann es sich um zwei Typen von Daten handeln: verwandte Zeitreihen oder statische Elementmetadaten.
Anmerkung
Metadaten und verwandte Daten werden im Bereich des Machine Learning als Features und in der Statistik als Kovariaten bezeichnet.
Verwandte Zeitreihen sind Zeitreihen, die in gewissem Maße mit dem Zielwert korrelieren und die der Prognose des Zielwerts eine gewisse statistische Aussagekraft verleihen sollten, da sie eine intuitive Erklärung bieten (ein Beispiel finden Sie unter Amazon Forecast: Vorhersage von Zeitreihen in großem Maßstab
In Amazon Forecast können Sie zwei Arten verwandter Zeitreihen hinzufügen: historische Zeitreihen und zukunftsgerichtete Zeitreihen. Historisch verwandte Zeitreihen enthalten Datenpunkte bis zum Prognosehorizont und keine zukünftigen Datenpunkte innerhalb des Prognosehorizonts. Zukunftsgerichtete Zeitreihen enthalten Datenpunkte bis zum und innerhalb des Prognosehorizonts.
Verschiedene Ansätze zur Verwendung verwandter Zeitreihen mit Amazon Forecast
Beispiel 3
Die folgende Abbildung zeigt ein Beispiel dafür, wie verwandte Zeitreihen verwendet werden können, um die zukünftige Nachfrage nach einem beliebten Buch vorherzusagen. Die blaue Linie stellt den Bedarf in der Zielzeitreihe dar. Der Preis wird als grüne Linie dargestellt. Die vertikale Linie stellt das Startdatum der Prognose dar und die Prognosen für die beiden Quantile werden rechts von der vertikalen Linie angezeigt.
In diesem Beispiel wird eine zukunftsgerichtete Zeitreihe verwendet, die mit der Zielzeitreihe in puncto Prognosegranularität übereinstimmt und zu allen (oder den meisten) Zeitpunkten in der Zukunft bekannt ist, und zwar im Bereich vom Startdatum der Prognose bis zum Startdatum der Prognose, inkrementiert um den Prognosehorizont (Prognoseenddatum).
Die folgende Abbildung zeigt außerdem, dass der Preis ein passendes Feature ist, da Sie Korrelationen zwischen einem Preisrückgang und eine Umsatzsteigerung bei dem Produkt erkennen können. Verwandte Zeitreihen können Amazon Forecast über eine separate CSV-Datei zur Verfügung gestellt werden, die die Artikel-SKU, den Zeitstempel und die verwandten Zeitreihenwerte (in diesem Fall den Preis) enthält.
Amazon Forecast unterstützt Aggregationsmethoden wie Durchschnitt und Summierung für Zielzeitreihen, nicht jedoch für verwandte Zeitreihen. Zum Beispiel macht es wenig Sinn, einen Tagespreis mit einem Wochenpreis zu summieren. Dasselbe gilt für tägliche Werbeaktionen.
Amazon Forecast kann automatisch Informationen zu Wetter und Feiertagen in ein Modell integrieren, indem es integrierte Feature-Datasets einbezieht (sieheSupplementaryFeature). Wetterinformationen und Feiertage können die Nachfrage im Einzelhandel erheblich beeinflussen.
Der Umsatz eines bestimmten Artikels (blau, links neben der vertikalen roten Linie)
Artikelmetadaten, auch als kategoriale Variablen bekannt, sind weitere hilfreiche Features, die in Amazon Forecast eingegeben werden können (ein Beispiel finden Sie unter Amazon Forecast: Vorhersage von Zeitreihen in großem Maßstab