Ir para conteúdo principal Pular para conteúdo complementar

Aplicando o framework estruturado: Exemplo de rotatividade de clientes

Este exemplo o guiará pelo processo de definição de uma pergunta de aprendizado de máquina passo a passo. Você aprenderá como combinar conhecimento de negócios com a estrutura de gatilho de evento, alvo, ponto de previsão e recursos para estruturar uma pergunta bem definida.

O ponto de partida é o caso de negócios "O cliente irá cancelar?". Ao usar o framework estruturado, reduziremos isso a algo mais específico que pode ser previsto por um algoritmo de aprendizado de máquina.

Gatilho de evento

O gatilho de evento é uma ação ou evento que aciona a criação de uma nova previsão. Identificamos nosso gatilho de evento como "um cliente se inscreveu para uma assinatura". Isso é representado nos dados quando um novo cliente é criado. Queremos prever no nível do cliente se eles irão cancelar, então cada linha precisa representar um único cliente.

Usando nosso conhecimento de negócios e verificando os dados, sabemos que a rotatividade é maior entre nossos novos clientes. Portanto, decidimos nos concentrar especificamente em novos clientes. O gatilho de evento é que um novo cliente se inscreve, e podemos pensar em cada cliente como tendo uma linha do tempo individual a partir do dia em que se inscreveu.

O gatilho de evento é quando um novo cliente se inscreve. A linha horizontal representa o número de dias desde a assinatura.

Linha do tempo para um novo cliente.

Alvo

O alvo é o resultado que estamos tentando prever. Queremos prever a rotatividade, então sabemos que nosso objetivo geral é "O cliente irá cancelar?". Mas precisamos ser mais específicos para criar um modelo de aprendizado de máquina de qualidade. Para começar, decidimos que "rotatividade" significa que um cliente nos liga para cancelar sua assinatura.

O resultado alvo é quando um cliente liga para cancelar sua assinatura.

Linha do tempo do cliente com um alvo.

Em seguida, decidimos o prazo (o horizonte) em que essa chamada de cancelamento deve ser feita. Ao olhar para vários clientes que cancelaram, vemos que a linha do tempo não é consistente. Alguns clientes cancelam após 45 dias e outros não até muito mais tarde, 110 dias.

Dias desde a assinatura até que o cliente ligue para cancelar a assinatura. Cada linha representa um cliente diferente.

Linhas do tempo mostrando o número de dias antes do cancelamento dos clientes.

Temos um programa de teste gratuito de 90 dias, e sabemos que muitos clientes abandonam a avaliação. Com base nesse contexto de negócios, nosso pensamento inicial é utilizar um horizonte de 90 dias. Ao prever quem deve cancelar, planejamos alcançar esses clientes com antecedência e oferecer incentivos (como descontos ou recursos adicionais de assinatura) para incentivá-los a permanecer.

Um histograma de quantos dias após a inscrição os clientes cancelaram confirma nossa intuição comercial. Na figura podemos ver os dados de todos os clientes que cancelaram nos últimos três anos.

A distribuição de chamadas de cancelamento ao longo do número de dias desde a assinatura. A maioria dos cancelamentos ocorre cerca de 90 dias após a assinatura do cliente.

Histograma mostrando o número de dias antes do cancelamento dos clientes.

Escolher um horizonte de 90 dias parece um bom lugar para começar. No entanto, quando traçamos esse horizonte em nosso histograma, percebemos que há muitos clientes que continuam cancelando por alguns dias após o período de avaliação de 90 dias. O motivo pode ser que eles veem seu cartão de crédito ser cobrado ou recebem um aviso de que seu método de pagamento foi recusado alguns dias depois e só então ligam para cancelar a assinatura.

Um horizonte a 90 dias após a assinatura

Histograma com horizonte de 90 dias marcado.

Como queremos incluir esses clientes como "cancelados" em nosso modelo, decidimos que faz mais sentido usar 110 dias como nosso horizonte alvo. Ao usar 110 dias, capturamos a maioria dos clientes cuja rotatividade provavelmente está relacionada ao programa de avaliação gratuita.

Um horizonte a 110 dias após a assinatura

Histograma com horizonte de 110 dias marcado.

Agora que definimos nosso alvo, podemos determinar onde os dados são armazenados e como eles precisam ser limpos para criar a coluna alvo no conjunto de dados. Neste exemplo fazemos o seguinte:

  1. Extraímos o status do cliente do Salesforce.

  2. Extraímos o status, a data de criação do cliente e a data de cancelamento do cliente:

    Tabela com dados de amostra.

  3. Limpamos e transformamos os dados extraídos na coluna alvo:

    Tabela com dados de amostra.

Agora definimos nosso gatilho de evento (um novo cliente se inscreveu) e nosso alvo (o cliente ligou para cancelar sua assinatura em até 110 dias após a inscrição). Eles são ilustrados na linha do tempo na figura.

O gatilho de evento é quando um novo cliente se inscreve (1), o resultado alvo é quando o cliente liga para cancelar (2) e o horizonte alvo são 110 dias após a assinatura (3).

Linha do tempo mostrando o acionador do evento, o alvo e o horizonte alvo.

Ponto de previsão

O ponto de previsão é o tempo designado quando você para de coletar dados para recursos e prevê o alvo para cada linha. O ponto de previsão pode cair em qualquer lugar entre o gatilho de evento (o dia da inscrição de assinatura) e o horizonte alvo (dia 110 após a inscrição). Para escolher um ponto de partida, podemos pensar sobre a ação que queremos realizar.

Em nosso exemplo, talvez a equipe de suporte ao cliente tenha solicitado 30 dias para entrar em contato com os clientes com ofertas de retenção, dada previsão de rotatividade dos clientes. Isso significa que, o mais tardar, gostaríamos de prever 30 dias antes do horizonte alvo, ou seja, no dia 80.

O ponto de previsão (2) é definido no dia 80, entre o gatilho de evento (1) e o horizonte alvo (3).

Linha do tempo mostrando o ponto de previsão.

Escolher o dia 80 como nosso ponto de previsão nos daria 80 dias para coletar dados sobre novos clientes conforme eles chegam. Esse intervalo de tempo entre o gatilho de evento e o ponto de previsão é chamado de janela de acúmulo de dados. Os dados coletados durante a janela de acúmulo de dados são usados para gerar recursos.

A janela de acúmulo de dados é o tempo entre o gatilho de evento e o ponto de previsão.

Linha do tempo mostrando a janela de acúmulo de dados entre o gatilho de evento e o ponto de previsão.

Usar o dia 80 como ponto de previsão deixa uma janela de ação de 30 dias, que é o tempo entre o ponto de previsão e o horizonte alvo. Esta é a janela de 30 dias que a equipe de suporte ao cliente solicitou para entrar em contato com os clientes.

A janela de ação é o tempo entre o ponto de previsão e o horizonte alvo.

Linha do tempo mostrando a janela de acúmulo de dados entre o ponto de previsão e o horizonte.

Além de pensar na janela de ação mínima necessária para agir nas previsões, também precisamos olhar para o histograma de dias até o cancelamento. Aplicando o ponto de previsão do dia 80, obteríamos o seguinte:

A distribuição de chamadas de cancelamento com a janela de acúmulo de dados e a janela de ação.

Histograma com ponto de previsão e horizonte marcados.

Observando este histograma, percebemos que usar um ponto de previsão de 80 dias não maximiza o valor do negócio. Embora o valor de 80 dias de dados ajude a aumentar a exatidão do modelo, ele tem um alto custo para a ação:

  • Primeiro, muitos clientes já cancelaram no dia 80, então eles vão cancelar durante a janela de acúmulo de dados – antes mesmo de fazermos qualquer previsão. Isso também significa que não desejaríamos incluí-los em nosso conjunto de dados de treinamento porque saberíamos o resultado antes de fazer a previsão.

  • Em segundo lugar, muitos clientes mudam entre os dias 80 e 90, portanto, a equipe de sucesso do cliente não teria 30 dias completos para entrar em contato com esses clientes.

Os clientes que cancelaram suas assinaturas antes do ponto de previsão não serão incluídos nos dados de treinamento.

Histograma mostrando a proporção de clientes que cancelaram antes do ponto de previsão.

Mover o ponto de previsão para o dia 60 fornece um melhor equilíbrio entre exatidão e capacidade de ação. Ainda temos 60 dias para coletar dados a serem usados em recursos em nosso modelo, mas agora estamos prevendo com antecedência suficiente para que a equipe de sucesso do cliente tenha 30 dias para alcançar a maioria dos clientes que prevemos que irão cancelar. Ao reduzir a janela de acúmulo de dados, podemos esperar uma pequena diminuição na exatidão do modelo, mas uma previsão muito mais acionável.

Mover o ponto de previsão para o dia 60 reduz a janela de acúmulo de dados, mas nos dá uma janela de ação mais longa. Exclui menos clientes dos dados de treinamento.

Histograma com um ponto de previsão anterior e uma janela de ação mais longa.

Recursos

Com o gatilho de evento, alvo e ponto de previsão definidos, estamos prontos para adicionar a parte final ao nosso conjunto de dados: os recursos. Os recursos são os atributos, ou observações, conhecidos para cada linha de dados no conjunto de dados de treinamento a partir do qual os algoritmos de aprendizado de máquina aprendem padrões gerais. Os algoritmos usam os recursos para fazer previsões quando apresentados a uma nova linha de dados no conjunto de dados de aplicação.

Pense nos recursos como suas hipóteses baseadas no conhecimento de negócios sobre o que influencia o resultado. Em nosso exemplo, alguns recursos podem ser localização do cliente, origem do lead, mês de inscrição, número de logins ou número de usuários ativos.

Existem duas categorias de recursos:

  • Recursos fixos são os mais diretos porque não mudam com o tempo. Em nosso exemplo, a localização do cliente (na inscrição), a origem do lead e o mês de inscrição são considerados recursos fixos. Eles são conhecidos assim que um cliente se inscreve (logo no gatilho de evento) e, não importa onde colocamos nosso ponto de previsão, eles serão conhecidos e constantes.

  • Recursos dependentes de janela são um pouco mais complicados. São os recursos coletados com base nas informações coletadas entre o gatilho de evento e o ponto de previsão. É importante garantir que você esteja usando apenas dados que seriam conhecidos no tempo, caso contrário, o modelo pode ter vazamento de dados. (Para obter mais informações, consulte Vazamento de dados.)

Um modelo simples pode usar apenas informações conhecidas no dia 0, ou seja, apenas recursos fixos. Isso daria um ponto de previsão no dia 0, conforme mostrado na figura.

Com um ponto de previsão no dia 0, temos 0 dia para coletar dados e só podemos usar recursos fixos conhecidos no dia 0. A janela de ação é de 110 dias completos.

Histograma com ponto de previsão no dia 0.

O conjunto de dados resultante seria mais ou menos assim:

Dados de treinamento apenas com recursos fixos

Tabela com dados de amostra.

No entanto, também podemos usar os dados coletados depois que o cliente se inscreveu, como em nosso exemplo com o ponto de previsão no dia 60.

O ponto de previsão no dia 60 nos dá 60 dias para coletar dados e 50 dias para agir.

Histograma com ponto de previsão no dia 60.

Agora podemos usar as informações coletadas nos primeiros 60 dias após a inscrição do cliente para adicionar recursos dependentes de janela ao nosso modelo. Nosso conjunto de dados para este modelo pode se parecer com a tabela a seguir, agora incluindo os recursos dependentes de janela: Logins nos primeiros 60 dias e Usuários ativos em 60 dias.

Dados de amostra com recursos dependentes de janela

Tabela com dados de amostra.

Observe que, neste exemplo, os recursos refletem toda a janela de acúmulo de dados. Eles também podem ser menores. Por exemplo, poderíamos medir os logins nos primeiros 10 dias ou os logins nos dias 30 a 60, desde que os recursos não incluam nenhuma informação além do ponto de previsão.

Os recursos dependentes de janela podem ser mais complicados de coletar porque exigem datas e esforço extra para garantir que caiam na janela de acúmulo de dados a fim de evitar vazamento de dados. Mas também podem ser alguns dos recursos mais avançados porque podem refletir as informações coletadas muito mais perto do momento da previsão.

A pergunta de aprendizado de máquina resultante

Começamos com o caso de uso simples "O que cliente irá cancelar?". Em seguida, definimos nosso gatilho de evento como "Um novo cliente se inscreve" porque queríamos fazer previsões no nível do cliente individual.

Definimos nosso alvo com um resultado específico — "O cliente ligou para cancelar sua assinatura (Sim ou Não)" — e definimos o horizonte como 110 dias porque esse é o tempo em que a maioria de nossos clientes de avaliação cancelou.

Observando um histograma de quantos dias após a inscrição os clientes ligaram para cancelar nos últimos três anos, decidimos um ponto de previsão de 60 dias após a inscrição. Isso nos daria 60 dias para coletar informações (a janela de acúmulo de dados) antes de fazer nossa previsão, mas ainda daria tempo à equipe de suporte ao cliente para agir nas previsões a fim de reduzir a rotatividade.

Por fim, reunimos dados sobre os clientes que estariam disponíveis antes do dia 60 para gerar recursos.

Nossa pergunta de aprendizado de máquina resultante é: "Após os primeiros 60 dias de atividade, um cliente ligará para cancelar no dia 110?"

E o conjunto de dados, que agora está pronto para ser usado para aprendizado de máquina automatizado, se parece com a tabela abaixo. Localização, Origem do lead, Mês de ingresso e Valor da assinatura são recursos fixos, Logins nos primeiros 60 dias e Usuários ativos em 60 dias são recursos dependentes de janela, e Rotatividade em 110 dias é a coluna de destino.

Dados de amostra com recursos fixos (1), recursos dependentes de janela (2) e alvo (3)

Tabela com dados de amostra.

Esta página ajudou?

Se você encontrar algum problema com esta página ou seu conteúdo - um erro de digitação, uma etapa ausente ou um erro técnico - informe-nos como podemos melhorar!