Свёрточные сети на графах | OTUS
⚡ Подписка на курсы OTUS!
Интенсивная прокачка навыков для IT-специалистов!
Подробнее

Курсы

Программирование
Python Developer. Professional
-3%
Разработчик на Spring Framework
-5%
iOS Developer. Professional
-8%
Golang Developer. Professional
-6%
Базы данных
-12%
Agile Project Manager
-5%
Android Developer. Professional
-11%
Microservice Architecture
-5%
C++ Developer. Professional
-5%
Highload Architect
-6%
JavaScript Developer. Basic
-8%
Kotlin Backend Developer
-9%
C# Developer. Professional
-9%
Team Lead
-6%
Алгоритмы и структуры данных Разработчик программных роботов (RPA) на базе UiPath и PIX Unity Game Developer. Basic Разработчик голосовых ассистентов и чат-ботов Vue.js разработчик VOIP инженер NoSQL Супер-практикум по использованию и настройке GIT Symfony Framework iOS Developer. Basic Супер-интенсив «СУБД в высоконагруженных системах» Супер-интенсив "Tarantool"
Инфраструктура
DevOps практики и инструменты
-12%
Базы данных
-12%
Network engineer. Basic
-10%
Network engineer
-4%
Экcпресс-курс «ELK»
-10%
Инфраструктурная платформа на основе Kubernetes
-6%
Administrator Linux.Basic
-10%
Экспресс-курс «CI/CD или Непрерывная поставка с Docker и Kubernetes»
-30%
Дизайн сетей ЦОД
-13%
PostgreSQL
-8%
Разработчик программных роботов (RPA) на базе UiPath и PIX Reverse-Engineering. Professional Внедрение и работа в DevSecOps Administrator Linux. Advanced Infrastructure as a code in Ansible Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes Экспресс-курс «IaC Ansible»
Специализации Курсы в разработке Подготовительные курсы
+7 499 938-92-02

Свёрточные сети на графах

ML_Deep_19.06_SITE.png

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

1.png

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

В 2015 году учёные из Гарвардского Университета предложили новый подход для работы с графами — Свёрточные сети на графах (Convolutional Networks on Graphs). Решая задачу об извлечении признаков из графового представления молекул, они предложили следующий подход.

Пусть Screenshot_3.pngсостояние вершины «v» в момент времени «t». Аналогично, Screenshot_4.png— состояние ребра между вершинами «v» и «w» в момент времени «t». Тогда назовём сообщением: Screenshot_5.png В этой формуле обе суммы берутся по всем w соседним с v, а скобки обозначают конкатенацию векторов. Вычислив для каждой вершины её сообщение, мы теперь можем обновить её состояние: Screenshot_7.png где Screenshot_8.png— своя матрица параметров для каждого временного шага и для каждой степени вершины 𝑑𝑒𝑔(𝑣). После нескольких таких шагов вычисляется функция от всего графа: Screenshot_9.png где f — нейронная сеть, а Wt — матрица «выходных» весов, своя для каждого временного шага. 2.png До этого момента мы никак не коснулись того, почему же такая модель получила название «свёрточной». Но на самом деле, если произвольное изображение вы представите в виде графа, каждая вершина которого соответствует пикселю, её состояние — просто цвет, а рёбра будут только между соседними пикселями, то станет понятно, что свёртки на графах — простое обобщение классических свёрточных сетей.

Такой подход имеет свои плюсы и минусы, и, безусловно, за три прошедших года в работе с графами всё сильно изменилось.

Есть вопросы? Напишите в комментариях!

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться
🔥 Только до 28.02
Успейте приобрести курсы февраля на выгодных условиях! Подробности в чате.