Обзор

В этой статье я постараюсь подвести итог этой очень интересной статье, связанной с геометрическим глубоким обучением.

Оригинальная бумага



ПРИМЕЧАНИЕ: В этом резюме я минимизировал использование математической нотации (также потому, что Medium не подходит для математики), поэтому, если вы хотите немного углубиться в формализм, обратитесь к версии GitHub (кстати, GitHub также поддерживает не отображает математику изначально, но, по крайней мере, вы можете использовать плагин Chrome, например Tex All The Things)



вступление

Сверточный фильтр - это сопоставление фильтра домена с совмещенным доменом.

В контексте CNN,

  • фильтр основан на операции свертки
  • и домен, и кодомен называются картами функций.

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

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

  • если преобразование полностью поглощается фильтром, так что на выходе фильтра нет следов его применения, то фильтр называется инвариантным по отношению к этому преобразованию.

Симметрии идентифицируют набор глобальных преобразований, связанных с определенным пространством (они не зависят от какого-либо фильтра), которые отображают пространство само по себе, не изменяя его структуру: они зависят от геометрии конкретного пространства.

Основная идея, относящаяся к классическому слою CNN, действующему на изображение или, в более общем смысле, на карту плоских характеристик, заключается в следующем:

  • чтобы иметь возможность перемещать фильтр по плоскости, на которой расположены следующие элементы

или эквивалентно

  • чтобы провести под ним самолет

следовательно, более формально использовать одну из симметрий плоскости (в зависимости от ее геометрии) для преобразования самой плоскости перед ее повторной обработкой с помощью сверточного фильтра.

Обобщая эту процедуру на общем пространстве, мы хотели бы

  1. что-то работает так же, следовательно, трансформируя пространство само по себе для непрерывной обработки
  2. сверточный фильтр должен быть обучаемым независимо от конкретной позиции, которую он занимает на плоскости (обычно это называется разделением весов, и это делает позицию обработки CNN независимой)

В терминах обобщения пространств, давайте рассмотрим многообразие M, пространство, локально гомеоморфное евклидову пространству.

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

Это ключевой момент, поскольку

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

Таким образом, если оператор (например, свертка) по своей конструкции эквивалентен такого рода преобразованиям, то его можно изучить с помощью разделения весов, поскольку в процессе обучения фильтр применяется к любой точке пространства с помощью преобразований симметрии, и это не влияет на выученные веса (на самом деле в классической CNN на плоскости конкретный способ скольжения сверточного оператора по плоскости не имеет значения).

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

Первая проблема, с которой мы сталкиваемся при отсутствии глобальных симметрий, - как добраться до любой точки в пространстве (это обязательная функция). Возможное решение - параллельная транспортировка rt, но параллельная транспортировка фактически зависит от пути.

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

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

Подробности

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

В результате этого датчик также определяет локальную систему отсчета в (отображение евклидовой системы отсчета)

Преобразование датчика - это зависимое от положения обратимое изменение локальной рамки

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