antonio leandro

busca e recuperação

A flexible large-scale similar product identification system in e-commerce

paper · Zhen ZUO, Lixi Wang, Michinari Momma, Wenbo Wang, Yikai Ni, Jianfeng Lin, Yi Sun · · ~21 min de leitura do original

a tese

não existe "produto similar": similaridade é uma escolha da aplicação, e o que escala em catálogo de bilhões de itens é um serviço só que atende todas as definições em vez de um pipeline por caso de uso

o que fica

  1. Similaridade entre produtos não é propriedade do par: quase-idêntico vendido por outro vendedor, substituto para quem tem o mesmo interesse e parecido no padrão visual são três relações diferentes, e cada aplicação quer uma.
  2. Comparar todos os pares de um catálogo de bilhões de itens é quadrático, então o gargalo é de infraestrutura antes de ser de modelo.
  3. A aposta do PSS é de plataforma, não de modelo: consolidar num serviço o que antes era um pipeline por time.
  4. Verificação ("este par é similar?") e ranking ("quais são os mais similares?") são tarefas avaliadas separadamente, e ir bem numa não implica ir bem na outra.
  5. O registro público deste trabalho é só o resumo: não há número, baseline nem dataset, então o que se leva daqui é a formulação do problema, não a evidência.

o problema

Um catálogo de e-commerce em escala de bilhões de itens depende de saber quais produtos se parecem com quais. Busca precisa colapsar duplicata para não devolver a mesma coisa dez vezes. Recomendação precisa achar substituto quando o item está fora de estoque. Descoberta visual precisa achar o que tem o mesmo padrão, o mesmo estilo, a mesma cor. Preço precisa reconhecer que dois anúncios de vendedores diferentes são o mesmo objeto.

Essas quatro perguntas parecem uma só e não são. “Quase idêntico” é uma relação; “substituível para um cliente com este interesse” é outra; “visualmente parecido em design” é uma terceira. Um sistema calibrado para a primeira erra feio nas outras duas. O resultado natural dessa divergência é que cada time constrói o seu pipeline, com o seu modelo, o seu índice e o seu custo de cluster — e o catálogo passa a ter várias respostas incompatíveis para a mesma pergunta. Por cima disso vem o custo bruto: comparar todos os pares de um catálogo de bilhões de itens é quadrático, e nenhuma das definições de similaridade muda esse fato. O problema é de infraestrutura antes de ser de modelo.

a ideia

O paper trata a variedade de definições como requisito, não como ruído a ser eliminado. Em vez de perguntar qual é a definição certa de similaridade, o PSS — Product Similarity Service — assume que não existe uma e vira um serviço consolidado: um único sistema que atende os diversos cálculos de similaridade da Amazon, apoiado em redes neurais profundas para a representação dos produtos e em computação distribuída para o volume.

A troca é a de plataforma contra artesanato. Um time que precisa de similaridade deixa de montar do zero um pipeline inteiro e passa a chamar um serviço, escolhendo o tipo de similaridade que quer. O trabalho é avaliado em duas tarefas distintas — verificação, que decide se um par é similar, e ranking, que ordena candidatos por similaridade — além de eficiência de computação e escalabilidade sob volume grande de dados.

o que isso custou

O primeiro custo é do próprio registro: o que está público é o resumo apresentado no workshop de recomendação industrial do KDD 2020. Não há número, não há baseline, não há dataset, não há descrição da arquitetura. “Retorna produtos altamente relevantes” e “tem boa eficiência de computação” são afirmações sem grandeza atrás. Dá para levar daqui a formulação do problema e o formato da solução; não dá para levar evidência, e quem precisa de evidência tem que procurar em outro lugar.

O segundo custo é estrutural e o paper não esconde: um sistema all-in-one não resolve a ambiguidade da palavra “similar”, ele a empurra para a interface. Alguém continua tendo que decidir qual noção de similaridade a aplicação quer, e agora essa decisão é um parâmetro de chamada. Serviço compartilhado também tem o preço de sempre — a generalidade custa qualidade na ponta específica, e um time com um caso de uso estreito quase sempre consegue fazer melhor sozinho do que a plataforma faz para todo mundo. O paper não afirma o contrário; ele aposta que o ganho de custo e consistência paga essa diferença.

O terceiro é que verificação e ranking medem coisas distintas, e nenhuma das duas é métrica de negócio. Um par corretamente classificado como similar não diz que a recomendação vendeu.

onde isso aparece hoje

O formato que o PSS descreve virou o padrão de fato: representar cada item com um vetor aprendido e trocar a comparação exaustiva por busca aproximada de vizinhos. A parte de escapar do custo quadrático tem linhagem anterior ao aprendizado profundo, no trabalho clássico de Scaling Up All Pairs Similarity Search e nas técnicas de blocking em escala para casar registros que descrevem a mesma entidade. A parte de representação encostou no que veio de Sentence-BERT, para texto, e do CLIP, para o caso visual que o paper cita como uma das definições de similaridade.

Do lado do serviço, a infraestrutura que o PSS montou internamente virou categoria de produto: índices como o HNSW, bibliotecas como o Faiss e a leva de bancos vetoriais entregam hoje, como componente, o que em 2020 cada empresa grande construía por conta.

lido na íntegra por pipeline de llm, revisado por antonio leandro antes de publicar ·