Données de séries temporelles - Amazon SageMaker

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.

Données de séries temporelles

Les données de séries chronologiques font référence aux données qui peuvent être chargées dans un cadre de données tridimensionnel. Dans le cadre, dans chaque horodatage, chaque ligne représente un enregistrement cible, et chaque enregistrement cible possède une ou plusieurs colonnes associées. Les valeurs de chaque cellule du bloc de données peuvent être de type numérique, catégoriel ou texte.

Prérequis pour les jeux de données de séries chronologiques

Avant l'analyse, effectuez les étapes de prétraitement nécessaires à la préparation de vos données, telles que le nettoyage des données ou l'ingénierie des fonctionnalités. Vous pouvez fournir un ou plusieurs jeux de données. Si vous fournissez plusieurs ensembles de données, utilisez l'une des méthodes suivantes pour les fournir à la tâche de traitement SageMaker Clarify :

  • Utilisez une configuration ProcessingInputnommée dataset ou la configuration d'analyse dataset_uri pour spécifier le jeu de données principal. Pour plus d'informationsdataset_uri, consultez la liste des paramètres dansConfigurer l'analyse.

  • Utilisez le paramètre baseline fourni dans le fichier de configuration d'analyse. Le jeu de données de référence est requis pourstatic_covariates, s'il est présent. Pour plus d'informations sur le fichier de configuration d'analyse, y compris des exemples, consultezConfigurer l'analyse.

Le tableau suivant répertorie les formats de données pris en charge, leurs extensions de fichier et les types MIME.

Format de données Extension de fichier Type MIME

item_records

json

application/json

timestamp_records

json

application/json

columns

json

application/json

Le format JSON est un format flexible qui peut représenter n'importe quel niveau de complexité de vos données structurées. Comme indiqué dans le tableau, SageMaker Clarify prend en charge item_records les formatstimestamp_records, etcolumns.

Exemples de configuration de jeux de données de séries chronologiques

Cette section explique comment définir une configuration d'analyse à l'aide de données time_series_data_config de séries chronologiques au format JSON. Supposons que vous disposiez d'un ensemble de données comportant deux éléments, chacun comportant un horodatage (t), une série chronologique cible (x), deux séries chronologiques connexes (r) et deux covariables statiques (u), comme suit :

t 1 = [0,1,2], t 2 = [2,3]

x 1 = [5,6,4], x 2 = [0,4]

r 1 = [0,1,0], r 2 1 = [1,1]

r 1 2 = [0,0,0], r 2 2 = [1,0]

u 1 1 = -1, u 2 1 = 0

u 1 2 = 1, u 2 2 = 2

Vous pouvez encoder le jeu de données time_series_data_config de trois manières différentes, selondataset_format. Les sections suivantes décrivent chaque méthode.

Configuration des données de séries chronologiques : quand dataset_format est-ce columns

L'exemple suivant utilise la columns valeur pourdataset_format. Le fichier JSON suivant représente le jeu de données précédent.

{ "ids": [1, 1, 1, 2, 2], "timestamps": [0, 1, 2, 2, 3], # t "target_ts": [5, 6, 4, 0, 4], # x "rts1": [0, 1, 0, 1, 1], # r1 "rts2": [0, 0, 0, 1, 0], # r2 "scv1": [-1, -1, -1, 0, 0], # u1 "scv2": [1, 1, 1, 2, 2], # u2 }

Notez que les identifiants des articles sont répétés dans le ids champ. La mise en œuvre correcte de time_series_data_config est illustrée comme suit :

"time_series_data_config": { "item_id": "ids", "timestamp": "timestamps", "target_time_series": "target_ts", "related_time_series": ["rts1", "rts2"], "static_covariates": ["scv1", "scv2"], "dataset_format": "columns" }

Configuration des données de séries chronologiques : quand dataset_format est-ce item_records

L'exemple suivant utilise la item_records valeur pourdataset_format. Le fichier JSON suivant représente l'ensemble de données.

[ { "id": 1, "scv1": -1, "scv2": 1, "timeseries": [ {"timestamp": 0, "target_ts": 5, "rts1": 0, "rts2": 0}, {"timestamp": 1, "target_ts": 6, "rts1": 1, "rts2": 0}, {"timestamp": 2, "target_ts": 4, "rts1": 0, "rts2": 0} ] }, { "id": 2, "scv1": 0, "scv2": 2, "timeseries": [ {"timestamp": 2, "target_ts": 0, "rts1": 1, "rts2": 1}, {"timestamp": 3, "target_ts": 4, "rts1": 1, "rts2": 0} ] } ]

Chaque élément est représenté sous la forme d'une entrée distincte dans le JSON. L'extrait suivant montre le code correspondant time_series_data_config (qui utilise JMESPath).

"time_series_data_config": { "item_id": "[*].id", "timestamp": "[*].timeseries[].timestamp", "target_time_series": "[*].timeseries[].target_ts", "related_time_series": ["[*].timeseries[].rts1", "[*].timeseries[].rts2"], "static_covariates": ["[*].scv1", "[*].scv2"], "dataset_format": "item_records" }

Configuration des données de séries chronologiques : quand dataset_format est-ce timestamp_record

L'exemple suivant utilise la timestamp_record valeur pourdataset_format. Le fichier JSON suivant représente le jeu de données précédent.

[ {"id": 1, "timestamp": 0, "target_ts": 5, "rts1": 0, "rts2": 0, "svc1": -1, "svc2": 1}, {"id": 1, "timestamp": 1, "target_ts": 6, "rts1": 1, "rts2": 0, "svc1": -1, "svc2": 1}, {"id": 1, "timestamp": 2, "target_ts": 4, "rts1": 0, "rts2": 0, "svc1": -1, "svc2": 1}, {"id": 2, "timestamp": 2, "target_ts": 0, "rts1": 1, "rts2": 1, "svc1": 0, "svc2": 2}, {"id": 2, "timestamp": 3, "target_ts": 4, "rts1": 1, "rts2": 0, "svc1": 0, "svc2": 2}, ]

Chaque entrée du JSON représente un horodatage unique et correspond à un seul élément. La mise en œuvre time_series_data_config est illustrée comme suit :

{ "item_id": "[*].id", "timestamp": "[*].timestamp", "target_time_series": "[*].target_ts", "related_time_series": ["[*].rts1"], "static_covariates": ["[*].scv1"], "dataset_format": "timestamp_records" }