Опыт использования сессионных рекомендаций
Рекомендации на основе сессий можно рассмотреть с трех точек зрения: SBR, глобального контекстного обучения и GSLA (см. Таблицу материалов). В данном исследовании не принимали участия люди или животные. Все экспериментальные наборы данных, использованные в этой работе, находятся в открытом доступе и представлены в Дополнительном файле: GSLA4Rec. zip.
Сессионные рекомендации
Рекомендательная система на основе сессий (SBR) представляет собой систему искусственного интеллекта, которая взаимодействует с пользователями посредством многоходовых диалогов на естественном языке для динамического понимания предпочтений пользователей и предоставления персонализированных рекомендаций. SBR эволюционировала от традиционных методов к подходам на основе глубокого обучения и гибридным методам, а затем развилась в сторону решений на базе больших языковых моделей (LLM).
Традиционные рекомендации на основе сессий
Традиционные системы SBR обычно представляли собой методы на основе цепей Маркова и коллаборативную фильтрацию. Первые генерировали рекомендации путем разложения специфичных для пользователя вероятностных матриц переходов. Например, Guy Shani24 предложил метод рекомендаций на основе марковского процесса принятия решений, который создавал рекомендации путем разложения соответствующих матриц; Wanrong Gu25 повысил эффективность рекомендаций, интегрировав цепи Маркова с интервалами времени между покупками. Вторые генерировали рекомендации путем извлечения скрытых последовательных связей между смежными объектами взаимодействия с помощью матричного разложения. Так, Sarwar B1 рассчитывал сходство между объектами на основе истории поведения пользователей (такой как оценки и клики), чтобы рекомендовать объекты, соответствующие прошлым предпочтениям пользователей. Если пользователю A понравился объект a, а объект c был очень похож на a, система рекомендует c пользователю A; Rendle S5 предложил FPMC — модель рекомендаций последовательностей, сочетающую матричное разложение с цепями Маркова для фиксации скрытых последовательных связей между смежными объектами взаимодействия. Однако такие традиционные SBR фокусировались на последовательных связях между соседними объектами, что затрудняло моделирование сложных зависимостей.
Рекомендательная система на основе сессий с использованием глубокого обучения
Рекомендательные системы на основе сессий с применением глубокого обучения прошли через этапы эволюции, включавшие использование сверточных нейронных сетей (CNN)26,27,28,29, рекуррентных нейронных сетей (RNN) и графовых нейронных сетей (GNN). SBR на базе CNN использовали такие операции, как свертка и пулинг, для изучения представлений контекста каждой сессии, которые затем применялись для последующих рекомендаций. В модели Caser30 L последних элементов, с которыми взаимодействовал пользователь, преобразовывали в d-мерные векторы с помощью слоя вложения, формируя матрицу вложений, которая рассматривалась как «изображение», отображенное во временном и латентном пространстве. Затем использовались три сверточных фильтра паттернов последовательности — на уровне точек, на уровне объединения без пропуска и на уровне объединения с одним пропуском — для изучения последовательных паттернов с целью повышения эффективности SBR. Tuan и соавт.31 единообразно моделировали потоки кликов в сессиях и признаки контента с помощью ядер 3D-свертки для формирования совместных пространственно-временных контентных представлений.
Рекуррентные нейронные сети (РНС) представляли собой класс архитектур нейронных сетей, специально разработанных для обработки последовательных данных. Основная идея заключалась в фиксации временных зависимостей с помощью рекуррентных структур, таких как сети долгой краткосрочной памяти (LSTM).13 и управляемые рекуррентные блоки (GRU)32и они широко использовались в таких областях, как обработка естественного языка (NLP)33, распознавание речи34Пожалуйста, предоставьте текст для перевода.35путешествия36,37преступность38, и прогнозирование будущих тенденций39 (например, трафик)40, фондовые рынки41,42и метеорология43GRU4Rec, предложенная Hidasi и соавторами, стала важным этапом в исследованиях SBR; в этой модели рекуррентные нейронные сети (RNN) впервые были применены в SBR для фиксации последовательных паттернов поведения пользователей с помощью GRU с целью формирования персонализированных рекомендаций.
Графовые нейронные сети (GNNs)44 продемонстрировали высокую выразительную способность при моделировании сложных взаимосвязей в данных со структурой графа, и некоторые исследователи внедрили GNNs для моделирования сложных переходов внутри сессий или между ними. В зависимости от архитектуры модели GNNs методы сессионных рекомендаций (SBR) на их основе обычно разделяют на управляемые графовые нейронные сети (GGNNs)45, графовые сверточные сети (GCNs)46 и графовые сети внимания (GATs)47. SR-GNN стала первой моделью, применившей GNNs в SBR путем представления последовательностей сессий в виде ориентированных графов и использования GGNNs для фиксации сложных отношений переходов между объектами внутри сессий в сочетании с механизмами внимания для получения итогового эмбеддинга сессии, что позволило повысить качество рекомендаций. Chen L48 предложил многопредставленную структуру GNNs, которая объединяет структурированные атрибуты и неструктурированные ключевые слова для моделирования многомерных ассоциаций продуктов, что повысило точность SBR. Driss E49 разработал инновационную систему сессионных рекомендаций с использованием капсульных графовых нейронных сетей для извлечения сложных признаков объектов и повышения точности прогнозирования в SBR.
Вышеупомянутые методы глубокого обучения расширили область исследований SBR и эффективно повысили производительность, однако они по-прежнему имели определенные ограничения, которые в основном проявлялись в следующем: 1) для новых позиций или очень разреженных сессий моделям было трудно делать точные прогнозы из-за отсутствия глобального контекста; 2) они не могли использовать глобальные закономерности, содержащиеся во всех исторических сессиях.
Гибридная рекомендательная система на основе сессий
Гибридные сессионные рекомендательные системы объединяют преимущества различных методов, таких как коллаборативная фильтрация, глубокое обучение и механизмы внимания, для повышения эффективности SBR. В GC-SAN50 был внедрен механизм самовнимания на основе SR-GNN для более точного захвата информации о взаимодействиях с наиболее значимыми объектами внутри сессии. FGNN51 дополнительно агрегирует информацию из соседних объектов с помощью многоголового механизма внимания для изучения множественных связей целевого объекта. SR-HetGNN52 относится к SBR с гетерогенными графами; путем введения объектов нескольких типов (пользователь, объект, сессия) и ребер с множественными отношениями (клик, покупка, совместное появление, ассоциация атрибутов) была построена глобальная сеть знаний, что позволило преодолеть ограничение одиночных последовательностей объектов; этот метод стал важным инструментом моделирования поведения анонимных пользователей и межсессионных ассоциаций интересов в последние годы. KGSR-SAP53 формирует граф знаний, соединяя объекты ребрами с множественными отношениями для описания различных взаимодействий «пользователь-объект», что решает проблему потери информации, возникающую, когда глобальный граф содержит ребра только одного типа (взаимодействие пользователь-объект). Wang ZH54 предложил DiffSBR — модель сессионных рекомендаций на основе диффузии. Она генерирует надежные предпочтения по следующему объекту путем симуляции шумоподавления, что улучшает моделирование динамических последовательностей кликов пользователя. Qiao ST55 разработал SBR-фреймворк, сочетающий многовидовое обучение намерениям и выравнивание с LLM. Данный подход извлекает неявные намерения пользователя с разных ракурсов и использует языковые модели для выравнивания семантических признаков с целью повышения качества рекомендаций.
Общий контекст
Чтобы преодолеть недостаток «рассмотрения сессий в изоляции», исследователи поняли, что глобальная информация может быть использована для расширения репрезентативных возможностей текущей сессии, что позволит решить такие проблемы, как разреженность данных, «холодный старт» и семантический разрыв в традиционных SBR. В то же время при построении глобального контекста требовалась интеграция глобальной информации в одну сессию при минимизации шумовых помех. CSRM56 оптимизировала представление на уровне сессии путем интеграции коллаборативной информации между текущей сессией и соседними сессиями, используя внешний кодировщик памяти (OME) для извлечения коллаборативного намерения из коллаборативной информации. CA-TCN57 предложила модель временной сверточной сети с учетом межсессионных связей, создавая глобальные графы и графы контекста сессий для имитации влияния межсессионных взаимодействий на товары и сессии, в то время как временная сверточная сеть (TCN) расширяет поле восприятия с помощью разреженных сверток, где количество слоев охватывает последовательности экспоненциальной длины (поле восприятия = ), решая проблему затухания градиента в RNN. Chen58 предложил метод SBR на основе гиперграфовых нейронных сетей (SR-HGNNs), который объединяет механизмы распространения смешанного порядка (низкого и высокого порядка) и механизмы внимания для решения проблемы чрезмерного сглаживания традиционных GNN в коротких сессиях и дифференциации значимости различных порядков распространения, что позволило более точно улавливать зависимости и избегать шумовых помех. GCE-GNN использовала пары совместно встречающихся товаров различных порядков для построения ненаправленного взвешенного графа, подсчитывая частоту совместного появления товаров для отражения их важности в сессии; AGNN-GC59 использовала межсессионные отношения переходов между товарами для построения глобального коллаборативного графа, рассчитывая вероятности переходов между товарами в глобальном графе для отражения изменений интересов в сессии; DA-GCN60 использовала кратчайший путь для обновления матрицы смежности с целью построения динамического взвешенного графа, рассчитывая частоту совместного появления в глобальном графе и расстояние пути между товарами. Вдохновившись вышеупомянутыми работами, в данной статье предложено построение глобального графа с помощью метода на основе соседства, т. е. с использованием коэффициента сходства Жаккара для расчета схожих сессий, что позволило не только использовать глобальную информацию, но и отфильтровать шум (исключить иррелевантные товары), достигнув цели точного построения глобального контекста и заложив прочный фундамент для последующего алгоритма SBR.
Линейное внимание с затворами в слотах
Традиционные трансформеры61 обладали высокой пространственно-временной сложностью из-за необходимости выполнения операций полносвязного внимания по всей последовательности следующим образом:
(1)
Где Q, K, V ∈ RN×d представляли собой линейные преобразования входных элементов, M = {Mij = 1, если i ≥ j, в противном случае −∞ } было каузальной маской для предотвращения утечки информации из будущего, ⊙ обозначало поэлементное произведение, а f обозначало функцию активации softmax.
Для реализации линейного внимания62 наиболее очевидной идеей был отказ от функции активации softmax. Однако прямое удаление функции активации softmax неизбежно привело бы к ряду потенциальных проблем: потере мощного выразительного потенциала нейронных сетей и невозможности решения сложных прикладных задач.
Слотовое линейное внимание с контролем ограниченной памяти
Исходя из необходимости сохранения функции активации softmax, K и V сжимались по отдельности в K̃, Ṽ ∈ Rm×d. С точки зрения сети памяти, K̃ и Ṽ имели ячейки памяти, длина которых увеличивалась вместе с последовательностью, то есть количество ячеек m = N. Если m было фиксированным, линеаризация была очевидно возможна. По аналогии с управлением с ограниченной памятью (Bounded-memory Control)63, каждый токен во входных элементах длиной N должен был конкурентно записываться в m ячеек.
,
,
(2)
Где f — функция активации softmax, а φi — вектор для регулирования эффективного входного сигнала, который управляет значением ключа ki следующим образом.
,
(3)
Здесь (φi)j представляет собой интенсивность записи i-го токена в j-й слот, которая была получена с помощью функции кумулятивного softmax.
Для обеспечения эффективных линейных вычислений формула (2) была переписана в виде формулы (4), которая вычисляла οi на основе qi, ki и vi (ур. 4) с помощью {οi|i=1T, qi, ki, vi)|i=1T} и применения двухпроходного последовательного вычисления:
,
(4)
Таким образом, можно вывести операции SLA:
,
(5)
Где oi′ ∈ ℝm, οi ∈ ℝd. Таким образом, SLA может обеспечить аппаратно-эффективное поблочное обучение за линейное время64.
Линейное внимание с вентилируемыми слотами
Слотное линейное внимание с контролем ограниченного объема памяти может снизить вычислительную и пространственную сложность. Однако накопление информации может также привнести шум в сессионное взаимодействие, поэтому затухание, зависящее от данных, имело большое значение для селективного сохранения и удаления информации; этот селективный механизм был повторно рассмотрен в недавних селективных моделях пространства состояний65. GSLA с зависимостью от данных может быть выражена следующим образом:
,
(6)
В данном случае гейты затухания были параметризованы в форме внешнего произведения Gi = αi ⊗ βi, αi, βi ∈ [0,1]d. Далее GSLA также может быть записан в следующей эквивалентной форме при условии, что обычно βt = 1, с использованием матричного умножения, как показано в64:
(7)
Где αi и ki по отдельности обозначают вентиль забывания и входной вентиль; эти два вентиля могут быть связаны соотношением ki = 1 − αi, что основано на литературе по RNN с вентилированием. Очевидно, что GSLA может быть сформулирована с помощью двухпроходного последовательного вычисления, как показано в уравнении (8). Структура второго порядка поддерживала блочное параллельное обучение для повышения эффективности тренировки, а внедрение операции softmax в середину структуры второго порядка расширило возможности моделирования памяти с ограниченным количеством слотов.
,
(8)
Преобразование данных сессии
Постановка задачи
Пусть заданная последовательность сессий будет S = {v1s, v2s, ⋯, vns}, где vis обозначает i-й выбранный элемент. Путем анализа поведения пользователя по кликам в этой последовательности система предсказывает следующий элемент, который может заинтересовать пользователя, vn+1s.
Построение графа
Построение графа сессий
Для сессии S = {v1s, v2s, ⋯, vns} был построен ориентированный граф Gs = (Vs, εs), где Vs представлял собой набор элементов данной сессии S, а εs = {eijlocal|vi, vj, vi, vj ∈ Vs} был набором ребер данной сессии S. ε(vi-1s, vis) обозначал последовательно выбранные элементы в этой сессии. Ребро eijlocal можно было разделить на четыре типа: ein, eout, ein-out, eself. Поскольку один и тот же элемент мог неоднократно появляться в последовательности, для каждого ребра рассчитывалось весовое значение.
Текущая сессия s = [v1, v2, v4, v2, v3] была преобразована в SG, как показано на Рисунке 1A.

Рисунок 1: Преобразование интерактивных элементов в графовые структуры. (A) Иллюстрация построения графа сессии (SG) путем преобразования сессии в граф. (B) Иллюстрация построения глобального графа соседей (NGG) путем объединения множества сессий в один граф. Данный рисунок был самостоятельно отрисован в Visio с использованием полностью настраиваемых элементов. Сторонние графические ресурсы, защищенные авторским правом, не использовались, поэтому дополнительное лицензирование сторонних авторских прав не потребовалось. Авторские права на рисунок принадлежат авторам и будут соответствовать правилам журнала по авторскому праву после принятия статьи. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этого рисунка.
Построение глобального графа соседей
На основе текущей сессии S был построен соответствующий NGG Gg = (Vg, εg) для обогащения обучения представлениям текущей сессии перекрестным способом. Vg представлял собой набор элементов, содержащий все элементы в Gg, а εg = {eijglobal|vi, vj, vi, vj ∈ Vg} был набором ребер Gg. ε(vi-1g, vig) обозначал непосредственно взаимодействующие элементы vi-1g и vig в NGG Gg. Этот процесс состоял из двух этапов: получения соседних сессий и построения NGG.
Сбор данных о соседних сессиях
По всему набору данных был выполнен поиск сессий с максимальным количеством элементов, совпадающих с элементами текущей сессии. Для формирования набора сессий-кандидатов в соседние сессии S были выбраны топ-N сессий с наибольшим количеством совместных вхождений. Впоследствии для расчета сходства между текущей сессией cu и сессией Sr ∈ S из набора кандидатов S использовался коэффициент сходства Жаккара, как показано в уравнении (9).
(9)
Здесь co(Scu, Sr) обозначало количество элементов, совместно встречающихся как в Scu, так и в Sr, в то время как l(Scu) и l(Sr) соответственно представляли длины Scu и Sr, а Scu и Sr обозначали текущую сессию и соседнюю сессию. Сессии со сходством ниже определенного порога (который мог быть задан в качестве гиперпараметра) отфильтровывались, а оставшиеся сессии составляли набор соседних сессий Ns для текущей сессии.
Построение глобального графа соседей
На основе набора соседних сессий Ns был построен NGG, как показано на Рисунке 1B. При построении матрицы смежности, если между двумя объектами (vi, vj) имело место взаимодействие, соответствующий элемент Aij принимал значение 1, в противном случае он принимал значение 0. Кроме того, взаимодействия между объектами рассматривались как ненаправленные и дополнялись петлями, после чего проводилась нормализация, как показано в Таблице 1.
| 1 | 2 | 3 | 4 | 5 | 6 |
| 1 | 1/2 | 1/2 | 0 | 0 | 0 | 0 |
| 2 | 0 | 1/4 | 1/4 | 1/2 | 0 | 0 |
| 3 | 0 | 0 | 1 | 0 | 0 | 0 |
| 4 | 0 | 1/4 | 1/2 | 1/4 | 0 | 0 |
| 5 | 0 | 0 | 0 | 0 | 1/3 | 2/3 |
| 6 | 0 | 1/3 | 0 | 1/3 | 0 | 1/3 |
Таблица 1: Нормализованная матрица смежности глобального графа соседей. В таблице представлена нормализованная матрица смежности, описывающая взвешенные связи между узлами в построенном глобальном графе соседей.
Разработка алгоритма рекомендаций на основе сессий
В данном разделе подробно описывается предлагаемая инновационная модель GSLA4Rec, которая позволила повысить эффективность SBR за счет внедрения механизма GSLA в совместное представление признаков SG и NGG.

Рисунок 2: Структура GSLA4Rec. Данная структура объединяет обучение структуре графа сессий и глобального графа соседей, фильтрует шум взаимодействий с помощью механизма гейтинга, балансирует объем памяти и эффективность с помощью механизма слотов памяти и фиксирует релевантность элементов с помощью механизма линейного внимания для прогнозирования следующего клика пользователя. Данный рисунок был самостоятельно отрисован в Visio с использованием полностью настраиваемых элементов. Сторонние графические ресурсы, защищенные авторским правом, не использовались, поэтому дополнительное лицензирование авторских прав третьих лиц не потребовалось. Авторские права на рисунок принадлежат авторам и будут соответствовать правилам журнала по авторскому праву после принятия статьи. GSLA4Rec представляет собой графовые нейронные сети с линейным вниманием и гейтированными слотами для SBR. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этого рисунка.
Рисунок 2 демонстрирует структуру GSLA4Rec, которая состоит из четырех основных компонентов: 1) Представление объектов на уровне сессии. Используется модель GNNs на SG для изучения эмбеддингов объектов на уровне сессии внутри текущей сессии; 2) Глобальное представление соседних объектов. Глобальные эмбеддинги объектов по всем сессиям изучаются с помощью GRU для рекурсивного объединения эмбеддингов соседей каждого объекта на основе NGG; 3) GSLA. Моделирование предпочтений пользователя в текущей сессии осуществляется путем агрегирования изученных представлений объектов как на уровне сессии, так и на глобальном уровне; 4) Слой прогнозирования. Вычисляет прогнозируемые вероятности для объектов-кандидатов. Эти четыре компонента подробно описаны далее.
Представление сессии
В SBR понимание особенностей взаимодействия пользователей имело решающее значение. С этой целью для обучения представлениям сессий были построены SG и NGG, что позволило всесторонне изучить поведение пользователей и тем самым более точно определить их истинные намерения.
Представление объектов на уровне сессии
На основе SG, представленного на рисунке 1A, для извлечения признаков SG был применен метод взвешенного двунаправленного графового внимания (Weighted Bidirectional Graph Attention, WBGAT). В данном методе на базе стандартного механизма GAT были введены веса ребер и направленность элементов (входящие и исходящие соседи), что позволило усилить значимые ребра и зафиксировать двунаправленные зависимости, тем самым устранив недостатки традиционного GAT в отношении асимметричных отношений между элементами и силы их взаимодействия. Процесс вычисления был следующим:
Сначала проводится расчет весов нормализации входящей степени элементов.
(10)
где eij обозначает вес признаков объекта j по отношению к объекту i первого порядка соседства,
была связью между объектом i и объектом j, β* ∈ ℝd представляли собой векторы весов, hi и hj были представлениями объекта i и j соответственно, Wi(in) ∈ ℝd*d и Wj(in) ∈ ℝd*d были обучаемыми параметрами, || обозначала операцию конкатенации. Для разграничения различных отношений входящей степени были обучены два вектора весов, а именно rin и rin-self. В качестве функции активации использовалась LeakyReLU.
(11)
Для того чтобы коэффициенты были сопоставимы для разных объектов, веса внимания были нормализованы с помощью функции softmax. Если Ni(in) представляло собой набор ближайших входящих соседей объекта i, а
было весом входящего соседа направленного ребра (i←j) в SG, то данный метод позволил модели изучать корреляции признаков объектов, сохраняя при этом информацию о внутренней силе связей структуры графа путем взятия логарифма весов ребер и их добавления к исходному показателю внимания eij.
Во-вторых, расчет весов нормализации исходящей степени элементов.
(12)
где ẽij обозначает вес исходящего соседа первого порядка признаков объекта j по отношению к объекту i,
был связью между объектами i и j; были обучены два вектора весов, а именно rout и rout-self.
(13)
Где Ni(out) — множество исходящих соседей первого порядка элемента i,
— вес исходящего соседа ориентированного ребра (i→j) в SG.
В-третьих, агрегация информации. Обновленное эмбеддинг-представление объекта может быть получено путем взвешивания и суммирования эмбеддингов первого порядка входящих и исходящих степеней объекта i.
(14)
Где
и α̃ij соответственно обозначают веса входящей и исходящей степеней элемента i, а
обозначает обновленное представление элемента i.
Представление элементов на глобальном уровне соседства
Последние исследования единогласно подтверждают, что построение глобального графа может улучшить представление данных и, следовательно, повысить эффективность SBR, в этом нет никаких сомнений. Однако глобальное расширение данных может также привнести и иррелевантную информацию, например, шум. В предлагаемой модели для достижения глобальной аугментации данных при максимально возможном снижении уровня шума был построен глобальный граф ближайших соседей.
На основании NGG на Рисунке 1B и нормализованной матрицы смежности в Таблице 1 текущая сессия и соседние сессии были преобразованы в NGG, после чего был применен метод GGNNs45 для извлечения признаков NGG. Процесс обучения векторов элементов в NGG представлен в Уравнении (15).




(15)
W ∈ ℝd×2d обозначает веса управления, zg,i и rg,i представляют собой вентиль обновления и вентиль сброса соответственно. [h1t-1, ⋯, hnt-1] представляет собой список всех векторов элементов в сессии s. σ(x) = 1/(1 + e-x) — логистическая сигмоидная функция, ⊙ обозначает поэлементное умножение, а hi ∈ ℝd представляет собой вектор после управляемого обновления. Матрица смежности As ∈ ℝn×n указывает на связность между элементами в соседних сессиях, а As,i: ∈ ℝ1×n представляет собой блок столбцов As, соответствующий элементу vs,i в матрице смежности. Для текущей сессии s = [v1, v2, v4, v2, v3] NGG и нормированная матрица смежности показаны на Рисунке 1B и в Таблице 1 соответственно.
Представление объекта
Представление объекта было получено путем суммирования вектора объекта на уровне сессии и глобального вектора объекта соседнего уровня, как показано в уравнении (16):

(16)
В случаях, когда для предотвращения переобучения использовался метод дропаута (dropout) для представлений соседних объектов на глобальном уровне.
Линейное внимание с вентилируемыми слотами
Механизм линейного внимания с затворами в слотах (gated-slot linear attention, GSLA), описанный в данной работе, объединяет линейное внимание с контролем ограниченной памяти и зависимым от данных механизмом затворов. С одной стороны, он унаследовал механизм слотов конечной памяти из модели контроллера на основе внимания (attention-based controller, ABC), сжимая пары «ключ-значение», которые изначально росли пропорционально длине последовательности, в фиксированное количество слотов, при этом каждый слот обновлялся посредством конкурентной записи, что решает проблему вычислительной сложности глобального внимания трансформера. С другой стороны, был внедрен механизм мелкозернистого затвора, аналогичный GLA, при котором входные данные динамически регулируют коэффициент удержания исторической информации с помощью затвора забывания αi, что устраняет проблему шума, вызванную отсутствием механизма забывания в ABC.

Рисунок 3: Схематическая диаграмма GSLA. Входной вектор отображался на вектор запроса, вектор ключевых слов и вектор значений соответственно, после чего обрабатывался с помощью линейного внимания с контролем ограниченной памяти и зависимым от данных механизмом гейтирования для получения обновленного вектора запроса, вектора ключевых слов, вектора значений и выходного вектора. Данный рисунок был самостоятельно отрисован в Visio с использованием полностью настраиваемых элементов. Сторонние графические ресурсы, защищенные авторским правом, не использовались, поэтому дополнительное лицензирование сторонних авторских прав не потребовалось. Авторское право на рисунок принадлежит авторам и будет соответствовать правилам авторского права журнала после принятия статьи. GSLA означает gated-slot linear attention. Пожалуйста, нажмите здесь, чтобы просмотреть увеличенную версию этого рисунка.
Как конкретно показано на рисунке 3, входной вектор был раздельно отображен в вектор запроса (query vector), вектор ключа (key vector) и вектор значения (value vector)64:
(17)
Где Wq, Wk, Wv ∈ ℝd×d представляют собой матрицы весов преобразования, соответствующие запросу (query), ключу (key) и значению (value) соответственно, а ht обозначает вектор эмбеддинга на t-м временном шаге во входной последовательности сессии. Функция Swish была определена как Swish(x) = x · σ(x) и представляла собой функцию активации с саморегулируемыми затворами (self-gated activation function), где σ — сигмоидальная функция; данная функция продемонстрировала более высокую эффективность по сравнению с традиционной функцией активации ReLU в различных задачах глубокого обучения.
В GSLA использовались затвор забывания αi и входной затвор 1 − αi, которые в зависимости от входных данных динамически обновляли информацию в i-м слоте памяти. Процесс протекал следующим образом64:
(18)
(19)
Здесь K̃t и Ṽt обозначали слоты векторов ключей и векторов значений на временном шаге t, в то время как K̃t-1 и Ṽt-1 обозначали слоты векторов ключей и векторов значений на временном шаге t−1. Забывающий вентиль αi = σ(Wαht)1/τ, где Wα ∈ ℝd представлял собой матрицу весов преобразования, σ — сигмоидную функцию, а τ — коэффициент демпфирования (обычно равный 8), используемый для управления «мягкостью» забывающего вентиля. Это позволяло GSLA плавно регулировать скорость забывания исторической информации: чем больше значение αi, тем больше GSLA опирался на историческую информацию; чем меньше значение αi, тем больше GSLA фокусировался на текущем входном сигнале.
Слоты ключевых векторов K̃t и слоты векторов значений Ṽt для слотов на t-м шаге были записаны в матричной форме, как показано65 в уравнениях (20) и (21):
(20)
(21)
Затем GSLA со свойствами второго порядка (см. уравнение (8)) использовался для вычисления выходного значения oi |i=1T для каждого временного шага i ∈ [1, …, T]. К выходу каждого временного шага применялось линейное преобразование для получения результата h̃t. Наконец, было вычислено среднее значение представлений всех элементов в последовательности сессии для генерации эмбеддинга сессии S̃e с динамическим обновлением памяти:
(22)
(23)
Здесь ot представляет собой выход Gated-Slot на временном шаге t, а h̃t обозначает результат применения линейного преобразования к ot. S̃e обозначает среднее значение h̃t по всем временным шагам.
Прогностический слой
На основе полученного представления сессии S̃e и начального эмбеддинга объекта i была выполнена операция скалярного произведения для расчета оценки каждого объекта-кандидата hi. Впоследствии использовалась функция softmax для получения вероятностей рекомендации объекта-кандидата i:
(24)
Здесь ỹ представляла вероятности рекомендации искомого объекта, hi обозначал вектор искомого объекта, а для обучения модели использовалась функция потерь перекрестной энтропии.
(25)
Здесь y представляла собой истинное значение в кодировке one-hot.