Система рекомендаций на основе глубокого обучения (1) Обзор

искусственный интеллект глубокое обучение Нейронные сети Архитектура

Это обзор содержания рекомендательных систем, основанных на глубоком обучении, за последние годы, в частности, большая часть контента поступает из Deep Learning based Recommender System: A Survey and New Perspectives, я перевел и обобщил некоторые из них. В то же время я также иногда читаю исходный текст работы, упомянутой в обзоре, и делаю некоторые дополнения к некоторым более конкретным содержаниям.

текст начинается

Глубокое обучение в последние годы широко используется в различных областях, и рекомендательные системы не являются исключением.Итак, как алгоритмы глубокого обучения связаны с рекомендательными системами? Эта статья направлена ​​на всесторонний обзор последних результатов исследований рекомендательных систем на основе глубокого обучения и прогнозирование будущих тенденций.

Система рекомендаций является линией защиты от информационного взрыва и играет решающую роль в выборе пользователя. Как правило, мы создаем списки рекомендаций на основе пользовательских предпочтений, характеристик элементов, пользовательской истории и некоторой другой дополнительной информации из данных временных рядов и пространственных данных. Мы классифицируем рекомендательные системы на совместную фильтрацию, рекомендательные системы на основе контента и гибридные рекомендательные системы. В последнее время рекомендательные системы, основанные на глубоком обучении, добились значительного прогресса, преодолев некоторые проблемы традиционных моделей и добившись высокого качества рекомендаций. Глубокое обучение способно эффективно фиксировать нелинейные и нетривиальные отношения пользователя и элемента, а также способно представлять данные как коды более сложных абстракций. Кроме того, он фиксирует сложные взаимосвязи самих данных из богатых доступных источников данных, таких как контекстная, текстовая и визуальная информация.

В последние годы количество исследовательских публикаций о методах рекомендаций, основанных на глубоком обучении, выросло в геометрической прогрессии, и глубокое обучение стало неотъемлемой частью исследований рекомендательных систем. RecSys, ведущая международная конференция в области рекомендательных систем, проводит регулярные семинары по рекомендательным системам глубокого обучения с 2016 года. Этот семинар направлен на продвижение исследований и поощрение применения рекомендательных систем, основанных на глубоком обучении. Мы должны понимать преимущества и недостатки, а также сценарии применения моделей глубокого обучения в научных кругах и промышленности. Статьи в этом обзоре в основном взяты из ведущих конференций, таких как NIPS, ICML, ICLR, KDD, WWW, SIGIR, WSDM, RecSys и т. д., которые весьма репрезентативны. Цель опроса - предоставить практикующим справочник для быстрого поиска. Опрос, кажется, постоянно обновляется до сих пор, и моя серия включает только содержание опроса по состоянию на 2018.10.08.

Прежде всего, прежде чем обсуждать проблему, нам необходимо определить рамки нашего обсуждения и сделать некоторые предварительные определения.

Overview of Recommendation Systems and Deep Learning

Рекомендательная система оценивает предпочтения пользователя в отношении элементов и рекомендует элементы, которые могут понравиться пользователю. Мы классифицируем рекомендательные системы на совместную фильтрацию, рекомендательные системы на основе контента и гибридные рекомендательные системы. Совместная фильтрация учится и дает рекомендации на основе истории взаимодействия пользователя с элементом, где взаимодействия включают явную обратную связь (например, предыдущую оценку элемента пользователем) или неявную обратную связь (например, историю просмотра пользователем). Рекомендации, основанные на содержании, в основном основаны на некоторой вспомогательной информации об элементах и ​​пользователях, и некоторые результаты рекомендаций могут быть получены путем сравнения этой вспомогательной информации. Можно рассматривать различную вспомогательную информацию, такую ​​как текст, изображения и видео. Гибридные модели относятся к рекомендательным системам, которые объединяют две или более рекомендательных стратегий.

Определение символа

Мы устанавливаем следующий сценарий обсуждения: у нас естьMпользователи иNПредметы,Rматрица взаимодействия,\hat{R}— прогнозируемая матрица взаимодействия.r_{ui}от имени пользователяuпунктiпредпочтения,\hat{r_{ui}}пользователь предсказывается модельюuпунктiПредпочтения.RСтрока представляет предпочтительное поведение пользователя, выраженное какr^{(u)} = \{r^{u1}, r^{u2}, ..., r^{uN}\}.RСтолбец представляет предпочитаемое пользователем поведение элемента, выраженное какr^{(i)} = \{r^{1i}, r^{2i}, ..., r^{Mi}\}.OиO^-представляют наблюдаемые и ненаблюдаемые взаимодействия соответственно. Мы дополнительно используемU \in R^{M*K}иV \in R^{N*K}для представления скрытого фактора (скрытой функции) пользователя и элемента.kявляется размерностью скрытого признака.

Технология глубокого обучения

Глубокое обучение часто считают частью машинного обучения. Типичное определение глубокого обучения состоит в том, что оно изучает глубокие представления, то есть изучает несколько уровней представлений и абстракций от данных. По практическим причинам мы рассматриваем любую архитектуру, которую можно разложить на нейронную сеть, как «глубокое обучение», если она оптимизирует дифференцируемую целевую функцию с использованием варианта стохастического градиентного спуска (SGD). Архитектуры нейронных сетей достигли больших успехов как в контролируемых, так и в неконтролируемых задачах обучения. В этом подразделе мы разъясняем различные архитектурные парадигмы, тесно связанные с этим обзором.

  • Многослойный персептрон (MLP): Многослойный персептрон (MLP) представляет собой нейронную сеть с прямой связью с несколькими (одним или несколькими) скрытыми слоями между входным и выходным слоями. Здесь персептрон может использовать произвольную функцию активации и не обязательно является строгим бинарным классификатором. MLP могут быть представлены как сложенные слои нелинейных преобразований, изучающие иерархические представления признаков. MLP также известен как универсальный аппроксиматор.
  • Автоэнкодер (AE): автоэнкодер (AE) — это неконтролируемая модель, которая восстанавливает свои входные данные в выходном слое. Обычно слой узкого места (самый средний слой) используется в качестве представления объектов для входных данных. Существует множество вариантов автоэнкодеров, таких как автоэнкодер с шумоподавлением, автоэнкодер с маргинальным шумоподавлением, разреженный автоэнкодер, сжатый автоэнкодер и вариационный автоэнкодер (VAE).
  • Сверточная нейронная сеть (CNN): Сверточная нейронная сеть (CNN) — это особый вид нейронной сети с прямой связью со свертывающимися слоями и операциями объединения. Он может фиксировать глобальные и локальные особенности и значительно повышать эффективность и точность. Он хорошо работает с данными с топологией, похожей на сетку.
  • Рекуррентная нейронная сеть (RNN): рекуррентная нейронная сеть (RNN) подходит для моделирования последовательных данных. В отличие от нейронных сетей с прямой связью, в RNN есть циклы и структуры памяти для запоминания предыдущих вычислений. Такие варианты, как сети с долговременной кратковременной памятью (LSTM) и Gated Recurrent Unit (GRU), часто используются на практике для решения проблемы исчезающего градиента.
  • Ограниченная машина Больцмана (RBM): Ограниченная машина Больцмана (RBM) представляет собой двухслойную нейронную сеть, состоящую из видимых и скрытых слоев. Его можно легко укладывать в глубокую сеть. Здесь Restricted означает отсутствие внутриуровневой связи в видимых или скрытых слоях.
  • Нейронная авторегрессионная оценка распределения (NADE): Нейронная авторегрессионная оценка распределения (NADE) представляет собой неконтролируемую нейронную сеть, построенную на основе авторегрессионных моделей и нейронных сетей с прямой связью. Это удобный и эффективный оценщик для моделирования распределения и плотности данных.
  • Состязательные сети (AN): состязательная сеть (AN) — это генеративная нейронная сеть, состоящая из дискриминатора и генератора. Одновременно обучайте две нейронные сети, соревнуясь друг с другом в рамках минимаксной игры.
  • Модели внимания (AM): Модели внимания (AM) — это уловка. Механизмы внимания, как правило, широко распространены и приняты в области компьютерного зрения и обработки естественного языка. Тем не менее, это также новая тенденция в глубоких исследованиях рекомендательных систем.
  • Глубокое обучение с подкреплением (DRL): Глубокое обучение с подкреплением. Сочетание глубоких нейронных сетей и обучения с подкреплением.

Преимущества технологии глубокого обучения

Мы резюмируем преимущества моделей рекомендаций на основе глубокого обучения:

  • нелинейное преобразование. В отличие от линейных моделей, глубокие нейронные сети способны моделировать нелинейность данных с нелинейными активациями, такими как relu, sigmoid, tanh и т. д. Это свойство позволяет фиксировать сложные и комплексные шаблоны взаимодействия пользователя с элементом. Обычные методы, такие как MF, FM, разреженные линейные модели, в основном являются линейными моделями.
  • Репрезентативное обучение. Глубокие нейронные сети эффективно изучают потенциальные объясняющие факторы и полезные представления из входных данных. Часто в реальных приложениях доступно много описательной информации о проектах и ​​пользователях. Использование этой информации может улучшить наше понимание элементов и пользователей, что приведет к лучшим рекомендациям. Таким образом, применение глубоких нейронных сетей для репрезентативного обучения в рекомендательных моделях является естественным выбором. Преимущества использования глубоких нейронных сетей для помощи в изучении представлений двояки: (1) это снижает нагрузку на ручное проектирование признаков. Разработка функций — трудоемкая работа, и глубокие нейронные сети могут автоматически изучать функции из необработанных данных неконтролируемыми или контролируемыми методами; (2) они позволяют моделям рекомендаций включать разнородную информацию о контенте, такую ​​как текст, изображения, аудио и даже видео. . Глубокие сети добились прорыва в обработке мультимедийных данных и продемонстрировали потенциал представлений, полученных из различных источников.
  • Моделирование последовательности. Глубокие нейронные сети продемонстрировали многообещающие результаты во многих задачах последовательного моделирования, таких как машинный перевод, понимание естественного языка, распознавание речи, чат-боты и многое другое. RNN и CNN играют ключевую роль в этих задачах. RNN делают это, сохраняя состояние внутри, в то время как CNN делают это, сдвигая фильтры во времени. Они имеют широкую применимость и гибкость в последовательных структурах интеллектуального анализа данных.
  • гибкость. Методы глубокого обучения очень гибкие, особенно с появлением многих популярных сред глубокого обучения, таких как Tensorflow, Keras, Caffe, MXnet, DeepLearning4j, PyTorch, Theano и т. д. Большинство этих инструментов разработаны по модульному принципу и имеют активные сообщества и профессиональную поддержку. Хорошая модульность делает разработку более эффективной. Например, можно легко комбинировать различные нейронные архитектуры для создания мощных гибридных моделей или заменять один модуль другим. Таким образом, мы можем легко создавать гибридные и составные рекомендательные модели для одновременного учета различных функций и факторов.

Потенциальные недостатки методов глубокого обучения

  • объяснительный. Несмотря на свой успех, глубокое обучение работает как черный ящик, и предоставление интерпретируемых прогнозов кажется очень сложной задачей. Распространенный аргумент против глубоких нейронных сетей заключается в том, что скрытые веса и активации часто не поддаются интерпретации, что ограничивает интерпретируемость. Однако это беспокойство несколько уменьшилось с появлением нейронных моделей, и существующие современные модели смогли в определенной степени объяснить смысл, что позволяет интерпретировать рекомендации.
  • требования к данным. Второе возможное ограничение заключается в том, что глубокое обучение считается ресурсоемким, потому что оно требует достаточного количества данных для полной поддержки богатой параметризации. Однако получение больших объемов данных в контексте исследования рекомендательных систем относительно просто по сравнению с другими областями, где размеченных данных мало, например, язык или зрение. Наборы данных уровня «миллион/миллиард» не только распространены в промышленности, но также выпускаются в виде академических наборов данных.
  • Обширная настройка гиперпараметров. Третий хорошо зарекомендовавший себя аргумент против глубокого обучения — необходимость обширной настройки гиперпараметров. Однако отметим, что настройка гиперпараметров не является конкретной проблемой глубокого обучения, а происходит в общем машинном обучении (например, коэффициенты регуляризации и скорости обучения также необходимо корректировать для традиционной матричной факторизации и т. д.). Однако в некоторых случаях глубокое обучение может вводить дополнительные гиперпараметры.

Классификация методов рекомендаций глубокого обучения

Чтобы представить ситуацию с высоты птичьего полета, мы классифицируем существующие модели в соответствии с типом используемых методов глубокого обучения. Далее мы классифицируем модели рекомендаций, основанные на глубоком обучении, на следующие две категории. На следующем рисунке представлена ​​схема классификации.

  • Рекомендации с нейронными строительными блоками: рекомендации с использованием одного метода глубокого обучения. Мы обсуждаем различные методы рекомендаций отдельно в соответствии с предыдущими восемью техническими классификациями.
  • Рекомендация с глубокими гибридными моделями: Гибридные модели.

В таблице 1 перечислены все исследованные модели, которые мы систематизировали в соответствии с описанной выше схемой классификации. Кроме того, мы также суммируем некоторые публикации с точки зрения задач в таблице 2. Публикации, которые мы исследуем, включают в себя различные рекомендательные задачи. Некоторые ранее необычные задачи начали привлекать внимание из-за использования глубоких нейронных сетей (например, рекомендация на основе сеанса, рекомендация по изображению, видео). Некоторые задачи могут быть не новыми для области исследования рекомендаций, но DL предлагает больше возможностей для поиска лучших решений. Например, обработка изображений и видео была бы сложной задачей без помощи методов глубокого обучения. А возможности последовательного моделирования глубоких нейронных сетей могут легко фиксировать последовательные модели поведения пользователя.

Мы обсудим особенности этих методов в будущих блогах. Текущий список литературы для этого обзора выглядит следующим образом, и заинтересованные читатели могут самостоятельно индексировать статью: