Lei de Twyman: o resultado bom demais para ser verdade
Lei de Twyman: por que uma vitória espetacular em teste A/B costuma ser bug e como desenhar a rodada de confirmação que resolve a dúvida.

📚 Este artigo faz parte do guia Significância Estatística em Teste A/B: O Guia.
Um resultado espetacular de teste A/B é evidência sobre a sua instrumentação antes de ser evidência sobre o seu produto. A lei de Twyman, como Kohavi e colegas a enunciam nas regras de bolso do KDD 2014, diz que qualquer número que pareça interessante ou diferente costuma estar errado, e a consequência operacional é que uma vitória excepcionalmente forte deve disparar uma caça ao bug e uma rodada de confirmação, não um lançamento. Este guia cobre de onde vem a lei, a aritmética bayesiana que a torna rigorosa em vez de folclórica, quatro casos documentados em que uma vitória grande era artefato de medição, um exemplo trabalhado de um resultado estatisticamente impecável que ainda assim não deveria subir, e como dimensionar a rodada de confirmação que resolve a questão. Faz parte do nosso guia completo de teste A/B e conversa com teste A/A.
A lei de Twyman, e por que ela é procedimento operacional
Kohavi, Deng, Longbotham e Xu, ao consolidar sete regras de bolso generalizadas a partir de milhares de experimentos controlados na Amazon, Booking.com, LinkedIn e em várias propriedades da Microsoft para o KDD 2014, dedicam uma regra à assimetria com que os times leem resultados. A descrição que eles fazem da falha humana vale ser citada porque é o mecanismo, não a moral: somos inclinados a resistir e questionar resultados negativos sobre a nossa ótima funcionalidade nova, então cavamos mais fundo para achar a causa. Mas, quando o efeito é positivo, a inclinação é comemorar em vez de cavar mais fundo e procurar anomalias.
A resposta deles é instalar uma regra que tira a discricionariedade da mesa. Quando os resultados são excepcionalmente fortes, eles invocam a lei de Twyman: qualquer número que pareça interessante ou diferente costuma estar errado. O artigo credita a formulação a Twyman por meio de uma nota de A. S. C. Ehrenberg no Journal of the Royal Statistical Society, e os autores observam que o mesmo reflexo é padrão em outros cantos da ciência: nenhum editor moderno comemora uma prova submetida de que P é igual a NP, ele manda para um revisor achar o erro.
A regra não é ceticismo por esporte. É uma afirmação sobre taxas base, e é testável.
A aritmética bayesiana que torna a lei rigorosa
O mesmo artigo formaliza. Seja alfa o nível de significância, beta a taxa de erro tipo II e pi a probabilidade a priori de a hipótese alternativa ser verdadeira. Então a probabilidade posterior de um verdadeiro positivo dado um resultado estatisticamente significativo é
P(verdadeiro positivo | significativo) = pi × (1 − beta) ÷ [ pi × (1 − beta) + (1 − pi) × alfa ]
Esse é o mecanismo inteiro. O limiar de valor-p está fixo em 0,05 e o poder está fixo em 80 por cento em todas as linhas abaixo. A única coisa que muda é a frequência com que ideias desse tipo de fato funcionam, e isso muda a resposta por completo.
| Probabilidade a priori de a ideia funcionar | Probabilidade posterior de a vitória ser real, dado p abaixo de 0,05 |
|---|---|
| 1 em 3 | 88,9 por cento |
| 1 em 5 | 80,0 por cento |
| 1 em 10 | 64,0 por cento |
| 1 em 50 | 24,6 por cento |
| 1 em 100 | 13,9 por cento |
| 1 em 500 | 3,1 por cento |
Recalculamos esta tabela a partir da fórmula acima, com alfa 0,05 e poder 0,8. Duas das linhas são números publicados pelo próprio artigo e batem exatamente: Kohavi e colegas reportam 89 por cento para uma priori de 1 em 3, que eles descrevem como a taxa média de sucesso reportada em vários experimentos na Microsoft, e 3,1 por cento para uma priori de 1 em 500, que é a taxa que eles dão para um resultado de ruptura no Bing. O resto da tabela é a mesma aritmética estendida pela faixa.
A tradução prática: quanto mais raro o resultado que você está alegando, mais evidência é preciso para alegá-lo, e um valor-p abaixo de 0,05 não vira mais evidência quando a alegação fica mais rara. É exatamente a mesma evidência.
Quatro vitórias que eram artefato de medição
A razão para levar a taxa base a sério é que as explicações alternativas são documentadas e banais. Os quatro casos abaixo são dos artigos da Microsoft.
Uma queda de 64 por cento nos cliques que era boa notícia. Kohavi e colegas (KDD 2014) descrevem um time do Office Online testando o redesenho de uma página com uma chamada para ação forte. Compras de verdade eram difíceis de rastrear, então o time usou cliques em links geradores de receita como métrica substituta, assumindo que cliques vezes taxa de conversão é igual a receita. O redesenho produziu uma redução de 64 por cento em cliques por usuário. O tamanho chocante é o que fez as pessoas olharem, e a explicação foi que a suposição de uma taxa estável de clique para compra estava errada: a página de tratamento mostrava o preço, então atraía menos cliques de usuários mais qualificados, que convertiam a uma taxa muito mais alta.
Mais cliques numa página mais lenta. Um JavaScript foi adicionado à página de resultados do Bing, o que normalmente deixa tudo mais lento e deveria custar engajamento. Os cliques por usuário subiram. Seguindo a lei de Twyman, eles investigaram. O rastreio de cliques é baseado em beacons e alguns navegadores descartam a chamada quando o usuário está saindo da página; o JavaScript extra melhorou a fidelidade do rastreio de cliques, não o ato de clicar.
Uma migração de CDN que melhorou tudo. Ao longo de vários meses de 2013, o Bing trocou sua rede de entrega de conteúdo da Akamai para o próprio Bing Edge. O clique na página inicial melhorou, o uso de funcionalidades subiu, o abandono caiu. Mesma causa raiz: melhor fidelidade no rastreio de cliques. Para quantificar, eles substituíram o rastreio por beacon por redirecionamentos, um método com perda de clique desprezível, e acharam que a taxa de perda de clique em alguns navegadores caiu mais de 60 por cento. Boa parte do ganho ao longo do tempo era artefato.
Uma melhora dramática que contava em dobro. Um experimento no MSN tentou um algoritmo melhor de sugestão automática, e as buscas no Bing vindas do MSN melhoraram dramaticamente. O código novo estava, na prática, disparando duas buscas quando o usuário escolhia uma sugestão; o navegador desconectava uma delas, então só uma página de resultados era exibida, mas as duas eram contadas.
O artigo de 2012 sobre resultados intrigantes acrescenta o padrão que fecha o ciclo, num caso em que métricas sem relação com a mudança se moveram em direções inesperadas com alta significância estatística: rodamos o experimento de novo numa amostra maior para aumentar o poder estatístico, e muitos dos efeitos desapareceram. A causa foi arrasto de um experimento anterior nos mesmos baldes de usuário, um efeito que eles mediram como ainda visível cerca de três semanas depois num caso e não totalmente recuperado após três meses em outro. É para isso que serve uma rodada de confirmação.
Exemplo trabalhado: um resultado impecável que você não deveria subir
Aqui vem a parte incômoda. Rode estes números na calculadora:
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.
| Braço | Visitantes | Conversões | Taxa |
|---|---|---|---|
| A, controle | 40.000 | 1.200 | 3,000 por cento |
| B, variação | 40.000 | 1.680 | 4,200 por cento |
A calculadora devolve mais 1,200 ponto percentual, mais 40,00 por cento relativo, z = 9,11, valor-p abaixo de 0,0001, com intervalo de confiança de 95 por cento de mais 0,942 a mais 1,458 ponto percentual. Não teve peeking, não teve divisão desigual de tráfego, não teve problema de comparações múltiplas. Por toda checagem estatística este experimento passa, e o intervalo está confortavelmente longe de zero.
Agora aplique a taxa base. O efeito mínimo detectável deste desenho, com 40.000 por braço e taxa base de 3 por cento, é mais 11,3 por cento relativo, então o efeito observado é mais de três vezes o menor efeito que o teste foi montado para enxergar. Uma mudança de texto produzindo 40 por cento de ganho relativo na conversão do checkout não está na mesma categoria do movimento que Kohavi e colegas reportam como típico: num site como o Bing, onde milhares de experimentos rodam por ano, a maioria falha e os que dão certo melhoram métricas-chave em 0,1 a 1,0 por cento depois de diluídos ao impacto total. Coloque no quadro de Sessões por usuário deles: com uma distribuição de efeitos de experimento centrada em zero e desvio padrão de 0,25 por cento, eles apontam que uma melhora de 2,0 por cento fica a oito desvios padrão da média, com probabilidade da ordem de um em mil trilhões antes de considerar qualquer outro fator. A conclusão deles não é comemorar, é começar a trabalhar para achar o bug, que na experiência deles costuma ser erro de instrumentação.
Então a ação correta sobre este resultado não é subir nem descartar. É rodar a checklist de bug e depois rodar uma confirmação dimensionada para o efeito que você de fato aceitaria.
A checklist de bug, antes de gastar tráfego
Rodar de novo custa calendário. Checagem de defeito custa uma tarde, então vem primeiro.
| Checagem | Como é uma falha | Onde está coberto |
|---|---|---|
| Divisão de tráfego contra a proporção pretendida | A divisão observada se afasta da configurada além do acaso | SRM: divisão desigual de tráfego |
| Efeito concentrado num navegador ou dispositivo | A vitória existe num segmento e é plana em todos os outros, assinatura clássica de fidelidade de rastreio | Paradoxo de Simpson |
| Efeito concentrado num dia | Um release, uma indisponibilidade ou uma campanha caiu dentro da janela | Como fazer um teste A/B |
| Mesmo código de rastreio disparando nos dois braços | A variação dispara um evento a mais, ou o controle perde um | São os casos do MSN e do beacon acima |
| Definição de métrica idêntica entre braços | Um denominador mudou, ou um filtro se aplica a só um braço | Escolhendo a métrica primária |
| Métrica substituta no lugar da métrica real | Cliques se moveram, compras não, e a razão entre as duas nunca foi estável | O caso do Office Online acima |
| Usuários herdados de um experimento anterior | Os baldes não foram re-aleatorizados antes desta rodada | Teste A/A |
| O resultado apareceu enquanto você olhava | A decisão foi tomada no momento em que a linha cruzou | O problema do peeking |
Se alguma linha falha, você tem a sua explicação e nenhuma nova rodada é necessária. Se todas passam, o resultado se gradua de implausível para inexplicado, e a rodada de confirmação vira a forma mais barata que sobrou de aprender alguma coisa.
Desenhando a rodada de confirmação
Três regras, e a segunda é a que os times erram.
Re-aleatorize. A rodada de confirmação precisa atribuir usuários com uma semente de hash nova, não reusar os baldes da primeira rodada. Essa é a lição direta do achado de arrasto de 2012: reusar os mesmos baldes de usuário significa que a segunda rodada herda o que a primeira fez com aqueles usuários.
Dimensione para o efeito que você aceitaria, não para o efeito que observou. A primeira estimativa é inflada justamente porque foi selecionada por ser grande, então calcular o poder contra ela garante uma rodada sem poder. Suponha que o menor ganho que vale subir seja mais 10 por cento relativo sobre uma base de 3 por cento. A 95 por cento de confiança e 80 por cento de poder, isso exige 53.211 usuários por variação, número que você pode conferir na calculadora de tamanho de amostra. Calcular o poder pelos mais 40 por cento observados pediria uma fração disso e falharia em resolver a resposta honesta. A mecânica de escolher esse limiar está em efeito mínimo detectável.
Decida antes o que cada desfecho significa. Escreva os três casos antes de a rodada começar: o efeito replica perto da mesma magnitude e você sobe; o efeito replica muito menor mas ainda acima do seu limiar e você sobe o número menor; o efeito some e você encerra o experimento e mantém a caça ao bug aberta. Decidir depois é como uma confirmação fracassada vira uma análise de segmento.
Erros comuns
| Erro | O que produz |
|---|---|
| Tratar um valor-p pequeno como prova de que a medição está correta | Uma vitória divulgada que era artefato de rastreio por beacon |
| Dimensionar a confirmação pela estimativa da primeira rodada | Uma nova rodada pequena demais para resolver o efeito honesto, lida como “inconclusivo, sobe” |
| Reusar os mesmos baldes de usuário na nova rodada | Arrasto da primeira rodada embutido na segunda, conforme os achados de 2012 |
| Aplicar o ceticismo só às perdas | A assimetria que Kohavi e colegas nomeiam como a razão de a lei ser necessária |
| Confiar numa métrica substituta quando ela se move muito | O caso do Office Online: a substituta se moveu porque a relação quebrou |
| Anunciar o número antes de rodar a checklist | Um compromisso organizacional com um resultado que você não verificou |
| Concluir “não é bug” porque olhou e não achou | Ausência de bug encontrado é evidência fraca; a rodada de confirmação é o teste forte |
| Chamar a segunda rodada de fracasso quando ela devolve um efeito menor | Menor é o desfecho esperado, e muitas vezes ainda vale subir |
Faça isso automático na Donnu
A lei de Twyman só funciona como regra se as checagens já estiverem no relatório, porque ninguém roda uma checklist manual contra um número que o empolgou. A Donnu A/B roda a checagem de proporção de amostra em todo experimento e bloqueia a leitura quando a divisão falha, abre o resultado por dispositivo e por dia para que uma vitória concentrada num navegador fique visível sem consulta separada, e permite clonar um experimento com semente de aleatorização nova para que uma rodada de confirmação nunca herde os baldes da rodada que está confirmando. A página de resultado reporta o intervalo de confiança ao lado da estimativa pontual, que é o que te diz se um efeito replicado menor ainda está dentro do que você estava disposto a aceitar.
Comece um teste grátis de 14 dias e passe a sua próxima vitória surpreendente pelas checagens antes que ela chegue a um roadmap.
Referências
- Kohavi, R., Deng, A., Longbotham, R. e Xu, Y. Seven Rules of Thumb for Web Site Experimenters. KDD 2014. Fonte da lei de Twyman como enunciada (“qualquer número que pareça interessante ou diferente costuma estar errado”), da assimetria com que os times tratam resultados positivos e negativos, da formulação por regra de Bayes e dos posteriores publicados de 89 por cento para uma priori de 1 em 3 e 3,1 por cento para uma priori de 1 em 500, da taxa de um em 500 para ruptura no Bing e da melhora típica de 0,1 a 1,0 por cento em métricas-chave, do exemplo dos oito desvios padrão em Sessões por usuário, e dos casos do Office Online, da página mais lenta, do Bing Edge e da sugestão automática do MSN. exp-platform.com.
- Kohavi, R., Deng, A., Frasca, B., Longbotham, R., Walker, T. e Xu, Y. Trustworthy Online Controlled Experiments: Five Puzzling Outcomes Explained. KDD 2012. Fonte do caso em que métricas sem relação se moveram com alta significância e os efeitos em boa parte desapareceram numa nova rodada maior, e das medições de arrasto mostrando o efeito ainda visível cerca de três semanas depois num experimento e não totalmente recuperado após três meses em outro. exp-platform.com.
- Kohavi, R., Longbotham, R., Sommerfield, D. e Henne, R. M. Controlled experiments on the web: survey and practical guide. Data Mining and Knowledge Discovery, 18(1), 2009. Referência sobre aleatorização, validação por teste A/A e as checagens práticas que pegam defeito de instrumentação. exp-platform.com.
- Gelman, A. e Carlin, J. Beyond Power Calculations: Assessing Type S (Sign) and Type M (Magnitude) Errors. Perspectives on Psychological Science, 9(6), 2014. Fonte do resultado de que estimativas estatisticamente significativas vindas de desenhos com pouco poder superestimam sistematicamente a magnitude do efeito, que é a razão de a primeira estimativa espetacular ser a base errada para dimensionar uma nova rodada. stat.columbia.edu.
- Kohavi, R., Tang, D. e Xu, Y. Trustworthy Online Controlled Experiments: A Practical Guide to A/B Testing. Cambridge University Press, 2020. Capítulos sobre confiabilidade, instrumentação e replicação. Material complementar em experimentguide.com.
Leia também: Teste A/A · SRM: divisão desigual de tráfego · O problema do peeking · Efeito mínimo detectável · Calculadora de significância grátis · Read in English
Perguntas frequentes
- O que é a lei de Twyman?
- A lei de Twyman é a regra de que qualquer número que pareça interessante ou diferente costuma estar errado. Kohavi e colegas colocam exatamente nesses termos nas sete regras de bolso para experimentadores web publicadas no KDD 2014, creditando a formulação a Twyman por meio de uma nota de A. S. C. Ehrenberg no Journal of the Royal Statistical Society, e aplicam isso como procedimento operacional: quando um resultado é excepcionalmente forte, eles param de comemorar e começam a procurar o bug. O ponto não é que vitórias grandes nunca acontecem. É que vitória grande e erro de instrumentação produzem o mesmo número no painel, e erro de instrumentação é muito mais comum.
- Um valor-p baixo me protege da lei de Twyman?
- Não, e essa é a parte que os times mais erram. O valor-p mede quão improváveis são os dados sob a hipótese nula dado que a medição está correta. Ele não carrega informação nenhuma sobre a medição estar correta. Um defeito de rastreio de clique que infla o tratamento produz um valor-p pequeno com total confiança. Kohavi e colegas (KDD 2014) descrevem exatamente isso: um resultado positivo que passou por todas as checagens estatísticas e acabou sendo melhora na fidelidade do rastreio de cliques, não mais cliques.
- Por que uma priori forte ganha de um resultado significativo?
- Porque significância é condicional e a priori não. Kohavi e colegas (KDD 2014) formalizam com a regra de Bayes: a probabilidade posterior de um verdadeiro positivo dado um resultado estatisticamente significativo é a priori vezes o poder, dividido por isso mais um menos a priori vezes alfa. A alfa 0,05 e 80 por cento de poder, uma priori de 1 em 3 dá 89 por cento de confiança, mas uma priori de 1 em 500, que é a taxa declarada por eles para um resultado de ruptura no Bing, dá só 3,1 por cento. Mesmo valor-p, mesmo poder, conclusão completamente diferente.
- O que é uma rodada de confirmação?
- É uma segunda execução independente do mesmo experimento com aleatorização nova, tratada como a rodada que decide, enquanto a primeira é rebaixada a hipótese. Kohavi e colegas (KDD 2014) enunciam a regra sem rodeio: resultados estatisticamente significativos no limite devem ser vistos como provisórios e rodados de novo para replicar. O artigo de 2012 sobre resultados intrigantes mostra o retorno disso, descrevendo um caso surpreendente em que eles rodaram de novo com amostra maior e boa parte dos efeitos desapareceu.
- De que tamanho deve ser a rodada de confirmação?
- Dimensione para o efeito que você de fato aceitaria, não para o efeito inflado que a primeira rodada reportou. Se a primeira rodada mostrou mais 23 por cento relativo mas o menor efeito que vale subir é mais 10 por cento, calcule o poder para mais 10 por cento. Dimensionar pela primeira estimativa garante uma rodada pequena demais, porque a primeira estimativa é enviesada para cima justamente pela seleção que fez você reparar nela.
- O que devo checar antes de rodar de novo?
- Cheque o encanamento primeiro, porque rodar de novo é caro e bug é barato de achar. Confirme que a divisão de tráfego bate com a proporção pretendida, que o efeito não está concentrado num navegador, num dispositivo ou num dia, que a definição da métrica não mudou entre os braços, que o mesmo código de rastreio dispara nos dois braços, e que nenhum outro release subiu no meio do experimento. Kohavi e colegas (KDD 2012) rastreiam vários resultados espetaculares exatamente a essas categorias, com destaque para rastreio de cliques.
- A lei de Twyman vale também para perdas espetaculares?
- Deveria valer, mas a reação humana é assimétrica e essa assimetria é a razão de a lei ser útil. Kohavi e colegas (KDD 2014) nomeiam isso diretamente: os times resistem e questionam resultados negativos sobre a própria funcionalidade nova, então investigam fundo e acham a causa, enquanto um resultado positivo convida à comemoração em vez de escrutínio. Um resultado de menos 40 por cento normalmente é investigado sozinho. Um de mais 40 por cento precisa de uma regra que force a mesma investigação.