A personalização usa machine learning, especificamente um algoritmo contextual de bandido multi-armado, para determinar a experiência ideal de modo que usuários individuais alcancem um objetivo. Neste caso, o objetivo é otimizar o número total ou o valor de parâmetro total de eventos específicos de Google Analytics.
O que é um algoritmo contextual de bandido multi-armado?
O "bandido multi-armado" é uma metáfora usada para descrever a situação em que queremos escolher continuamente um caminho, de uma lista de vários, que leve a prêmios mais altos e confiáveis. Para visualizar isso, você pode usar a metáfora de um apostador em frente a diversas máquinas caça-níqueis - geralmente denominada "bandido de um braço só", porque essas máquinas têm só uma alavanca (ou braço) e ficam com seu dinheiro. Como queremos solucionar o problema de vários "braços", o bandido armado se torna multi-armado.
Por exemplo, digamos que temos três opções e queremos determinar qual oferece a recompensa mais confiável. Podemos testar cada opção e, depois de ver os resultados, podemos continuar escolhendo o grupo que tiver gerado mais recompensas. Esse é o chamado algoritmo ganancioso: quando continuamos a escolher a opção que gera o melhor resultado na primeira tentativa. No entanto, sabemos que isso nem sempre funciona. Por um lado, a alta recompensa pode ser algo imprevisível. Ou talvez haja algum contexto específico do usuário que resulte em recompensas mais altas durante esse período, mas que não seja tão eficaz posteriormente.
Para tornar o algoritmo mais eficaz, é adicionado contexto. Para a personalização de Remote Config, esse contexto inicial é uma amostragem aleatória, ou incerteza, que confere entropia ao experimento. Isso implementa o algoritmo contextual de bandido multi-armado. À medida que o experimento é executado, a exploração e a observação contínuas adicionam um contexto real aprendido sobre os grupos que têm mais chances de gerar uma recompensa para o modelo, o que o torna mais eficaz.
O que isso significa para meu app?
Agora, vamos explicar o que um algoritmo de bandido multi-armado significa no contexto do seu app. Imagine que você está otimizando para cliques em anúncios de banner. Nesse caso, os "braços" da personalização são os valores alternativos que você especifica para representar os diferentes anúncios de banner que quer exibir aos usuários. O clique no anúncio de banner é a recompensa, que chamamos de objetivo.
Quando você inicia uma personalização pela primeira vez, o modelo não sabe qual valor alternativo tem mais chances de atingir sua meta para cada usuário individual. À medida que a personalização explora cada valor alternativo para entender a probabilidade de alcançar o objetivo que você definiu, o modelo subjacente fica mais informado, melhorando a capacidade de prever e selecionar a experiência ideal para cada usuário.
A personalização usa uma janela de duração de 24 horas. Esse é o tempo que o algoritmo de personalização gasta explorando um único valor alternativo. Você precisa dar tempo suficiente às personalizações para que elas explorem cada valor alternativo diversas vezes (geralmente cerca de 14 dias). O ideal é permitir que eles sejam executados permanentemente para que possam melhorar e se adaptar continuamente à medida que o app e o comportamento do usuário mudam.
Acompanhar outras métricas
A personalização de Remote Config também possibilita o rastreamento de até duas métricas adicionais para ajudar a contextualizar os resultados. Digamos que você tenha desenvolvido um app social e definido diferentes valores alternativos para incentivar os usuários a compartilhar conteúdo com amigos para aumentar o engajamento geral.
Neste caso, você pode fazer a otimização para um evento de Analytics, como link_received
,
e definir suas duas métricas como user_engagement
e link_opened
para entender se o engajamento dos usuários e o número de links abertos por eles aumentam
(engajamento real) ou diminuem (possivelmente muitos links com spam).
Embora essas outras métricas não sejam consideradas no algoritmo de personalização, elas podem ser monitoradas junto dos resultados de personalização, o que fornece insights valiosos mostrando se a personalização consegue alcançar suas metas gerais.
Noções sobre os resultados da personalização
Depois que uma personalização estiver em execução por tempo suficiente para coletar dados, você vai poder ver os resultados dela.
Para ver os resultados da personalização:
Abra a página de Remote Config e clique em Personalizações.
Selecione a que você quer ver. Pesquise a personalização específica por nome ou objetivo e classifique por horário de início, nome ou aumento total.
A página de resultados resume o aumento total, ou a diferença percentual no desempenho, que a personalização oferece no grupo de referência.
A página de resultados também mostra o status atual da personalização, os atributos dela e um gráfico interativo que:
Mostra uma visualização diária e total detalhada do desempenho da personalização em comparação com o valor de referência.
Mostra o desempenho geral de cada valor no grupo de referência.
Exibe o desempenho e os resultados da meta em relação às outras métricas escolhidas, acessíveis nas guias na parte superior do resumo.
Uma personalização pode ser executada indefinidamente. Além disso, é possível continuar acessando a página de resultados para monitorar o desempenho dela. O algoritmo vai continuar aprendendo e se ajustando para que possa se adaptar quando o comportamento do usuário mudar.
Entender a exclusão de personalização
É possível excluir uma personalização usando o console de Firebase ou removendo um parâmetro de personalização do modelo usando a API de Firebase Remote Config. Não é possível restaurar as personalizações excluídas. Para saber mais sobre retenção de dados, consulte Exclusão de dados.
Você também pode excluir personalizações revertendo ou importando um modelo.
Reversões
Se o modelo atual tiver personalizações e você fizer a reversão para um modelo que não tenha as mesmas personalizações, elas serão excluídas. Para fazer a reversão para um
modelo anterior, use o console de Firebase ou
roll back
com a API de Firebase Remote Config.
Quando você exclui uma personalização e faz a reversão para um modelo anterior, uma referência a essa personalização inválida é exibida no console de Firebase. Você pode remover a personalização inválida do console de Firebase editando a personalização na guia Parâmetros da página de Remote Config.
Importações
Importar um modelo que não contém mais suas personalizações atuais também exclui essas personalizações. Para importar um modelo, use o console de Firebase ou a API REST de Remote Config.
Próximas etapas
Conheça os casos de uso de personalização de Remote Config.
Comece a usar a personalização de Remote Config.