Суть метода
В e-commerce есть матрица взаимодействий: строки — пользователи, столбцы — товары, значения — оценки, клики или покупки. Матрица разреженная: большинство пользователей взаимодействовало лишь с малой долей каталога.
Матричная факторизация разлагает эту матрицу R на произведение двух матриц меньшей размерности:
R ≈ U × V^T
U — матрица пользователей [N × K]
V — матрица товаров [M × K]
K — число латентных факторов (10–200)
Предсказание для пользователя u и товара i:
r̂(u,i) = U[u] · V[i]
Модель обучается так, чтобы скалярное произведение векторов как можно точнее воспроизводило известные взаимодействия.
Основные алгоритмы
| Алгоритм | Тип данных | Особенность |
|---|---|---|
| SVD / SVD++ | Явные оценки (1–5) | Классика, основа Netflix Prize |
| ALS | Неявные данные (клики, просмотры) | Параллелизуется, хорошо на больших данных |
| NMF | Любые неотрицательные | Интерпретируемые факторы |
| BPR (Bayesian Personalized Ranking) | Неявные данные | Оптимизирует ранжирование напрямую |
В e-commerce данные преимущественно неявные (пользователь не ставит оценок — он смотрит и покупает), поэтому ALS и BPR используются чаще SVD.
Как интерпретировать результат
После обучения каждый пользователь и каждый товар представлен вектором из K чисел. Товары с похожими векторами схожи по паттернам взаимодействия. Пользователю рекомендуют товары, чей вектор имеет наибольшее скалярное произведение с его вектором.
Важно: латентные факторы не имеют явной семантики. Нельзя сказать «фактор №3 — это интерес к электронике». Алгоритм сам находит абстрактные измерения, описывающие данные.
Место MF среди современных алгоритмов
Матричная факторизация остаётся сильным baseline — она работает хорошо, интерпретируема в достаточной мере и вычислительно предсказуема. Современные нейросетевые подходы (Two-Tower, Item2Vec, трансформеры) превосходят её в точности при достаточном объёме данных, но требуют больше ресурсов на обучение и инференс. В большинстве e-commerce сценариев MF + ALS — разумный старт перед усложнением архитектуры.