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.
Obtenir des segments d'utilisateurs à l'aide d'une tâche de segmentation par lots
Si vous avez utilisé une SEGMENTATION recette USER _, vous pouvez créer des tâches de segmentation par lots pour obtenir des segments d'utilisateurs avec la version de votre solution. Chaque segment d'utilisateurs est trié par ordre décroissant en fonction de la probabilité que chaque utilisateur interagisse avec les articles de votre inventaire. Selon la recette, vos données d'entrée doivent être une liste d'éléments (Recette Item-Affinity) ou d'attributs d'articles (Recette Item-Attribut-Affinity) au JSON format. Vous pouvez créer une tâche de segmentation par lots à l'aide de la console Amazon Personalize, du AWS Command Line Interface (AWS CLI) ou AWS SDKs.
Lorsque vous créez une tâche de segmentation par lots, vous spécifiez les chemins Amazon S3 vers vos emplacements d'entrée et de sortie. Amazon S3 est basé sur un préfixe. Si vous fournissez un préfixe pour l'emplacement des données d'entrée, Amazon Personalize utilise tous les fichiers correspondant à ce préfixe comme données d'entrée. Par exemple, si vous fournissez s3://amzn-s3-demo-bucket/folderName
un dossier dont le chemin est défini par le nom de compartiments3://amzn-s3-demo-bucket/folderName_test
, Amazon Personalize utilise tous les fichiers des deux dossiers comme données d'entrée. Pour utiliser uniquement les fichiers d'un dossier spécifique comme données d'entrée, terminez le chemin Amazon S3 par un délimiteur de préfixe, tel que /
: s3://amzn-s3-demo-bucket/folderName/
Pour plus d'informations sur la façon dont Amazon S3 organise les objets, consultez Organisation, listage et utilisation de vos objets.
Rubriques
Création d'une tâche de segmentation par lots (console)
Une fois que vous avez terminéPréparation des données d'entrée pour les recommandations par lots, vous êtes prêt à créer une tâche de segmentation par lots. Cette procédure suppose que vous avez déjà créé une solution et une version de solution (modèle entraîné) avec une SEGEMENTATION recette USER _.
Pour créer une tâche de segmentation par lots (console)
-
Ouvrez la console Amazon Personalize https://console.aws.amazon.com/personalize/chez
vous et connectez-vous à votre compte. -
Sur la page du groupe de jeux de données, choisissez votre groupe de jeux de données.
-
Choisissez les tâches de segmentation par lots dans le volet de navigation, puis choisissez Créer une tâche de segmentation par lots.
-
Dans les détails de la tâche de segment par lots, pour Nom de la tâche de segment par lots, spécifiez un nom pour votre tâche de segment par lots.
-
Pour Solution, choisissez la solution, puis choisissez l'ID de version de solution que vous souhaitez utiliser pour générer les recommandations. Vous pouvez créer des tâches de segmentation par lots uniquement si vous avez utilisé une SEGEMENTATION recette USER _.
-
Pour Nombre d'utilisateurs, spécifiez éventuellement le nombre d'utilisateurs qu'Amazon Personalize génère pour chaque segment d'utilisateurs. La valeur par défaut est 25. Le maximum est de 5 millions.
-
Pour Source d'entrée, spécifiez le chemin Amazon S3 vers votre fichier d'entrée ou utilisez le bouton Parcourir S3 pour choisir votre compartiment Amazon S3.
Utilisez la syntaxe suivante :
s3://amzn-s3-demo-bucket/<folder name>/<input JSON file name>.json
Vos données d'entrée doivent être au format adapté à la recette utilisée par votre solution. Pour des exemples de données d'entrée, voirExemples JSON d'entrée et de sortie de tâches de segmentation par lots.
-
Pour Destination de sortie, spécifiez le chemin d'accès à votre emplacement de sortie ou utilisez le bouton Parcourir S3 pour choisir votre compartiment Amazon S3. Nous vous recommandons d'utiliser un autre emplacement pour vos données de sortie (soit un dossier, soit un autre compartiment Amazon S3).
Utilisez la syntaxe suivante :
s3://amzn-s3-demo-bucket/<output folder name>/
-
Pour IAMle rôle, choisissez l'une des options suivantes :
-
Choisissez Créer et utiliser un nouveau rôle de service et entrez le nom du rôle de service pour créer un nouveau rôle, ou
-
Si vous avez déjà créé un rôle avec les autorisations appropriées, choisissez Utiliser un rôle de service existant et choisissez le IAM rôle.
Le rôle que vous utilisez doit avoir un accès en lecture et en écriture à vos compartiments Amazon S3 d'entrée et de sortie respectivement.
-
-
Pour la configuration du filtre, choisissez éventuellement un filtre pour appliquer un filtre aux segments d'utilisateurs. Si votre filtre utilise des paramètres d'espace réservé, assurez-vous que les valeurs des paramètres sont incluses dans votre saisieJSON. Pour de plus amples informations, veuillez consulter Fournir des valeurs de filtre dans votre entrée JSON.
-
Pour les balises, ajoutez éventuellement des balises. Pour plus d'informations sur le balisage des ressources Amazon Personalize, consultezMarquer les ressources Amazon Personalize.
-
Choisissez Créer une tâche segmentée par lots. La création des tâches de segment par lots commence et la page Tâches de segment par lots apparaît avec la section détaillée des tâches de segment par lots affichée.
-
Lorsque le statut de la tâche de segmentation par lots passe à Active, vous pouvez récupérer le résultat de la tâche dans le compartiment de sortie Amazon S3 désigné. Le nom du fichier de sortie est au format
.input-name
.out
Création d'une tâche de segmentation par lots (AWS CLI)
Une fois que vous avez terminéPréparation des données d'entrée pour les recommandations par lots, vous êtes prêt à créer une tâche de segmentation par lots à l'aide du create-batch-segment-job
code suivant. Spécifiez un nom de tâche, remplacez-le Solution version ARN
par le nom de ressource Amazon (ARN) de la version de votre solution et remplacez le IAM service role ARN
par le rôle ARN de IAM service que vous avez créé pour Amazon Personalize lors de la configuration. Ce rôle doit avoir un accès en lecture et en écriture à vos compartiments Amazon S3 d'entrée et de sortie respectivement. Pour num-results
spécifier le nombre d'utilisateurs que vous souhaitez qu'Amazon Personalize prédise pour chaque ligne de données d'entrée. La valeur par défaut est 25. Le maximum est de 5 millions. Fournissez éventuellement un filter-arn
pour filtrer les segments d'utilisateurs. Si votre filtre utilise des paramètres d'espace réservé, assurez-vous que les valeurs des paramètres sont incluses dans votre saisieJSON. Pour de plus amples informations, veuillez consulter Filtrer les recommandations par lots et les segments d'utilisateurs (ressources personnalisées).
Remplacez S3 input path
et S3 output path
par le chemin Amazon S3 menant à votre fichier d'entrée et à votre emplacement de sortie. Nous vous recommandons d'utiliser un autre emplacement pour vos données de sortie (soit un dossier, soit un autre compartiment Amazon S3). Utilisez la syntaxe suivante pour les emplacements d'entrée et de sortie : s3://amzn-s3-demo-bucket/<folder name>/<input JSON file name>.json
ets3://amzn-s3-demo-bucket/<output folder name>/
.
aws personalize create-batch-segment-job \ --job-name
Job name
\ --solution-version-arnSolution version ARN
\ --num-resultsThe number of predicted users
\ --filter-arnFilter ARN
\ --job-input s3DataSource={path=s3://S3 input path
} \ --job-output s3DataDestination={path=s3://S3 output path
} \ --role-arnIAM service role ARN
{ "batchSegmentJobArn": "arn:aws:personalize:us-west-2:acct-id:batch-segment-job/batchSegmentJobName" }
Création d'une tâche de segmentation par lots (AWS SDKs)
Une fois que vous avez terminéPréparation des données d'entrée pour les recommandations par lots, vous êtes prêt à créer une tâche de segmentation par lots avec l'CreateBatchSegmentJob
opération. Le code suivant montre comment créer une tâche de segmentation par lots. Donnez un nom à la tâche, spécifiez le nom de ressource Amazon (ARN) de la version de solution à utiliser, spécifiez le nom ARN correspondant à votre IAM rôle Amazon Personalize et spécifiez le chemin Amazon S3 vers votre fichier d'entrée et votre emplacement de sortie. Votre rôle IAM de service doit disposer d'un accès en lecture et en écriture à vos compartiments Amazon S3 d'entrée et de sortie respectivement.
Nous vous recommandons d'utiliser un autre emplacement pour vos données de sortie (soit un dossier, soit un autre compartiment Amazon S3). Utilisez la syntaxe suivante pour les emplacements d'entrée et de sortie : s3://amzn-s3-demo-bucket/<folder name>/<input JSON file name>.json
ets3://amzn-s3-demo-bucket/<output folder name>/
.
Spécifiez numResults
le nombre d'utilisateurs que vous souhaitez qu'Amazon Personalize prédise pour chaque ligne de données d'entrée. La valeur par défaut est 25. Le maximum est de 5 millions. Fournissez éventuellement un filterArn
pour filtrer les segments d'utilisateurs. Si votre filtre utilise des paramètres d'espace réservé, assurez-vous que les valeurs des paramètres sont incluses dans votre saisieJSON. Pour de plus amples informations, veuillez consulter Filtrer les recommandations par lots et les segments d'utilisateurs (ressources personnalisées).
Le traitement de la tâche par lots peut prendre un certain temps. Vous pouvez vérifier l'état d'une tâche en appelant DescribeBatchSegmentJob et en transmettant un batchSegmentJobArn
comme paramètre d'entrée. Vous pouvez également répertorier toutes les tâches de segmentation par lots Amazon Personalize de votre AWS environnement en appelantListBatchSegmentJobs.