- Діпанкар Саркар: Технолог та підприємець/
- Мої твори/
- Забезпечення персоналізованого контенту: Новий рекомендаційний двигун Momspresso/
Забезпечення персоналізованого контенту: Новий рекомендаційний двигун Momspresso
Зміст
У сучасному цифровому світі, насиченому контентом, надзвичайно важливо доставляти правильний контент правильному користувачеві в потрібний час. Спираючись на нашу попередню роботу над конвеєром даних Momspresso, ми тепер впровадили потужний рекомендаційний двигун, який персоналізує контент для мільйонів користувачів Momspresso. Давайте розглянемо, як ми створили цю систему.
Виклик #
Momspresso потребувала рекомендаційної системи, яка могла б:
- Обробляти великі обсяги даних про взаємодію користувачів
- Швидко генерувати персоналізовані рекомендації статей
- Оновлювати рекомендації в реальному часі, коли користувачі взаємодіють з контентом
- Масштабуватися для обробки мільйонів користувачів та статей
Наше рішення: Рекомендаційний двигун на базі Spark #
Ми розробили багатокомпонентну рекомендаційну систему, яка використовує конвеєр даних, який ми створили раніше:
1. Скрипти генерації даних #
Використовуючи сховище подій з нашого конвеєра даних, ми створили скрипти для генерації навчального набору для нашої рекомендаційної моделі. Це дозволяє нам використовувати реальні дані про взаємодію користувачів для навчання нашої моделі.
2. Spark ML-lib для навчання моделі #
Ми налаштували систему на базі Spark ML-lib для навчання моделі. Наразі ми використовуємо колаборативну фільтрацію, яку можна швидко навчити лише за 3-4 дні даних. Це дозволяє нам часто оновлювати нашу модель, забезпечуючи актуальність наших рекомендацій.
3. Веб-сервіс рекомендацій #
Ми створили веб-сервіс, який надає рекомендації статей на основі ідентифікаторів користувачів. Щоб вирішити проблему високої затримки завантаження моделі в пам’ять, ми впровадили стратегію кешування за допомогою Redis. Це забезпечує швидкий час відгуку для наших рекомендацій.
4. Сервіс видалення рекомендацій #
Щоб підтримувати актуальність рекомендацій, ми впровадили сервіс, який видаляє переглянуті статті з рекомендацій користувача. Цей сервіс підключається до Kafka і прослуховує події перегляду, оновлюючи рекомендації в реальному часі.
Ключові особливості нашого рекомендаційного двигуна #
Персоналізація: Використовуючи колаборативну фільтрацію, ми можемо надавати індивідуальні рекомендації на основі поведінки подібних користувачів.
Оновлення в реальному часі: Наша система оновлює рекомендації, коли користувачі взаємодіють з контентом, забезпечуючи актуальність.
Масштабованість: Використання Spark та Redis дозволяє нашій системі ефективно обробляти великі обсяги даних та користувачів.
Гнучкість: Наш модульний дизайн дозволяє легко замінювати алгоритм рекомендацій або додавати нові функції в майбутньому.
Впровадження та результати #
Інтеграція рекомендаційного двигуна з платформою Momspresso була простою. Ми внесли невелику зміну конфігурації в Nginx, щоб використовувати наш новий веб-сервіс рекомендацій як API для одного з каналів на виробничому веб-сайті.
Перші результати були багатообіцяючими:
- Підвищена залученість: Користувачі проводять більше часу на платформі, читаючи більше статей за сеанс.
- Покращене відкриття: Користувачі знаходять та взаємодіють з більш різноманітним контентом.
- Підвищене задоволення користувачів: Початкові відгуки свідчать про те, що користувачі вважають персоналізовані рекомендації цінними.
Погляд у майбутнє #
Продовжуючи вдосконалювати наш рекомендаційний двигун, ми з нетерпінням очікуємо кількох майбутніх покращень:
- Мультимодельний підхід: Впровадження різних рекомендаційних моделей для різних типів контенту або сегментів користувачів.
- Фільтрація на основі контенту: Включення характеристик статей для покращення рекомендацій, особливо для нового або нішевого контенту.
- Фреймворк A/B тестування: Створення системи для легкого тестування різних стратегій рекомендацій.
Постійно вдосконалюючи наш рекомендаційний двигун, ми допомагаємо Momspresso надавати більше цінності своїм користувачам, утримуючи їх залученими та спонукаючи повертатися за більш персоналізованим контентом.
Слідкуйте за нашим наступним постом, де ми обговоримо, як ми використовуємо конвеєр даних та рекомендаційний двигун для отримання корисних висновків для контент-стратегії Momspresso!