Sari la conținut
  1. Scrierile mele/

Alimentarea conținutului personalizat: Noul motor de recomandări al Momspresso

În lumea digitală bogată în conținut de astăzi, livrarea conținutului potrivit către utilizatorul potrivit la momentul potrivit este crucială. Bazându-ne pe munca noastră anterioară privind pipeline-ul de date al Momspresso, am implementat acum un puternic motor de recomandări care personalizează conținutul pentru milioane de utilizatori Momspresso. Să vedem cum am construit acest sistem.

Provocarea #

Momspresso avea nevoie de un sistem de recomandare care să poată:

  1. Procesa volume mari de date de interacțiune ale utilizatorilor
  2. Genera rapid recomandări de articole personalizate
  3. Actualiza recomandările în timp real pe măsură ce utilizatorii interacționează cu conținutul
  4. Scala pentru a gestiona milioane de utilizatori și articole

Soluția noastră: Un motor de recomandări alimentat de Spark #

Am proiectat un sistem de recomandare cu mai multe componente care valorifică pipeline-ul de date pe care l-am construit anterior:

1. Scripturi de generare a datelor #

Folosind depozitul de evenimente din pipeline-ul nostru de date, am creat scripturi pentru a genera setul de antrenament pentru modelul nostru de recomandare. Acest lucru ne permite să folosim date reale de interacțiune ale utilizatorilor pentru a antrena modelul nostru.

2. Spark ML-lib pentru antrenarea modelului #

Am configurat un sistem bazat pe Spark ML-lib pentru antrenarea modelului. În prezent, folosim filtrarea colaborativă, care poate fi antrenată rapid cu doar 3-4 zile de date. Acest lucru ne permite să actualizăm modelul nostru frecvent, asigurându-ne că recomandările noastre rămân relevante.

3. Serviciu web de recomandări #

Am construit un serviciu web care oferă recomandări de articole bazate pe ID-urile utilizatorilor. Pentru a aborda latența ridicată a încărcării modelului în memorie, am implementat o strategie de caching folosind Redis. Acest lucru asigură timpi de răspuns rapizi pentru recomandările noastre.

4. Serviciu de ștergere a recomandărilor #

Pentru a menține recomandările proaspete, am implementat un serviciu care elimină articolele vizualizate din recomandările unui utilizator. Acest serviciu se conectează la Kafka și ascultă evenimentele de vizualizare, actualizând recomandările în timp real.

Caracteristici cheie ale motorului nostru de recomandări #

  1. Personalizare: Prin utilizarea filtrării colaborative, putem oferi recomandări personalizate bazate pe comportamentele utilizatorilor similari.

  2. Actualizări în timp real: Sistemul nostru actualizează recomandările pe măsură ce utilizatorii interacționează cu conținutul, asigurând relevanța.

  3. Scalabilitate: Utilizarea Spark și Redis permite sistemului nostru să gestioneze eficient volume mari de date și utilizatori.

  4. Flexibilitate: Designul nostru modular ne permite să înlocuim cu ușurință algoritmul de recomandare sau să adăugăm noi funcționalități în viitor.

Implementare și rezultate #

Integrarea motorului de recomandări cu platforma Momspresso a fost simplă. Am făcut o mică modificare de configurare în Nginx pentru a utiliza noul nostru serviciu web de recomandări ca API pentru unul dintre feed-urile de pe site-ul de producție.

Rezultatele inițiale au fost promițătoare:

  • Creșterea angajamentului: Utilizatorii petrec mai mult timp pe platformă, citind mai multe articole per sesiune.
  • Descoperire îmbunătățită: Utilizatorii găsesc și interacționează cu o varietate mai mare de conținut.
  • Satisfacție sporită a utilizatorilor: Feedback-ul inițial sugerează că utilizatorii consideră valoroase recomandările personalizate.

Privind înainte #

Pe măsură ce continuăm să rafinăm motorul nostru de recomandări, suntem entuziasmați de mai multe îmbunătățiri viitoare:

  1. Abordare multi-model: Implementarea diferitelor modele de recomandare pentru diferite tipuri de conținut sau segmente de utilizatori.
  2. Filtrare bazată pe conținut: Încorporarea caracteristicilor articolelor pentru a îmbunătăți recomandările, în special pentru conținut nou sau de nișă.
  3. Cadru de testare A/B: Construirea unui sistem pentru a testa cu ușurință diferite strategii de recomandare.

Prin îmbunătățirea continuă a motorului nostru de recomandări, ajutăm Momspresso să ofere mai multă valoare utilizatorilor lor, menținându-i angajați și determinându-i să revină pentru mai mult conținut personalizat.

Rămâneți conectați pentru următoarea noastră postare, unde vom discuta despre cum folosim pipeline-ul de date și motorul de recomandări pentru a obține informații acționabile pentru strategia de conținut a Momspresso!