Почему расширенный слой свертки не уменьшает разрешение рецептивного поля? - PullRequest
1 голос
/ 05 марта 2019

я пытаюсь понять дилатацию свертки.Я уже знаком с увеличением размера ядра путем заполнения пробелов нулями.Его полезно использовать для охвата большей площади и лучшего понимания больших объектов.Но, пожалуйста, может кто-нибудь объяснить мне, как возможно, что расширенные сверточные слои сохраняют исходное разрешение рецептивного поля.Он используется в структуре deeplabV3 + с частотой сердечных сокращений от 2 до 16. Каким образом можно использовать расширенную свертку с явно большим ядром без заполнения нулями, и выходной размер будет согласованным.

deeplabV3 + структура:

enter image description here

Я в замешательстве, потому что когда я смотрю на это объяснение здесь:

enter image description here

Выходной размер (3x3) расширенного слоя свертки меньше?

Большое вам спасибо за помощь!

Лукас

Ответы [ 2 ]

0 голосов
/ 08 марта 2019

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

Представьте, что у вас есть 1d-тензор с 1000 элементами и расширенное ядро ​​свертки 1x3 с коэффициентом расширения 3. Это соответствует «общей длине ядра»из 1 + 2free + 1 + 2free + 1 = 7. Учитывая шаг 1, выходной результат будет 1d-тензором с 1000 + 1-7 = 994 элементов.В случае нормальной свертки с ядром 1x3 и коэффициентом шага 1 выход будет иметь 1000 + 1-3 = 998 элементов.Как видите, эффект можно рассчитать аналогично обычной свертке:)

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

Почему, по вашему мнению, в рамках Deeplab не выполняется заполнение?Я думаю, что в официальной реализации тензорного потока используется заполнение.

Best Frank

0 голосов
/ 07 марта 2019

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

...