Гибридные вращательно-эквивариантные сферические CNN

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

Этот пост в блоге был написан в соавторстве с Оливером Коббом и Августином Мавор-Паркер из Кагенова.

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

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

Сигналы на сфере и группа вращения

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

При представлении в гармонической форме вращение сигналов как на сфере, так и на группе вращений, а также свертка между ними принимают аналогичную форму.

Эта общая форма включает в себя сбор гармонических коэффициентов в векторы. В частности, для каждой гармонической моды ℓ соответствующие коэффициенты собираются в векторы,

с t, индексирующими разные векторы. Затем поворот (на ρ) можно реализовать путем линейного преобразования векторов с помощью

где Dизвестен как представление ρ в виде D-матрицы Вигнера. Свертку с обучаемым фильтром можно реализовать, взяв обучаемые линейные комбинации векторов в каждой гармонической моде с помощью

Обобщенные сигналы

Для сигналов на сфере требуется только один вектор

тогда как сигналы в группе вращения требуют

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

Зачем обобщать?

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

Для сигналов, ограниченных интерпретацией на сфере или группе вращений, нелинейность может быть введена примерно эквивалентно вращению путем получения соответствующего представления на основе выборки и применения нелинейной функции к выборке (как обсуждается далее в « предыдущий пост"). Это аналогично тому, как нелинейность применяется точечно в плоских CNN. Однако, в отличие от плоского случая, когда трансляционная эквивариантность сохраняется, невозможность выборки сферы или группы вращений единым образом означает, что применение нелинейности по выборке не является строго эквивариантным по вращению на сфере. Мало того, что вращательная эквивариантность является лишь приблизительной, но и переход к представлению на основе выборки и обратно является дорогостоящей процедурой.

Однако существует альтернативный способ ввести нелинейность, который работает непосредственно с нашим представлением на основе набора векторов, сохраняя при этом точную вращательную эквивариантность! Ключевая идея, предложенная Kondor et al. (2018) выглядит следующим образом.

быть двумя из векторов в обобщенном сигнале. Если мы возьмем внешнее произведение

между двумя векторами и проецировать результирующий

вектора в 2ℓ+1 мерном пространстве с использованием очень специфической линейной проекции, эта общая процедура является вращательно-эквивариантной (см. диаграмму ниже). Это не случайно. Линейная проекция тщательно выбрана именно так, чтобы это было правдой (более технически это относится к тому, как можно разложить представления группы тензорных произведений) и может быть описано с использованием трехмерного тензора

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

Это предлагает способ нелинейного преобразования обобщенных сигналов:

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

в новый обобщенный сигнал. Поскольку каждый выходной вектор представляет собой вращательно-эквивариантное преобразование входа, поскольку коэффициенты Клебша-Гордана удовлетворяют

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

Обобщенные сферические CNN

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

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

Если мы рассмотрим несколько более общие уровни, которые принимают форму линейности → нелинейности → линейности, мы также охватим сферические конструкции CNN Коэна и др. (2018) и Esteves et al. (2018) в рамках этой обобщенной сферической структуры CNN (Cobb et al. 2021). Кроме того, мы можем использовать эти различные подходы вместе друг с другом в гибридных моделях, как показано на диаграмме ниже.

Проблема с обобщенными слоями, использующими нелинейность на основе внешнего произведения, заключается в том, что количество векторов на градус выходного сигнала масштабируется квадратично с количеством векторов на градус входного сигнала и пятерично (в пятой степени!) по отношению к максимальная степень. Хотя можно спроецировать обратно до разумного размера с помощью продолжающейся свертки, для этого требуется огромное количество параметров и в первую очередь не учитывается стоимость вычисления всех этих векторов. Чтобы быть полезным в качестве способа нелинейного преобразования обобщенного сигнала разумного разрешения (максимальная степень) и репрезентативной способности (векторов на степень), необходимы некоторые модификации, которые находятся в центре внимания нашей работы по Эффективным обобщенным сферическим CNN (Кобб и др., 2020).

Эффективные обобщенные сферические CNN

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

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

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

Наконец, для операций, основанных на представлении данных на основе выборки, мы применяем оптимальные схемы выборки на сфере и группе вращения (McEwen & Wiaux 2011, McEwen et al. 2015) и соответствующие гармонические преобразования, что еще больше повышает эффективность.

Эксперименты

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

Классификация 3D-форм

Первая проблема, которую мы рассматриваем, — это классификация сеток трехмерных объектов, как показано ниже.

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

Мы используем гибридную архитектуру, аналогичную показанной выше. Это обеспечивает превосходную производительность по сравнению с предыдущими конструкциями сферических CNN, достигая трех из пяти самых высоких показателей производительности (метрики, основанные на точности и полноте, используемые для конкурса SHREC'17), при использовании значительно меньшего количества параметров.

Прогноз энергии распыления

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

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

Для обработки этих сферических карт мы снова используем гибридную архитектуру, аналогичную показанной выше. Большая репрезентативная способность, ставшая возможной благодаря модификациям, описанным выше, позволяет действительно повысить производительность современного уровня техники в этой проблеме со среднеквадратичной ошибкой от 5,96 до 3,16 со сферическими конструкциями CNN Коэна и др. (2018) и Kondor et al. (2018 г.), достигнув 8,47 и 7,97 соответственно. Это достигается при использовании значительно меньшего количества параметров, чем аналогичные подходы.

Краткое содержание

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

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

Рекомендации

[1] Кобб, Уоллис, Мавор-Паркер, Маринье, Прайс, д’Авезак, Макьюэн, Эффективные обобщенные сферические CNN, ICLR (2021), arXiv:2010.11661

[2] Коэн, Гейгер, Келер, Веллинг, Сферические CNN, ICLR (2018), arXiv:1801.10130

[3] Эстевес, Аллен-Бланшетт, Макадия, Даниилидис, Изучение SO(3)-эквивариантных представлений со сферическими CNN, ECCV (2018), arXiv:1711.06721

[4] Кондор, Лин, Триведи, Сети Клебша-Гордана: полностью сферическая сверточная нейронная сеть Фурье, NeurIPS (2018), arXiv:1806.09231

[5] McEwen & Wiaux, Новая теорема выборки на сфере, IEEE TSP (2012), arXiv:1110.6298

[6] McEwen, Büttner, Leistedt, Peiris, Wiaux, Новая теорема выборки для группы вращения, IEEE SPL (2015), arXiv:1508.03101