Configurando o treinamento automático - Amazon Personalize

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Configurando o treinamento automático

Importante

Depois de criar uma solução, você não pode alterar sua configuração. Por padrão, todas as novas soluções usam treinamento automático. Com o treinamento automático, você incorre em custos de treinamento enquanto sua solução está ativa. Para evitar custos desnecessários, certifique-se de excluir a solução quando terminar. Para obter informações sobre custos de treinamento, consulte os preços do Amazon Personalize.

Ao criar uma solução, você pode configurar se a solução usa treinamento automático. Você também pode configurar a frequência do treinamento. Por exemplo, você pode configurar a solução para criar uma nova versão da solução a cada cinco dias.

Por padrão, todas as novas soluções usam treinamento automático para criar uma nova versão da solução a cada 7 dias. O treinamento automático ocorre somente se você importou dados de interação em massa ou em tempo real desde o último treinamento. Isso inclui interações de itens ou, para soluções que usam a receita Next-Best-Action, dados de interações de ações. O treinamento automático continua até que você exclua a solução.

Recomendamos que você use o treinamento automático. Isso facilita a manutenção da sua solução. Ele remove o treinamento manual necessário para que a solução aprenda com seus dados mais recentes. Sem treinamento automático, você deve criar manualmente novas versões da solução para que a solução aprenda com seus dados mais recentes. Isso pode resultar em recomendações obsoletas e em uma taxa de conversão mais baixa. Para obter mais informações sobre a manutenção das recomendações do Amazon Personalize, consulte. Manter a relevância da recomendação

Você pode configurar o treinamento automático com o console Amazon Personalize, AWS Command Line Interface (AWS CLI) ou AWS SDKs. Para obter as etapas de configuração do treinamento automático com o console, consulteCriar uma solução (console).

Depois de criar a solução, registre o ARN da solução para uso futuro. Com o treinamento automático, a criação da versão da solução começa dentro de um período após a solução estar ATIVA. Se você criar manualmente uma versão da solução em uma hora, a solução pulará o primeiro treinamento automático. Após o início do treinamento, você pode obter o Amazon Resource Name (ARN) da versão da solução com a operação ListSolutionVersions API. Para obter seu status, use a operação DescribeSolutionVersion API.

Quando a versão da solução estiver ATIVA, você estará pronto para usá-la para obter recomendações. A forma como você usa uma versão ativa da solução depende de como você recebe recomendações:

  • Para recomendações em tempo real, você implanta uma versão da solução ATIVA com uma campanha do Amazon Personalize. Você usa a campanha para obter recomendações para seus usuários. Consulte Criar uma campanha.

  • Para recomendações em lote, você especifica uma versão da solução ATIVA ao criar um trabalho de inferência em lote ou um trabalho de segmento em lote. Consulte Recomendações em lote e segmentos de usuários (recursos personalizados).

Diretrizes e requisitos

A seguir estão as diretrizes e os requisitos para o treinamento automático:

  • O treinamento automático ocorre somente se você importou dados de interação em massa ou em tempo real desde o último treinamento. Isso inclui interações de itens ou, para soluções que usam a receita Next-Best-Action, dados de interações de ações.

  • Cada treinamento considera todos os dados do seu grupo de conjuntos de dados que você inclui no treinamento. Para obter informações sobre como configurar as colunas usadas no treinamento, consulteConfigurar colunas usadas durante o treinamento.

  • Você ainda pode criar versões da solução manualmente.

  • O treinamento automático começa dentro de uma hora após a ativação da solução. Se você criar manualmente uma versão da solução em uma hora, a solução pulará o primeiro treinamento automático.

  • O agendamento do treinamento é baseado na data de início do treinamento. Por exemplo, se sua primeira versão da solução começar a treinar às 19h e você usar o treinamento semanal, a próxima versão da solução começará a treinar uma semana depois, às 19h.

  • Para todas as receitas, recomendamos pelo menos uma frequência de treinamento semanal. Você pode especificar uma frequência de treinamento entre 1 e 30 dias. O padrão é a cada 7 dias.

    • Se você usa User-Personalization-v2, User-Personalization ou Next-Best-Action, a solução é atualizada automaticamente para considerar novos itens ou ações para recomendações. Atualizações automáticas não são o mesmo que treinamento automático. Uma atualização automática não cria uma versão completamente nova da solução e o modelo não aprende com seus dados mais recentes. Para manter sua solução, sua frequência de treinamento ainda deve ser pelo menos semanal. Para obter mais informações sobre atualizações automáticas, incluindo diretrizes e requisitos adicionais, consulteAtualizações automáticas.

    • Se você usa o Trending-Now, o Amazon Personalize identifica automaticamente os itens mais populares em seus dados de interações em um intervalo de tempo configurável. O Trending-Now pode recomendar itens adicionados desde o último treinamento por meio de dados de interações em massa ou de streaming. Sua frequência de treinamento ainda deve ser pelo menos semanal. Para ter mais informações, consulte Fórmula Trending-Now.

    • Se você não usa uma receita com atualizações automáticas ou a receita Trending-Now, o Amazon Personalize considera novos itens para recomendações somente após o próximo treinamento. Por exemplo, se você usar a receita de itens semelhantes e adicionar novos itens diariamente, precisará usar uma frequência diária de treinamento automático para que esses itens apareçam nas recomendações no mesmo dia.

Configurando o treinamento automático ()AWS CLI

O código a seguir mostra como criar uma solução que cria automaticamente uma versão da solução a cada cinco dias. Para desativar o treinamento automático, perform-auto-training defina comofalse.

Para alterar a frequência do treinamento, você pode modificar schedulingExpression o. noautoTrainingConfig. A expressão deve estar no rate(value unit) formato. Para o valor, especifique um número entre 1 e 30. Para a unidade, especifique day oudays.

Para obter uma explicação completa do create-solution comando, consulteCriar uma solução (AWS CLI).

aws personalize create-solution \ --name solution name \ --dataset-group-arn dataset group ARN \ --recipe-arn recipe ARN \ --perform-auto-training \ --solution-config "{\"autoTrainingConfig\": {\"schedulingExpression\": \"rate(5 days)\"}}"

Configurando o treinamento automático (SDKs)

O código a seguir mostra como criar uma solução com treinamento automático com os AWS SDKs. A solução cria automaticamente uma versão da solução a cada cinco dias. Para desativar o treinamento automático, performAutoTraining defina comofalse.

Para alterar a frequência do treinamento, você pode modificar schedulingExpression o. noautoTrainingConfig. A expressão deve estar no rate(value unit) formato. Para o valor, especifique um número entre 1 e 30. Para a unidade, especifique day oudays.

Para obter uma explicação completa da operação CreateSolution da API, consulteCriação de uma solução (AWS SDKs).

SDK for Python (Boto3)
import boto3 personalize = boto3.client('personalize') create_solution_response = personalize.create_solution( name = 'solution name', recipeArn = 'recipe ARN', datasetGroupArn = 'dataset group ARN', performAutoTraining = True, solutionConfig = { "autoTrainingConfig": { "schedulingExpression": "rate(5 days)" } } ) solution_arn = create_solution_response['solutionArn'] print('solution_arn: ', solution_arn)
SDK for JavaScript v3
import { CreateSolutionCommand, PersonalizeClient, } from "@aws-sdk/client-personalize"; // create client const personalizeClient = new PersonalizeClient({ region: "REGION" }); // set the solution parameters export const solutionParam = { datasetGroupArn: "DATASET_GROUP_ARN" /* required */, recipeArn: "RECIPE_ARN" /* required */, name: "SOLUTION_NAME" /* required */, performAutoTraining: true /* optional, default is true */, solutionConfig: { autoTrainingConfig: { schedulingExpression: "rate(5 days)" /* optional, default is every 7 days */, }, }, }; export const run = async () => { try { const response = await personalizeClient.send( new CreateSolutionCommand(solutionParam) ); console.log("Success", response); return response; // For unit tests. } catch (err) { console.log("Error", err); } }; run();