Матричная факторизация (рекомендательные системы)
Рекомендательные системы |
---|
Концепции |
Методы и проблемы |
Реализации |
Исследовать |
Матричная факторизация — это класс алгоритмов совместной фильтрации, используемых в рекомендательных системах . взаимодействия пользователя и элемента Алгоритмы матричной факторизации работают путем разложения матрицы на произведение двух прямоугольных матриц меньшей размерности. [1] Это семейство методов стало широко известно во время конкурса Netflix благодаря своей эффективности, о которой сообщил Саймон Фанк в своем сообщении в блоге 2006 года: [2] где он поделился своими выводами с исследовательским сообществом. Результаты прогнозирования можно улучшить, присвоив различные веса регуляризации скрытым факторам на основе популярности элементов и активности пользователей. [3]
Техники [ править ]
Идея матричной факторизации заключается в представлении пользователей и элементов в скрытом пространстве более низкой размерности . С момента первой работы Фанка в 2006 году для рекомендательных систем было предложено множество подходов матричной факторизации. Некоторые из наиболее часто используемых и простых из них перечислены в следующих разделах.
Фанк МФ [ править ]
Оригинальный алгоритм, предложенный Саймоном Фанком в его сообщении в блоге. [2] факторизовал матрицу рейтингов элементов пользователя как произведение двух матриц меньшей размерности: первая имеет строку для каждого пользователя, а вторая имеет столбец для каждого элемента. Строка или столбец, связанные с конкретным пользователем или элементом, называются скрытыми факторами . [4] Обратите внимание, что в Funk MF не применяется разложение по сингулярным значениям , это модель машинного обучения, подобная SVD. [2] Прогнозируемые рейтинги можно рассчитать как , где — матрица рейтингов элементов пользователя, содержит скрытые факторы пользователя и скрытые факторы предмета.
В частности, прогнозируемая оценка, которую пользователь u поставит элементу i, рассчитывается как:
Выразительную силу модели можно настроить, изменяя количество скрытых факторов. Это было продемонстрировано [5] что матричная факторизация с одним скрытым фактором эквивалентна самому популярному или самому популярному рекомендателю (например, рекомендует элементы с наибольшим количеством взаимодействий без какой-либо персонализации). Увеличение количества скрытых факторов улучшит персонализацию и, следовательно, качество рекомендаций, пока количество факторов не станет слишком большим, после чего модель начнет переобучаться, и качество рекомендаций снизится. Общая стратегия, позволяющая избежать переобучения, заключается в добавлении условий регуляризации к целевой функции. [6] [7] Funk MF был разработан как задача прогнозирования рейтинга , поэтому он использует явные числовые рейтинги в качестве взаимодействия пользователя с элементом.
Учитывая все обстоятельства, Funk MF минимизирует следующую целевую функцию:
Где определяется как норма Фробениуса , тогда как другие нормы могут быть либо нормой Фробениуса, либо другой нормой в зависимости от конкретной проблемы рекомендации. [8]
СВД++ [ править ]
Хотя Funk MF может обеспечить очень хорошее качество рекомендаций, его способность использовать только явные числовые рейтинги при взаимодействии пользователя с элементами представляет собой ограничение. Современные рекомендательные системы должны использовать все доступные взаимодействия, как явные (например, числовые рейтинги), так и неявные (например, лайки, покупки, пропуск, добавление в закладки). С этой целью SVD++ был разработан с учетом неявных взаимодействий. [9] [10] По сравнению с Funk MF, SVD++ также учитывает предвзятость пользователя и предмета.
Прогнозируемый рейтинг, который пользователь u поставит элементу i, рассчитывается как:
Где относится к общей средней оценке по всем пунктам и и относится к наблюдаемому отклонению элемента и пользователь соответственно от среднего. [11] Однако у SVD++ есть некоторые недостатки, главный из которых заключается в том, что этот метод не основан на моделях. Это означает, что если будет добавлен новый пользователь, алгоритм не сможет его смоделировать, пока вся модель не будет переобучена. Несмотря на то, что система, возможно, собрала некоторые взаимодействия для этого нового пользователя, ее скрытые факторы недоступны, и поэтому никакие рекомендации не могут быть вычислены. Это пример проблемы «холодного запуска» , то есть рекомендатель не может эффективно работать с новыми пользователями или элементами, и для устранения этого недостатка необходимо разработать специальные стратегии. [12]
Возможный способ решения этой проблемы холодного запуска — модифицировать SVD++, чтобы он стал алгоритмом , основанным на модели , что позволило бы легко управлять новыми элементами и новыми пользователями.
Как упоминалось ранее, в SVD++ нет скрытых факторов новых пользователей, поэтому их необходимо представлять по-другому. Скрытые факторы пользователя представляют собой предпочтение этого пользователя скрытым факторам соответствующего элемента, поэтому скрытые факторы пользователя могут быть оценены на основе прошлых взаимодействий с пользователем. Если система способна собрать некоторые взаимодействия для нового пользователя, можно оценить его скрытые факторы.Обратите внимание, что это не полностью решает проблему холодного запуска , поскольку рекомендатель по-прежнему требует некоторых надежных взаимодействий для новых пользователей, но, по крайней мере, нет необходимости каждый раз пересчитывать всю модель. Было продемонстрировано, что эта формулировка почти эквивалентна модели SLIM. [13] который представляет собой рекомендацию на основе модели элемента .
При такой формулировке эквивалентный рекомендатель по пунктам будет выглядеть так: . Следовательно, матрица подобия симметрична.
Асимметричная СВД [ править ]
Целью асимметричного SVD является объединение преимуществ SVD++ и алгоритма, основанного на модели, что дает возможность рассматривать новых пользователей с несколькими рейтингами без необходимости переобучения всей модели. В отличие от SVD на основе модели, здесь матрица скрытых факторов пользователя H заменяется на Q, которая изучает предпочтения пользователя в зависимости от его рейтингов. [14]
Прогнозируемый рейтинг, который пользователь u поставит элементу i, рассчитывается как:
При такой формулировке эквивалентный рекомендатель по пунктам будет выглядеть так: . Поскольку матрицы Q и W различны, матрица подобия асимметрична, отсюда и название модели.
SVD для конкретной группы [ править ]
SVD для конкретной группы может быть эффективным решением проблемы холодного запуска во многих сценариях. [6] Он группирует пользователей и элементы на основе информации о зависимостях и сходстве характеристик. Затем, как только появится новый пользователь или элемент, мы можем присвоить ему групповую метку и аппроксимировать его скрытый фактор групповыми эффектами (соответствующей группы). Таким образом, хотя рейтинги, связанные с новым пользователем или элементом, не обязательно доступны, групповые эффекты обеспечивают немедленные и эффективные прогнозы.
Прогнозируемый рейтинг, который пользователь u поставит элементу i, рассчитывается как:
Здесь и представляют метку группы пользователя u и элемента i соответственно, которые одинаковы для всех членов одной группы. И и являются матрицами групповых эффектов. Например, для нового пользователя чей скрытый фактор недоступен, мы можем, по крайней мере, идентифицировать их групповую метку и предскажите их рейтинги как:
Это обеспечивает хорошее приближение к ненаблюдаемым рейтингам.
Гибридный МФ [ править ]
В последние годы было разработано множество других моделей матричной факторизации, позволяющих использовать постоянно растущее количество и разнообразие доступных данных о взаимодействии и вариантов использования. Алгоритмы гибридной матричной факторизации способны объединять явные и неявные взаимодействия. [15] или как контент, так и совместные данные [16] [17] [18]
Глубокое обучение MF [ править ]
В последние годы был предложен ряд методов нейронного и глубокого обучения, некоторые из которых обобщают традиционные алгоритмы матричной факторизации с помощью нелинейной нейронной архитектуры. [19] Хотя глубокое обучение применялось во многих различных сценариях: с учетом контекста, с учетом последовательности, социальными тегами и т. д., его реальная эффективность при использовании в простом сценарии совместной фильтрации была поставлена под сомнение. Систематический анализ публикаций, применяющих глубокое обучение или нейронные методы для решения проблемы рекомендаций top-k, опубликованных на ведущих конференциях (SIGIR, KDD, WWW, RecSys, IJCAI), показал, что в среднем менее 40% статей воспроизводимы, при этом на некоторых конференциях всего 14%. В целом исследования выявили 26 статей, только 12 из них можно было воспроизвести, а 11 из них можно превзойти по эффективности гораздо более старые и простые, правильно настроенные базовые показатели. В статьях также подчеркивается ряд потенциальных проблем в сегодняшних научных исследованиях и содержится призыв к совершенствованию научной практики в этой области. [20] [21] Подобные проблемы были обнаружены и в рекомендательных системах, учитывающих последовательность действий. [22]
См. также [ править ]
Ссылки [ править ]
- ^ Корен, Иегуда; Белл, Роберт; Волинский, Крис (август 2009 г.). «Методы матричной факторизации для рекомендательных систем». Компьютер . 42 (8): 30–37. CiteSeerX 10.1.1.147.8295 . дои : 10.1109/MC.2009.263 . S2CID 58370896 .
- ↑ Перейти обратно: Перейти обратно: а б с Фанк, Саймон. «Обновление Netflix: попробуйте это дома» .
- ^ ЧэньХун-Сюань; ЧэньПу (09.01.2019). «Дифференцирование весов регуляризации - простой механизм облегчения холодного запуска в рекомендательных системах». Транзакции ACM по извлечению знаний из данных . 13 : 1–22. дои : 10.1145/3285954 . S2CID 59337456 .
- ^ Агарвал, Дипак; Чен, Би-Чунг (28 июня 2009 г.). «Модели скрытых факторов на основе регрессии». Материалы 15-й международной конференции ACM SIGKDD по обнаружению знаний и интеллектуальному анализу данных – KDD '09 . АКМ. стр. 19–28. дои : 10.1145/1557019.1557029 . ISBN 9781605584959 . S2CID 17484284 .
- ^ Яннах, Дитмар; Лерче, Лукас; Гедикли, Фатих; Боннин, Джеффре (2013). «Что рекомендуют специалисты: анализ точности, популярности и эффектов разнообразия продаж». Моделирование пользователей, адаптация и персонализация . Конспекты лекций по информатике. Том. 7899. Шпрингер Берлин Гейдельберг. стр. 25–37. CiteSeerX 10.1.1.465.96 . дои : 10.1007/978-3-642-38844-6_3 . ISBN 978-3-642-38843-9 .
- ↑ Перейти обратно: Перейти обратно: а б Би, Сюань; Цюй, Энни; Ван, Цзюньхуэй; Шен, Сяотун (2017). «Групповая рекомендательная система» . Журнал Американской статистической ассоциации . 112 (519): 1344–1353. дои : 10.1080/01621459.2016.1219261 . S2CID 125187672 .
- ^ Чжу, Юньчжан; Шен, Сяотун; Е, Чанцин (2016). «Персонализированное прогнозирование и поиск разреженности в моделях скрытых факторов» (PDF) . Журнал Американской статистической ассоциации . 111 (513): 241–252. дои : 10.1080/01621459.2016.1219261 . S2CID 125187672 .
- ^ Патерек, Аркадиуш (2007). «Улучшение регуляризованного разложения по сингулярным значениям для совместной фильтрации» (PDF) . Материалы Кубка и Семинара KDD .
- ^ Цао, Цзянь; Ху, Хэнкуй; Ло, Тяньян; Ван, Цзя; Хуанг, Мэй; Ван, Карл; Ву, Чжунхай; Чжан, Син (2015). Распределенное проектирование и реализация алгоритма SVD++ для системы персонализированных рекомендаций электронной коммерции . Коммуникации в компьютерной и информатике. Том. 572. Спрингер Сингапур. стр. 30–44. дои : 10.1007/978-981-10-0421-6_4 . ISBN 978-981-10-0420-9 .
- ^ Цзя, Яньчэн (сентябрь 2014 г.). «Предпочтение брендов пользователей на основе SVD++ в рекомендательных системах». Семинар IEEE 2014 г. по передовым исследованиям и технологиям в промышленности (WARTIA) . IEEE. стр. 1175–1178. дои : 10.1109/wartia.2014.6976489 . ISBN 978-1-4799-6989-0 . S2CID 742206 .
- ^ Корен, Иегуда; Белл, Роберт; Волинский, Крис (август 2009 г.). «Методы матричной факторизации для рекомендательных систем» (PDF) . Компьютер : 45.
- ^ Клювер, Дэниел; Констан, Джозеф А. (6 октября 2014 г.). «Оценка поведения рекомендаций для новых пользователей». Материалы 8-й конференции ACM по рекомендательным системам — Rec Sys '14 . АКМ. стр. 121–128. дои : 10.1145/2645710.2645742 . ISBN 9781450326681 . S2CID 18509558 .
- ^ Чжэн, Юн; Мобашер, Бамшад; Берк, Робин (6 октября 2014 г.). «КСЛИМ». CSLIM: контекстные алгоритмы рекомендаций SLIM . АКМ. стр. 301–304. дои : 10.1145/2645710.2645756 . ISBN 9781450326681 . S2CID 15931532 .
- ^ Пу, Ли; Фальтингс, Бой (12 октября 2013 г.). «Понимание и улучшение реляционной матричной факторизации в рекомендательных системах» . Материалы 7-й конференции ACM по рекомендательным системам — Rec Sys '13 . АКМ. стр. 41–48. дои : 10.1145/2507157.2507178 . ISBN 9781450324090 . S2CID 14106198 .
- ^ Чжао, Чанвэй; Сунь, Сухуань; Хан, Линьцянь; Пэн, Цинке (2016). «Гибридная матричная факторизация для рекомендательных систем в социальных сетях» . Мир нейронных сетей . 26 (6): 559–569. дои : 10.14311/NNW.2016.26.032 .
- ^ Чжоу, Тинхуэй; Шан, Ханьхуай; Банерджи, Ариндам; Сапиро, Гильермо (26 апреля 2012 г.). «Ядерная вероятностная матричная факторизация: использование графиков и дополнительной информации». Материалы Международной конференции SIAM 2012 по интеллектуальному анализу данных . Общество промышленной и прикладной математики. стр. 403–414. дои : 10.1137/1.9781611972825.35 . ISBN 978-1-61197-232-0 .
- ^ Адамс, Райан Прескотт; Даль, Джордж Э.; Мюррей, Иэн (25 марта 2010 г.). «Включение дополнительной информации в вероятностную матричную факторизацию с помощью гауссовских процессов 1003,4944». arXiv : 1003.4944 [ stat.ML ].
- ^ Фанг, Йи; Си, Луо (27 октября 2011 г.). «Матричная кофакторизация для рекомендаций с богатой дополнительной информацией и неявной обратной связью». Материалы 2-го международного семинара по неоднородности и слиянию информации в рекомендательных системах – Het Rec '11 . АКМ. стр. 65–69. дои : 10.1145/2039320.2039330 . ISBN 9781450310277 . S2CID 13850687 .
- ^ Он, Сяннань; Ляо, Лизи; Чжан, Ханьван; Не, Лицян; Ху, Ся; Чуа, Тат-Сенг (2017). «Нейронная совместная фильтрация» . Материалы 26-й Международной конференции по Всемирной паутине . Руководящий комитет международных конференций по Всемирной паутине. стр. 173–182. arXiv : 1708.05031 . дои : 10.1145/3038912.3052569 . ISBN 9781450349130 . S2CID 13907106 . Проверено 16 октября 2019 г.
- ^ Рендл, Штеффен; Кричене, Валид; Чжан, Ли; Андерсон, Джон (22 сентября 2020 г.). «Нейронная совместная фильтрация против матричной факторизации». Четырнадцатая конференция ACM по рекомендательным системам . стр. 240–248. arXiv : 2005.09683 . дои : 10.1145/3383313.3412488 . ISBN 9781450375832 .
- ^ Дакрема; Феррари (2021). «Тревожный анализ воспроизводимости и прогресса в исследованиях рекомендательных систем». Транзакции ACM в информационных системах . 39 (2): 39.2. arXiv : 1911.07698 . дои : 10.1145/3434185 . S2CID 208138060 .
- ^ Людвиг, Мальте; Мауро, Ноэми; Латифи, Сара; Яннах, Дитмар (2019). «Сравнение производительности нейронных и ненейронных подходов к рекомендациям на основе сеансов». Материалы 13-й конференции ACM по рекомендательным системам . АКМ. стр. 462–466. дои : 10.1145/3298689.3347041 . ISBN 9781450362436 .