4 графических нейронных сети, которые вам нужно знать (WLG, GCN, GAT, GIN)
Мы прошли через Вложения графа знаний и Случайное блуждание в предыдущих рассказах о нейронных сетях графов. Встраивание графа знаний позволяет встраивать встраиваемые сущности для последующих задач. С другой стороны, несколько моделей нейронных сетей применяют теорию случайных блужданий для обучения внедрению сущностей.
В этом рассказе мы сосредоточимся на четырех моделях нейронных сетей графов, а именно: ядро графа Вайсфейлера-Лемана (Шервашидзе и др., 2011), сверточная сеть графа (Кипф и Веллинг, 2017), сети внимания графа (Величкович и др., 2017) и Сеть изоморфизма графов (Xu et al., 2019)
Ядро графа Вайсфейлера-Лемана (WL)
Шервашидзе и др. (2011) представили способ измерения сходства графов (тест WL) в нейронных сетях графов. Пройденный тест WL означает, что любой из графов является изоморфизмом или не может доказать, что графы не являются изоморфизмом.
В тесте WL вы можете определить высоту графика. Высота означает итерацию числа. Следующая процедура представляет собой тест WL с h = 1:
- Именованный узел для каждого узла
- Добавьте номер подключенного узла. Взяв граф G в качестве примера, узел 4 обновлен до узла 4, 1135, поскольку узел 4 подключается к узлу 1 (2 раза), узлу 3 и узлу 5.
- Просто имя узла. Например, преобразуйте узел 4, 1135 в 11. (просто переименуйте его по порядку)
- Изменить название нового узла
- Проверьте счетчики как исходных меток узлов, так и вновь созданных меток. Если количество узлов (вектор признаков) одинаково, эти два графа являются изоморфизмом.
Сверточная сеть графов (GCN)
Кипф и Веллинг представили сверточную сеть графов (GCN) в 2017 году. Основная идея GCN заключается в агрегировании как собственных, так и соседних функций.
На рисунке ниже показана общая архитектура GCN. Взяв в качестве примера узел X2, он поглощает функции X2 (собственные), X1, X3 и X4 (соседние) и вводит в нейронную работу для обучения модели.
Что касается функции узла, это может быть случайная инициализация или числовые функции. Если взять в качестве примера цитирование статьи, документ - это узел, а край - цитирует. Функция узла (например, документ) может включать количество закодированных слов, год публикации, авторов. Другой пример - социальная сеть. Человек - это узел, а край - отношения (например, дружба). Возможности включают рождение города, количество друзей.
Графические сети внимания (GAT)
Вдохновленные механизмом внимания, Величкович и др. Предлагаю применить его на графической нейронной сети. Так же, как GCN (Kipf and Welling, 2017), Graph Attention Networks (GAT) (Veličković et al., 2017) использует функции самоузлов и соседей для обучения модели. Так же, как BERT в области обработки естественного языка (NLP), авторы используют многоголовое внимание, чтобы научиться большему разному вниманию.
Что касается использования внимания, у него есть несколько преимуществ:
- Высокая эффективность вычислений, поскольку уровни внимания можно рассчитывать параллельно
- Больше внимания уделяйте важному соседу
- Более мощный, поскольку он может поддерживать как прямой, так и непрямой граф.
- Это индуктивное обучение, поэтому оно может обрабатывать невидимые узлы.
Сеть изоморфизма графов (GIN)
Топологически идентичность может быть одним из способов измерить подобие графа. Традиционно мы можем проверить это с помощью Weisfeiler-Lehman (WL). Xu et al. доказал, что GIN так же силен, как тест WL:
- Графическая нейронная сеть (GNN) может быть такой же мощной, как тест WL, за счет использования простой архитектуры (многослойного перцептрона).
- GCN (Kipf and Welling, 2017) и GraphSAGE (Hamilton et al., 2017) не могут различить некоторую структуру графа.
- Суммарное агрегирование лучше, чем агрегирование среднего и максимального значений, с точки зрения различения структуры графа.
Забрать
- Если вам нужно обрабатывать невидимые узлы, GCN может не быть вашим выбором, в то время как GAT может обрабатывать невидимые узлы.
- GIN показывает способ лучше представить агрегацию соседей.
- Вы можете просто использовать PyTorch Geometric для применения GCN, GAT и GIN.
Чтение расширений
- Вложения графа знаний
- Случайное блуждание в графической нейронной сети
- Объяснение GCN
- Код GCN
- Код GAT
- Код GIN
Ссылка
- Н. Шервашидзе, П. Швейцер, Э. Дж. Левен, К. Мельхорн и К. М. Боргвардт. Ядра графа Вайсфейлера-Лемана. 2011 г.
- Т. Кипф и М. Веллинг. Полууправляемая классификация с графовыми сверточными сетями. 2017 г.
- П. Величкович, Г. Кукурулл, А. Казанова, А. Ромеро, П. Лио и Ю. Бенжио. Графические сети внимания. 2017 г.
- К. Сю, В. Ху, Я. Лесковец и С. Йегелка. Насколько мощны графические нейронные сети?. 2018.