Серия обнаружения объектов глубокого обучения (5) R-FCN

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

Введение в R-FCN

Старая форма CNN

Базовая модель CNN, используемая для классификации изображений, имеет различие между старой формой и новой формой.Структуры CNN, основанные на старой форме, такие как AlexNet, VGG, Network-in-Network, ZF-Net и т. д., имеют особенность свертки После этого резервируется несколько слоев полностью связанных сетей для логического суждения. Серия R-CNN Хэ Кайминга и команды RBG была изменена на этой старой модели CNN до Faster R-CNN, и поскольку проблема, которую решали Faster R-CNN и ее предыдущие сети, заключается в том, как полностью использовать сверточный анализ? слоев исходной модели для общих вычислений? Следовательно, сверточный слой можно использовать для завершения выделения признаков всего изображения, создания региональных предложений и т. д.

Новая форма CNN

Мы все знаем базовую модель CNN.В общем, чем глубже количество слоев, тем больше толщина карты признаков.Таким образом, чтобы адаптироваться к полносвязному измерению первого слоя, карта признаков часто используется последний слой.Для полноразмерной свертки количество параметров в этом слое свертки очень велико.Например, у AlexNet всего 60M параметров, но количество параметров в этом слое свертки займет больше более чем наполовину, поэтому новая форма CNN представляет собой полный объем тенденции интеграции, такой как ResNet, GoogleNet, DenseNet и т. д., и последний уровень обычно использует глобальный пул вместо полноразмерной свертки, так что глубина сети можно увеличить, максимально уменьшив параметры.

Проблемы серии R-CNN при новой форме CNN

Faster R-CNN и его предыдущая структура разработаны на основе старой формы CNN. Если новая форма CNN будет перенесена на Faster R-CNN, возникнут проблемы. Для этой проблемы автор дает следующее объяснение:

Природа задач классификации изображений и задач обнаружения объектов различна.

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

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

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

В Faster R-CNN автор использовал ResNet-101 в качестве базовой модели, но ResNet-101 был разделен не на 98 слоев + 3 слоя, а на 91 слой + 10. Результаты этого эксперимента сравниваются со старыми. Морфологический CNN, mAP выше, но время также больше, конкретное значение можно увидеть в окончательных результатах эксперимента. Вывод, который можно сделать из этого эксперимента, заключается в том, что новая форма модели CNN не подходит для такого способа совместного использования вычислений свертки для первых нескольких слоев, а не для последних слоев. Для решения этой проблемы есть R-FCN.

Здесь необходимо пояснить: большинство этих мнений основано на статьях. На самом деле, во многих инженерных практиках сейчас Faster R-CNN использует ResNet. Причина, по которой здесь излагаются точки зрения статьи, в основном состоит в том, чтобы понять, как автор идет на шаг шаг за шагом. Улучшите и, наконец, завершите всю серию R-CNN. Я лично считаю, что понимание этой идеи важнее, чем понимание одной модели или запуск кода.

R-FCN

R-FCN должен адаптироваться к полностью сверточной структуре CNN. Во-первых, R-FCN разделяет все сверточные слои. Во-вторых, для решения вышеупомянутых проблем R-FCN предлагает:

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

Объединение областей интереса с учетом положения — это операция объединения, основанная на карте оценок с учетом положения.

На приведенном выше рисунке показана структура R-FCN. Содержимое зеленого поля представляет собой модель ResNet-101. Эта часть расчета свертки по-прежнему используется для совместного использования RPN и позиционно-чувствительной сетью, что эквивалентно Faster R. -CNN.Первые пять слоев свертки одинаковы;синяя рамка – это RPN, которая играет в R-FCN ту же роль, что и в Faster R-CNN, и отвечает за вывод предполагаемой области и ограничивающей рамки;самая важная часть это красный Чувствительная к положению свертка и объединение в поле. Фактически, структура этой части представляет собой объединение RoI + полное соединение + многозадачная функция потери в Faster R-CNN. В R-FCN эта часть содержимого заменяется парной сверткой, чувствительной к положению, и скрепляет кадр предложения RPN на карте оценок для объединения, чувствительного к положению.

Название R-FCN названо потому, что FCN (сеть полной свертки) появляется в задаче сегментации изображения, и это утверждение полной свертки хорошо согласуется с тем, что хочет выразить R-FCN.Возможно, это для Имя этой версии не называется Самый быстрый R-CNN, ха-ха.

Позиционно-зависимая свертка:

На приведенном выше рисунке линия за картами объектов — это слой свертки, чувствительный к положению, а количество ядер свертки равно K^2(C+1), где K — гиперпараметр, а k = 3. K^2 — это количество сеток, которое связано с размером после операции объединения с учетом положения. C — это количество классов объектов плюс 1, потому что есть еще фоновый класс.

Результатом после этого слоя свертки является карта оценок с учетом положения. Ширина и высота карты оценок соответствуют ширине и высоте карт объектов. Количество каналов карты оценок равно K ^ 2 (C + 1), то есть в каждой категории есть K^2 каналов.

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

Объединение томов с учетом местоположения:

Позиционно-зависимое объединение – это операция объединения на карте результатов. Это вариант объединения областей интересов. Было сказано, что канал карты результатов – это K^2(C+1), и каждая категория имеет K^2 каналов, другими словами, на карте показателей имеется k^2 комбинаций каналов C+1. Тогда при k = 3 ситуация выглядит так, как показано выше.Каждый цвет имеет каналы C+1.После того, как область RPN рекомендуется вычесть из карты результатов, объединение с учетом положения поместит эту область в каждый канал, разделенный на В среднем K ^ 2, а затем в каждом бине выполняется максимальное объединение, но ключ в том, что каналу соответствует положение сетки K. Как показано на рисунке выше, количество темно-желтых каналов равно C + 1, затем во время операции объединения с учетом положения, пока темно-желтый канал является значением в верхнем левом ячейке, как значением верхнего левого угла сетки K, верхний левый угол сетки K также темно-желтый .

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

Следующий рисунок может более наглядно проиллюстрировать пул с учетом местоположения:

Красные стрелки иллюстрируют это соответствие.

После получения K сеток выполните еще один шаг глобального среднего пула и получите объекты 1*1 (C+1), которые точно равны C+1, так что размерность будет фиксированной, а различные входные данные также будут отсортированы. одно и то же измерение, и размерность точно равна количеству категорий.

Функция потерь R-FCN

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

Значение журнала вероятности "да" или "нет" для классификации; Для регрессии используется гладкий L1.

Ключевым моментом является то, какие функции отправляются в модель регрессии ограничивающей рамки с помощью R-FCN. В Fast R-CNN это функция функций conv5 после объединения RoI. В RPN это функция, специально созданная ветвью свертки , R-FCN также генерируется отдельной ветвью свертки.Количество каналов функции 4K ^ 2. Метод такой же, как и у позиционно-чувствительной свертки, за исключением того, что C+1 изменен на 4.

Тренировка R-FCN

Этапы обучения R-FCN такие же, как и в Faster R-CNN, который также представляет собой пошаговый метод обучения, за исключением того, что Fast R-CNN заменен на R-FCN.

Кроме того, в статье предлагается методика обучения под названием OHEM (Online Hard Example Mining):

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

Это связано с тем, что, если потеря определенной области больше, это означает, что параметры в сети не заботятся об этой функции, и эту особенность следует изучить.Если функция с небольшой потерей отправляется в сеть, участвуйте в тренировке, и это не влияет на обновление параметров.

Оценка производительности R-FCN

Приведенный выше график иллюстрирует влияние гиперпараметра k на конечный mAP:

Когда k начального объединения RoI Faster R-CNN выбрано равным 1, mAP составляет 61,7%, а когда выбрано значение 7, mAP составляет 68,9%; Когда k выбрано равным 1 для объединения R-FCN RoI, информация о местоположении отсутствует, и он напрямую дает сбой.Когда k выбрано равным 3 и 7, mAP составляет 75,5% и 76,6% соответственно.

На приведенном выше рисунке сравниваются Faster R-CNN и R-FCN с разных точек зрения.Среди них Faster R-CNN использует Resnet101.Первые 91 уровень являются общими вычислениями свертки, а последние 10 слоев заменяют исходные 3 уровня полных соединений.Итак. время теста этого Faster R-CNN не 0,18 с, как упоминалось ранее, но mAP не 66,9%.

Сосредоточьтесь на среднем ряду, в случае использования OHEM, с ResNet-101 в качестве начальной модели для двух структур, одного времени обучения, R-FCN более чем в 3 раза быстрее, чем Faster R-CNN, и одиночного теста время R-FCN быстрее, чем Faster R-CNN примерно в 2,5 раза быстрее. Время 0,17 с аналогично времени Faster R-CNN с использованием старой модели CNN, но mAP действительно составляет 79,5%, что лучше, чем исходные 69,9%.

оригинал:All.Pull/статья/VIE…