Единая схема, к которой сводятся почти все архитектуры GNN: собрать сообщения от соседей, агрегировать, обновить состояние.
- текущее состояние вершины
- агрегация по соседям: сумма, среднее или максимум — операция, не зависящая от порядка
- сообщение от соседа: что именно передаётся по ребру
Ключевые тезисы
- Агрегация должна быть инвариантна к порядку соседей: сумма, среднее, максимум.
- Число слоёв равно радиусу, с которого собирается информация.
- Мини-батчи строятся сэмплированием соседей — иначе один батч разрастается на весь граф.
Подробный разбор
2 подтем — раскройте любую, чтобы увидеть объяснение, формулы, примеры и интерактивные графики.
1Единая схема
Три шага, к которым сводится любая GNN.
- Message: для каждого ребра считаем сообщение из представлений вершин.
- Aggregate: собираем сообщения соседей инвариантной к порядку операцией.
- Update: обновляем состояние вершины по старому состоянию и агрегату.
- число объектов в выборке
- степень вершины — число её связей
2Батчинг на графах
Как обучать, когда граф не помещается в память.
- Neighbor sampling (GraphSAGE): для батча вершин берём случайную часть соседей на каждом слое.
- Cluster-GCN: разбиваем граф на кластеры и обучаемся на подграфах.
- Full-batch возможен только на графах в сотни тысяч вершин и при достаточной памяти GPU.
Сэмплирование соседей вносит шум в агрегацию — это одновременно и ограничение, и форма регуляризации.
Связанные темы
Машинное обучение на графах
Graph Basics85%
Основы графов · Графы и сетиВершины, рёбра, веса и направления. Матрица смежности и список рёбер — два способа хранить одно и то же.
Centrality85%
Центральности · Графы и сетиМеры важности вершины: по числу связей, по посредничеству, по близости и по влиянию соседей.
PageRank85%
PageRank · Графы и сетиСтационарное распределение случайного блуждания по графу с телепортацией. Классический алгоритм ранжирования, который до сих пор используется как признак.
Community Detection85%
Поиск сообществ · Графы и сетиРазбиение графа на плотно связанные группы: клиенты одного круга, связанные аккаунты, тематические кластеры документов.
Graph Embeddings85%
Графовые эмбеддинги · Графы и сетиВекторные представления вершин, в которых близость отражает связанность в графе.
Graph Neural Networks85%
Графовые нейросети · Графы и сетиНейросети, работающие прямо на структуре графа: представление вершины обновляется по представлениям соседей.
Link Prediction85%
Предсказание связей · Графы и сетиЗадача «появится ли ребро между вершинами»: рекомендации друзей и товаров, достройка графов знаний.
Knowledge Graphs85%
Графы знаний · Графы и сетиФакты в виде троек «субъект — предикат — объект». Структурированная память, которую всё чаще подключают к языковым моделям.
Network Motifs85%
Мотивы и триады · Графы и сетиМаленькие повторяющиеся подграфы, встречающиеся чаще, чем в случайной сети. Хорошие признаки для классификации вершин.
Clustering85%
Кластеризация · Обучение без учителяРазбиение объектов на группы похожих без заранее известных меток.
Eigenvector85%
Собственный вектор · Математический справочникНаправление, сохраняющееся при линейном преобразовании с точностью до масштаба.