Onde e como usar o Personalizador

Importante

A partir de 20 de setembro de 2023, você não poderá criar novos recursos do Personalizador. O serviço de Personalizador será aposentado no dia 1º de outubro de 2026.

Use o Personalizer em qualquer situação em que seu aplicativo precise selecionar a ação correta (conteúdo) para exibir - a fim de tornar a experiência melhor, alcançar melhores resultados de negócios ou melhorar a produtividade.

O personalizador usa o aprendizado de reforço para selecionar qual ação (conteúdo) mostrar ao usuário. A seleção pode variar drasticamente dependendo da quantidade, qualidade e distribuição dos dados enviados para o serviço.

Exemplos de casos de uso do Personalizer

  • Esclarecimento de intenção ou desambiguação: ajude seus usuários a ter uma experiência melhor quando sua intenção não é clara, fornecendo uma opção personalizada.
  • Sugestões padrão para menus & opções: peça ao bot que sugira o item mais provável de forma personalizada como primeiro passo, em vez de apresentar um menu impessoal ou uma lista de alternativas.
  • Bot traits & tone: para bots que podem variar de tom, verbosidade e estilo de escrita, considere variar essas características.
  • Notificação e conteúdo do alerta: decida qual texto usar para alertas a fim de envolver mais os usuários.
  • Notificação e tempo de alerta: tenha um aprendizado personalizado de quando enviar notificações aos usuários para envolvê-los mais.

Expectativas necessárias para usar o Personalizer

Você pode aplicar o Personalizador em situações em que você atende ou pode implementar as seguintes diretrizes.

Diretriz Explicação
Objetivo de negócio Você tem uma meta comercial ou de usabilidade para seu aplicativo.
Conteúdo Você tem um lugar em seu aplicativo onde tomar uma decisão contextual do que mostrar aos usuários melhorará esse objetivo.
Quantidade de conteúdo Você tem menos de 50 ações para classificar por chamada.
Dados agregados A melhor escolha pode e deve ser aprendida com o comportamento coletivo do usuário e a pontuação total de recompensa.
Uso ético O uso do aprendizado de máquina para personalização segue as diretrizes de uso responsável e as escolhas que você escolheu.
Melhor opção individual A decisão contextual pode ser expressa como a classificação da melhor opção (ação) a partir de um conjunto limitado de escolhas.
Resultado da pontuação O quão bem a escolha classificada funcionou para seu aplicativo pode ser determinado medindo algum aspeto do comportamento do usuário e expressando-o em uma pontuação de recompensa.
Calendário relevante A pontuação de recompensa não traz muitos fatores confusos ou externos. A duração do experimento é baixa o suficiente para que a pontuação de recompensa possa ser calculada enquanto ainda é relevante.
Recursos de contexto suficientes Você pode expressar o contexto para a classificação como uma lista de pelo menos 5 recursos que você acha que ajudariam a fazer a escolha certa, e que não inclui informações identificáveis específicas do usuário.
Recursos de ação suficientes Você tem informações sobre cada escolha de conteúdo, ação, como uma lista de pelo menos 5 recursos que você acha que ajudarão o Personalizador a fazer a escolha certa.
Dados diários Há eventos suficientes para ficar por dentro da personalização ideal se o problema se desviar ao longo do tempo (como preferências em notícias ou moda). O Personalizer se adaptará às mudanças contínuas no mundo real, mas os resultados não serão ideais se não houver eventos e dados suficientes para aprender para descobrir e estabelecer novos padrões. Você deve escolher um caso de uso que aconteça com frequência suficiente. Considere procurar casos de uso que aconteçam pelo menos 500 vezes por dia.
Dados históricos Seu aplicativo pode reter dados por tempo suficiente para acumular um histórico de pelo menos 100.000 interações. Isso permite que o Personalizer colete dados suficientes para realizar avaliações offline e otimização de políticas.

Não use o Personalizador onde o comportamento personalizado não é algo que pode ser descoberto em todos os usuários. Por exemplo, usar o Personalizador para sugerir um primeiro pedido de pizza a partir de uma lista de 20 itens de menu possíveis é útil, mas qual contato ligar da lista de contatos dos usuários quando precisar de ajuda com cuidados infantis (como "Vovó") não é algo personalizável em toda a sua base de usuários.

Como usar o Personalizer em um aplicativo Web

Adicionar um loop de aprendizagem a um aplicativo Web inclui:

  • Determine qual experiência personalizar, quais ações e recursos você tem, quais recursos de contexto usar e qual recompensa você definirá.
  • Adicione uma referência ao SDK de personalização em seu aplicativo.
  • Chame a API de classificação quando estiver pronto para personalizar.
  • Armazene o eventId. Você envia uma recompensa com a API de recompensa mais tarde.
  1. Ligue para Ativar para o evento assim que tiver certeza de que o usuário viu sua página personalizada.
  2. Aguarde a seleção do usuário do conteúdo classificado.
  3. Ligue para a API de Recompensa para especificar o quão bem a saída da API de Classificação se saiu.

Como usar o Personalizer com um bot de chat

Neste exemplo, você verá como usar a Personalização para fazer uma sugestão padrão em vez de enviar o usuário para uma série de menus ou opções sempre.

  • Obtenha o código para este exemplo.
  • Configure sua solução de bot. Certifique-se de publicar seu aplicativo LUIS.
  • Gerencie chamadas de API de classificação e recompensa para bot.
    • Adicione código para gerenciar o processamento de intenção do LUIS. Se Nenhum for retornado como a intenção principal ou se a pontuação da intenção superior estiver abaixo do limite da lógica comercial, envie a lista de intenções para o Personalizador para classificar as intenções.
    • Mostrar lista de intenções para o usuário como links selecionáveis, sendo a primeira intenção a intenção mais bem classificada da resposta da API de classificação.
    • Capture a seleção do usuário e envie-a na chamada da API de recompensa.
  • Faça chamadas à API do Personalizer Rank sempre que uma desambiguação for necessária, em vez de armazenar em cache os resultados de cada usuário. O resultado da desambiguação da intenção pode mudar ao longo do tempo para uma pessoa, e permitir que a API de classificação explore as variações acelerará o aprendizado geral.
  • Escolha uma interação que seja comum com muitos usuários para que você tenha dados suficientes para personalizar. Por exemplo, perguntas introdutórias podem ser mais adequadas do que pequenos esclarecimentos no gráfico da conversa aos quais apenas alguns usuários podem chegar.
  • Use chamadas de API de classificação para ativar conversas de "a primeira sugestão está certa", onde o usuário é perguntado "Você gostaria de X?" ou "Você quis dizer X?" e o usuário pode apenas confirmar; em vez de dar opções ao usuário onde ele deve escolher a partir de um menu. Por exemplo, User:"I'd like to order a coffee" Bot:"Você gostaria de um expresso duplo?". Desta forma, o sinal de recompensa também é forte, pois diz respeito diretamente a uma sugestão.

Como usar o Personalizer com uma solução de recomendação

Muitas empresas usam mecanismos de recomendação, ferramentas de marketing e campanha, segmentação e agrupamento de público, filtragem colaborativa e outros meios para recomendar produtos de um grande catálogo aos clientes.

O repositório GitHub de Recomendações da Microsoft fornece exemplos e práticas recomendadas para a criação de sistemas de recomendação, fornecidos como notebooks Jupyter. Ele fornece exemplos de trabalho para preparar dados, construir modelos, avaliar, ajustar e operacionalizar os mecanismos de recomendação, para muitas abordagens comuns, incluindo xDeepFM, SAR, ALS, RBM, DKN.

O personalizador pode trabalhar com um mecanismo de recomendação quando ele está presente.

  • Os mecanismos de recomendação pegam grandes quantidades de itens (por exemplo, 500.000) e recomendam um subconjunto (como os 20 melhores) de centenas ou milhares de opções.
  • O Personalizer toma um pequeno número de ações com muitas informações sobre elas e as classifica em tempo real para um determinado contexto rico, enquanto a maioria dos mecanismos de recomendação usa apenas alguns atributos sobre usuários, produtos e suas interações.
  • O Personalizer foi projetado para explorar de forma autônoma as preferências do usuário o tempo todo, o que produzirá melhores resultados onde o conteúdo está mudando rapidamente, como notícias, eventos ao vivo, conteúdo da comunidade ao vivo, conteúdo com atualizações diárias ou conteúdo sazonal.

Um uso comum é pegar a saída de um mecanismo de recomendação (por exemplo, os 20 principais produtos para um determinado cliente) e usá-la como as ações de entrada para o Personalizador.

Adicionando proteções de conteúdo ao seu aplicativo

Se o seu aplicativo permitir grandes variações no conteúdo mostrado aos usuários, e parte desse conteúdo pode ser inseguro ou inadequado para alguns usuários, você deve planejar com antecedência para garantir que as proteções corretas estejam em vigor para evitar que os usuários vejam conteúdo inaceitável. O melhor padrão para implementar salvaguardas é: * Obter a lista de ações a classificar. * Filtre os que não são viáveis para o público. * Apenas classifique estas ações viáveis. * Exibir a ação mais bem classificada para o usuário.

Em algumas arquiteturas, a sequência acima pode ser difícil de implementar. Nesse caso, existe uma abordagem alternativa para implementar salvaguardas após a classificação, mas é necessário prever para que as ações que não se enquadram na salvaguarda não sejam usadas para treinar o modelo do Personalizador.

  • Obter a lista de ações a classificar, com a aprendizagem desativada.
  • Classifique as ações.
  • Verifique se a ação principal é viável.
    • Se a ação principal for viável, ative o aprendizado para essa classificação e, em seguida, mostre-a ao usuário.
    • Se a ação de topo não for viável, não ative a aprendizagem para este ranking e decida através da sua própria lógica ou abordagens alternativas o que mostrar ao utilizador. Mesmo que você use a segunda opção melhor classificada, não ative o aprendizado para este ranking.

Próximos passos

Ética e uso responsável.