Графовые нейросети (GNN) давно стали незаменимым инструментом для работы с неструктурированными данными. Они используются в антифрод-системах, рекомендательных алгоритмах, биоинформатике и других научных областях. Однако у GNN есть серьёзный недостаток: их ключевая операция — агрегация сигналов по соседним вершинам — крайне неэффективно выполняется на видеокартах. GPU оптимизированы для обработки структурированных данных, тогда как вершины графа могут располагаться в памяти хаотично, что приводит к неструктурированным и затратным чтениям.
Исследователи из Школы анализа данных (ШАД) и Яндекса нашли способ обойти это ограничение. Их работа получила признание на престижной конференции ICML. Суть решения — устранить узкие места, связанные с постоянным доступом к памяти и пересылкой больших объёмов данных между операциями. Команда, в которую вошли преподаватели и студенты ШАДа, разработала набор специализированных GPU-ядер для основных семейств графовых моделей: свёрточных, агрегирующих и attention-based архитектур.
Эксперименты на крупных графах показали не только значительное ускорение вычислений, но и снижение потребления памяти по сравнению с существующими готовыми решениями. Это делает новую разработку особенно ценной для задач, где важна скорость обработки больших объёмов данных, например, в реальном времени или при работе с графами с миллионами вершин.
Полный текст исследования доступен на Arxiv, а код — на GitHub. Разработчики и исследователи могут свободно загрузить и протестировать оптимизированные ядра в своих проектах. Это открытие может стать важным шагом к более широкому внедрению графовых нейросетей в промышленности и науке, где эффективность работы с неструктурированными данными остаётся критическим фактором.




