LFM
Материал из MachineLearning.
| | Статья написана с использованием LLM GPT-5.6 Thinking и проверена участником К.Н.Гибадуллина 22:50, 14 июля 2026 (MSD) |
Содержание |
Латентная факторная модель
Латентная факторная модель (англ. Latent Factor Model, LFM) — метод, который часто используется в рекомендательных системах.
Представим таблицу оценок фильмов. В строках находятся пользователи, в столбцах — фильмы, а в ячейках — оценки от 1 до 5. Обычно большая часть ячеек пустая, потому что каждый пользователь посмотрел только небольшое число фильмов.
Задача рекомендательной системы — предположить, какие оценки пользователь поставил бы непросмотренным фильмам. После этого система может выбрать фильмы с самыми высокими предсказанными оценками и показать их пользователю.
Латентная факторная модель решает эту задачу с помощью небольшого числа скрытых характеристик пользователей и объектов.
Основная идея
Слово «латентный» означает «скрытый». Модель предполагает, что выбор пользователя зависит от нескольких скрытых факторов.
Для фильмов такими факторами можно условно считать:
- любовь к комедиям;
- интерес к боевикам;
- предпочтение спокойных или динамичных сюжетов;
- интерес к авторскому кино;
- отношение к популярным фильмам.
Каждый пользователь получает набор чисел, описывающих его предпочтения. Каждый фильм также получает набор чисел, описывающих его свойства.
Например, пользователь может любить динамичные фильмы и не интересоваться романтическими историями. Если свойства фильма хорошо совпадают с предпочтениями пользователя, модель предскажет высокую оценку.
Однако модель не получает заранее заданные признаки вроде «комедия» или «боевик». Она сама находит скрытые факторы во время обучения. Поэтому смысл каждого фактора не всегда можно понятно объяснить. Один фактор может одновременно учитывать жанр, популярность, стиль фильма и другие особенности.
Латентная факторная модель относится к методам коллаборативной фильтрации, поскольку она делает выводы на основе взаимодействий множества пользователей с множеством объектов.
Матричное разложение
Пусть — таблица взаимодействий пользователей с объектами. Например, элемент
может быть оценкой, которую пользователь
поставил фильму
.
Основная идея модели записывается формулой
Здесь:
-
— исходная матрица оценок или взаимодействий;
-
— матрица скрытых предпочтений пользователей;
-
— матрица скрытых свойств объектов;
-
— транспонированная матрица
.
Каждая строка матрицы содержит вектор одного пользователя. Каждая строка матрицы
содержит вектор одного объекта.
Если используется десять скрытых факторов, то каждый пользователь и каждый фильм описываются десятью числами. Это намного компактнее, чем хранить отдельное предсказание для каждой пары «пользователь — фильм».
Предсказанная оценка пользователя для объекта
вычисляется по формуле
Здесь:
-
— предсказанная оценка;
-
— вектор пользователя;
-
— вектор объекта.
Вычисление является скалярным произведением. Простыми словами, модель сравнивает предпочтения пользователя со свойствами объекта. Чем лучше они совпадают, тем выше получается предсказанная оценка.
Небольшой пример
Пусть модель использует только два скрытых фактора.
Вектор пользователя имеет вид
Вектор фильма имеет вид
Предсказанная оценка равна
Модель предполагает, что пользователь поставит фильму оценку примерно .
Первый скрытый фактор внёс в результат большую часть оценки, поскольку его значения у пользователя и фильма достаточно велики. Второй фактор повлиял на результат слабее.
На практике модель обычно использует больше двух факторов, а их значения подбираются автоматически.
Обучение модели
Сначала скрытые векторы пользователей и объектов неизвестны. Модель должна найти такие матрицы и
, чтобы её предсказания были близки к настоящим оценкам.
Пусть — множество известных взаимодействий. Например, если пользователь оценил фильм, соответствующая пара входит в
.
Одна из распространённых функций ошибки имеет вид
Первая часть формулы показывает ошибку предсказания. Модель сравнивает настоящую оценку с предсказанием
. Чем сильнее они различаются, тем больше ошибка.
Вторая часть является регуляризацией. Она не позволяет значениям скрытых факторов становиться слишком большими. Это помогает уменьшить переобучение, при котором модель хорошо запоминает известные оценки, но плохо предсказывает новые.
Число определяет силу регуляризации. При слишком маленьком значении модель может переобучиться. При слишком большом значении модель станет слишком простой.
Для обучения LFM применяются разные методы.
- Стохастический градиентный спуск рассматривает известные оценки по одной или небольшими группами и постепенно изменяет векторы пользователей и объектов.
- Метод чередующихся наименьших квадратов по очереди обучает матрицы
и
. Сначала фиксируется одна матрица и вычисляется другая, затем они меняются ролями.
- iALS — вариант ALS, предназначенный главным образом для работы с неявной обратной связью.
Все эти методы решают одну общую задачу: пытаются найти такие скрытые векторы, при которых ошибка модели будет как можно меньше.
Явная и неявная обратная связь
В рекомендательных системах используются два основных типа данных.
Явная обратная связь — это информация, которую пользователь сообщил напрямую. Например:
- оценка фильма от 1 до 5;
- отметка «нравится»;
- отметка «не нравится»;
- выставленный товару балл.
Такие данные легко понимать, но пользователи оставляют их не очень часто.
Неявная обратная связь получается из действий пользователя. Например:
- просмотр фильма;
- щелчок по новости;
- покупка товара;
- добавление товара в корзину;
- прослушивание песни;
- время просмотра страницы.
Неявных данных обычно намного больше, но их сложнее интерпретировать. Если пользователь открыл страницу товара, это ещё не означает, что товар ему понравился.
Кроме того, отсутствие взаимодействия нельзя автоматически считать отрицательной оценкой. Пользователь мог не нажать на фильм просто потому, что система никогда его не показывала.
В моделях для неявной обратной связи часто учитывается уверенность в наблюдении. Например, многократное прослушивание песни может считаться более сильным сигналом, чем одно случайное включение.
Преимущества и ограничения
К преимуществам латентной факторной модели относятся:
- компактное представление пользователей и объектов;
- возможность работать с разреженными таблицами;
- способность находить скрытые закономерности;
- сравнительно хорошая масштабируемость;
- удобство построения персональных рекомендаций.
Модель может заметить, что два пользователя имеют похожие вкусы, даже если они оценили мало одинаковых фильмов. Это возможно благодаря сравнению их скрытых векторов.
Главным ограничением является проблема холодного старта. Если пользователь только зарегистрировался, система ещё не знает его предпочтений. Если объект только появился, у него ещё нет взаимодействий, по которым можно обучить скрытый вектор.
Также у LFM есть другие недостатки:
- скрытые факторы трудно объяснять;
- качество зависит от количества и качества данных;
- популярные объекты могут получать больше рекомендаций;
- обычная модель почти не использует описания объектов и данные о пользователях;
- базовая LFM плохо учитывает изменение интересов со временем.
Например, пользователь мог раньше смотреть детские фильмы, а затем переключиться на документальное кино. Обычная модель может не сразу заметить это изменение.
Для улучшения модели добавляют смещения пользователей и объектов, временные факторы, жанры, тексты описаний и другие признаки. Также применяются гибридные и нейросетевые рекомендательные системы.
Связь с другими методами
LFM связана с сингулярным разложением, но эти методы не являются полностью одинаковыми.
Классическое SVD применяется к полностью заполненной матрице. В рекомендательных системах большая часть оценок неизвестна, поэтому обычное SVD нельзя напрямую использовать без дополнительной обработки пропусков.
Латентная факторная модель обучается только по известным взаимодействиям. Поэтому в рекомендательных системах слово «SVD» иногда используется в широком смысле для обозначения матричной факторизации, хотя математически это не всегда классическое сингулярное разложение.
ALS и iALS являются способами обучения факторных моделей. ALS часто применяется как для оценок, так и для других взаимодействий. iALS специально приспособлен для неявных данных, например просмотров и покупок.
Нейросетевые рекомендательные модели также могут представлять пользователей и объекты векторами. Отличие состоит в том, что вместо простого скалярного произведения они используют более сложную обучаемую функцию.
Применение
Латентные факторные модели применяются для рекомендации:
- фильмов и сериалов;
- музыки;
- книг;
- товаров;
- новостей;
- образовательных материалов;
- публикаций в социальных сетях.
После обучения модель вычисляет предполагаемый интерес пользователя к объектам, с которыми он ещё не взаимодействовал. Затем объекты сортируются по предсказанному значению, и пользователю показываются лучшие варианты.
Скрытые векторы также можно использовать для поиска похожих фильмов или товаров. Если два объекта имеют близкие векторы, модель считает, что пользователи обычно относятся к ним похожим образом.
Таким образом, обучение LFM является задачей оптимизации, а скрытые векторы — низкоразмерными представлениями пользователей и объектов. Модель сочетает сравнительно простую математическую идею с возможностью находить сложные закономерности в больших наборах данных.
См. также
- Рекомендательная система
- Коллаборативная фильтрация
- Матричное разложение
- Скалярное произведение
- Регуляризация
- Стохастический градиентный спуск
- ALS
- iALS
- SVD
- Холодный старт
- Переобучение
Литература
- Koren Y., Bell R., Volinsky C. Matrix Factorization Techniques for Recommender Systems // Computer. — 2009. — Т. 42. — № 8. — С. 30–37.
- Hu Y., Koren Y., Volinsky C. Collaborative Filtering for Implicit Feedback Datasets // Proceedings of the 2008 Eighth IEEE International Conference on Data Mining. — 2008. — С. 263–272.
- Recommender Systems Handbook. — 2nd edition. — New York: Springer, 2015.
- Aggarwal C. C. Recommender Systems: The Textbook. — Cham: Springer, 2016.

