МОДУЛЬ 13 · Middle-track · 2.5 час

Модель поняла, что к телефону берут чехол, ничего не зная о товарах

Матричная факторизация раскладывает историю покупок на «вкусы» и «свойства». Сочетаемость товаров возникает из чисел, а не из описаний.

Пройти модуль в симуляторе Все 23 урока

Первые два модуля бесплатны, без карты. Остальные — по подписке $20/мес.

🏢 Ситуация

Большой квартальный проект. Виктор (CTO) на кике:

«Блок "Вам может понравиться" на главной приносит 4% выручки, и он сейчас — просто топ продаж, одинаковый для всех. Конкуренты делают персонализацию и растят конверсию на 15–20%. Делаем свою рекомендательную систему. Датасет: 2 млн пользователей, 300 тысяч товаров, история просмотров и покупок.»

Лена распределяет роли: вы отвечаете за модель-кандидат и офлайн-метрики.

🎯 Ваша задача

  1. Понять подходы: попьюлярити, коллаборативная фильтрация, контентные модели.
  2. Освоить матричную факторизацию (ALS) и implicit feedback.
  3. Померить качество ранжирования: precision@k, recall@k, NDCG.

📚 Теория

Три семейства рекомендаций

  1. Неперсональные: топ продаж, тренды. Бейзлайн, который обязан быть в сравнении. Для новых пользователей — часто единственный вариант.
  2. Коллаборативная фильтрация (CF): «похожие пользователи покупают похожее». Работает только на поведении, не требует описаний товаров. Слабость — холодный старт (новый товар/пользователь без истории).
  3. Контентные: рекомендуем похожее по атрибутам (категория, бренд, текст описания, картинка). Решают холодный старт для товаров.

Продакшен-системы — гибрид: двухэтапная архитектура: сначала лёгкая модель отбирает сотни кандидатов (retrieval), потом тяжёлая модель точно ранжирует (ranking). Так работают YouTube, Amazon и все крупные маркетплейсы.

Матричная факторизация

Матрица «пользователи × товары» с оценками взаимодействий гигантская и на 99.99% пустая. Идея: разложить её в произведение двух узких матриц — эмбеддинги пользователей U (n×k) и товаров V (m×k), k ≈ 32–256. Скор товара для пользователя = скалярное произведение векторов. Похожие вкусы → близкие векторы.

Матричная факторизация: R ≈ U × Vᵀ R: пользователи × товары (99.99% пусто) U: юзеры × k вкусы × Vᵀ: k × товары («свойства») скор товара = вектор юзера · вектор товара k ≈ 32–256 скрытых факторов: похожие вкусы → близкие векторы
Гигантскую разреженную матрицу взаимодействий раскладываем в произведение двух узких: эмбеддинги пользователей и товаров. Рекомендация = ближайшие товары в пространстве вкусов.

Explicit vs implicit feedback

Метрики ранжирования

Пользователь видит топ-K (например, 10 позиций) — важно качество верха списка:

Валидация — по времени: обучаемся на истории до даты T, проверяем покупки после T.


Что запомнить

  • Бейзлайн «топ продаж» обязан быть в каждом сравнении.
  • CF учится на поведении; implicit feedback ≠ explicit, нужны ALS/BPR.
  • Метрики ранжирования: NDCG@k, precision@k; валидация по времени.
  • Прод — это гибрид + двухэтапка (retrieval → ranking) + A/B-тест.

Дальше в модуле: Практика: ALS на implicit

Открыть модуль →

Соседние уроки

12 Кто наши клиенты на самом деле? 14 Склад затоварен: прогноз спроса

Программа целиком — 23 урока