Aller au contenu

Alimenter le contenu personnalisé : Le nouveau moteur de recommandation de Momspresso

·4 mins

Dans le monde numérique riche en contenu d’aujourd’hui, fournir le bon contenu au bon utilisateur au bon moment est crucial. En nous appuyant sur notre travail antérieur sur le pipeline de données de Momspresso, nous avons maintenant mis en place un puissant moteur de recommandation qui personnalise le contenu pour des millions d’utilisateurs de Momspresso. Plongeons dans la façon dont nous avons construit ce système.

Le défi #

Momspresso avait besoin d’un système de recommandation capable de :

  1. Traiter de grands volumes de données d’interaction utilisateur
  2. Générer rapidement des recommandations d’articles personnalisées
  3. Mettre à jour les recommandations en temps réel à mesure que les utilisateurs interagissent avec le contenu
  4. S’adapter pour gérer des millions d’utilisateurs et d’articles

Notre solution : Un moteur de recommandation alimenté par Spark #

Nous avons conçu un système de recommandation à plusieurs composants qui exploite le pipeline de données que nous avons construit précédemment :

1. Scripts de génération de données #

En utilisant le stockage d’événements de notre pipeline de données, nous avons créé des scripts pour générer l’ensemble d’entraînement pour notre modèle de recommandation. Cela nous permet d’utiliser des données d’interaction utilisateur réelles pour entraîner notre modèle.

2. Spark ML-lib pour l’entraînement du modèle #

Nous avons mis en place un système basé sur Spark ML-lib pour l’entraînement du modèle. Nous utilisons actuellement le filtrage collaboratif, qui peut être entraîné rapidement avec seulement 3-4 jours de données. Cela nous permet de mettre à jour notre modèle fréquemment, garantissant que nos recommandations restent pertinentes.

3. Service Web de recommandation #

Nous avons construit un service Web qui fournit des recommandations d’articles basées sur les identifiants des utilisateurs. Pour résoudre le problème de latence élevée lors du chargement du modèle en mémoire, nous avons mis en place une stratégie de mise en cache utilisant Redis. Cela garantit des temps de réponse rapides pour nos recommandations.

4. Service de suppression des recommandations #

Pour garder les recommandations fraîches, nous avons mis en place un service qui supprime les articles consultés des recommandations d’un utilisateur. Ce service se connecte à Kafka et écoute les événements de consultation, mettant à jour les recommandations en temps réel.

Caractéristiques clés de notre moteur de recommandation #

  1. Personnalisation : En utilisant le filtrage collaboratif, nous pouvons fournir des recommandations sur mesure basées sur les comportements d’utilisateurs similaires.

  2. Mises à jour en temps réel : Notre système met à jour les recommandations à mesure que les utilisateurs interagissent avec le contenu, assurant la pertinence.

  3. Évolutivité : L’utilisation de Spark et Redis permet à notre système de gérer efficacement de grands volumes de données et d’utilisateurs.

  4. Flexibilité : Notre conception modulaire nous permet de facilement remplacer l’algorithme de recommandation ou d’ajouter de nouvelles fonctionnalités à l’avenir.

Mise en œuvre et résultats #

L’intégration du moteur de recommandation à la plateforme de Momspresso a été simple. Nous avons effectué une petite modification de configuration dans Nginx pour utiliser notre nouveau service Web de recommandation comme API pour l’un des flux sur le site Web de production.

Les premiers résultats ont été prometteurs :

  • Engagement accru : Les utilisateurs passent plus de temps sur la plateforme, lisant plus d’articles par session.
  • Découverte améliorée : Les utilisateurs trouvent et interagissent avec une plus grande variété de contenu.
  • Satisfaction utilisateur améliorée : Les premiers retours suggèrent que les utilisateurs trouvent les recommandations personnalisées précieuses.

Perspectives d’avenir #

Alors que nous continuons à affiner notre moteur de recommandation, nous sommes enthousiastes à l’idée de plusieurs améliorations futures :

  1. Approche multi-modèles : Mise en œuvre de différents modèles de recommandation pour différents types de contenu ou segments d’utilisateurs.
  2. Filtrage basé sur le contenu : Incorporation des caractéristiques des articles pour améliorer les recommandations, en particulier pour le contenu nouveau ou de niche.
  3. Cadre de tests A/B : Construction d’un système pour tester facilement différentes stratégies de recommandation.

En améliorant continuellement notre moteur de recommandation, nous aidons Momspresso à offrir plus de valeur à leurs utilisateurs, les maintenant engagés et les incitant à revenir pour plus de contenu personnalisé.

Restez à l’écoute pour notre prochain article, où nous discuterons de la façon dont nous utilisons le pipeline de données et le moteur de recommandation pour obtenir des insights exploitables pour la stratégie de contenu de Momspresso !