Funzioni di trasformazione - Amazon Forecast

Amazon Forecast non è più disponibile per i nuovi clienti. I clienti esistenti di Amazon Forecast possono continuare a utilizzare il servizio normalmente. Scopri di più»

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Funzioni di trasformazione

Una funzione di trasformazione è un insieme di operazioni che selezionano e modificano le righe in una serie temporale correlata. Le righe desiderate vengono selezionate con un'operazione di condizione. Quindi modificate le righe con un'operazione di trasformazione. Tutte le condizioni vengono unite a un'ANDoperazione, il che significa che tutte le condizioni devono essere vere affinché la trasformazione venga applicata. Le trasformazioni vengono applicate nell'ordine in cui sono elencate.

Quando create una previsione ipotetica, utilizzate il generatore di funzioni di trasformazione per specificare le condizioni e le trasformazioni da applicare. L'immagine seguente illustra questa funzionalità.

Transformation function builder interface with options to modify price and stock count.

Nella sezione evidenziata, la price colonna viene moltiplicata per 0,90 (ovvero uno sconto del 10%) presso il negozio di tacoma (ad esempio, Tacoma, Washington) per gli articoli colorati. blue A tale scopo, Amazon Forecast crea innanzitutto un sottoinsieme delle serie temporali relative alla baseline contenente solo le righe corrispondenti. store tacoma

Tale sottoinsieme viene ulteriormente ridotto per includere solo le righe uguali. color blue Infine, tutti i valori della price colonna vengono moltiplicati per 0,90 per creare una nuova serie temporale correlata da utilizzare nella previsione what-if.

Amazon Forecast supporta le seguenti condizioni:

  • EQUALS- Il valore nella colonna è lo stesso del valore fornito nella condizione.

  • NOT_EQUALS- Il valore nella colonna non è lo stesso del valore fornito nella condizione.

  • LESS_THAN- Il valore nella colonna è inferiore al valore fornito nella condizione.

  • GREATER_THAN- Il valore nella colonna è maggiore del valore fornito nella condizione.

Amazon Forecast supporta le seguenti azioni:

  • ADD- Aggiunge il valore fornito a tutte le righe della colonna.

  • SUBTRACT- Sottrae il valore fornito da tutte le righe della colonna.

  • MULTIPLY- Moltiplica tutte le righe della colonna per il valore fornito.

  • DIVIDE- Divide tutte le righe della colonna per il valore fornito.

Di seguito sono riportati alcuni esempi di come è possibile specificare una trasformazione di serie temporali utilizzando. SDK

Example 1

Questo esempio applica uno sconto del 10% a tutti gli articoli nel negozio di Seattle. Tieni presente che «Città» è una dimensione di previsione.

TimeSeriesTransformations=[ { "Action": { "AttributeName": "price", "Operation": "MULTIPLY", "Value": 0.90 }, "TimeSeriesConditions": [ { "AttributeName": "city", "AttributeValue": "seattle", "Condition": "EQUALS" } ] } ]
Example 2

Questo esempio applica uno sconto del 10% su tutti gli articoli della categoria «elettronica». Nota che «product_category» è un metadato di un articolo.

TimeSeriesTransformations=[ { "Action": { "AttributeName": "price", "Operation": "MULTIPLY", "Value": 0.90 }, "TimeSeriesConditions": [ { "AttributeName": "product_category", "AttributeValue": "electronics", "Condition": "EQUALS" } ] } ]
Example 3

Questo esempio applica un markup del 20% sullo specifico item_id. BOA21314K

TimeSeriesTransformations=[ { "Action": { "AttributeName": "price", "Operation": "MULTIPLY", "Value": 1.20 }, "TimeSeriesConditions": [ { "AttributeName": "item_id", "AttributeValue": "BOA21314K", "Condition": "EQUALS" } ] } ]
Example 4

Questo esempio aggiunge $1 a tutti gli articoli nei negozi di Seattle e Bellevue.

TimeSeriesTransformations=[ { "Action": { "AttributeName": "price", "Operation": "ADD", "Value": 1.0 }, "TimeSeriesConditions": [ { "AttributeName": "city", "AttributeValue": "seattle", "Condition": "EQUALS" } ] }, { "Action": { "AttributeName": "price", "Operation": "ADD", "Value": 1.0 }, "TimeSeriesConditions": [ { "AttributeName": "city", "AttributeValue": "bellevue", "Condition": "EQUALS" } ] } ]
Example 5

Questo esempio sottrae 1$ da tutti gli articoli presenti a Seattle nel mese di settembre 2022.

TimeSeriesTransformations=[ { "Action": { "AttributeName": "price", "Operation": "SUBTRACT", "Value": 1.0 }, "TimeSeriesConditions": [ { "AttributeName": "city", "AttributeValue": "seattle", "Condition": "EQUALS" }, { "AttributeName": "timestamp", "AttributeValue": "2022-08-31 00:00:00", "Condition": "GREATER_THAN" }, { "AttributeName": "timestamp", "AttributeValue": "2022-10-01 00:00:00", "Condition": "LESS_THAN" } ] } ]
Example 6

In questo esempio, il prezzo viene prima moltiplicato per 10, quindi vengono sottratti 5 USD dal prezzo. Tieni presente che le azioni vengono applicate nell'ordine in cui sono dichiarate.

TimeSeriesTransformations=[ { "Action": { "AttributeName": "price", "Operation": "MULTIPLY", "Value": 10.0 }, "TimeSeriesConditions": [ { "AttributeName": "city", "AttributeValue": "seattle", "Condition": "EQUALS" } ] }, { "Action": { "AttributeName": "price", "Operation": "SUBTRACT", "Value": 5.0 }, "TimeSeriesConditions": [ { "AttributeName": "city", "AttributeValue": "seattle", "Condition": "EQUALS" } ] } ]
Example 7

Questo esempio crea un set vuoto, quindi l'azione non viene applicata a nessuna serie temporale. Questo codice cerca di modificare il prezzo di tutti gli articoli nei negozi di Seattle e Bellevue. Poiché all'ANDoperazione vengono aggiunte delle condizioni e un negozio può esistere in una sola città, i risultati sono un insieme vuoto. Pertanto, l'azione non viene applicata.

TimeSeriesTransformations=[ { "Action": { "AttributeName": "price", "Operation": "MULTIPLY", "Value": 10.0 }, "TimeSeriesConditions": [ { "AttributeName": "city", "AttributeValue": "seattle", "Condition": "EQUALS" }, { "AttributeName": "city", "AttributeValue": "bellevue", "Condition": "EQUALS" }, ] } ]

Per un esempio di come applicare una condizione a più attributi, vedi Esempio 4.

Example 8

Le condizioni di trasformazione che utilizzano un timestamp si applicano ai dati allineati ai confini, non ai dati grezzi. Ad esempio, inserisci i dati ogni ora e le previsioni ogni giorno. In questo caso, Forecast allinea i timestamp al giorno, quindi 2020-12-31 01:00:00 viene allineato a. 2020-12-31 00:00:00 Questo codice creerà un set vuoto perché non specifica il timestamp in corrispondenza del timestamp allineato ai confini.

TimeSeriesTransformations=[ { "Action": { "AttributeName": "price", "Operation": "MULTIPLY", "Value": 10.0 }, "TimeSeriesConditions": [ { "AttributeName": "timestamp", "AttributeValue": "2020-12-31 01:00:00", "Condition": "EQUALS" }, ] } ]