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á.
Otimização de uma solução com configuração de eventos
Importante
Por padrão, todas as novas soluções usam o treinamento automático. Com o treinamento automático, você acumula custos de treinamento enquanto sua solução está ativa. Ao terminar, você poderá atualizar a solução para desativar o treinamento automático e evitar custos desnecessários. Para obter mais informações sobre os custos dos treinamentos, consulte Preços do Amazon Personalize
Se você usar a fórmula User-Personalization-v2 ou Personalized-Ranking-v2, poderá otimizar uma solução do Amazon Personalize com uma configuração de eventos.
Com fórmulas de recomendação de itens, o objetivo principal do Amazon Personalize é prever os itens mais relevantes para os usuários com base em dados históricos e de interações com itens em tempo real. No entanto, a interação pode conter informações adicionais, como se um usuário clicou ou comprou um determinado item. Você pode gravar isso gravando o tipo do evento (Tipo de evento e dados de valor do evento). Ao configurar uma solução, você pode fazer com que a solução dê pesos diferentes aos diferentes tipos de eventos de interação. Por exemplo, você pode configurar uma solução para dar mais peso aos eventos de purchase do que aos eventos de click.
Para que uma solução dê pesos diferentes a diferentes tipos de eventos, especifique os tipos de eventos e os pesos correspondentes na configuração de eventos da solução. Além disso, você pode definir um limite de valor do evento para excluir interações com o valor do evento abaixo desse limite. Por exemplo, se seus dados de EVENT_VALUE para eventos com um EVENT_TYPE DE watch forem a porcentagem do vídeo que um usuário assistiu e você definir o limite do valor do evento como 0,5 e o tipo de evento como watch, o Amazon Personalize treinará o modelo usando somente eventos de interação de watch com EVENT_VALUE maior ou igual a 0,5.
Os pesos associados a tipos de eventos determinarão sua importância. Um tipo de evento com peso maior fará com que o modelo treinado provavelmente recomende um item que interagiria com esse tipo de evento. Por exemplo, se você especificou “compra” com um peso maior do que “clique” e o modelo descobriu que um usuário clicaria no item B ou compraria o item C com seu histórico de interações, o modelo classificará o item C como mais alto.
Para otimizar uma solução com configuração de eventos, crie uma nova solução com a fórmula User-Personalization-v2 ou Personalized-Ranking-v2 e especifique uma configuração de eventos. Também é possível atualizar uma solução existente (Atualizar uma solução para alterar a configuração automática de treinamento) com uma configuração de eventos.
Você pode usar o console Amazon Personalize, AWS Command Line Interface (AWS CLI) ou AWS SDKs. Para obter informações sobre o uso do console do Amazon Personalize, consulte Criar uma solução (console).
Tópicos
Diretrizes e requisitos
Veja abaixo as diretrizes e os requisitos para configuração de eventos:
-
Para configurar pesos para diferentes tipos de eventos, seu conjunto de dados de interações com itens deve ter uma coluna EVENT_TYPE e, se desejar, uma coluna EVENT_VALUE.
-
Você pode especificar uma lista de parâmetros de eventos na configuração. Inclua todos os tipos de eventos que você deseja considerar para a criação da solução. É possível especificar no máximo 10 tipos de eventos diferentes.
-
Você pode especificar o peso do evento para cada tipo de evento. O peso do evento deve estar entre 0,0 e 1,0. Somente a proporção de pesos entre os tipos de eventos é importante. Por exemplo, definir um tipo de evento “compra” com peso 0,3 e um tipo de evento “clique” com peso 0,1 terá o mesmo efeito que definir “compra” com peso 0,6 e “clique” com peso 0,2.
-
Você pode atualizar a configuração do evento para uma solução existente usando a operação da API UpdateSolution.
Medição do desempenho com a configuração do peso do evento
Quando você cria uma versão da solução (treina um modelo) para uma solução com uma configuração de eventos, o Amazon Personalize gera uma métrica normalized_discounted_cumulative_gain_with_event_weights_at_k. A pontuação para normalized_discounted_cumulative_gain_with_event_weights_at_k indica o desempenho da versão da solução, considerando o peso dos eventos que você definiu para cada tipo de evento.
É semelhante ao ganho cumulativo normalizado (NDCG) em K, mas a recompensa para cada previsão correta será ponderada. Em contraste, no NDCG original em K, cada previsão correta terá um peso de 1. Por exemplo, com “compra” de peso 0,3 e “clique” de peso 0,1, prever corretamente o item “compra” receberá uma recompensa de 1,5, enquanto prever o item “clique” receberá uma recompensa de 0,5.
Para ter mais informações sobre essas métricas, consulte Avaliar uma versão da solução do Amazon Personalize com métricas.
Otimizar uma solução (AWS CLI)
Você pode otimizar com a configuração de eventos com a fórmula User-Personalization-v2 ou Personalized-Ranking-v2.
Para otimizar uma solução com configuração de eventos usando a AWS CLI, crie uma nova solução e especifique os detalhes da configuração de eventos usando a chave eventsConfig no objeto solutionConfig. A eventsConfig tem uma chave eventParametersList sob a qual você pode especificar até 10 eventParameters. Cada eventParameter tem os seguintes campos:
-
eventType: especifique o tipo de evento que você deseja considerar para a criação da solução.
-
eventValueThreshold: especifique o limite do valor do evento. Somente eventos com valor maior que ou igual a esse limite serão considerados para a criação da solução.
-
weight: especifique o peso para cada tipo de evento. Um peso maior significa maior importância do tipo de evento para a solução criada.
Veja a seguir um exemplo do comando create-solution da AWS CLI. Substitua solution name, dataset group arn e recipe arn pelos seus próprios valores.
aws personalize create-solution \ --namesolution name\ --dataset-group-arndataset group arn\ --recipe-arnrecipe arn\ --solution-config "{\"eventsConfig\":{\"eventParametersList\":[{\"eventType\":\"Purchase\", \"eventValueThreshold\":0.1, \"weight\":0.3}, {\"eventType\":\"Click\", \"weight\":0.1}]}"
Quando sua solução estiver pronta, crie uma nova versão da solução (para obter um exemplo de comando, consulte Criar uma solução (AWS CLI)). Depois de criar uma versão da solução, você pode visualizar o desempenho da otimização com as métricas da versão da solução. Consulte Medir a performance de otimizar.
Otimizar uma solução (AWS SDKs)
Você pode otimizar com a configuração de eventos com a fórmula User-Personalization-v2 ou Personalized-Ranking-v2.
Para otimizar uma solução com configuração de eventos usando SDKs da AWS, crie uma nova solução e especifique os detalhes da configuração de eventos usando a chave eventsConfig no objeto solutionConfig. A eventsConfig tem uma chave eventParametersList sob a qual você pode especificar até 10 eventParameters. Cada eventParameter tem os seguintes campos:
-
eventType: especifique o tipo de evento que você deseja considerar para a criação da solução.
-
eventValueThreshold: especifique o limite do valor do evento. Somente eventos com valor maior que ou igual a esse limite serão considerados para a criação da solução.
-
weight: especifique o peso para cada tipo de evento. Um peso maior significa maior importância do tipo de evento para a solução criada.
Quando sua solução estiver pronta, crie uma nova versão da solução (para obter um exemplo de comando, consulte Criar uma solução (SDKs da AWS)). Depois de criar uma versão da solução, você pode visualizar o desempenho da otimização com as métricas da versão da solução. Consulte Medir a performance de otimizar.