← Últimos artigos
🤖 machine learning

BACH: A Bayesian Admixture of Contrastive Heads for Multi-Interest Two-Tower Retrieval

O BACH introduz uma estrutura de Mistura Bayesiana de Cabeças Contrastivas para recuperação de duas torres de múltiplos interesses que utiliza inferência variacional para modelar os interesses do usuário como uma mistura suave, mitigando efetivamente o colapso de roteamento ao mesmo tempo em que fornece pesos de interesse por usuário e melhora o desempenho de recuperação em benchmarks de larga escala.

Autores originais: Quoc Phong Nguyen, Paul Albert, Long Vuong, Vuong Le, Julien Monteil

Publicado 2026-07-10
📖 6 min de leitura🧠 Leitura aprofundada

Autores originais: Quoc Phong Nguyen, Paul Albert, Long Vuong, Vuong Le, Julien Monteil

Artigo original sob licença CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta é uma explicação gerada por IA do artigo abaixo. Não foi escrita nem endossada pelos autores. Para precisão técnica, consulte o artigo original. Ler aviso legal completo

Imagine que você está caminhando por uma biblioteca imensa e infinita com milhões de livros. Você tem um gosto muito específico: ama ficção científica dos anos 1980, mas também adora secretamente tutoriais de culinária e história antiga.

Os sistemas de recomendação antigos são como um bibliotecário que tenta espremer todos os seus interesses em uma única personalidade. Eles tentam encontrar um único "você" em seu cérebro. O problema é que, se você ama ficção científica acima de tudo, o bibliotecário assume que você quer ficção científica. Eles empurram os livros de culinária e história para o fundo do armário porque eles não se encaixam no rótulo único de "ficção científica". Isso é o que o artigo chama de abordagem de "vetor único", e ela deixa muitos de seus interesses na prateleira.

Então, alguns bibliotecários mais espertos tentaram um novo truque: o Multi-Interesse. Em vez de uma única personalidade, eles deram a você kk diferentes "cabeças" (ou avatares) em seus cérebros. Uma cabeça é o Fã de Ficção Científica, outra é o Cozinheiro, outra é o Historiador. Quando você pede um livro, o bibliotecário verifica todas as kk cabeças e escolhe a que melhor combina.

Mas aqui está o erro que o artigo encontrou:
A forma antiga de treinar esses bibliotecários era como um jogo de "vencedor leva tudo". Quando você escolhia um livro de ficção científica, o bibliotecário só dava um "high-five" para a Cabeça de Ficção Científica. As Cabeças de Culinária e de História eram ignoradas. Com o tempo, a Cabeça de Ficção Científica ficava super forte, enquanto as outras ficavam preguiçosas, paravam de aprender e, eventualmente, começavam apenas a copiar a Cabeça de Ficção Científica. Isso é chamado de "colapso de roteamento" (routing collapse). O bibliotecário acaba com kk cabeças, mas todas agem como a mesma pessoa. Além disso, o bibliotecário não tinha ideia de quanto você realmente se importava com a culinária versus a história; ele apenas chutava.

A Solução: BACH (Bayesian Admixture of Contrastive Heads)

Os autores, uma equipe da Amazon, construíram um novo sistema chamado BACH. Pense no BACH como um bibliotecário que não apenas escolhe uma cabeça para falar com você, mas cria um coquetel personalizado dos seus interesses para cada solicitação.

Veja como o BACH funciona, usando a mecânica real do artigo:

1. A Mistura Suave (Sem o "Vencedor Leva Tudo")
Em vez de escolher apenas uma cabeça para fazer o trabalho, o BACH pergunta: "Quanto papel a Cabeça de Ficção Científica desempenhou? Quanto a Cabeça de Culinária desempenhou?".

  • O Jeito Antigo: "Cabeça de Ficção Científica venceu! Todo o resto recebe zero pontos."
  • O Jeito do BACH: "Cabeça de Ficção Científica recebe 70% do crédito, Culinária recebe 20% e História recebe 10%."
    Isso é chamado de mistura suave (soft mixture). Como cada cabeça recebe um pouco de crédito (um "gradiente") toda vez que você interage com qualquer item, nenhuma cabeça fica preguiçosa ou colapsa. Todas continuam aprendendo e se mantendo afiadas.

2. O Peso Personalizado (A "Mistura" ou "Admixture")
O BACH não apenas adivinha seus interesses; ele calcula um peso (πu\pi_u) específico para você.

  • Para você, o peso pode ser: 70% Ficção Científica, 20% Culinária, 10% História.
  • Para o seu amigo, pode ser: 10% Ficção Científica, 80% Culinária, 10% História.
    O artigo mostra que esses pesos são aprendidos usando um método chamado inferência variacional. É como se o bibliotecário estivesse constantemente ajustando um botão para cada usuário para descobrir exatamente quanta massa dar a cada interesse. Esse peso é usado tanto durante o treinamento quanto quando você realmente recebe as recomendações, para que o sistema permaneça consistente.

3. A Opção do "Global Codebook"
O artigo também descobriu um truque legal. Você pode ter as cabeças de "Ficção Científica" e "Culinária" sendo compartilhadas entre todos (uma lista global de tópicos), enquanto apenas os pesos mudam para cada pessoa.

  • Por que isso é legal: O bibliotecário pode pré-calcular a "lista de livros de Ficção Científica" e a "lista de livros de Culinária" uma única vez e armazená-las. Quando você entra, ele apenas mistura essas listas pré-fabricadas com base nos seus pesos pessoais. É super rápido e funciona muito bem mesmo para novos usuários que ainda não leram nada (o problema do "cold start").

O Que o Artigo Realmente Provou (e o Que Não Provou)

Os autores não apenas chutaram; eles testaram em três enormes conjuntos de dados do mundo real: MovieLens-20M (20 milhões de avaliações de filmes), Taobao (um enorme site de compras chinês) e Netflix.

  • Os Resultados: No TODAS as três bases de dados, o BACH superou os antigos modelos de multi-interesse de "vencedor leva tudo" e os modelos de personalidade única.
    • No MovieLens-20M, a melhor versão do BACH (usando 32 cabeças) alcançou um AUPRC de 0,069, superando o próximo melhor modelo (0,067).
    • No Taobao, o BACH melhorou os resultados do topo da lista em cerca de 3% a 5% em comparação ao melhor método anterior.
    • Na Netflix, a melhoria foi ainda mais acentuada, com o BACH superando a competição em 12,7% em AUPRC com 32 cabeças.
  • A Descoberta do "Roteamento": O artigo explicitamente descartou a forma antiga de treinamento onde o sistema atualiza apenas a "cabeça vencedora" (chamada de "pos-multihead"). Eles descobriram que treinar com a regra do "vencedor apenas" é, na verdade, pior do que treinar onde cada candidato é pontuado pela sua melhor cabeça. De fato, o artigo mostrou que o treinamento "vencedor leva tudo" causou uma queda massiva de desempenho (até 41% pior nos rankings superiores) em comparação com a pontuação de "todos os candidatos".
  • A Surpresa da "Concentração": O artigo argumentou contra a necessidade de "priors" complexos (regras pré-definidas) para manter o sistema estável. Eles descobriram que o sistema se autorregulariza. A "concentração" (o quão nítido ou difuso é um interesse) naturalmente permanece dentro de uma faixa saudável (em torno de 17 a 30 para a matemática específica deles) sem precisar de regras extras para forçar isso.

A Conclusão

O artigo sugere que, ao tratar os interesses de um usuário como uma mistura ponderada e flexível, em vez de uma escolha única ou um conjunto rígido de vencedores, podemos construir sistemas de recomendação que são mais precisos, menos propensos ao "colapso" e mais rápidos de executar.

Eles testaram isso com 32 cabeças (interesses) e descobriram que funcionava melhor, mas também mostraram que funciona com 8, 16, 128 e 256 cabeças. O sistema é robusto, e as duas versões matemáticas diferentes que testaram (chamadas de p-BACH e v-BACH) tiveram um desempenho quase idêntico, sugerindo que a ideia da mistura é o que importa, não o sabor específico da matemática.

Portanto, se você é um adolescente curioso com um milhão de hobbies diferentes, o BACH é o bibliotecário que finalmente para de tentar te forçar em uma caixa e, em vez disso, constrói uma prateleira personalizada e perfeita só para você.

Afogado em artigos na sua área?

Receba digests diários dos artigos mais recentes que correspondam às suas palavras-chave de pesquisa — com resumos técnicos, no seu idioma.

Experimentar Digest →