Название статьи:Последовательная рекомендация самоконтроля

Цитирование статьи: Канг, Ван-Ченг и Маколи, Джулиан, Последовательная рекомендация самоконтроля, в arXiv, 2018 г., https://doi.org/10.48550/arxiv.1808.09781

  1. ОБЗОР:

а. Мотивация:

В последние годы рекомендательные системы обычно использовали динамику, которая носит последовательный характер, для определения контекста пользователя на основе его самых последних действий. Цепи Маркова (MC) и рекуррентные нейронные сети (RNN) являются двумя популярными способами фиксации таких шаблонов, где (1) MC предполагают, что следующее поведение пользователя можно предсказать на основе его предыдущих или последних нескольких действий, и (2) RNN, в теории, может объяснить идентификацию долгосрочной семантики. Тем не менее, RNN в целом показывают лучшую производительность, когда доступный набор данных является плотным по своей природе, где возможно увеличить сложность модели, в то время как подходы на основе MC показывают лучшую производительность в чрезвычайно разреженных наборах данных, где экономия модели. ключевой элемент. Итак, теперь работа автора направлена ​​на достижение баланса между этими двумя целями путем введения последовательной модели, основанной на внутреннем внимании (SASRec), которая позволяет им фиксировать долгосрочную семантику (например, RNN), делая прогнозы, основанные на относительно небольшом количестве. количество действий (например, MC). SASRec с помощью механизма внимания пытается определить, какие действия из истории активности пользователя являются «актуальными» на каждом временном шаге, и использует их для прогнозирования следующего действия. Как на разреженных, так и на плотных наборах данных стратегия, описанная в этой статье, превосходит несколько современных последовательных моделей (включая методы на основе MC / CNN / RNN), согласно обширным эмпирическим экспериментам.

б. Основные технические вклады и использованные концепции:

Обзор подхода, использованного авторами:

В документе описывается, что основной целью последовательной рекомендательной системы является объединение характеристик поведения пользователя, основанных на его прошлой деятельности, с его текущим «контекстом», основанным на недавних действиях пользователя. Задача сбора соответствующей информации из последовательной динамики сложна из-за того, что пространство входных данных расширяется экспоненциально по мере того, как мы увеличиваем количество прошлых действий, которые мы хотим использовать в качестве контекста. Цепи Маркова (MC) пытаются обойти это узкое место, считая, что следующее действие является функцией только предыдущего или нескольких предыдущих действий. С помощью этой методологии МС успешно моделировали краткосрочные переходы к рекомендациям. С другой стороны, RNN суммируют все предыдущие действия через скрытое состояние, которое затем используется для прогнозирования следующих действий. Как видно, и MC, и RNN имеют свои плюсы и минусы. МС хорошо работают в разреженных ситуациях, поскольку они делают сильные предположения об упрощении, но они могут упускать нюансы динамики более сложных ситуаций. С другой стороны, RNN, хотя и мощные, требуют значительного количества плотных данных, чтобы превзойти даже более простые базовые уровни.

Чтобы решить проблемы как в MC, так и в RNN, авторы используют механизм «самовнимания», который является принципом работы последовательной модели под названием «Трансформеры». Механизм «самовнимания» может очень эффективно обнаруживать семантические и синтаксические закономерности между словами в предложениях. Они намеревались спроектировать свою модель так, чтобы она могла делать две вещи: 1) иметь возможность извлекать контекст из всего прошлого поведения, 2) должна иметь возможность прогнозировать на основе ограниченного количества важных действий, и они назвали ее SASRec (Self-Rec). Последовательная рекомендация, основанная на внимании), основанная на присущих ей свойствах. Ниже приведена упрощенная иллюстрация, изображающая процесс обучения SASRec. Как мы видим, модель оценивает все предыдущие вещи на каждом временном шаге и использует механизм внимания, чтобы «сосредоточиться» на элементах, важных для следующего действия, адаптивно присваивая веса предыдущим элементам на каждом временном шаге.

Краткий обзор механизма внимания:

Основная предпосылка механизмов внимания состоит в том, что все последовательные выходные данные зависят от «релевантных» элементов некоторого входного сигнала, на котором модель должна фокусироваться по порядку. Было продемонстрировано, что эти механизмы полезны в различных задачах, включая субтитры к картинкам и машинный перевод. Подходы, основанные на внимании, часто лучше интерпретируются, что является дополнительным преимуществом.Трансформеры – это последовательный метод, основанный исключительно на внимании, благодаря которому достигается высочайшая производительность и эффективность машин. В задачах перевода раньше преобладали методы на основе RNN/CNN. Чтобы фиксировать сложные шаблоны в предложениях и извлекать важные слова для создания следующего слова, модель Transformer в значительной степени зависит от модулей «самовнимания». Внимание к масштабированному скалярному произведению дается как:

Где,

Q относится к запросам,

K относится к ключам, а

V относится к значениям, а элементы представлены отдельной строкой

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

Коэффициент масштабирования:

используется для предотвращения чрезмерно больших значений внутреннего произведения, особенно при большой размерности.

Краткий обзор их методологии:

По сути, постановка задачи — это предсказание следующего действия пользователя на основе его предыдущей последовательности действий.

который известен в настройке последовательной рекомендации. Ниже приведены блоки, которые авторы использовали для построения этой модели последовательных рекомендаций:

  1. Слой внедрения:

Авторы преобразуют последовательность обучающих действий в фиксированную последовательность длины n,

(либо усекая входящую последовательность, либо дополняя ее нулями слева в соответствии с требованием), где n — максимальная емкость, с которой в настоящее время может справиться их модель. Матрица внедрения элементов

и входная матрица встраивания

затем были созданы, где d - скрытая размерность и

Встраивание обучаемой позиции

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

2. Блокировка собственного внимания

Внимание (Q, K, V), как определено в предыдущем разделе, здесь является блоком внимания. Используя линейные проекции, операция внутреннего внимания преобразует входное вложение

в 3 матрицы, которые затем подаются в слой внимания.

Матрицы проекций

и они повышают гибкость модели.

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

Где,

являются

матрицы и

являются d-мерными векторами.

3. Складывание блоков самоконтроля

С целью обучения более сложным транзакциям с элементами авторы складывают блоки внутреннего внимания, и b-й блок определяется как:

Чтобы облегчить проблемы переобучения, исчезновения градиентов и увеличения времени обучения с увеличением глубины сети, авторы использовали следующую операцию, определенную в [2].

Где g(x) — представление сети прямой связи или уровня самоконтроля. То есть авторы выполняют нормализацию слоя (ускоряющую и стабилизирующую обучение нейронной сети) к входу x перед отправкой его в g, применяют отсев (решает проблему переобучения) к выходу g, затем добавляют вход x к входу g. окончательный результат для слоя g в каждом блоке.

Авторы также использовали остаточные соединения для распространения потенциально полезных функций нижнего уровня на более высокие уровни.

4. Уровень прогнозирования

Авторы используют

для прогнозирования следующего элемента (учитывая первые t элементов) после b блоков внутреннего внимания, которые гибко и иерархически собирают информацию о ранее потребленных элементах. Чтобы предвидеть значимость пункта i, авторы используют слой MF:

где N — матрица встраивания элементов, а

является релевантностью элемента i, являющегося следующим элементом, учитывая предыдущие t элементов. В результате высокий показатель взаимодействия

указывает на высокий уровень релевантности, и авторы сделали выводы, оценив эти оценки. Чтобы уменьшить переоснащение и размер модели, авторы использовали вложения общих элементов.

5. Сетевое обучение

Авторы описали ожидаемый результат на временном шаге t следующим образом:

Где элемент заполнения обозначается ‹pad›. Их модель принимает последовательность s, описанную выше, в качестве входных данных, а последовательность, соответствующую этим входным данным, — в качестве ожидаемого результата o. В качестве целевой функции авторы использовали бинарную кросс-энтропийную потерю, определенную ниже, и использовали Adam Optimizer для оптимизации сети.

в. Интересный экспериментальный результат/теоретическое открытие:

Авторы оценили свои модели на четырех разных наборах данных. Статистика данных после предварительной обработки показана ниже:

Авторы включают три группы базовых рекомендаций, чтобы продемонстрировать эффективность своего подхода.

А. Группа 1:

В эту категорию входят общие системы рекомендаций, которые полагаются только на вводимые пользователем данные и игнорируют порядок выполнения действий (например, PopRec и Байесовский персонализированный рейтинг (BPR)).

Б. Группа 2:

Эта категория включает алгоритмы последовательных рекомендаций, основанные на цепях Маркова первого порядка, которые учитывают последний посещенный элемент (например, факторизованные цепи Маркова (FMC), факторизованные персонализированные цепи Маркова (FPMC), рекомендации на основе перевода (TransRec)). )

С. Группа 3:

В эту категорию входят последовательные рекомендательные системы, основанные на глубоком обучении, которые учитывают многочисленные (или все) предшествующие элементы (например, GRU4Rec, GRU4Rec+ и встраивание сверточных последовательностей (Caser)).

Эффективность всех подходов к четырем наборам данных представлена ​​в таблице ниже.

Из приведенной выше таблицы можно наблюдать следующее:

  1. Как для разреженных, так и для плотных наборов данных предлагаемый подход SASRec превосходит все базовые показатели, получая 6,9% вероятности совпадения и увеличение NDCG на 9,6% (в среднем) по сравнению с самым сильным базовым уровнем. Одно из возможных объяснений состоит в том, что их модель может учитывать элементы в разных диапазонах в разных наборах данных (например, только предыдущий элемент в разреженных наборах данных и больше в плотных наборах данных).
  2. Ненейронные методы (т. е. (а)-(д)) лучше работают на разреженных наборах данных, тогда как нейронные подходы (т. е. (е)-(з)) дают более высокие оценки на более плотных наборах данных при рассмотрении вторых лучших методов по всем показателям. наборы данных. Это связано с тем, что нейронные методы имеют больше параметров для захвата переходов высокого порядка (но легко переобучаются), тогда как хорошо построенные, но более простые модели лучше работают в средах с высокой разреженностью.

Авторы также заметили, что большее количество скрытых измерений повышает производительность их модели. Если d больше или равно 40, их модель работает удовлетворительно во всех наборах данных.

  1. МОИ МЫСЛИ:

Плюсы и проблемы, которые они решают:

а. Авторы использовали очень новый метод для решения проблем последовательных рекомендаций, используя механизм внутреннего внимания, ранее использовавшийся в «Трансформерах», который позволяет им извлекать «контекст» из всех предыдущих действий и делать окончательный прогноз, основываясь только на нескольких важных действиях. .

б. Из-за механизма самоконтроля SASRec имеет тенденцию оценивать долгосрочные отношения на плотных данных, концентрируясь на более поздних событиях на разреженных наборах данных, что оказывается критически важным для адаптивного управления наборами данных переменной плотности.

в. Вычисления блока самоконтроля SASRec могут быть распараллелены, что делает его быстрее, чем другие варианты RNN/CNN.

д. Исследование абляции, проведенное авторами статьи, очень эффективно показало, как различные компоненты модели влияют на ее поведение. Визуализация весов внимания в документе очень полезна, поскольку дает читателям статьи интуитивное представление о характеристиках модели.

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

Ограничения:

а. Автор не рассматривает явные пользовательские встраивания и полностью полагается на неявные пользовательские вложения для задачи рекомендации.

б. Авторы берут только фиксированную длину последовательности n (n самых последних действий) в первом слое внедрения, поскольку это максимальная длина, которую может обрабатывать их модель. Если значение n меньше, это может отрицательно сказаться на производительности модели. Их подход нельзя масштабировать для обработки очень длинных последовательностей.

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

д. Во время предварительной обработки данных авторы отбрасывают пользователей и элементы с менее чем пятью связанными действиями. Это действие нежелательно, так как некоторые отброшенные действия могут быть очень полезными.

3. ПОСЛЕДУЮЩИЕ/СЛЕДУЮЩИЕ ШАГИ:

а. Будущая работа может быть предпринята путем рассмотрения явных пользовательских вложений вместе с механизмом самоконтроля.

б. Можно провести исследование, чтобы найти эффективные способы увеличения значения n(количество недавних действий) в первом слое внедрения (для рассмотрения более длинных последовательностей) при большом значении n будет означать, что модель способна учитывать больше предыдущих действий при прогнозировании. Одним из направлений может быть разделение более длинных последовательностей на короткие сегменты, а затем использование их для обучения. Другим может быть использование ограниченного внимания к себе, которое будет рассматривать только недавние действия, а не все действия, а удаленные действия могут оцениваться на более высоких уровнях.

в. Можно провести исследование, чтобы улучшить производительность модели при использовании вложений с фиксированным положением, как это сделано в [2] во входном встраивании.

д. Модель можно улучшить, включив обширную контекстную информацию (например, время пребывания, местоположение и т. д.), а также изучив способы управления чрезвычайно длинными последовательностями (например, кликами).

4. ССЫЛКИ:

[1] Канг, Ван-Ченг и Маколи, Джулиан, Последовательная рекомендация самостоятельного внимания, в arXiv, 2018 г., https://doi.org/10.48550/arxiv.1808.09781

[2] А. Васвани, Н. Шазир, Н. Пармар, Дж. Ушкорейт, Л. Джонс, А. Н. Гомес, Л. Кайзер и И. Полосухин, «Внимание — это все, что вам нужно», в НИПС, 2017.