Машинное обучение. Рекомендательные системы. К.В. Воронцов, Школа анализа данных, Яндекс.
65 пунктов из 81 мин видео · читать 6 мин
Смотреть видео на YouTube →Кратко
В этом видео рассматриваются основные аспекты рекомендательных систем, включая их задачи, методы и проблемы, с которыми они сталкиваются. Лекция предназначена для студентов и профессионалов в области ИТ.
Главные мысли
- Рекомендательные системы используют сложные алгоритмы для анализа данных пользователей и объектов, чтобы предложить персонализированные рекомендации.
Задачи и методы рекомендательных систем0:45
- Задача заключается в взаимодействии двух конечных множеств: пользователей и объектов, которые они выбирают.0:45
- Транзакции между субъектами и объектами могут быть различными, например, покупка товара или просмотр текста.1:28
- Транзакционные данные часто агрегируются, чтобы получить информацию о взаимодействии пользователя с предметом.2:16
- Важно учитывать, что может быть одна транзакция в большой базе или повторное использование объекта.2:57
Агрегация данных и транзакции3:23
- Исходные данные, называемые матрицами, представляют собой числовую агрегированную информацию, которая показывает, насколько предмет удовлетворил пользователя.3:23
- Рекомендация — это задача, которая заключается в восстановлении пропущенного значения в ячейке матрицы.3:55
- Для построения списка рекомендаций необходимо оценить близость различных айтемов и пользователей с похожими вкусами и интересами.4:36
- В электронной коммерции мы имеем информацию о том, что пользователь купил товар, что позволяет создать матрицу с бинарной информацией.5:31
- Задачи, которые мы ставим, включают оценку товаров для клиента и выдачу списка рекомендуемых товаров.5:50
Прогнозирование и рекомендации6:52
- Основная гипотеза веб-майнинга заключается в том, что посещение пользователя характеризует его интересы, вкус и привычки.6:52
- Коллаборация в рекомендательных системах означает фильтрацию пользователей, похожих на данного, для создания персонализированных предложений.7:25
- Конкурсный FlexIndex, проводившийся в 2006 году, предложил приз в один миллион долларов за улучшение качества рекомендаций всего на 10%.8:29
- В конкурсе FlexIndex использовались данные 500,000 пользователей и 17,000 фильмов, что создало сильно разреженную матрицу рейтингов.8:52
- Качество рекомендаций оценивалось по корню квадратному из среднеквадратичной ошибки (RMS), что является стандартом в этой области.9:36
Проблемы и примеры применения10:12
- Качество прогнозов на тот момент существовало всего лишь в два раза лучше, чем совсем глупый прогноз, который всегда выдаёт тройку.10:12
- Задача улучшить прогнозы еще на десять процентов оказалась вызывающе трудной и все мировое сообщество в области рекомендательных систем работало над этой задачей три года.10:26
- Если бы изначально задача конкурса была поставлена правильно, скорее всего, он закончился бы гораздо лучше и быстрее.11:22
- Корреляционные методы основаны на явном хранении огромных разреженных матриц исходных данных и работе со строками и столбцами этой матрицы.12:11
- Латентные модели выделяют векторное представление скрытых характеристик, которые можно использовать для сравнения пользователей друг с другом.12:36
- Amazon использовал формулировку, что клиенты, купившие эту книгу, также покупали другие книги, что стало основой для их рекомендательных систем.13:48
Конкурс Netflix и его результаты15:36
- Основной недостаток алгоритма рекомендаций Netflix заключается в том, что он предлагает популярные товары, такие как 'Гарри Поттер', не учитывая интересы конкретного пользователя.15:36
- Проблема холодного старта возникает, когда новый товар еще никто не выбрал, и его невозможно рекомендовать.15:57
- Стратегия user-based рекомендаций основывается на сходстве пользователей, однако она сталкивается с проблемами, когда пользователь не имеет истории выбора.18:19
- В подходе item-based рекомендации учитываются объекты, которые пользователь уже выбрал, и анализируется, какие другие объекты часто выбираются вместе с ними.18:41
- Несмотря на использование item-based подхода, сохраняется проблема холодного старта для новых товаров, которые еще никто не выбрал.19:31
Методы корреляции и латентные модели20:40
- Если у вас есть какая-то субъективная измеряемая величина, типы рейтингов, то разные пользователи могут оценивать фильмы по-разному, например, один может ставить всем фильмам рейтинг 4 или 5, а другой - только 5 или 2.20:40
- Для каждого пользователя и для каждого фильма необходимо определить средний рейтинг, который будет использоваться для расчета корреляции.21:28
- Косинусная мера близости используется для вычисления расстояния между векторами оценок пользователей в многомерном пространстве.21:56
- Если данные бинарные, то мы смотрим на пересечении, то есть на долю пересечения между теми айтемами, которые смотрели оба пользователя.22:34
- Для бинарных данных можно проверить нулевую гипотезу о том, что два человека совершают свои выборы независимо друг от друга.23:30
- Если у двух пользователей большое пересечение в просмотренных фильмах, это может означать, что они систематически смотрят одно и то же.24:16
- Вероятность того, что пересечение возникнет случайно, можно посчитать с помощью гипергеометрического распределения.24:30
- Прогнозирование пустых ячеек в матрице делается с помощью формулы наименьших квадратов, учитывая отклонения от среднего.25:30
- Недостатки методов, основанных на пользовательских оценках, включают в себя проблемы холодного старта и отсутствие теории за эвристиками.28:29
- Латентные модели могут эффективно справляться с недостатками методов, основанных на пользовательских оценках.28:32
Проблемы холодного старта30:24
- Жесткая кластеризация обозначает, что объекты принадлежат строго определенным кластерам, в то время как мягкая кластеризация позволяет объектам принадлежать к нескольким кластерам с определенной степенью вероятности.30:24
- При мягкой кластеризации степени принадлежности могут быть представлены числами от нуля до единицы.30:25
- Мы ищем единое кластерное представление, где кластеры соответствуют интересам пользователей.31:03
- Каждый клиент может быть разложен по интересам, что позволяет выявить латентные модели.31:30
- Вероятностная интерпретация профиля клиента позволяет оценить вероятность наличия у него определенного интереса.32:25
- Матричная факторизация используется для прогнозирования пустых ячеек в исходной матрице, где известна лишь небольшая доля ячеек.33:55
- Наша задача состоит в том, чтобы построить матричное разложение исходной матрицы, используя матрицы P и Q.34:01
- Сингулярное разложение требует полного знания матрицы, что является проблемой для разреженных матриц.38:28
Методы матричного разложения40:51
- Недостаток информации не означает, что значение должно быть конкретным; оно может быть любым.40:51
- Метод стохастического градиента минимизирует одно случайно выбранное слагаемое, что позволяет эффективно решать оптимизационные задачи.43:50
- Регуляризация L2 помогает избежать переобучения матриц P и Q, предотвращая их разбегание в плюс-минус бесконечность.44:47
- Использование ограничений неотрицательности позволяет интерпретировать координаты профилей, связывая их с интересами пользователей.45:31
- Метод стохастического градиента легко адаптируется к изменениям в структуре данных, позволяя быстро обновлять модель при появлении новых клиентов или объектов.48:14
- Метод чередующихся наименьших квадратов можно адаптировать для разреженных матричных разложений, используя поочередную оптимизацию.49:10
Качество рекомендаций и метрики51:10
- Метод, который часто используется в рекомендательных системах, позволяет добавлять ограничение неотрицательности, что делает его популярным.51:10
- Оптимизация количества интересов в рекомендательных системах является отдельной задачей, которую нужно решить, чтобы понять, при каком количестве интересов рекомендации становятся лучшими.52:54
- Явные предпочтения определяются как более значимые транзакции, например, когда произошла покупка или выставлен рейтинг, в отличие от неявных предпочтений, таких как простое посещение страницы.57:21
- В конкурсе Netflix явные предпочтения были определены как случаи, когда человек выставил 5 баллов, а все остальное считалось неявным предпочтением.58:18
- Функционал, который учитывает и явные, и неявные предпочтения, позволяет предсказывать оценки, используя поправку на среднее значение по пользователю.59:44
Онлайн-метрики и A/B тестирование1:03:05
- Модель факторизации машин (фэм) была впервые представлена в 2012 году и активно используется для реализации рекомендательных систем.1:03:05
- Для предсказания необходимо учитывать взаимодействия между признаками, что реализуется через квадратичные члены в модели.1:03:22
- Качество рекомендаций измеряется по критериям, отражающим качество ранжирования, таким как MAP и NDCG.1:07:15
- Задача рекомендаций является многокритериальной и требует баланса между предложением популярных товаров и новизной.1:07:36
Заключение и будущее систем1:10:55
- Система метрик рекомендательной системы должна быть мастер, чтобы оптимизировать качество рекомендаций.1:10:55
- Онлайн-измерители качества рекомендаций важны, так как каждый пользователь находится в ситуативном контексте, который меняется.1:11:25
- AB-тестирование является ключевым методом в рекомендательных системах для оценки различных моделей.1:12:26
- В оффлайне невозможно узнать, что пользователь мог бы купить без рекомендации, что создает ограничения в оценке качества.1:13:11
- Для улучшения онлайн-метрик необходимо следить за набором метрик в оффлайне, включая разнообразие и serendipity.1:14:10
- Современные рекомендательные системы учитывают множество размерностей, включая ситуативный контекст пользователя.1:17:31
Выводы
- Эффективность рекомендательных систем зависит не только от алгоритмов, но и от качества данных, которые они используют для обучения.
- Проблема холодного старта требует инновационных подходов, таких как использование кластеризации и латентных моделей для улучшения рекомендаций.
Что сделать
- Изучите методы матричного разложения и их применение в рекомендательных системах, чтобы улучшить свои навыки в этой области.