Avanços na Autocompletação de Consultas: Apresentando o Trie-NLG
O Trie-NLG melhora as sugestões de busca ao combinar personalização e dados históricos.
― 8 min ler
Índice
A finalização automática de consultas (QAC) ajuda os usuários sugerindo possíveis conclusões para suas pesquisas enquanto digitam. Esse recurso é útil pra guiar o pessoal a expressar suas necessidades de forma mais eficiente. Sistemas tradicionais de QAC dependem de logs históricos de consultas e usam Tries, que são estruturas em forma de árvore, pra encontrar as conclusões mais populares pra um determinado prefixo. Mas, dois desafios importantes aparecem: prefixos curtos costumam levar a sugestões irrelevantes e prefixos desconhecidos não têm dados registrados, o que dificulta fornecer sugestões.
Pra resolver esses problemas, abordagens recentes exploraram modelos de Geração de Linguagem Natural (NLG) personalizados, que usam o contexto de consultas anteriores pra melhorar as sugestões pra ambos os desafios. Porém, esses modelos de NLG têm limitações, como incluir consultas anteriores potencialmente irrelevantes e não conseguirem considerar a popularidade histórica das consultas. Isso levou à criação de um novo modelo chamado Trie-NLG, que combina as forças dos tries e dos modelos de NLG. O Trie-NLG usa dados de um trie pra conclusões populares e consultas de sessão pra personalização, resultando em um desempenho melhor na geração de sugestões relevantes.
O que é a Finalização Automática de Consultas?
A finalização automática de consultas é um recurso em motores de busca modernos que sugere consultas completas com base no que o usuário digitou até agora. Quando um usuário entra com uma consulta parcial, o sistema QAC recomenda consultas completas pra ajudar o usuário a terminar sua busca mais rápido. Isso é especialmente importante porque digitar uma consulta completa pode consumir tempo.
O processo de QAC geralmente envolve duas etapas: recuperação de candidatos e classificação de candidatos. Na etapa de recuperação de candidatos, uma lista de potenciais conclusões de consulta é coletada. O método mais comum pra isso é usar um trie, que fornece acesso rápido aos logs históricos de consultas e sugere as conclusões mais populares com base em um prefixo dado. No entanto, nem todas as situações são simples. Prefixos curtos podem ser ambíguos, e podem existir prefixos que nunca foram usados antes, resultando em nenhuma sugestão disponível.
Desafios na Finalização Automática de Consultas
Prefixos Curtos: Prefixos curtos costumam ser ambíguos e podem corresponder a muitas conclusões potenciais. Por exemplo, se um usuário digita "ir", o sistema pode sugerir conclusões como "google" ou "bom", mas essas sugestões podem não se alinhar com a verdadeira intenção do usuário. Sistemas QAC tradicionais podem priorizar a popularidade, o que não garante relevância.
Prefixos Não Vistos: Esses são prefixos que nunca apareceram em dados históricos, significando que métodos tradicionais não têm informações pra oferecer sugestões. Por exemplo, se um usuário digita uma nova frase que nunca foi pesquisada antes, o sistema não consegue fornecer conclusões relevantes.
Pra enfrentar esses problemas, alguns desenvolvedores se voltaram para modelos de sequência para sequência (seq2seq). Esses modelos sofisticados de NLG baseados em redes neurais podem utilizar informações de sessão relevantes pra sugerir conclusões de consulta adaptadas ao usuário. Contudo, mesmo esses modelos enfrentam desafios. Eles não conseguem incorporar facilmente a popularidade histórica das consultas, o que significa que podem perder sugestões relevantes que os usuários poderiam esperar com base no que foi popular no passado.
A Solução: Trie-NLG
O Trie-NLG é uma abordagem nova que combina sugestões personalizadas de modelos de NLG com os sinais de popularidade derivados dos tries. Esse modelo é projetado pra gerar melhores conclusões de consulta, especialmente para prefixos curtos e não vistos.
Como o Trie-NLG Funciona
O modelo Trie-NLG funciona extraindo conclusões populares de um trie. O trie usado foi construído a partir de uma quantidade significativa de dados de consulta ao longo de 1,5 anos, proporcionando uma base robusta pra gerar sugestões. O modelo busca o prefixo fornecido pelo usuário e recupera as conclusões mais relevantes do trie.
Para prefixos que não têm nenhuma conclusão registrada, o Trie-NLG usa um trie secundário chamado trie de sufixos. Esse trie é projetado pra lidar com sufixos de consultas de uma maneira que pode fornecer conclusões sintéticas, mesmo para prefixos não vistos. Por exemplo, se um usuário digita "kindle e-reader", e o trie principal não tem correspondências, o trie de sufixos pode ter sugestões baseadas em sufixos comuns como "kindle e-reader livro" ou "kindle e-reader preço".
Depois de reunir contexto de ambos os tries, o Trie-NLG passa essas informações, junto com consultas de sessão relevantes, para um modelo de NLG. Esse modelo então gera as possíveis conclusões com base nos dados de entrada combinados.
Benefícios do Trie-NLG
Relevância Melhorada: Ao usar sinais de popularidade de dados históricos e dados de sessão personalizados, o Trie-NLG pode oferecer sugestões mais relevantes em comparação aos métodos tradicionais.
Tratamento de Prefixos Curtos e Não Vistos: O modelo é especificamente projetado pra lidar com as questões relacionadas a prefixos curtos e não vistos. Ele pode fornecer sugestões úteis mesmo quando há pouco ou nenhum dado histórico disponível pra um determinado prefixo.
Desempenho Aprimorado: Testes com diferentes conjuntos de dados de QAC mostram que o Trie-NLG supera os modelos existentes de ponta ao sugerir conclusões de consulta.
Design Experimental e Resultados
Pra validar a eficácia do Trie-NLG, experimentos foram realizados usando dois grandes conjuntos de dados: logs de consulta do Bing e logs de consulta públicos da AOL. Esses conjuntos de dados foram cuidadosamente pré-processados pra remover ruídos e garantir que apenas dados de alta qualidade fossem usados pra treinar o modelo.
O desempenho do Trie-NLG foi avaliado em comparação a vários modelos de referência, incluindo modelos tradicionais baseados em trie, e outros modelos avançados de NLG como BART e T5. As métricas usadas pra avaliação incluíram a Classificação Recíproca Média (MRR), uma medida de quão bem as sugestões do modelo correspondem às consultas reais, e as pontuações BLEU, que ajudam a avaliar a qualidade das conclusões geradas.
Visão Geral dos Resultados
Os resultados indicaram uma melhoria significativa com o modelo Trie-NLG em relação aos modelos existentes. Em média, o desempenho aumentou de forma substancial em várias métricas. As melhorias confirmaram a hipótese de que combinar o contexto do trie com dados de sessão personalizados leva a um desempenho melhor na finalização automática.
Análise de Desempenho
Prefixos Curtos
A análise de como o Trie-NLG se sai com prefixos curtos foi particularmente reveladora. Observou-se que, enquanto modelos tradicionais tinham dificuldades com esses tipos de consultas, o uso de contexto adicional em buscas de trie pelo Trie-NLG permitiu que ele se saísse significativamente melhor, mesmo gerando sugestões relevantes que outros modelos não conseguiram produzir.
Prefixos Não Vistos
Para prefixos não vistos, os resultados também foram encorajadores. Enquanto modelos padrão não podiam fornecer sugestões devido à falta de dados, as conclusões sintéticas do Trie-NLG preencheram essa lacuna, demonstrando a capacidade do modelo de se adaptar e gerar conclusões significativas mesmo sem dados anteriores.
Tempo de Execução e Eficiência
Durante a experimentação, a análise de tempo de execução mostrou que o Trie-NLG teve desempenho comparável a outros modelos de NLG em termos de velocidade. As buscas em trie foram rápidas, tornando o modelo geral eficiente pra tarefas de finalização automática de consultas em tempo real.
Direções Futuras
Embora o Trie-NLG tenha mostrado resultados promissores, há áreas para exploração futura:
Filtragem de Dados Ruidosos: Nem todas as consultas de sessão são relevantes, e algumas podem introduzir ruído, levando a sugestões ruins. O trabalho futuro se concentrará em refinar o processo de seleção pra reter apenas as consultas mais relevantes pro contexto do usuário.
Modelos em Tempo Real: Investigar métodos que possam recuperar melhores sugestões em tempo real, em vez de depender somente de conclusões de trie estáticas, poderia melhorar ainda mais o desempenho.
Suporte Multilíngue: Expandir as abordagens usadas no Trie-NLG pra suportar múltiplas línguas tornaria a ferramenta mais versátil e aplicável a uma base de usuários mais ampla.
Conclusão
A finalização automática de consultas é um recurso essencial pra motores de busca modernos, e modelos como o Trie-NLG representam um avanço significativo em melhorar sua eficácia. Ao combinar as forças de sugestões personalizadas com dados de popularidade histórica, o Trie-NLG fornece uma solução que supera desafios tradicionais associados a prefixos curtos e não vistos. Os resultados dos testes demonstram o potencial do modelo pra melhorar a experiência do usuário ao gerar conclusões de consulta mais precisas e relevantes.
À medida que a tecnologia continua a evoluir, métodos como o Trie-NLG podem abrir caminho pra experiências de busca ainda mais personalizadas e eficientes no futuro.
Título: Trie-NLG: Trie Context Augmentation to Improve Personalized Query Auto-Completion for Short and Unseen Prefixes
Resumo: Query auto-completion (QAC) aims to suggest plausible completions for a given query prefix. Traditionally, QAC systems have leveraged tries curated from historical query logs to suggest most popular completions. In this context, there are two specific scenarios that are difficult to handle for any QAC system: short prefixes (which are inherently ambiguous) and unseen prefixes. Recently, personalized Natural Language Generation (NLG) models have been proposed to leverage previous session queries as context for addressing these two challenges. However, such NLG models suffer from two drawbacks: (1) some of the previous session queries could be noisy and irrelevant to the user intent for the current prefix, and (2) NLG models cannot directly incorporate historical query popularity. This motivates us to propose a novel NLG model for QAC, Trie-NLG, which jointly leverages popularity signals from trie and personalization signals from previous session queries. We train the Trie-NLG model by augmenting the prefix with rich context comprising of recent session queries and top trie completions. This simple modeling approach overcomes the limitations of trie-based and NLG-based approaches and leads to state-of-the-art performance. We evaluate the Trie-NLG model using two large QAC datasets. On average, our model achieves huge ~57% and ~14% boost in MRR over the popular trie-based lookup and the strong BART-based baseline methods, respectively. We make our code publicly available.
Autores: Kaushal Kumar Maurya, Maunendra Sankar Desarkar, Manish Gupta, Puneet Agrawal
Última atualização: 2023-10-23 00:00:00
Idioma: English
Fonte URL: https://arxiv.org/abs/2307.15455
Fonte PDF: https://arxiv.org/pdf/2307.15455
Licença: https://creativecommons.org/licenses/by-nc-sa/4.0/
Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.
Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.
Ligações de referência
- https://drive.google.com/file/d/1uQ95F5Og9DdWNoXx2mVfOtVEGue6paNA/view?usp=sharing
- https://github.com/jma127/pyltr
- https://github.com/asyml/texar
- https://huggingface.co/
- https://huggingface.co/blog/how-to-generate
- https://drive.google.com/file/d/1urHr7HR9zpH-R2BRWprN8P0dofceHJYz/view
- https://docs.google.com/document/d/17ng9X0Cu9i25DU1X2aI0PR-sHTOhl1QYFmACntcydaU/edit