- Статья перенесена из публичного аккаунта WeChat: «Алхимия машинного обучения».
- Автор статьи: Brother Alchemy (уполномоченный)
- Контактная информация автора: cyx645016617
- Название статьи: «Приоритет контекста для сегментации сцены»
0 Обзор
Во-первых, при рендеринге CPNet показал лучшие результаты для некоторых сложных образцов:
В тексте упоминаются следующие ключевые слова:Строится соответствующая априорная карта (CPmap), затем CPmap интегрируется в сеть через контекстно-приорный уровень (CPLayer), при этом для соответствия CPLayer используется Affinity Loss.
Что касается того, как интерпретировать приведенное выше предложение, я оставляю вопрос.
1 Context Prior
Автор предлагает две концепции:
- внутриконтекстная: взаимосвязь между пикселями одной категории;
- межконтекстный: взаимосвязь между пикселями разных классов.
Автор сказал, что в задаче сегментации изображения каждое изображение имеет соответствующую основную истину, но основная истина - это категория, к которой принадлежит каждый пиксель, говоряМодели сложно изучать контекстную информацию по отдельным пикселям., так нужноявно упорядочить сеть.
В статье автор используетAffinity Loss для явной нормализации сети.
For each pixel in the image, this loss forces the network to consider the pixels of the same category (intra-context) and the pixels among the different categories (inter-context).
Эта потеря позволяет модели учитывать другие пиксели того же класса и другие пиксели другого класса.
2 Создайте идеальную карту близости
Прежде чем использовать Affinity Loss, вам необходимо построить идеальную карту Affinity Map.
- Теперь у нас есть изображение, изображение, истинное значение GT этого изображения.
- Изображение проходит через полностью свёрточную сеть, чтобы получить карту объектов размером HxW;
- GT уменьшен до размера HxW, записан, тогда правильноСделайте одно горячее кодирование, чтобы получить тензор HxWxC, где C - количество категорий, которые нужно разделить, запишите этот тензор как
- Методом переформирования положитьФорма становится NxC, где N=HxW, а затем, вычисливПолучите матрицу NxN, которая обозначается как A;
- A — идеальная карта сходства, которую мы хотим.
A — это наша желаемая карта идеального сходства размером N × N, которая кодирует, какие пиксели принадлежат к одной и той же категории.Мы используем карту идеального сходства, чтобы контролировать изучение априорной карты контекста.
Каждый 1 в этом A представляет этот пиксель и другие пиксели той же категории, а CPMap обучается с помощью этой идеальной карты сходства.
3 Affinity Loss
Мы используем полностью сверточную сеть для извлечения признаков из изображения и получаем карту признаков размером HxW, о которой мы упомянули выше, но не сказали, сколько каналов у этой карты признаков, см. рисунок ниже:
Количество каналов равно HxW, то есть N, упомянутому выше, поэтому для каждого пикселя его характеристика точно равна 1xN, поэтому соответствует ли она полученной нами карте идеального сходства?
Итак, здесь мы можем использовать простую двоичную перекрестную энтропию для вычисленияПредсказанная априорная карта и идеальная карта близостиПотеря:
Это конец? Нет:
However, such a unary loss only considers the isolated pixel in the prior map ignoring the semantic correlation with other pixels.
Интуитивно, вышеприведенное на самом деле рассматривает только отношения между двумя пикселями, но игнорирует более семантические отношения. Так что нужна еще часть потерь.
a представляет элементы на карте сходства идей, а P представляет собой матрицу NxN, полученную из X. Формула (2) указывает на то, что здесь присутствует вкус обнаружения цели.
В качестве примера предположим, что всего 5 пикселей:
- a = [0,0,1,0,1], что означает наличие третьего и пятого двух пикселей с одинаковыми пикселями;
- p = [0,1, 0,2, 0,8, 0,2, 0,9], что указывает на то, что среди предсказанных пикселей первый пиксель имеет вероятность 0,1 быть того же типа, а третий пиксель имеет вероятность 0,8 того же типа тип;
- , что в точности соответствует количеству истинных положительных результатов/образцов, которые являются истинными, т.е.отзывать;
- , что в точности равно числу истинных срабатываний/прогнозированных истинных, дляточность;
Это объяснение довольно грубое, потому что матрица путаницы, кривая PR и точность скорости припоминания должны быть известны всем.Если вы не понимаете, вы можете прочитать заметки, которые я написал ранее. (записано 107 нот.. лень искать ссылку на статью, простите ха-ха)
Оригинальный текст автора:
Для формулы (4) 1-а просто меняет местами 0 и 1, так что 1 в 1-а представляет два разных пикселя, поэтому он отражает отношения между разными классами между классами.
последний из последних,Affinity Lossза:
4 Context Prior Layer
Структура CPLayer выглядит следующим образом, довольно сложная на первый взгляд:
- Ввод CPLayer считается X, т.е.;
- X через модуль агрегации становится;
Вот посмотрите, как модуль агрегации интегрирует пространственную информацию:
Кажется, используются две параллельные свертки 1xk и kx1, хорошо, это место не сложно.
- После сверточного слоя 1x1 и сигмовидного слоя он становится нашей предыдущей картой (P), форма этого P=HxWxN;
- Здесь P тренируется под контролем Affinity Loss. В идеале P отражает взаимосвязь между пикселями.
- получил раньше, переформировать вформа (здесьПо сути, это окончательное количество категорий, подлежащих классификации)
- Здесь вы можете получить внутриклассовую информацию
- Вы также можете получить межклассовую информацию
Вот, напомню, как понимать это внутриклассовое? Из P можно найти пиксель и другие пиксели того же класса, из, можно найти все прогнозируемые вероятности пикселей. Следовательно, предсказанное значение вероятности каждого пикселя в Y на самом деле является результатом объединения предсказанных значений других пикселей той же категории. Так что это всестороннее рассмотрение контекста внутри класса.
5 Детали
Рассчитанный ранее affinity Loss написан в статье,
- вЭто унарная потеря, унарная потеря, то есть бинарная перекрестная энтропия;
- Это глобальная потеря, потеря целого;
Тогда потери для всей модели:
-
За исключением того, что мы упомянули, потеря сродства, вес 1;
-
вспомогательная потеря с весом 0,4
-
- основная главная потеря сегментации с весом 1.