Estatística

Modelagem de Uplift: do efeito médio à política

Modelagem de uplift estima o efeito por usuário e transforma isso em quem tratar. Meta-aprendizes, curva de ganho e a validação que não existe.

Ilustração plana de quatro bandejas empilhadas, as duas de cima cheias e brilhantes, a terceira apagada e a quarta vazia

O efeito médio de um teste A/B responde uma pergunta só: vale ligar isso para todo mundo? Modelagem de uplift responde outra: para quem vale. No exemplo deste guia, uma campanha com efeito médio de mais 0,9000 ponto percentual esconde quatro grupos com efeitos de mais 3,0000, mais 1,2000, mais 0,2000 e menos 0,8000 ponto. Tratar a base inteira rende 450 conversões incrementais; tratar os três primeiros quartis rende 550, com 25 por cento menos custo de tratamento. O quarto quartil não é neutro, ele destrói 100 conversões. Este guia mostra como o escore por usuário é construído, como ele vira política, por que ele não pode ser validado linha a linha, e as três armadilhas que fazem um modelo de uplift parecer bom e não ser. Faz parte do nosso guia completo de teste A/B e é o passo operacional depois de efeito heterogêneo por segmento.

O alvo mudou: do efeito médio para o efeito condicional

Um teste A/B bem feito estima o efeito médio do tratamento na população sorteada. É o número que decide se a variação sobe. Ele é robusto, exige poucas premissas e vem de graça com o sorteio.

O que ele não diz é se esse efeito está distribuído de forma parecida entre as pessoas. Uma média de mais 0,9 ponto pode ser 0,9 ponto em todo mundo, ou pode ser 3 pontos num quarto da base e um pouco de dano no resto. As duas situações levam a decisões de produto radicalmente diferentes e são indistinguíveis no relatório padrão.

O alvo da modelagem de uplift é o efeito médio condicional do tratamento: a diferença entre o desfecho esperado com tratamento e o desfecho esperado sem tratamento, para um perfil de características. Gutierrez e Gérardy definem exatamente isso e registram a dificuldade central logo em seguida: nunca se observa ao mesmo tempo o desfecho com e sem tratamento para a mesma pessoa. O que se quer prever é uma quantidade que nunca aparece nos dados.

Efeito médio contra efeito condicional por perfilDo lado esquerdo, uma única barra representa o efeito médio de 0,9 ponto percentual, o número que o relatório padrão entrega. Do lado direito, a mesma população dividida em quatro faixas com efeitos de mais 3,0, mais 1,2, mais 0,2 e menos 0,8 ponto. A média das quatro é a mesma barra da esquerda.o que o relatório mostrao que existe por baixomédia+0,90 pp+3,00Q1+1,20Q2+0,20Q3menos 0,80Q4as duas figuras vêm do MESMO experimento.
A barra da esquerda é honesta e é a que decide se a variação sobe. Ela simplesmente não contém a informação que decide para quem ligar.

O exemplo trabalhado: quatro quartis, uma decisão diferente

Um ecommerce roda um teste com 50.000 usuários por braço para um novo lembrete de carrinho. O modelo de uplift, treinado em dados de uma rodada anterior, ordenou os usuários por efeito predito e dividiu em quatro quartis de 12.500 por braço. O resultado medido em cada quartil:

quartil (por efeito predito) controle com lembrete efeito valor-p
Q1 (maior efeito predito) 375 de 12.500 = 3,00% 750 de 12.500 = 6,00% mais 3,0000 pontos abaixo de 0,0001
Q2 500 de 12.500 = 4,00% 650 de 12.500 = 5,20% mais 1,2000 pontos abaixo de 0,0001
Q3 750 de 12.500 = 6,00% 775 de 12.500 = 6,20% mais 0,2000 ponto 0,508836
Q4 (menor efeito predito) 1.000 de 12.500 = 8,00% 900 de 12.500 = 7,20% menos 0,8000 ponto 0,017003
população inteira 2.625 de 50.000 = 5,25% 3.075 de 50.000 = 6,15% mais 0,9000 ponto abaixo de 0,0001
Calculadora de significância estatística
Controle (A)
Variação (B)
Controle (A) · Taxa-
Variação (B) · Taxa-
Melhora relativa-
valor-p-
IC 95% da diferença-

Teste z bilateral de duas proporções. "Sem significância" quase sempre quer dizer que falta amostra, não que as versões são iguais.

Cole qualquer uma das cinco linhas na calculadora acima. A última é o resultado que iria para a reunião: mais 0,9000 ponto percentual, mais 17,14 por cento relativo, intervalo de confiança de 95 por cento entre mais 0,6127 e mais 1,1873 ponto. Vitória limpa, sem nenhuma ressalva aparente.

As quatro primeiras linhas contam outra história. Q1 dobra a taxa de conversão. Q4 tem efeito negativo e significativo, com intervalo entre menos 1,4569 e menos 0,1431 ponto. Nesse quartil, o lembrete afasta gente que teria comprado.

Vale notar quem está em Q4: são os usuários com a maior taxa de conversão de base, 8,00 por cento contra 3,00 por cento de Q1. É o padrão clássico das campanhas de lembrete, e é a razão pela qual um modelo de propensão a converter é um péssimo substituto de um modelo de uplift. Quem mais converte não é quem mais responde à intervenção.

De escore a política: a curva de ganho

O escore por si só não vale nada. O que vale é a decisão que sai dele: até onde tratar. Percorrendo os quartis do maior escore para o menor e acumulando as conversões incrementais:

política tratados conversões incrementais ganho por 1.000 tratados
tratar só Q1 12.500 375 30,00
tratar Q1 e Q2 25.000 525 21,00
tratar Q1, Q2 e Q3 37.500 550 14,67
tratar todo mundo 50.000 450 9,00

Os números da última linha e da penúltima merecem uma leitura devagar. Tratar 75 por cento da base rende 550 conversões; tratar 100 por cento rende 450. Os últimos 12.500 usuários tratados não custam apenas o custo do tratamento, eles subtraem 100 conversões do resultado.

E se o tratamento tem custo por unidade, como um envio de e-mail, um desconto ou uma notificação que gasta atenção do usuário, a comparação relevante é a última coluna: tratar só Q1 entrega 30,00 conversões incrementais a cada mil tratamentos, mais de três vezes a eficiência de tratar a base inteira.

Curva de ganho acumulado conforme a fração da base tratadaUma curva mostra as conversões incrementais acumuladas conforme se trata do maior escore de uplift para o menor. Ela sobe rápido até 375 no primeiro quartil, chega a 525 no segundo, atinge o pico de 550 no terceiro e cai para 450 quando todo mundo é tratado. Uma reta diagonal representa o resultado de tratar em ordem aleatória, que chega aos mesmos 450 no fim.conversões incrementais acumuladas025%50%75%100%Q1Q2Q3Q4tratar em ordem aleatória375525550 é o pico450a distância entre a curva cheia e a reta pontilhada é o que o modelo de uplift vale.O trecho final descendente é o custo de tratar quem não devia.
Radcliffe propôs a medida Qini justamente para resumir a área entre essas duas linhas. O pico da curva, e não o seu ponto final, é a política ótima.

Essa é a família de métricas que a literatura usa. Gutierrez e Gérardy registram que, como não se observa o efeito por indivíduo, a maior parte da literatura de uplift recorre a medidas agregadas, faixas de uplift ou curvas de uplift, com a medida Qini de Radcliffe entre elas, e descrevem a abordagem comum: prever o uplift para tratados e controles, calcular a média predita por decil nos dois grupos e tomar a diferença dessas médias em cada decil.

Como a modelagem de uplift constrói o escore: os meta-aprendizes

O escore por usuário não sai de um algoritmo mágico. Sai de combinar modelos de regressão comuns de um jeito específico. Künzel, Sekhon, Bickel e Yu organizaram essas combinações num quadro único e batizaram as principais:

meta-aprendiz como funciona quando escolher
S-learner um modelo só, treinado na base inteira, com o indicador de tratamento entrando como mais uma característica; o escore é a diferença entre prever com e sem o indicador ligado quando o efeito é pequeno e você quer que o modelo possa ignorá-lo, com o risco de que ele ignore mesmo
T-learner dois modelos separados, um treinado só nos controles e outro só nos tratados; o escore é a diferença entre as duas previsões o padrão intuitivo, e a base da abordagem de dois modelos da literatura de uplift
X-learner começa como o T-learner, depois imputa o efeito individual cruzando os dois modelos com os desfechos observados do outro braço, e modela esse efeito imputado desenho desbalanceado, quando um dos grupos é muito maior que o outro
floresta causal árvores que particionam o espaço buscando diferença de efeito, com estimativa honesta por divisão de amostra quando existem muitas covariáveis irrelevantes e você quer intervalo de confiança pontual

O X-learner merece a explicação de por que ele existe. Künzel e coautores o propõem exatamente para tirar proveito de desenho desbalanceado e de estrutura conhecida do efeito condicional, e a mecânica é elegante: no segundo estágio, subtrai-se a previsão do modelo de controle dos desfechos observados dos tratados, e subtraem-se os desfechos observados dos controles da previsão do modelo de tratamento, obtendo efeitos de tratamento imputados que aí sim podem ser modelados diretamente.

E vale registrar a conclusão honesta deles: em simulações extensas, o X-learner tem desempenho favorável, embora nenhum dos meta-aprendizes seja uniformemente o melhor. Não existe escolha padrão que dispense testar.

Do lado das florestas causais, Wager e Athey mostram que elas são pontualmente consistentes para o efeito verdadeiro e têm distribuição amostral assintoticamente gaussiana e centrada, o que permite construir intervalo de confiança em torno da estimativa. Nos experimentos deles, as florestas causais foram substancialmente mais poderosas que os métodos clássicos de pareamento por vizinho mais próximo, especialmente na presença de covariáveis irrelevantes. O preço disso é uma condição que eles chamam de honestidade: a árvore não pode usar a mesma observação para escolher onde dividir e para estimar o efeito dentro da folha.

A validação que não existe, e a que existe

Aqui está a diferença mais importante entre um modelo de uplift e qualquer modelo preditivo comum. Um classificador de churn tem rótulo verdadeiro: a pessoa cancelou ou não. Um modelo de uplift não tem rótulo nenhum, porque o efeito individual nunca é observado.

Isso tem três consequências práticas que costumam ser aprendidas do jeito caro:

  1. Não existe acurácia, AUC nem erro médio por observação para uplift. Qualquer métrica desse tipo que apareça num relatório está medindo outra coisa, normalmente a predição do desfecho, não a do efeito.
  2. A avaliação é sempre agregada e sempre precisa de um grupo de controle na base de validação. Sem controle na validação, não há como saber o efeito real dentro de cada faixa do escore.
  3. A base de validação precisa ser separada da de treino por sorteio, e de preferência vir de uma rodada diferente do experimento, porque avaliar na mesma amostra em que o modelo foi ajustado devolve uma curva de ganho otimista por construção.
Por que não existe rótulo verdadeiro por usuárioPara cada usuário existem dois desfechos potenciais, com tratamento e sem tratamento, e o efeito individual seria a diferença entre eles. O sorteio revela apenas um dos dois, marcado como observado, enquanto o outro fica permanentemente desconhecido. Logo a diferença nunca é calculável para nenhuma pessoa.um usuário sorteado para o tratamentodesfecho COM tratamentoobservado: converteudesfecho SEM tratamentonunca observadoefeito individual = a diferençaindisponível para toda pessoa, semprepor isso a avaliação de um modelo de uplift é feita por faixa do escore,comparando tratados e controles dentro de cada faixa, e nunca por uma métrica de erro calculada linha a linha.
A ausência de rótulo não é uma limitação de dados, é uma propriedade do problema. Nenhum volume de tráfego a resolve.

O corte, e o teste que precisa vir depois

Achar o pico da curva de ganho não encerra o assunto, por dois motivos.

O primeiro é que o pico é estimado com ruído. No exemplo, a diferença entre tratar até Q3 (550) e tratar até Q2 (525) é de 25 conversões, e o efeito de Q3 sozinho tem valor-p 0,508836, ou seja, é indistinguível de zero. Tratar Q3 pode estar somando quase nada e pagando custo por isso. Um efeito de quartil sem significância não sustenta uma decisão de incluir aquele quartil na política.

O segundo é mais fundamental: a política escolhida foi montada olhando para os dados. Ela precisa ser validada no seu próprio experimento, com o corte já congelado.

leitura efeito valor-p o que sustenta
metade de cima (Q1 e Q2) 3,50% contra 5,60%, mais 2,1000 pontos abaixo de 0,0001 tratar a metade de cima funciona
metade de baixo (Q3 e Q4) 7,00% contra 6,70%, menos 0,3000 ponto 0,184237 não há evidência de que tratar a metade de baixo ajude

A leitura da segunda linha é a mais útil e a mais desconfortável: o efeito da metade de baixo não é significativamente negativo quando os dois quartis são somados. Ou seja, o dano concentrado em Q4 sozinho não sobrevive à diluição com Q3. Uma política construída sobre “Q4 machuca” está apoiada num efeito de 0,8 ponto num quarto da base, com intervalo entre menos 1,4569 e menos 0,1431, o que é evidência real mas frágil.

O caminho correto é o mesmo de qualquer descoberta encontrada nos dados: congelar a regra e rodar um experimento confirmatório em que o próprio corte é a variação testada. Braço A trata todo mundo, braço B trata só quem o modelo indica. O desfecho compara as duas políticas, não os dois tratamentos, e é essa comparação que autoriza subir a segmentação. O raciocínio geral está em a lei de Twyman e a rodada de confirmação.

Erros comuns na modelagem de uplift

Faça isso automático na Donnu

Modelagem de uplift depende de três coisas que se decidem antes de qualquer modelo existir: o experimento precisa ter mantido um grupo de controle, as características precisam estar carimbadas no instante do sorteio, e o resultado precisa ficar guardado com a atribuição original para virar dado de treino da rodada seguinte.

O primeiro item é o que mais se perde na prática. Quando uma campanha é ligada para todo mundo porque o efeito médio foi positivo, o controle desaparece e com ele a possibilidade de estimar qualquer efeito condicional dali para a frente. Manter um percentual pequeno de holdout permanente é o que mantém a porta aberta.

A Donnu carimba o estado do usuário na atribuição e preserva o histórico de braço por usuário, o que deixa a base de treino pronta sem reconstrução manual e sem risco de usar característica pós-tratamento. Para a leitura de cada faixa do escore, a calculadora de significância fecha exatamente as cinco linhas da tabela do exemplo.

Referências

Leia também: Efeito heterogêneo por segmento · Personalização x teste A/B · Maldição do vencedor · A lei de Twyman · Calculadora de significância · Read in English

Perguntas frequentes

O que é modelagem de uplift?
É estimar, para cada usuário, o efeito que o tratamento teria nele, e usar esse número para decidir quem tratar. O alvo formal é o efeito médio condicional do tratamento, ou seja, a diferença entre o desfecho esperado com tratamento e sem tratamento para um perfil de características. É diferente do efeito médio, que responde se vale tratar todo mundo, e diferente de segmentar depois do resultado, porque o escore é construído para virar política.
Qual é a diferença entre uplift e efeito heterogêneo por segmento?
Ler efeito por segmento é descritivo: você olha três ou quatro recortes definidos por humanos e compara. Uplift é preditivo e operacional: um modelo devolve um escore por usuário e a decisão de tratar sai de um corte nesse escore. Na prática, um substitui o outro quando o número de recortes possíveis é grande demais para um humano enumerar, e ambos exigem que o recorte tenha sido definido antes do sorteio ou por características pré-tratamento.
Dá para validar um modelo de uplift usuário a usuário?
Não. Nunca se observa ao mesmo tempo o desfecho com tratamento e sem tratamento para a mesma pessoa, então não existe rótulo verdadeiro por observação e nenhuma métrica de erro por linha. A avaliação é sempre agregada: divide-se a base de validação em faixas do escore predito e compara-se o efeito real medido dentro de cada faixa, que é o que as curvas de uplift e a medida Qini fazem.
Modelo de uplift pode piorar o resultado?
Pode, de duas formas. A primeira é o modelo estar errado e você tratar quem não responde, deixando de tratar quem responderia. A segunda é mais sutil: quando existe um grupo com efeito negativo, tratar todo mundo destrói valor mesmo com efeito médio positivo. No exemplo deste guia, o quartil de baixo perde 0,8000 ponto percentual, e é por isso que tratar os três primeiros quartis rende 550 conversões incrementais contra 450 de tratar a base inteira.
Preciso de um experimento aleatorizado para treinar um modelo de uplift?
Precisa de dados em que tratamento e controle tenham sido atribuídos de forma comparável, e um experimento aleatorizado é a única fonte que garante isso por construção. Treinar uplift em dados observacionais é possível, mas aí a estimativa carrega todas as premissas de inferência causal sem sorteio, e o escore aprende tanto quem responde quanto quem foi escolhido para receber.
Qual meta-aprendiz devo usar?
Künzel, Sekhon, Bickel e Yu comparam os principais em simulação extensa e são explícitos: o X-learner tem desempenho favorável, embora nenhum meta-aprendiz seja uniformemente o melhor. O X-learner foi proposto exatamente para o caso de desenho desbalanceado, quando um dos grupos é muito maior que o outro, que é o caso comum de uma campanha em que poucos foram tratados.