Недавняя статья, опубликованная Джеффри Хинтоном, получила широкое освещение в СМИ из-за многообещающих достижений в эволюции нейронных сетей.

Это усовершенствование называется «Капсульные сети», а его последняя реализация упоминается в его статье «Динамическая маршрутизация между капсулами».

Чтобы быть ясным, капсульные сети были впервые представлены Хинтоном в 2011 году, но так или иначе оставались бездействующими, поскольку ему было трудно заставить их работать.

Недавняя исследовательская работа от октября 2017 года, кажется, открывает путь для будущего использования этой технологии.

Так что же такое капсульная сеть?

(Для более подробного объяснения посмотрите отличное видео Орелиена Жерона).

В компьютерной графике мы начинаем с абстрактного представления объекта через его «параметры создания экземпляра», а затем применяем функцию визуализации для получения изображения.

Думайте о «параметрах создания экземпляра» как о «параметрах позы», например. В этом случае объект может быть «представлен его координатами x, y и значением угла».

С другой стороны, обратная графика - это прямо противоположный путь. Мы начинаем с изображения и посредством обратного рендеринга выясняем, какие объекты оно содержит и каковы их параметры создания.

Капсульная сеть - это нейронная сеть, которая выполняет механизм обратной графики.

Эта сеть состоит из множества капсул, каждая из которых является функцией, которая направлена ​​на прогнозирование присутствия и параметров создания объекта в заданном месте на изображении.

Стрелки в представлении ниже представляют выходной вектор капсулы.

Длина вектора активации - это оценочная вероятность того, что объект действительно присутствует на изображении.

Ориентация вектора кодирует предполагаемые параметры позы (реализации) объекта.

Чтобы получить это «представление» параметров создания экземпляра, мы применяем несколько сверточных слоев к изображению, которые выводят массив, содержащий набор карт функций.

Затем нам нужно изменить форму этого массива, чтобы получить набор векторов для каждого местоположения.

Наконец, мы «сжимаем» векторы, чтобы гарантировать, что нет векторов длиннее 1 (поскольку длина вектора представляет собой вероятность, мы не можем иметь значение более 100%). «Сжатие» векторов приведет к изменению их длины от 0 до 1.

Одним из основных преимуществ капсульной сети является то, что она сохраняет местоположение объекта на изображении. Эта функция называется «эквивалентность».

С другой стороны, сверточная нейронная сеть теряет эту информацию о местоположении объекта из-за слоев объединения, которые «извлекают» только наиболее значимую информацию.

Другой важной особенностью капсульной сети является ее способность анализировать иерархию объектов и, в некотором смысле, их «взаимодействие» между ними в пределах изображения.

Эта характеристика получена потому, что каждая капсула в первом слое пытается предсказать выход каждой капсулы в следующем слое.

Во время обучения сеть изучает матрицу преобразования для каждой пары капсул в первом и втором слое, что позволяет «обнаруживать» отношения между объектами.

Как я упоминал в начале поста, для дальнейшего и более подробного объяснения я перенаправляю на видео Орелиена Жерона, которое дает невероятный обзор предмета. (Сам Джеффри Хинтон даже похвалил это !!)

Этот блог был вдохновлен видео Орелиена Жерона