Hyperparamètres DeepAR - Amazon SageMaker

Hyperparamètres DeepAR

Nom du paramètre Description
context_length

Le nombre de points temporels fournis au modèle avant de procéder à la prévision. La valeur de ce paramètre doit être à peu près identique à prediction_length. Comme le modèle reçoit également les entrées décalées de la cible, context_length peut être nettement plus petit que la saisonnalité classique. Par exemple, une série chronologique quotidienne peut avoir une saisonnalité annuelle. Le modèle inclut automatiquement un décalage d'un an. La longueur du contexte peut donc être plus courte qu'un an. Les valeurs de décalage sélectionnées par le modèle dépendent de la fréquence des séries chronologiques. Par exemple, les valeurs de décalage pour la fréquence quotidienne sont la semaine précédente, 2 semaines, 3 semaines, 4 semaines et un an.

Obligatoire

Valeurs valides : nombre entier positif

epochs

Nombre maximal de passages sur les données d'entraînement. La valeur optimale dépend de la taille des données et du taux d'apprentissage. Voir aussi early_stopping_patience. Les valeurs standard vont de 10 à 1000.

Obligatoire

Valeurs valides : nombre entier positif

prediction_length

Le nombre d'étapes temporelles que le modèle est entraîné pour prévoir, également appelé la période de prévision. Le modèle entraîné génère toujours des prévisions de cette durée. Il ne peut pas générer de prévisions sur plus longtemps. La période prediction_length est fixée lorsqu'un modèle est entraîné et elle ne pourra pas être modifiée ultérieurement.

Obligatoire

Valeurs valides : nombre entier positif

time_freq

Granularité de la série chronologique dans l'ensemble de données. Utilisez time_freq pour sélectionner les décalages et fonctions de date. Le modèle prend en charge les fréquences de base suivantes. Il prend également en charge plusieurs de ces fréquences de base. Par exemple, 5min spécifie une fréquence de 5 minutes.

  • M : tous les mois

  • W : toutes les semaines

  • D : tous les jours

  • H : toutes les heures

  • min : toutes les minutes

Obligatoire

Valeurs valides : un nombre entier suivi de M, WDH ou de min. Par exemple, 5min.

cardinality

Lorsque vous utilisez les caractéristiques catégorielles (cat), cardinality est un tableau spécifiant le nombre de catégories (groupes) par caractéristique catégorielle. Définissez ce paramètre sur auto afin de déduire la cardinalité des données. Le mode auto fonctionne également lorsque aucune caractéristique catégorielle n'est utilisée dans l'ensemble de données. Il s'agit de la valeur recommandée pour le paramètre.

Définissez la cardinalité sur ignore afin de forcer DeepAR à ne pas utiliser les caractéristiques catégorielles, même si elles sont présentes dans les données.

Pour valider les données supplémentaires, il est possible de définir explicitement ce paramètre sur la valeur réelle. Par exemple, si deux caractéristiques catégorielles sont fournies, la première ayant 2 valeurs possibles et la deuxième 3 valeurs possibles, définissez cette option sur [2, 3].

Pour plus d'informations sur l'utilisation des caractéristiques catégorielles, consultez la section relative aux données sur la page de documentation principale de DeepAR.

Facultatif

Valeurs valides : auto, ignore, tableau de nombres entiers positifs, chaîne vide

Valeur par défaut: auto

dropout_rate

Le taux d'abandon à utiliser lors de l'entraînement. Le modèle utilise la régularisation de la méthode zoneout. Pour chaque itération, un sous-ensemble aléatoire des neurones masqués n'est pas mis à jour. Les valeurs habituelles sont inférieures à 0,2.

Facultatif

Valeurs valides : Float

Valeur par défaut : 0.1

early_stopping_patience

Si ce paramètre est défini, l'entraînement s'arrête en l'absence de progrès au sein du nombre spécifié pour epochs. Le modèle qui a la plus faible perte est renvoyé en tant que modèle définitif.

Facultatif

Valeurs valides : nombre entier

embedding_dimension

Taille du vecteur d'intégration appris par caractéristique catégorielle (la même valeur est utilisée pour toutes les caractéristiques catégorielles).

Le modèle DeepAR peut apprendre des schémas de séries chronologiques au niveau du groupe lorsqu'une fonction de regroupement par catégorie est fournie. Pour ce faire, le modèle apprend un vecteur d'insertion de taille embedding_dimension pour chaque groupe et capture les propriétés communes à toutes les séries chronologiques de ce groupe. Une plus grande embedding_dimension autorise le modèle à capturer des schémas plus complexes. Cependant, comme l'augmentation de embedding_dimension augmente le nombre de paramètres du modèle, des données d'entraînement plus nombreuses sont nécessaires pour apprendre ces paramètres. Les valeurs habituelles pour ce paramètre sont situées entre 10 et 100.

Facultatif

Valeurs valides : nombre entier positif

Valeur par défaut : 10

learning_rate

Le taux d'apprentissage utilisé dans l'entraînement. Les valeurs standard vont de 1e-4 à 1e-1.

Facultatif

Valeurs valides : Float

Valeur par défaut : 1e-3

likelihood

Le modèle génère une prévision probabiliste, et peut fournir des quantiles de la distribution et renvoyer des échantillons. En fonction de vos données, sélectionnez une probabilité appropriée (modèle de bruit) qui est utilisée pour les estimations d'incertitude. Les probabilités suivantes peuvent être sélectionnées :

  • gaussian (gaussien) : s'emploie pour les données à valeurs réelles.

  • beta (bêta) : s'emploie pour les cibles à valeurs réelles comprises entre 0 et 1, inclus.

  • negative binomial (binomial négatif) : s'emploie pour les données de comptage (entiers non négatifs).

  • student-T (T de Student) : une autre solution pour les données à valeurs réelles qui fonctionne bien avec les données transmises en paquets.

  • deterministic-L1 (L1 déterministe) : une fonction de perte qui n'évalue pas l'incertitude et apprend uniquement une prévision de points.

Facultatif

Valeurs valides : l'une des valeurs gaussian, beta, negative-binomial, student-T ou deterministic-L1.

Valeur par défaut: student-T

mini_batch_size

La taille des mini-lots utilisés au cours de l'entraînement. Les valeurs standard vont de 32 à 512.

Facultatif

Valeurs valides : nombre entier positif

Valeur par défaut : 128

num_cells

Le nombre de cellules à utiliser dans chaque couche masquée du réseau RNN. Les valeurs standard vont de 30 à 100.

Facultatif

Valeurs valides : nombre entier positif

Valeur par défaut : 40

num_dynamic_feat

Nombre de variables dynamic_feat fournies dans les données. Définissez ce paramètre sur auto afin de déduire le nombre de caractéristiques dynamiques des données. Le mode auto fonctionne également lorsque aucune caractéristique dynamique n'est utilisée dans l'ensemble de données. Il s'agit de la valeur recommandée pour le paramètre.

Définissez num_dynamic_feat sur ignore afin de forcer DeepAR à ne pas utiliser les caractéristiques dynamiques, même si elles sont présentes dans les données.

Pour valider les données supplémentaires, il est possible de définir explicitement ce paramètre sur la valeur de nombre entier réelle. Par exemple, si deux caractéristiques dynamiques sont fournies, définissez cette valeur sur 2.

Facultatif

Valeurs valides : auto, ignore, nombre entier positif ou chaîne vide

Valeur par défaut: auto

num_eval_samples

Nombre d'échantillons utilisés par série chronologique lors du calcul des métriques de précision de test. Ce paramètre n'a aucun effet sur l'entraînement ou sur le modèle définitif. En particulier, le modèle peut être interrogé avec un nombre d'échantillons différent. Ce paramètre affecte uniquement les scores de précision signalés sur le canal de test après l'entraînement. Des valeurs plus petites permettent d'accélérer l'évaluation, mais les scores d'évaluation sont alors généralement plus médiocres et plus incertains. En cas d'évaluation avec des quantiles plus élevés, par exemple 0,95, il peut être important d'augmenter le nombre d'échantillons d'évaluation.

Facultatif

Valeurs valides : nombre entier

Valeur par défaut : 100

num_layers

Nombre de couches masquées du réseau RNN. Les valeurs standard vont de 1 à 4.

Facultatif

Valeurs valides : nombre entier positif

Valeur par défaut : 2

test_quantiles

Quantiles pour lesquels calculer la perte de quantile sur le canal de test.

Facultatif

Valeurs valides : ensemble de valeurs flottantes

Valeur par défaut : [0,1, 0,2, 0,3, 0,4, 0,5, 0,6, 0,7, 0,8, 0,9]