Эта статья представляет собой краткое введение в недавнюю работу исследователей Microsoft. Смело переходите к статье прямо здесь. Их обобщение архитектуры преобразователя для моделирования молекулярных графов отлично работает и принесло им 1-е место в треке квантового прогнозирования Open Graph Benchmark Large-Scale Challenge (KDD CUP 2021).

Преобразователь известен тем, что моделирует последовательную информацию. Его основной модуль, блок самоконтроля, фиксирует семантическое сходство между токенами в предложении или подобными предложениям структурами, такими как последовательности SMILES для молекулы. Graformer (преобразователь для графа) включает несколько методов структурного кодирования для моделирования другой полезной информации в графе, а именно центральное кодирование и пространственное кодирование.

Давайте начнем с некоторых базовых знаний о графиках.

Центральность узла

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

  • Какова позиция узла на графике?
  • Насколько важен этот узел?

Центральное место занимает центральное место в этих вопросах. Мы введем три вида центральности: промежуточность, близость и степень центральности.

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

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

Пространственные отношения между узлами

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

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

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

Реализация графомера

Мы кидаем сюда все детали реализации в виде словаря.

  • Нормализация уровня перед блоками самоконтроля с несколькими головками (MHA) и блоками прямой связи (FFN), а не после по сравнению с исходной конструкцией Transformer. реферальная ссылка
  • FFN имеет три слоя скрытых измерений d для простоты. (такой же, как длина размера внедрения узла)
  • Добавьте VirtualNode для представления представления на уровне графа. (аналогично токену CLS в моделях BERT) reference link
  • VirtualNode подключается к каждому существующему узлу и обучается как обычные узлы, за исключением того, что ему назначается отдельный обучаемый скаляр. reference link Первоначально это называлось Graph Warp Module → link
  • Другой метод замены позиционного кодирования и моделирования пространственного кодирования заключается в использовании собственных векторов Лапласа. реферальная ссылка

Другие показания:

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

Для больших графов вычисление узловых характеристик (центральности) может оказаться затруднительным. Таким образом, нам нужны методы выборки графов для получения репрезентативных подграфов. В бумажке Юре Лесковца, опубликованной в 2006 г., об этом говорится должным образом.

Выпущен официальный репозиторий GitHub:



Использованная литература:















Юре Лесковец и Христос Фалуцос. 2006. Выборка из больших графиков. В материалах 12-й международной конференции ACM SIGKDD по открытию знаний и интеллектуальному анализу данных (KDD '06). Ассоциация вычислительной техники, Нью-Йорк, штат Нью-Йорк, США, 631–636. DOI: https://doi.org/10.1145/1150402.1150479