Creación de recomendadores de dominios en Amazon Personalize - Amazon Personalize

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Creación de recomendadores de dominios en Amazon Personalize

Puedes crear recomendaciones con la consola Amazon Personalize, AWS Command Line Interface (AWS CLI), o AWS SDKs. A continuación, se incluyen pasos detallados para crear recomendaciones con la consola Amazon Personalize y ejemplos de código que muestran cómo crear una recomendación con solo los campos obligatorios.

Creación de generadores de recomendaciones (consola)

importante

Un valor elevado de minRecommendationRequestsPerSecond aumentará su factura. Le recomendamos empezar con 1 para minRecommendationRequestsPerSecond (el valor predeterminado). Realiza un seguimiento de tu consumo mediante CloudWatch las métricas de Amazon y minRecommendationRequestsPerSecond auméntalas según sea necesario. Para obtener más información, consulte Solicitudes de recomendación mínimas por segundo y escalado automático.

Cree generadores de recomendaciones para cada uno de sus casos de uso con la consola de Amazon Personalize de la siguiente manera. Si acaba de crear su grupo de conjuntos de datos de dominios y ya se encuentra en la página Información general, vaya al paso 3.

Para crear generadores de recomendaciones
  1. Abre la consola Amazon Personalize en https://console.aws.amazon.com/personalize/casa e inicia sesión en tu cuenta.

  2. En la página Grupos de conjuntos de datos, elija su grupo de conjuntos de datos de dominio.

  3. En el paso 3, elija Usar recomendadores de <nombre de dominio> y, después, Crear recomendadores.

  4. En la página Elegir casos de uso, elija los casos de uso en los que desea crear generadores de recomendaciones y asigne a cada uno un Nombre de generador de recomendaciones. Amazon Personalize crea un generador de recomendaciones para cada caso de uso que elija. Los casos de uso disponibles dependen de su dominio. Para obtener información acerca de la elección de un caso de uso, consulte Elección de un caso de uso.

  5. Elija Siguiente.

  6. En la página Configuración avanzada, configure cada uno de los generadores de recomendaciones en función de las necesidades de su empresa:

    • Para cada conjunto de datos utilizado por el caso de uso del generador de recomendaciones, puede elegir las columnas que Amazon Personalize tiene en cuenta a la hora de entrenar los modelos que respaldan su generador de recomendaciones. De forma predeterminada, Amazon Personalize usa todas las columnas que se pueden usar durante el entrenamiento. Para obtener más información, consulte Configuración de las columnas utilizadas al crear un recomendador de dominios de Amazon Personalize.

    • Puede modificar Solicitudes de recomendación mínimas por segundo para especificar una nueva capacidad mínima de solicitudes para su generador de recomendaciones. Un valor elevado de minRecommendationRequestsPerSecond aumentará su factura. Le recomendamos empezar con 1 (el valor predeterminado). Realiza un seguimiento de tu consumo mediante CloudWatch las métricas de Amazon y minRecommendationRequestsPerSecond auméntalas según sea necesario. Para obtener más información, consulte Solicitudes de recomendación mínimas por segundo y escalado automático.

    • Si quiere poder incluir metadatos de los conjuntos de datos de elementos en las recomendaciones, seleccione Devolver metadatos de los elementos en los resultados de las recomendaciones. Si está habilitada, puede especificar las columnas del conjunto de datos de elementos en su solicitud de recomendaciones o clasificación personalizada. Amazon Personalize devuelve estos datos para cada elemento en la respuesta a la recomendación.

      Para habilitar los metadatos, debe tener un conjunto de datos de elementos con una columna de metadatos.

    • Para nuestros casos de Top picks for your o Recommended for you, si lo desea, puede realizar cambios en la configuración de exploración. La exploración implica probar diferentes recomendaciones de elementos para saber cómo responden los usuarios a elementos con muy pocos datos de interacción. Utilice los siguientes campos para configurar la exploración:

      • Énfasis en la exploración de los elementos menos relevantes (ponderación de la exploración): configure cuánto explorar. Especifique un valor decimal entre 0 y 1. El valor predeterminado es 0,3. Cuanto más se acerque el valor a 1, mayor será la exploración. Con una mayor exploración, las recomendaciones incluyen más elementos con menos datos de interacciones de elementos o relevancia en función del comportamiento anterior. En cero, no se realiza ninguna exploración y las recomendaciones se basan en los datos actuales (relevancia).

      • Límite de antigüedad del elemento de exploración: especifique la antigüedad máxima del elemento en días desde la última interacción entre todos los elementos del conjunto de datos de interacciones de elementos. Esto define el alcance de la exploración del elemento en función de su antigüedad. Amazon Personalize determina la antigüedad del elemento en función de su marca de tiempo de creación o, si faltan los datos de esa marca, de los datos de interacciones de elementos. Para obtener más información sobre cómo Amazon Personalize determina la antigüedad del elemento, consulte Datos de la marca de tiempo de creación.

        Para aumentar el número de elementos que Amazon Personalize considera durante la exploración, indique un valor superior. El mínimo es de 1 día y el valor predeterminado es de 30 días. Las recomendaciones pueden incluir elementos con una antigüedad superior al límite de antigüedad que especifique. Esto se debe a que estos elementos son relevantes para el usuario y la exploración no los identificó.

    • Para Etiquetas, si lo desea, añada cualquier etiqueta. Para obtener más información acerca del etiquetado de recursos de Amazon Personalize, consulte Etiquetado de recursos de Amazon Personalize.

  7. Si quiere crear recomendadores para cada uno de sus casos de uso, elija Crear recomendadores.

    Puede supervisar el estado de cada uno de los generadores de recomendaciones en la página Generadores de recomendaciones. Cuando el estado de su generador de recomendaciones sea Activo, podrás usarlo en tu aplicación para obtener recomendaciones.

Crear un recomendante (AWS CLI)

Utilice lo siguiente AWS CLI código para crear un recomendante para un caso de uso de dominio. Ejecute este código para cada uno de sus casos de uso de dominio. PararecipeArn, proporciona el nombre del recurso de Amazon (ARN) para tu caso de uso. Los casos de uso disponibles dependen de su dominio. Para obtener una lista de casos de uso y sus correspondientes, ARNs consulteElección de un caso de uso.

aws personalize create-recommender \ --name recommender name \ --dataset-group-arn dataset group ARN \ --recipe-arn recipe ARN

Crear un recomendante (AWS SDKs)

Cree un generador de recomendaciones para un caso de uso de dominio con el siguiente código: Dé un nombre a su recomendante e indique el nombre de recurso de Amazon (ARN) de su grupo de conjuntos de datos de dominio. PararecipeArn, proporciona el ARN para tu caso de uso. Ejecute este código para cada uno de sus casos de uso de dominio. Los casos de uso disponibles dependen de su dominio. Para obtener una lista de los casos de usoARNs, sus requisitos y sus requisitos, consulteElección de un caso de uso.

SDK for Python (Boto3)
import boto3 personalize = boto3.client('personalize') create_recommender_response = personalize.create_recommender( name = 'recommender name', recipeArn = 'recipe ARN', datasetGroupArn = 'dataset group ARN' ) recommender_arn = create_recommender_response['recommenderArn'] print('Recommender ARN:' + recommender_arn)
SDK for Java 2.x
public static String createRecommender(PersonalizeClient personalizeClient, String name, String datasetGroupArn, String recipeArn) { long maxTime = 0; long waitInMilliseconds = 30 * 1000; // 30 seconds String recommenderStatus = ""; try { CreateRecommenderRequest createRecommenderRequest = CreateRecommenderRequest.builder() .datasetGroupArn(datasetGroupArn) .name(name) .recipeArn(recipeArn) .build(); CreateRecommenderResponse recommenderResponse = personalizeClient .createRecommender(createRecommenderRequest); String recommenderArn = recommenderResponse.recommenderArn(); System.out.println("The recommender ARN is " + recommenderArn); DescribeRecommenderRequest describeRecommenderRequest = DescribeRecommenderRequest.builder() .recommenderArn(recommenderArn) .build(); maxTime = Instant.now().getEpochSecond() + 3 * 60 * 60; while (Instant.now().getEpochSecond() < maxTime) { recommenderStatus = personalizeClient.describeRecommender(describeRecommenderRequest).recommender() .status(); System.out.println("Recommender status: " + recommenderStatus); if (recommenderStatus.equals("ACTIVE") || recommenderStatus.equals("CREATE FAILED")) { break; } try { Thread.sleep(waitInMilliseconds); } catch (InterruptedException e) { System.out.println(e.getMessage()); } } return recommenderArn; } catch (PersonalizeException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } return ""; }
SDK for JavaScript v3
// Get service clients and commands using ES6 syntax. import { CreateRecommenderCommand, PersonalizeClient } from "@aws-sdk/client-personalize"; // create personalizeClient const personalizeClient = new PersonalizeClient({ region: "REGION" }); // set the recommender's parameters export const createRecommenderParam = { name: "RECOMMENDER_NAME", /* required */ recipeArn: "RECIPE_ARN", /* required */ datasetGroupArn: "DATASET_GROUP_ARN" /* required */ } export const run = async () => { try { const response = await personalizeClient.send(new CreateRecommenderCommand(createRecommenderParam)); console.log("Success", response); return response; // For unit tests. } catch (err) { console.log("Error", err); } }; run();