Fonctions de transformation - Amazon Forecast

Amazon Forecast n'est plus disponible pour les nouveaux clients. Les clients existants d'Amazon Forecast peuvent continuer à utiliser le service normalement. En savoir plus »

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Fonctions de transformation

Une fonction de transformation est un ensemble d'opérations qui permettent de sélectionner et de modifier les lignes d'une série chronologique associée. Vous sélectionnez les lignes souhaitées à l'aide d'une opération de condition. Vous modifiez ensuite les lignes à l'aide d'une opération de transformation. Toutes les conditions sont associées à une AND opération, ce qui signifie que toutes les conditions doivent être vraies pour que la transformation soit appliquée. Les transformations sont appliquées dans l'ordre dans lequel elles sont répertoriées.

Lorsque vous créez une prévision hypothétique, utilisez le générateur de fonctions de transformation pour spécifier les conditions et les transformations que vous souhaitez appliquer. L'image ci-dessous illustre cette fonctionnalité.

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

Dans la section surlignée, la price colonne est multipliée par 0,90 (soit une réduction de 10 %) dans le magasin de tacoma (c'est-à-dire de Tacoma, dans l'État de Washington) pour les articles colorés. blue Pour ce faire, Amazon Forecast crée d'abord un sous-ensemble de la série chronologique associée à la ligne de base afin de ne contenir store que les lignes correspondantes. tacoma

Ce sous-ensemble est encore réduit pour inclure uniquement les lignes de color ce sous-ensemble. blue Enfin, toutes les valeurs de la price colonne sont multipliées par 0,90 pour créer une nouvelle série chronologique connexe à utiliser dans les prévisions hypothétiques.

Amazon Forecast prend en charge les conditions suivantes :

  • EQUALS- La valeur de la colonne est identique à la valeur fournie dans la condition.

  • NOT_EQUALS- La valeur de la colonne n'est pas la même que celle fournie dans la condition.

  • LESS_THAN- La valeur de la colonne est inférieure à la valeur fournie dans la condition.

  • GREATER_THAN- La valeur de la colonne est supérieure à la valeur fournie dans la condition.

Amazon Forecast prend en charge les actions suivantes :

  • ADD- Ajoute la valeur fournie à toutes les lignes de la colonne.

  • SUBTRACT- Soustrait la valeur fournie de toutes les lignes de la colonne.

  • MULTIPLY- Multiplie toutes les lignes de la colonne par la valeur fournie.

  • DIVIDE- Divise toutes les lignes de la colonne par la valeur fournie.

Vous trouverez ci-dessous des exemples de la manière dont vous pouvez spécifier une transformation de série chronologique à l'aide duSDK.

Example 1

Cet exemple applique une réduction de 10 % à tous les articles de la boutique de Seattle. Notez que « Ville » est une dimension de prévision.

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

Cet exemple applique une réduction de 10 % sur tous les articles de la catégorie « électronique ». Notez que « product_category » est une métadonnée d'article.

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

Cet exemple applique une majoration de 20 % à l'BOA21314Kitem_id spécifique.

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

Cet exemple ajoute 1$ à tous les articles des boutiques de Seattle et 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

Cet exemple soustrait 1$ de tous les articles à Seattle au mois de septembre 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

Dans cet exemple, le prix est d'abord multiplié par 10, puis 5$ sont soustraits du prix. Notez que les actions sont appliquées dans l'ordre dans lequel elles sont déclarées.

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

Cet exemple crée un ensemble vide, de sorte que l'action n'est appliquée à aucune série chronologique. Ce code essaie de modifier le prix de tous les articles dans les magasins de Seattle et Bellevue. Étant donné que les conditions sont associées à l'ANDopération et qu'un magasin ne peut exister que dans une seule ville, le résultat est un ensemble vide. Par conséquent, l'action n'est pas appliquée.

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

Pour un exemple d'application d'une condition à plusieurs attributs, reportez-vous à l'exemple 4.

Example 8

Les conditions de transformation qui utilisent un horodatage s'appliquent aux données alignées aux limites, et non aux données brutes. Par exemple, vous saisissez vos données toutes les heures et les prévisions quotidiennes. Dans ce cas, Forecast aligne les horodatages sur le jour et 2020-12-31 01:00:00 est donc aligné sur. 2020-12-31 00:00:00 Ce code créera un ensemble vide car il ne spécifie pas l'horodatage à l'horodatage aligné sur les limites.

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