Ir para o conteúdo principal
  1. Os meus escritos/

Impulsionando Conteúdo Personalizado: O Novo Motor de Recomendação da Momspresso

No mundo digital rico em conteúdo de hoje, entregar o conteúdo certo ao utilizador certo no momento certo é crucial. Baseando-nos no nosso trabalho anterior no pipeline de dados da Momspresso, implementámos agora um poderoso motor de recomendação que personaliza o conteúdo para milhões de utilizadores da Momspresso. Vamos mergulhar em como construímos este sistema.

O Desafio #

A Momspresso precisava de um sistema de recomendação que pudesse:

  1. Processar grandes volumes de dados de interação do utilizador
  2. Gerar recomendações de artigos personalizadas rapidamente
  3. Atualizar recomendações em tempo real à medida que os utilizadores interagem com o conteúdo
  4. Escalar para lidar com milhões de utilizadores e artigos

A Nossa Solução: Um Motor de Recomendação Alimentado por Spark #

Desenhámos um sistema de recomendação multi-componente que aproveita o pipeline de dados que construímos anteriormente:

1. Scripts de Geração de Dados #

Usando o armazenamento de eventos do nosso pipeline de dados, criámos scripts para gerar o conjunto de treino para o nosso modelo de recomendação. Isto permite-nos usar dados reais de interação do utilizador para treinar o nosso modelo.

2. Spark ML-lib para Treino do Modelo #

Configurámos um sistema baseado em Spark ML-lib para o treino do modelo. Atualmente, estamos a usar filtragem colaborativa, que pode ser treinada rapidamente com apenas 3-4 dias de dados. Isto permite-nos atualizar o nosso modelo frequentemente, garantindo que as nossas recomendações permanecem relevantes.

3. Serviço Web de Recomendação #

Construímos um serviço web que serve recomendações de artigos baseadas em IDs de utilizador. Para resolver a alta latência de carregar o modelo para a memória, implementámos uma estratégia de cache usando Redis. Isto garante tempos de resposta rápidos para as nossas recomendações.

4. Serviço de Eliminação de Recomendação #

Para manter as recomendações atualizadas, implementámos um serviço que remove artigos visualizados das recomendações de um utilizador. Este serviço conecta-se ao Kafka e escuta eventos de visualização, atualizando as recomendações em tempo real.

Características Principais do Nosso Motor de Recomendação #

  1. Personalização: Ao usar filtragem colaborativa, podemos fornecer recomendações personalizadas baseadas nos comportamentos de utilizadores semelhantes.

  2. Atualizações em Tempo Real: O nosso sistema atualiza as recomendações à medida que os utilizadores interagem com o conteúdo, garantindo relevância.

  3. Escalabilidade: O uso de Spark e Redis permite que o nosso sistema lide eficientemente com grandes volumes de dados e utilizadores.

  4. Flexibilidade: O nosso design modular permite-nos trocar facilmente o algoritmo de recomendação ou adicionar novas funcionalidades no futuro.

Implementação e Resultados #

A integração do motor de recomendação com a plataforma da Momspresso foi simples. Fizemos uma pequena alteração de configuração no Nginx para usar o nosso novo serviço web de recomendação como a API para um dos feeds no site de produção.

Os resultados iniciais têm sido promissores:

  • Aumento do Envolvimento: Os utilizadores estão a passar mais tempo na plataforma, lendo mais artigos por sessão.
  • Descoberta Melhorada: Os utilizadores estão a encontrar e a envolver-se com uma maior variedade de conteúdo.
  • Satisfação do Utilizador Melhorada: O feedback inicial sugere que os utilizadores consideram as recomendações personalizadas valiosas.

Olhando para o Futuro #

À medida que continuamos a refinar o nosso motor de recomendação, estamos entusiasmados com várias melhorias futuras:

  1. Abordagem Multi-modelo: Implementar diferentes modelos de recomendação para diferentes tipos de conteúdo ou segmentos de utilizadores.
  2. Filtragem Baseada em Conteúdo: Incorporar características dos artigos para melhorar as recomendações, especialmente para conteúdo novo ou de nicho.
  3. Framework de Testes A/B: Construir um sistema para testar facilmente diferentes estratégias de recomendação.

Ao melhorar continuamente o nosso motor de recomendação, estamos a ajudar a Momspresso a entregar mais valor aos seus utilizadores, mantendo-os envolvidos e fazendo-os voltar para mais conteúdo personalizado.

Fiquem atentos ao nosso próximo post, onde discutiremos como estamos a usar o pipeline de dados e o motor de recomendação para obter insights acionáveis para a estratégia de conteúdo da Momspresso!