«Глубокая концепция» для понимания октавной свертки Octave Convolution (OctConv)

искусственный интеллект глубокое обучение

RyanXing

Multimedia Processing & Computer Vision.

Бумага | Октавная свертка (OctConv)

бумага:Drop an Octave: Reducing Spatial Redundancy in Convolutional Neural Networks with Octave Convolution

1. Теория масштабного пространства

Ссылаться на:Википедия

Если размер/масштаб объекта изображения, с которым мы имеем дело, неизвестен, то мы можем использовать теорию масштабного пространства.

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

Формулировка: Предполагая, что двумерное изображение есть f(x,y)f(x,y), двумерная функция Гаусса (кластер вокруг tt) есть g(x,y;t)=12πte−x2+y22tg( x,y; t)=12πte−x2+y22t, то линейное масштабное пространство может быть получено путем свертки двух:

 

L(⋅,⋅;t)=g(⋅,⋅;t)∗f(⋅,⋅)L(⋅,⋅;t)=g(⋅,⋅;t)∗f(⋅,⋅)


Дисперсия t=σ2t=σ2 фильтра Гаусса называется параметром масштаба.
Интуитивно понятно, что структуры с масштабами меньше t√t на изображении плавно неразличимы. следовательно,Чем больше tt, тем интенсивнее сглаживание.
На практике мы будем рассматривать только некоторые дискретные значения t≥0t≥0. При t=0t=0 фильтр Гаусса вырождается в импульсную функцию, поэтому результатом свертки является само изображение без какого-либо сглаживания.
Посмотрите на картинку:

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

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

Последнее, что следует отметить, это то, чтоПри построении масштабного пространства оно часто сопровождается даунсэмплингом..
Например, для масштабного пространства t=2t=2 мы вдвое уменьшим его разрешение, то есть уменьшим площадь до 1/41/4. Это также подход этой статьи.

2. OctConv

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

Исходя из изложенных выше соображений, авторПредложите OctConv заменить традиционный CNN (ванильный CNN). Есть два ключевых шага:

В качестве первого шага мы будемПолучите линейное представление масштаба входного канала (или изображения), называемое представлением объекта Octave..
так называемыйВысокочастотные компоненты относятся к исходному каналу (или изображению) без фильтрации по Гауссу.;
так называемыйНизкочастотная составляющая относится к каналу (или изображению), полученному фильтрацией Гаусса при t=2t=2.
Поскольку низкочастотные составляющие избыточны, авторыДлина/ширина канала низкочастотной составляющей устанавливается равной половине длины/ширины канала высокочастотной составляющей..
В музыке Octave означает октаву, а каждую вторую октаву частота будет уменьшена вдвое; здесь отбрасывание октавы означает уменьшение размера канала вдвое.
Так каково отношение высокочастотного канала к низкочастотному каналу? Автор задает гиперпараметр α∈[0,1]α∈[0,1], что означаетОтношение низкочастотного канала.
В этой статье отношение низких частот входного канала αinαin и отношение низких частот выходного канала αoutαout установлены одинаковыми.

Рисунок: избыточность белого живота пингвина (низкая частота) (вверху); традиционная CNN, сравнение OctConv (внизу).

Вот вопрос:Традиционная свертка не может выполняться из-за разных размеров высокочастотных и низкочастотных каналов..
Но мы не можем просто повысить частоту дискретизации низкочастотного канала, потому что это пустая трата денег, и нет никакого способа сэкономить вычисления и память.

Итак, у нас есть второй шаг:
Второй шаг,Автор предлагает соответствующее решение свертки: Octave Convolution.

Сначала дайте несколько определений:
Предположим, что низкочастотные и высокочастотные компоненты изображения равны XLXL и XHXH соответственно, а низкочастотные и высокочастотные компоненты выходных данных свертки равны YLYL и YHYH соответственно. В операции свертки WHWH отвечает за построение YHYH, а WLWL отвечает за построение YLYL.

мы надеемся:
WHWH несет ответственность как за XHXH, так и за YHYH.: WH→HWH→H,Также есть часть, отвечающая за переход от XLXL к YHYH: WL→HWL→H, то есть WH=[WH→H,WL→H]WH=[WH→H,WL→H].

Его структура показана в правой части рисунка ниже.
в,WH→HWH→H — традиционная свертка, потому что входное и выходное изображения имеют одинаковый размер;Для части WL→HWL→H мы сначала повышаем дискретизацию входного изображения, а затем выполняем традиционную свертку.. Таким образом, общий объем вычислений все еще сокращается.
То же верно и для WLWL, но первое выполнение для WH→LWH→Lпонижение частоты дискретизации.

Конкретный метод очень прост, то есть проблема стоимости:


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

Весь процесс показан слева:

После всего процесса мы можем обнаружить, что эта операция фильтрации + новая свертка является «срезовой» и не требует разрушения исходной структуры CNN.
Стоит отметить, что рецептивное поле низкочастотной свертки канала больше, чем у традиционной свертки.
Регулируя низкочастотное отношение αα, можно найти компромисс между точностью прогнозирования и вычислительными затратами.

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

3. Вдохновляйте

  1. Мы хотим, чтобы нейронные сети обучались лучше.
    В этой статье с помощью масштабного преобразования пространства и операции октавной сверткиПозволяет сети более четко обрабатывать высокочастотные и низкочастотные компоненты и экономит вычисления для низкочастотных компонентов..
    Другим примером является метод BN, который также позволяет сети самостоятельно изучать параметры αα и ββ, тем самым достигая централизации признаков.
    Нейронные сети мощные и самообучающиеся, но нам нужно модифицировать их, чтобы сделать их быстрее, компактнее и мощнее.
  2. Нам нужно больше думать с точки зрения зрительных характеристик человека.
    Потому что возможности человеческого визуального кодирования намного превосходят существующие технологии: разрешение составляет около 1 миллиарда пикселей (1 миллиард палочек/колбочек), но пропускная способность пути от глаза к мозгу составляет всего 8 Мбит/с (1 тыс. ганглиев).
    Избыточность низкочастотных компонентов, рассматриваемая в этой статье, вероятно, является одной из основных избыточностей, решаемых в характеристиках визуального кодирования человека.