Графовые нейронные сети (GNN, Graph Neural Networks) – такие нейронки, состоящие из графов…
Граф состоит из вершин (узлов) и рёбер (связей между вершинами) – они хорошо описывают социальные сети, молекулярные структуры, транспортные сети и рекомендательные системы.
Работа GNN основана на передаче информации между вершинами графа и их соседями.
Ключевая идея графовых нейронных сетей – агрегация информации от соседних вершин для обновления представления (эмбеддинга) каждой вершины.
Процесс носит итеративный характер и может повторяться несколько раз в зависимости от глубины модели, что позволяет учитывать не только непосредственных соседей узла, но и соседей выоских порядков.
Собственно, основной архитектурный компонент GNN — механизм распространения сигналов (message passing), который позволяет вершинам обмениваться информацией через рёбра графа.
Как они работают?
1) Инициализация представлений вершин
На первом шаге каждому узлу графа присваиваются начальные эмбеддинги, которые могут быть либо заданы заранее (например, исходя из признаков объекта), либо случайными.
2️) Передача сообщений и обновление эмбеддингов
На каждом слое GNN происходит процесс агрегации информации от соседних узлов.
Популярные архитектуры, Graph Convolutional Networks (GCN) или Graph Attention Networks (GAT) работают по разным принципам вычисления весов.
GCN используют усреднение значений соседей, тогда как GAT применяют механизм внимания, где каждому соседу присваивается вес на основе его важности.
GNN работают в несколько шагов, повторяя процесс передачи сообщений и обновления эмбеддингов, что позволяет узлам учитывать информацию от соседей второго, третьего и более высоких порядков.
После нескольких итераций агрегации представлений соседей полученные эмбеддинги используются для решения конкретной задачи, будь то классификация узлов, предсказание связей между узлами или кластеризация.
Рекомендательные системы, использующие GNN, применяют графовые структуры для моделирования сложных взаимосвязей между пользователями и продуктами.
В этих системах графы могут представлять собой связи между пользователями, продуктами и их взаимодействиями (например, пользовательские рейтинги, просмотры, покупки).
Самые популярные алгоритмы:
Collaborative filtering. Информация о взаимодействиях между пользователями и продуктами кодируется в виде двудольного графа, где одна доля представляет пользователей, а другая — продукты.
GNN используют для обновления эмбеддингов пользователей и продуктов на основе их взаимодействий и соседей по графу.
Прогнозирование связей (link prediction): GNN могут использоваться для предсказания новых взаимодействий в графе – топ для рекомендательных систем.
Модель обучается на существующих взаимодействиях и предсказывает, какие связи могут возникнуть в будущем, например, какие продукты могут заинтересовать пользователя на основе его текущих предпочтений и предпочтений похожих пользователей.
Короче говоря, CNN хорошо подходят для вычисления косвенных интересов клиентов…