Арусарка Бозе, Кушал Натани и Шиванш Сетхи

Введение

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

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

Пример графа совместных знаний. u1 — целевой пользователь, для которого нужно предоставить рекомендации. Желтый кружок и серый кружок обозначают важных пользователей и элементы, обнаруженные отношениями высокого порядка, но упускаемые из виду традиционными методами. Здесь r1, r2, r3 и r4 — разные отношения.

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

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

Какие проблемы с другими рекомендательными системами привели к Knowledge Graph Attention Network?

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

Пример из предыдущего рисунка, показывающий отношения более высокого порядка, игнорируемые FM или NFM.

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

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

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

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

Какие изменения внесены для решения этих проблем?

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

  1. Распространение рекурсивного встраивания: обновляет вложение узла на основе встраивания его соседей и выполняет такое распространение встраивания рекурсивно, чтобы зафиксировать связи высокого порядка в линейной временной сложности. Это обрабатывает требование определения эффективных мета-путей.
  2. Агрегация на основе внимания. Механизм нейронного внимания используется для изучения веса каждого соседа на протяжении распространения, так что веса внимания каскадных распространений могут показать значимость связности высокого порядка. В результате явного включения отношений высокого порядка в прогностическую модель все связанные параметры настраиваются для оптимизации цели рекомендации.

В этом блоге мы делаем следующее:

  1. Мы повторяем существующие методы рекомендаций и даем улучшенные рекомендации, используя дополнительную информацию об элементах, мы подчеркиваем необходимость четкого моделирования отношений высокого порядка в совместных графах знаний.
  2. Мы объясняем Сеть внимания графа знаний, которая позволяет явно и сквозно моделировать отношения высокого порядка с использованием архитектуры нейронной сети графа.
  3. Мы исследуем эффективность и интерпретируемость KGAT в распознавании релевантности ссылок высокого порядка на общедоступные эталонные тесты с помощью некоторых экспериментов.

Совместная графа знаний

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

  1. Двудольный график пользователя и элемента: здесь мы представляем данные взаимодействия в виде двудольного графа пользователя и элемента G.
  2. График знаний. Помимо взаимодействий, у нас есть дополнительная информация об элементах (например, атрибуты элемента и внешние знания).

Взаимосвязи CKG, особенно отношения высокого порядка, приносят пользу рекомендациям и объяснениям.

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

Методология

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

Иллюстрация предлагаемой модели KGAT. На левом подрисунке показана структура модели KGAT, а на правом подрисунке представлен уровень внимательного встраивания KGAT.

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

Путем параметризации сущностей и взаимодействий в виде векторных представлений при сохранении структуры графа встраивание графа знаний обеспечивает мощную технику. Здесь мы применяем TransR, часто используемый метод, к CKG. Чтобы быть более конкретным, он учится встраивать каждую сущность и отношение, оптимизируя принцип перевода eʳₕ + eᵣ ≈ eₜ, если в графе существует триплет (h, r, t). Здесь eₕ, eₜ ∈ Rᵈ и eᵣ ∈ Rᵏ — вложения для h, t и r соответственно; а eʳₕ, eʳₜ — спроецированные представления eₕ и eₜ в пространстве отношения r. Следовательно, для данного триплета (h, r, t) его показатель правдоподобия (или показатель энергии) формулируется следующим образом:

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

2. Внимательное встраивание слоев распространения

Здесь мы сначала описываем один слой, который состоит из трех частей: распространение информации, осведомленное внимание и агрегация информации, а затем мы говорим о том, как применить его к нескольким уровням.

Распространение информации.Один объект может быть задействован в нескольких триплетах, выступая в качестве моста, соединяющего два триплета и распространяющего информацию. Рассматривая объект h, мы используем Nₕ = {(h,r,t)|(h,r,t) ∈ G} для обозначения набора троек, где h является головным объектом, называемым эго-сетью. Чтобы охарактеризовать структуру связности первого порядка объекта h, мы вычисляем линейную комбинацию эго-сети h:

где π(h,r,t) управляет коэффициентом затухания при каждом распространении по ребру (h,r,t), указывая, сколько информации распространяется от t к h в зависимости от отношения r.

Knowledge-Aware Attention:мы реализуем π(h,r,t) через механизм реляционного внимания, который формулируется следующим образом:

где выбрана нелинейная функция активации tanh. В результате оценка внимания в пространстве отношения r зависит от разделения между объектами, при этом более близкие объекты распространяют больше информации. Ради простоты мы просто используем скалярный продукт для этих представлений; дальнейшее исследование модуля внимания будет предметом будущей работы.

Затем функция softmax используется для нормализации коэффициентов для всех троек, связанных с h:

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

Агрегация информации. Заключительный этап заключается в агрегировании представления объекта eₕ и его представлений в эго-сети в качестве нового представления объекта h. Мы реализуем три типа агрегаторов:

  1. Агрегатор GCN суммирует два представления и применяет нелинейное преобразование следующим образом:

2. GraphSage Aggregator объединяет два представления с последующим нелинейным преобразованием:

3. Агрегатор би-взаимодействия тщательно разработан нами для рассмотрения двух видов взаимодействия функций между eₕ и его эго-сетью:

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

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

при этом информация, распространяемая в сети l-ego для объекта h, определяется следующим образом:

3. Прогноз модели

После выполнения L слоев мы получаем несколько представлений для пользовательского узла u, аналогичного узлу элемента i. Поскольку выход l-го уровня представляет собой агрегацию сообщений глубины древовидной структуры l с корнем u (или i), выходные данные на разных уровнях подчеркивают информацию о связности разного порядка. Поэтому мы применяем механизм агрегации слоев для объединения представлений на каждом шаге в один вектор следующим образом:

где ∥ — операция конкатенации. Делая это, мы улучшаем начальные вложения, встраивая процессы распространения, а также обеспечиваем L-регулируемую регулировку силы распространения.

4. Оптимизация

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

где O обозначает обучающую выборку.

В итоге имеем целевую функцию:

где Θ — набор параметров модели, а E — таблица вложения для всех сущностей и отношений. L₂ регуляризация, параметризованная λ на Θ, проводится для предотвращения переобучения.

Эксперименты

Предлагаемая методология тестируется с использованием трех реальных наборов данных, уделяя особое внимание встраивающемуся слою распространения, с целью ответить на следующие вопросы:

  1. Как KGAT работает по сравнению с современными методами рекомендаций, основанными на знаниях?
  2. Как различные компоненты (например, встраивание графа знаний, механизм внимания и выбор агрегатора) влияют на KGAT?
  3. Может ли KGAT предоставить разумные объяснения предпочтений пользователей в отношении товаров?

Описание набора данных

Эффективность KGAT оценивается по следующим эталонным наборам данных:

  1. Amazon-book: Amazon book — это широко используемый набор данных, содержащий данные более 70 тыс. пользователей и 24 тыс. книг.
  2. Last-FM: набор данных о прослушивании музыки, собранный из музыкальных онлайн-систем Last.fm, содержащий более 23 000 пользователей и 48 000 треков с более чем 3 миллионами взаимодействий между пользователями и треками.
  3. Набор данных Yelp. Набор данных Yelp содержит данные об отзывах о ресторанах от разных пользователей. Он содержит данные от более чем 45 000 пользователей и 45 000 ресторанов, с более чем 1 миллионом взаимодействий между ними.

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

Экспериментальные настройки

Для оценки эффективности рекомендации топ-K и ранжирования предпочтений рассчитываются два протокола оценки: отзыв@K и NDCG@K. По умолчанию для K установлено значение 20. Мы сообщаем средние показатели для всех пользователей в тестовом наборе.

Сравнение производительности

Чтобы ответить на вопрос о производительности KGAT по сравнению с другими современными моделями, мы сравниваем производительность KGAT со следующими моделями: FM, NFM, моделями на основе путей (MCRec и RippleNet) и графовой нейронной сетью. на основе (GC-MC). Результаты представлены на графиках ниже:

Сравнение производительности по распределению разреженности групп пользователей в разных наборах данных. Фоновые гистограммы показывают плотность каждой группы пользователей, а линии демонстрируют производительность по отношению к группе пользователей. ndcg@20.

Мы наблюдаем, что KGAT неизменно обеспечивает наилучшую производительность для всех наборов данных. В частности, KGAT улучшается по сравнению с самыми сильными базовыми показателями по сравнению с другими. отзыв@20 на 8,95%, 4,93% и 7,18% в Amazon-book, Last-FM и Yelp2018 соответственно.

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

Исследование КГАТ

Отвечаем на второй вопрос: «Как разные компоненты влияют на КГАТ?» исследуя влияние разного количества слоев и использования разных агрегаторов на производительность KGAT. Получаем следующие наблюдения:

  • Эффект глубины модели: производительность может быть значительно улучшена за счет углубления КГАТ, но только до определенного момента: КГАТ-2 и КГАТ-3 значительно превосходят КГАТ-1, тогда как КГАТ-4 превосходит КГАТ- 3 только незначительно.
  • Влияние агрегаторов. Чтобы изучить влияние агрегаторов, мы изучаем варианты KGAT-1 с использованием различных агрегаторов: в первую очередь GCN, GraphSage и Bi-Interaction. Мы наблюдаем следующие результаты: KGAT1-GCN последовательно превосходит KGAT1-GraphSage, что может быть связано с тем, что GraphSage отказывается от взаимодействия между представлением объекта и его представлением эго-сети. Он иллюстрирует, насколько важно взаимодействие функций для агрегации и распространения информации.

Тематическое исследование

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

Возможность подключения пользователей высокого порядка из набора данных amazon book

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

Заключение

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

Мы надеемся, что вам понравилось читать этот блог. Спасибо.