Hyperparamètres IP Insights - Amazon SageMaker

Hyperparamètres IP Insights

Dans la demande CreateTransformJob, vous spécifiez l'algorithme d'entraînement. Vous pouvez aussi spécifier les hyperparamètres spécifiques à l'algorithme comme mappages chaîne/chaîne. Le tableau suivant répertorie les hyperparamètres de l'algorithme IP Insights d'Amazon SageMaker.

Nom du paramètre Description
num_entity_vectors

Nombre de représentations vectorielles d'entités (vecteurs d'intégration d'entité) à entraîner. Chaque entité de l'ensemble d'entraînement est affectée de façon aléatoire à l'un de ces vecteurs à l'aide d'une fonction de hachage. En raison des conflits de hachage, il est possible que plusieurs entités soient affectées au même vecteur. Dans ce cas, un même vecteur représenterait alors plusieurs entités. Ceci produit généralement un effet négligeable sur les performances du modèle, tant que le taux de conflits reste peu conséquent. Pour que le taux de conflits reste faible, définissez une valeur aussi élevée que possible. Cependant, la taille du modèle, et par conséquent la mémoire requise, pour l'entraînement et l'inférence est mise à l'échelle de façon linéaire avec cet hyperparamètre. Nous vous recommandons de définir cette valeur sur deux fois le nombre d'identificateurs d'entité uniques.

Obligatoire

Valeurs valides : 1 ≤ nombre entier positif ≤ 250 000 000

vector_dim

Taille des vecteurs d'intégration pour représenter les entités et les adresses IP. Plus cette valeur est élevée, plus il est possible d'encoder d'informations à l'aide de ces représentations. En pratique, la taille du modèle est mise à l'échelle de façon linéaire avec ce paramètre et limite la taille possible de la dimension. En outre, l'utilisation de représentations vectorielles trop volumineuses peut entraîner un surajustement du modèle, notamment pour les petits ensembles de données d'entraînement. Un surajustement se produit lorsqu'un modèle n'apprend aucun schéma dans les données mais mémorise de manière efficace les données d'entraînement et, par conséquent, ne peut pas généraliser correctement et donne des résultats médiocres pendant l'inférence. La valeur recommandée est 128.

Obligatoire

Valeurs valides : 4 ≤ nombre entier positif ≤ 4 096

batch_metrics_publish_interval

Intervalle (tous les X lots) auquel la fonction Apache MXNet Speedometer imprime la vitesse d'entraînement du réseau (échantillons/seconde).

Facultatif

Valeurs valides : entier positif ≥ 1

Valeur par défaut : 1,000

epochs

Nombre 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. Les valeurs standard vont de 5 à 100.

Facultatif

Valeurs valides : entier positif ≥ 1

Valeur par défaut : 10

learning_rate

Taux d'apprentissage de l'optimiseur. IP Insights utilise un optimiseur Adam reposant sur la descente de gradient. Le taux d'apprentissage contrôle efficacement le pas d'apprentissage afin de mettre à jour les paramètres du modèle à chaque itération. Si le taux d'apprentissage est trop élevé, le modèle risque de diverger car l'entraînement est susceptible de dépasser un minima. D'un autre côté, un taux d'apprentissage trop faible ralentit la convergence. Les valeurs standard vont de 1e-4 à 1e-1.

Facultatif

Valeurs valides : 1e-6 ≤ valeur flottante ≤ 10

Valeur par défaut : 0.001

mini_batch_size

Nombre d'exemples dans chaque mini-lot. La procédure d'entraînement traite les données dans les mini-lots. La valeur optimale dépend du nombre d'identificateurs de compte uniques dans l'ensemble de données. En général, plus la valeur de mini_batch_size est élevée, plus l'entraînement est rapide et plus il y a de combinaisons possibles d'échantillons négatifs réorganisés. Toutefois, si la valeur de mini_batch_size est élevée, l'entraînement est plus susceptible de converger vers un minimum local médiocre et de produire des résultats d'inférence relativement mauvais.

Facultatif

Valeurs valides : 1 ≤ nombre entier positif ≤ 500 000

Valeur par défaut : 10,000

num_ip_encoder_layers

Nombre de couches entièrement connectées utilisées pour encoder l'intégration de l'adresse IP. Plus le nombre de couches est élevé, plus le modèle peut capturer les schémas parmi les adresses IP. Toutefois, l'utilisation d'un grand nombre de couches augmente le risque d'un surajustement.

Facultatif

Valeurs valides : 0 ≤ nombre entier positif ≤ 100

Valeur par défaut : 1

random_negative_sampling_rate

Nombre d'échantillons négatifs aléatoires, R, à générer par échantillon en entrée. La procédure d'entraînement s'appuie sur les échantillons négatifs afin d'empêcher les représentations vectorielles du modèle de se réduire en un seul point. L'échantillonnage négatif aléatoire génère R adresses IP aléatoires pour chaque compte d'entrée dans le mini-lot. La somme de random_negative_sampling_rate (R) et de shuffled_negative_sampling_rate (S) doit être comprise dans l'intervalle : 1 ≤ R + S ≤ 500.

Facultatif

Valeurs valides : 0 ≤ nombre entier positif ≤ 500

Valeur par défaut : 1

shuffled_negative_sampling_rate

Nombre d'échantillons négatifs réorganisés, S, à générer par échantillon en entrée. Dans certains cas, il peut être utile d'utiliser des échantillons négatifs plus réalistes collectés de façon aléatoire à partir des données d'entraînement. Ce type d'échantillonnage négatif s'obtient en réorganisant les données dans un mini-lot. Un échantillonnage négatif réorganisé génère S adresses IP négatives en réorganisant les paires d'adresses IP et de comptes dans un mini-lot. La somme de random_negative_sampling_rate (R) et de shuffled_negative_sampling_rate (S) doit être comprise dans l'intervalle : 1 ≤ R + S ≤ 500.

Facultatif

Valeurs valides : 0 ≤ nombre entier positif ≤ 500

Valeur par défaut : 1

weight_decay

Coefficient de dégradation de pondération. Ce paramètre ajoute un facteur de régularisation L2, qui est requis pour empêcher le modèle de surajuster les données d'entraînement.

Facultatif

Valeurs valides : 0.0 ≤ valeur flottante ≤ 10.0

Valeur par défaut : 0.00001