Melhorando Sistemas de Recomendação com B-Splines
Um novo método melhora a codificação de características numéricas em sistemas de recomendação.
― 7 min ler
Índice
Máquinas de Fatoração (FMs) são bastante usadas em Sistemas de Recomendação porque são eficientes e oferecem previsões precisas. Esses sistemas costumam lidar com dados organizados em tabelas que têm informações numéricas e categóricas. Incluir dados numéricos é importante para fazer previsões precisas, mas pode ser complicado. Tradicionalmente, dados numéricos são convertidos em dados categóricos por meio de métodos como binning ou transformação escalar. Porém, esses métodos podem causar problemas, especialmente quando os dados são limitados.
Neste artigo, apresentamos um método para incorporar Características Numéricas em máquinas de fatoração, transformando-as em um conjunto de valores de função. Em vez de depender apenas do binning, nossa abordagem permite mais flexibilidade e maior precisão. Usamos um conjunto específico de funções conhecidas como B-splines para alcançar isso, que são conhecidas por sua forte capacidade de aproximar formas complexas.
Sistemas de Recomendação
Sistemas de recomendação são feitos para sugerir itens aos usuários com base nos seus interesses. Eles costumam se basear em interações passadas entre usuários e itens para fazer previsões sobre o que os usuários podem preferir no futuro. Em publicidade online, por exemplo, um sistema de recomendação precisa avaliar rapidamente quais anúncios provavelmente vão interessar a um usuário com base no seu comportamento anterior.
O treinamento desses sistemas envolve processar uma grande quantidade de dados de interação em tempo real para fazer previsões precisas. É crucial que os processos de treinamento e previsão sejam rápidos porque as preferências dos usuários podem mudar com frequência. Máquinas de fatoração são bem adequadas para essa tarefa porque permitem treinamento rápido e podem produzir previsões precisas.
Desafios com Características Numéricas
Em sistemas de recomendação que usam máquinas de fatoração, os dados geralmente são organizados em formato de tabela. Cada linha na tabela representa uma interação usuário-item e contém vários campos que podem ser numéricos ou categóricos. Campos categóricos podem ser facilmente transformados em vetores codificados em one-hot, mas campos numéricos apresentam um desafio.
Normalmente, campos numéricos são convertidos em campos categóricos usando binning. Isso envolve dividir o intervalo numérico em intervalos e codificar os pontos de dados com base em qual intervalo eles se encaixam. No entanto, depender apenas do binning pode resultar em perda de informação porque o modelo aprende a operar através de funções de degrau em vez de captar mudanças suaves nos dados.
A precisão das previsões feitas por modelos que dependem de binning pode sofrer devido ao número limitado de bins ou intervalos. Se houver muito poucos bins, o modelo não consegue capturar os padrões subjacentes nos dados. Se houver muitos, pode levar a problemas de esparsidade, onde não há dados suficientes em cada bin para o modelo aprender efetivamente.
Uma Nova Abordagem: Codificação por Funções Base
Para lidar com esses desafios, propomos um novo método de codificação de características numéricas em máquinas de fatoração usando funções base. Em vez de transformar dados numéricos em bins, os representamos como uma combinação de funções. Isso permite que o modelo capture comportamentos mais complexos, o que pode levar a uma precisão melhor nas previsões.
Usando funções base, particularmente B-splines, conseguimos aproximar características numéricas com menos parâmetros. B-splines são flexíveis porque podem modelar funções suaves e são computacionalmente eficientes. Esse método mantém tempos de treinamento e previsão rápidos, facilitando a integração em sistemas existentes sem grandes mudanças.
Benefícios do Uso de B-Splines
B-splines são conhecidos por suas fortes capacidades de aproximação. Eles podem representar funções complexas com precisão e com menos elementos de base em comparação com métodos tradicionais de binning. Essa propriedade reduz o risco de problemas de esparsidade, permitindo que o modelo aprenda representações melhores dos dados.
A principal vantagem do uso de B-splines é que eles podem aproximar funções ótimas de perto sem precisar de um grande número de bins. Isso significa que o modelo pode alcançar alta precisão mesmo com uma quantidade limitada de dados de treinamento. Além disso, B-splines têm propriedades bem definidas que os tornam adequados para tarefas de aproximação numérica.
Implementação em Sistemas Existentes
Uma das vantagens da nossa abordagem é que ela pode ser facilmente incorporada em sistemas de recomendação existentes que atualmente usam binning para características numéricas. Ao simular um modelo binned, podemos criar um modelo inicial usando nossa abordagem de função base. Isso permite que as organizações se beneficiem de uma precisão melhor sem precisar reformular completamente seus sistemas existentes.
Para criar esse modelo simulado, podemos calcular o vetor de características para qualquer valor numérico e, em seguida, usá-lo para gerar embeddings correspondentes a intervalos de bins especificados. Esse processo envolve avaliar a base B-spline em pontos estratégicos para criar os embeddings necessários.
Experimentos e Resultados
Para validar nosso método, realizamos vários experimentos. Começamos com um conjunto de dados sintético para avaliar a capacidade do modelo de aprender funções segmentadas que se assemelham à verdade. Nossos resultados mostraram que o modelo usando B-splines alcançou melhor precisão comparado aos métodos tradicionais de binning.
Também testamos nossa abordagem em conjuntos de dados reais, incluindo moradia, renda e outras tarefas de previsão. Nossos modelos consistentemente superaram aqueles que dependiam de binning. Os resultados indicaram que o uso de funções base melhorou significativamente o desempenho em vários cenários.
A/B Testing em Aplicações do Mundo Real
Em um cenário do mundo real, realizamos testes A/B em uma plataforma de publicidade online que utilizava um modelo proprietário de máquina de fatoração. Comparando nossa abordagem de B-spline com o método convencional de usar bins de alta resolução, demonstramos uma redução significativa no erro de previsão nas taxas de cliques.
Após implementar nosso modelo, o erro médio de previsão caiu, mostrando a eficácia do nosso método em um ambiente ao vivo. Esse aumento na precisão levou à adoção do nosso modelo em produção, destacando seus benefícios práticos.
Conclusão
Nosso método proposto oferece uma maneira nova de codificar características numéricas em máquinas de fatoração, utilizando codificação por funções base para melhorar a precisão do modelo. Ao evitar armadilhas associadas às técnicas de binning tradicionais, como problemas de esparsidade, fornecemos uma solução eficaz para sistemas de recomendação.
Embora nossa abordagem seja poderosa, ela requer uma análise de dados inicial cuidadosa para ajustar uma função que se aproxime da distribuição empírica das características numéricas. No geral, acreditamos que esse método pode melhorar significativamente o desempenho de sistemas de recomendação que operam com dados numéricos.
Limitações e Trabalho Futuro
Apesar de suas vantagens, nossa abordagem tem algumas limitações. Ela requer consideração cuidadosa ao ser aplicada a todos os campos numéricos, já que nem todo valor numérico pode se ajustar bem às suposições feitas pelas B-splines. Campos com tendências irregulares podem não se beneficiar desse método e poderiam ter um desempenho melhor com abordagens tradicionais como binning.
Trabalhos futuros podem se concentrar em expandir a aplicabilidade das funções base em vários contextos e explorar outros tipos de funções base que poderiam oferecer desempenho semelhante ou melhorado. Além disso, a pesquisa contínua sobre como otimizar a integração dessa abordagem com sistemas existentes será essencial para uma adoção mais ampla.
Resumindo, a combinação de máquinas de fatoração e codificação por funções base apresenta uma oportunidade empolgante para melhorar sistemas de recomendação, fornecendo um meio mais preciso e eficiente de lidar com características numéricas em aplicações baseadas em dados.
Título: Function Basis Encoding of Numerical Features in Factorization Machines
Resumo: Factorization machine (FM) variants are widely used for large scale real-time content recommendation systems, since they offer an excellent balance between model accuracy and low computational costs for training and inference. These systems are trained on tabular data with both numerical and categorical columns. Incorporating numerical columns poses a challenge, and they are typically incorporated using a scalar transformation or binning, which can be either learned or chosen a-priori. In this work, we provide a systematic and theoretically-justified way to incorporate numerical features into FM variants by encoding them into a vector of function values for a set of functions of one's choice. We view factorization machines as approximators of segmentized functions, namely, functions from a field's value to the real numbers, assuming the remaining fields are assigned some given constants, which we refer to as the segment. From this perspective, we show that our technique yields a model that learns segmentized functions of the numerical feature spanned by the set of functions of one's choice, namely, the spanning coefficients vary between segments. Hence, to improve model accuracy we advocate the use of functions known to have strong approximation power, and offer the B-Spline basis due to its well-known approximation power, availability in software libraries, and efficiency. Our technique preserves fast training and inference, and requires only a small modification of the computational graph of an FM model. Therefore, it is easy to incorporate into an existing system to improve its performance. Finally, we back our claims with a set of experiments, including synthetic, performance evaluation on several data-sets, and an A/B test on a real online advertising system which shows improved performance.
Autores: Alex Shtoff, Elie Abboud, Rotem Stram, Oren Somekh
Última atualização: 2025-01-02 00:00:00
Idioma: English
Fonte URL: https://arxiv.org/abs/2305.14528
Fonte PDF: https://arxiv.org/pdf/2305.14528
Licença: https://creativecommons.org/licenses/by/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.