Arquitetura real · Sênior
Booking.com: 150 modelos, 6 lições
Arquitetura real em produção. Pontos centrais: métrica offline não prevê impacto de negócio e A/B como verdade.
Resposta curta
Arquitetura real em produção. Pontos centrais: métrica offline não prevê impacto de negócio e A/B como verdade. Este caso parte de um resumo público do artigo do Booking.com apresentado na KDD. O resumo trata das lições da integração de cerca de 150 aplicações de aprendizado de máquina voltadas ao cliente.
01 · CONTEXTO
Um resumo sobre muitos modelos, não sobre um
Este caso parte de um resumo público do artigo do Booking.com apresentado na KDD. O resumo trata das lições da integração de cerca de 150 aplicações de aprendizado de máquina voltadas ao cliente.
Segundo o resumo, as seis lições do título não aparecem listadas no corpo do artigo, mas podem ser inferidas da divisão em seções. A conclusão principal citada é que um processo iterativo, guiado por hipóteses e integrado a outras disciplinas foi fundamental para construir 150 produtos habilitados por aprendizado de máquina.
O resumo também lembra por que recomendar é difícil nesse domínio: reservar uma hospedagem errada é bem pior do que assistir a um filme de que você não gosta.
02 · MODELOS EM PRODUÇÃO
Muitos modelos, vários papéis
Com cerca de 150 modelos em produção, o aprendizado de máquina tocou muitas partes da experiência do Booking.com. Alguns modelos são específicos de um caso de uso em um contexto; outros formam uma camada semântica, modelando conceitos úteis em vários contextos. O resumo agrupa os modelos em seis grandes categorias.
Entre elas estão os modelos de otimização de interface. Nesses, segundo o resumo, raramente um único valor é ótimo para todos, e por isso os modelos consideram o contexto e as informações do usuário para decidir a melhor interface.
Na primeira lição, o resumo afirma que, comparados a outros projetos bem-sucedidos que não usaram aprendizado de máquina, os projetos com aprendizado de máquina tendem a entregar retornos maiores.
03 · MÉTRICA E NEGÓCIO
Modelo melhor não é negócio melhor
O Booking.com estima o valor entregue por um modelo por meio de experimentos controlados aleatorizados, que medem o impacto em métricas de negócio. Um achado destacado no resumo é que melhorar o desempenho de um modelo não se traduz necessariamente em ganho de valor de negócio.
| Razão possível | O que significa |
|---|---|
| Saturação de valor | Não há mais valor a extrair, o que quer que se faça. |
| Saturação de segmento | Populações menores são expostas ao tratamento, e o modelo antigo e o novo concordam em grande parte. |
| Otimização de um proxy | O proxy, por exemplo cliques, não se converte na métrica de negócio desejada, por exemplo conversão. |
04 · PROBLEMA E LATÊNCIA
Definir bem o problema e servir rápido
A terceira lição é definir o problema com cuidado antes de construir modelos. O resumo destaca que algumas das maiores melhorias vêm de mudar a formulação, e não de melhorar o modelo dentro de uma formulação dada. O exemplo citado é trocar um modelo de preferência do usuário baseado em dados de cliques por um problema de processamento de linguagem natural baseado em avaliações dos hóspedes. Segundo o resumo, muitas vezes o melhor problema não é o que vem à mente primeiro.
A quarta lição é que a latência de predição importa. Em um experimento com latência sintética, o resumo relata que um aumento de cerca de 30% na latência custou cerca de 0.5% nas taxas de conversão.
O pedido do usuário chega à aplicação, que precisa de predições para decidir o que mostrar.
Pré-computação e cache são duas das táticas citadas no resumo para reduzir a latência dos modelos; aqui o cache guarda predições já calculadas.
Cópias do modelo distribuídas horizontalmente, atrás de um balanceador, são outra tática citada no resumo.
Favorecer modelos com menos parâmetros e usar um motor de predição linear próprio também constam da lista de táticas do resumo.
O esforço se justifica porque, no experimento de latência sintética, mais latência custou conversão.
05 · FEEDBACK CEDO
Saber cedo se o modelo está mal
A quinta lição é obter feedback cedo sobre a qualidade do modelo. Com o modelo atendendo pedidos, monitorar a qualidade da saída é crucial e traz pelo menos dois desafios. O primeiro é o feedback incompleto, pela dificuldade de observar os rótulos verdadeiros. O segundo é o feedback atrasado: a previsão feita na hora da reserva sobre se o usuário deixará uma avaliação só pode ser conferida depois da viagem.
Para classificadores binários, uma tática é olhar a distribuição das respostas do modelo. Segundo o resumo, distribuições bimodais suaves, com um ponto estável claro, são sinal de um modelo que separa bem as duas classes, e outros formatos podem indicar um modelo com dificuldade. A análise da distribuição das respostas se mostrou muito útil para detectar defeitos nos modelos bem cedo.
A aplicação pede a predição e o modelo devolve uma pontuação para cada pedido.
Cada pontuação é registrada sem esperar o rótulo verdadeiro, que pode demorar a chegar.
O analisador monta a distribuição das pontuações e procura o formato bimodal suave; outros formatos sugerem um modelo com dificuldade.
O resultado vai para o monitoramento, o que permite detectar defeitos cedo.
06 · EXPERIMENTOS
A prova é o experimento controlado
A sexta lição é testar o impacto de negócio com experimentos controlados aleatorizados. Segundo o resumo, a grande maioria dos casos de sucesso estudados foi viabilizada por desenhos de experimento sofisticados, seja para guiar o desenvolvimento, seja para detectar o impacto.
Quando nem todos podem ser expostos à mudança, os grupos de tratamento e de não tratamento são criados dentro do subconjunto elegível.
Ao comparar modelos, o interesse está nos casos em que os dois discordam, e a linha de base é um grupo de controle que invoca o modelo atual.
Para avaliar o impacto do desempenho, acrescenta-se um terceiro grupo de controle em que o modelo não é invocado.
O que se compara são métricas de negócio, que é o que os experimentos controlados medem no Booking.com.
Perguntas frequentes
O que é Booking.com: 150 modelos, 6 lições?
Arquitetura real em produção. Pontos centrais: métrica offline não prevê impacto de negócio e A/B como verdade.
O que o design de Booking.com: 150 modelos, 6 lições cobre?
Ele está organizado nestas seções: Um resumo sobre muitos modelos, não sobre um, Muitos modelos, vários papéis, Modelo melhor não é negócio melhor, Definir bem o problema e servir rápido, Saber cedo se o modelo está mal e A prova é o experimento controlado.
Quanto tempo leva Booking.com: 150 modelos, 6 lições e qual é o nível?
Leva cerca de 17 minutos para ler e tem nível Sênior.
Agora projete você mesmo
Rode este caso como uma entrevista na escola de System Design: você toma as decisões, o tutor as questiona e você vê a nota do seu desenho.