Tolerância ao risco e desempenho do modelo

Na previsão do comportamento do usuário, há sempre um grau de incerteza que exige a avaliação de prós e contras: você precisa escolher entre atingir menos usuários com maior precisão geral maior e atingir mais usuários com menor precisão geral. Essa escolha depende do seu caso de uso específico.

Níveis de tolerância ao risco

O Firebase Previsões define níveis de tolerância ao risco com base em duas métricas:

  • A taxa de verdadeiro positivo de uma previsão é a proporção de usuários que executou uma ação prevista (por exemplo, a proporção de usuários que realizou uma compra conforme a previsão do Firebase).
  • A taxa de falso positivo de uma previsão é a proporção de usuários que não executou uma ação prevista (por exemplo, a proporção de usuários que não realizou uma compra conforme a previsão do Firebase).

Informe ao Firebase Previsões o grau de incerteza que você se dispõe a tolerar na segmentação de usuários. Para isso, basta escolher um nível de tolerância de risco para uma previsão. Essa configuração garante que a taxa de falsos positivos não exceda o limite máximo determinado. Com a definição desse limite, o Previsões segmentará o maior número de usuários possível para maximizar a taxa positiva verdadeira sem exceder o limite de falsos positivos. Se a máxima taxa positiva verdadeira atingível não alcançar um limite mínimo, o perfil de risco será desativado e nenhum usuário será segmentado com ele. Assim, os perfis de risco oferecem um mecanismo para garantir que qualquer segmentação aplicada tenha um limite de certeza que a desabilitará caso não seja atendido.

Ao segmentar usuários com base em uma previsão, você seleciona um nível de tolerância de risco. Dependendo do tipo de previsão e do número de eventos existentes do Analytics, um ou mais dos seguintes níveis estão disponíveis para escolha:

Níveis de tolerância ao risco
Alta
  • Segmenta a maioria dos usuários, mas prejudica a precisão da previsão.
  • Garante uma taxa positiva falsa máxima de 20%.
  • É desativado quando a taxa positiva verdadeira fica abaixo de 45%.
  • A cada 10 usuários segmentados corretamente, no máximo 4,44 usuários (10 × 20% ÷ 45%) são segmentados incorretamente.*
Média
  • Segmenta menos usuários com uma precisão maior.
  • Garante uma taxa positiva falsa máxima de 10%.
  • É desativado quando a taxa positiva verdadeira fica abaixo de 35%.
  • A cada 10 usuários segmentados corretamente, no máximo 2,86 usuários (10 × 10% ÷ 35%) são segmentados incorretamente.*
Baixa
  • Segmenta o menor número de usuários, com a melhor precisão.
  • Garante uma taxa positiva falsa máxima de 5%.
  • É desativado quando a taxa positiva verdadeira fica abaixo de 25%.
  • A cada 10 usuários segmentados corretamente, no máximo 2 usuários (10 × 5% ÷ 25%) são segmentados incorretamente.*

*Presumindo um número igual de casos reais positivos e negativos entre seus usuários. Se houver X vezes mais casos negativos do que positivos, multiplique o número máximo de falsos positivos por X.

Exemplos

Imagine que você tenha um aplicativo com 35 mil usuários e queira fazer uma previsão para saber quais usuários deixarão de usá-lo (ou se desligarão do app) nos próximos dias. Assim, será possível fazer algo para incentivá-los a continuar usando o app.

Nas figuras abaixo, cada emoticon representa mil usuários. Os grupos de usuários satisfeitos e que não se desligarão estão na cor verde, e os usuários insatisfeitos que se desligarão aparecem na cor vermelha.

Tolerância de risco alta

Com uma tolerância ao risco alta, o Firebase Previsões cria um grupo como o da figura abaixo. Esse grupo inclui 10 mil dos 13 mil usuários insatisfeitos. Portanto, a taxa positiva verdadeira dessa previsão é de aproximadamente 76,9%. Se esse valor cair abaixo de 45% com a tolerância de risco selecionada como alta, a previsão ficará inativa até que a taxa positiva verdadeira volte a ficar acima do limite estabelecido.

Esse grupo também inclui 4 mil usuários que estão satisfeitos com seu aplicativo, e talvez não seja interessante segmentá-los na sua estratégia de incentivo. Como 4 mil dos 22 mil usuários satisfeitos foram incluídos incorretamente na previsão de desligamento, a taxa positiva falsa dessa previsão é de aproximadamente 18,18%, abaixo do limite máximo de 20% garantido pelo perfil de tolerância alta.

sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied
sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied
sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied
sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied
sentiment_very_satisfied sentiment_very_satisfied sentiment_very_dissatisfied sentiment_very_dissatisfied sentiment_very_dissatisfied
sentiment_very_dissatisfied sentiment_very_dissatisfied sentiment_very_dissatisfied sentiment_very_dissatisfied sentiment_very_dissatisfied
sentiment_very_dissatisfied sentiment_very_dissatisfied sentiment_very_dissatisfied sentiment_very_dissatisfied sentiment_very_dissatisfied

Tolerância de risco baixa

Por outro lado, a figura abaixo mostra como pode ser um grupo criado com tolerância de risco baixa. Esse grupo contém menos falsos positivos (apenas mil usuários), mas inclui 4 mil usuários insatisfeitos a menos do que o grupo de tolerância de risco alta. A taxa positiva verdadeira dessa previsão é de aproximadamente 46,15%, e a taxa positiva falsa é de cerca de 4,55%.

sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied
sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied
sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied
sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied sentiment_very_satisfied
sentiment_very_satisfied sentiment_very_satisfied sentiment_very_dissatisfied sentiment_very_dissatisfied sentiment_very_dissatisfied
sentiment_very_dissatisfied sentiment_very_dissatisfied sentiment_very_dissatisfied sentiment_very_dissatisfied sentiment_very_dissatisfied
sentiment_very_dissatisfied sentiment_very_dissatisfied sentiment_very_dissatisfied sentiment_very_dissatisfied sentiment_very_dissatisfied

Veja como a tolerância de risco afeta o desempenho

Como a qualidade das suas previsões pode mudar todos os dias, é possível que uma delas esteja ativa em um dia, mas inativa no dia seguinte, considerando um perfil de risco específico. Por esse motivo, entender como esse perfil afeta a confiabilidade da previsão é importante para decidir qual perfil usar para segmentar seus usuários.

Por exemplo, se você configurar um parâmetro do Configuração remota com base em um perfil de risco específico, o recurso não atribuirá um valor ao parâmetro e todos os usuários receberão o comportamento padrão definido nos dias em que a previsão estiver inativa. Dependendo do seu caso de uso, isso poderá ser aceitável. Se não for, você precisará saber qual perfil de risco fornece uma previsão confiável.

Para ajudar você a entender como a tolerância de risco afeta a confiabilidade das suas previsões, cada cartão de previsão no Console do Firebase tem um rodapé que indica a confiabilidade nas últimas duas semanas, para cada um dos três perfis de risco disponíveis.

Para ver mais detalhes sobre o desempenho da previsão, expanda a seção de desempenho do cartão:

Veja no gráfico acima a taxa positiva verdadeira do modelo de previsão para seus dados nas últimas duas semanas. Cada ponto de dados no gráfico indica o desempenho do modelo do dia em um conjunto de dados de validação. Consulte Como são calculadas as estatísticas de desempenho. O gráfico é exibido em vermelho nos dias em que a taxa positiva verdadeira está abaixo do limite necessário. Nesses dias, o Firebase desativa a segmentação de usuários com base na previsão.

Se você perceber que seu modelo ficou inativo em alguns dos últimos 14 dias, aumente seu nível de tolerância de risco. Ao fazer isso, o número de falsos positivos aumentará, mas será possível segmentar mais usuários e evitar dias inativos. Para ver como diferentes níveis de tolerância de risco afetam o desempenho do seu modelo, mova o controle deslizante da Tolerância de risco:

Com isso, o gráfico mostra como seria o desempenho do modelo de cada dia com o nível de tolerância de risco selecionado. No exemplo acima, você percebe que aumentar a tolerância do nível médio para o alto resulta em uma taxa positiva verdadeira bem acima do limite de 45% em todos os dias das duas últimas semanas. No entanto, há uma maior tolerância a falsos positivos.

Quando você encontrar um equilíbrio confortável entre precisão e alcance de usuários, use esse nível de tolerância para segmentar usuários com o Configuração remota, o recurso do Firebase de mensagens no app, os testes A/B ou o Editor do Notificações.

Como são calculadas as estatísticas de desempenho

Rotulação

Como muitas tarefas de aprendizado de máquina, o treinamento de um modelo do Firebase Previsões é uma tarefa de "aprendizagem supervisionada". Isso significa que todos os usuários selecionados para treinar o modelo precisam receber rótulos como "se desligará", "não se desligará" e assim por diante. Para isso, o Previsões considera todos os usuários ativos do aplicativo nos últimos 28 dias e os últimos sete dias de eventos dos dados. Esse período é chamado de janela de rótulo. O Firebase Previsões usa eventos dessa janela para atribuir rótulos ao usuário e, em seguida, usa os eventos do usuário antes desses sete dias (eventos da janela de treinamento) para treinar o modelo.

Dados de validação e dados de treinamento

Nem todos os dados são diretamente usados para treinamento. Como é comum para tarefas de aprendizado supervisionado, o Previsões separa 20% dos dados para servir como dados de validação e usa apenas os 80% restantes para treinar o modelo. Para avaliar o desempenho do modelo, são geradas previsões no conjunto de validação, com base nos dados da janela de treinamento. Em seguida, as previsões são comparadas aos resultados reais de cada usuário, com base nos rótulos gerados a partir da janela de rótulos.

Todas as estatísticas apresentadas no Console do Firebase são geradas a partir da avaliação do modelo em relação aos dados de validação.