Dilated Convolution과 Deconvolution의 차이점은 무엇입니까?


11

이 두 컨볼 루션 작업은 현재 딥 러닝에서 매우 일반적입니다.

이 논문에서 확장 된 컨볼 루션 레이어에 대해 읽었습니다. WAVENET : 원시 오디오를위한 일반적인 모델

그리고 De-convolution은이 논문에있다 : 시맨틱 세그먼테이션을위한 완전 컨볼 루션 네트워크

둘 다 이미지를 업 샘플링하는 것처럼 보이지만 차이점은 무엇입니까?

답변:


9

기계 / 화상 / 이미지 기반 용어의 종류 :

확장 : ### 이 섹션을 수정하기위한 주석 참조

팽창은 커널에 틈이 생길 수 있다는 점을 제외하면 밀의 런 컨볼 루션 (솔직히 디컨 볼 루션)과 거의 동일합니다. 예를 들어, 이미지의 더 큰 부분을 "둘러싸고"표준 형식만큼 많은 무게 / 입력 만 유지합니다.

(확실히 확장은 출력의 얼굴 크기 / 해상도 를 더 빨리 줄이기 위해 커널 에 0을 주입하는 반면 , 컨볼 루션은 출력 의 해상도 를 높이기 위해 입력 에 0을 주입 합니다.)

좀 더 구체적으로 설명하기 위해 아주 간단한 예를 들어 보겠습니다. 패딩이없는 x
, 9x9 이미지가 있다고 가정 해 봅시다 . stride 2를 사용하여 표준 3x3 커널을 사용하는 경우 입력의 첫 번째 관심 하위 집합은 x [0 : 2, 0 : 2]가되고이 범위 내의 9 개 지점이 모두 커널에 의해 고려됩니다. 그런 다음 x [0 : 2, 2 : 4] 등 을 스윕 합니다.

분명히 출력은 더 작은 얼굴 크기, 특히 4x4를 ​​갖습니다. 따라서 다음 층의 뉴런은 이러한 커널 패스의 정확한 크기로 수용 장을 가지고 있습니다. 그러나 더 넓은 공간적 지식을 가진 뉴런이 필요하거나 원하는 경우 (예 : 중요한 기능이 이보다 큰 영역에서만 정의 할 수있는 경우)이 수용층이 두 번째로 축소되어 효과적인 수용 장이 이전 레이어 rf의 일부 결합.

그러나 더 많은 레이어를 추가하지 않으려는 경우 및 / 또는 전달되는 정보가 과도하게 중복된다고 생각하는 경우 (예 : 두 번째 레이어의 3x3 수용 필드에는 실제로 "2x2"양의 고유 한 정보 만 포함됨) 확장 된 필터. 명확성을 위해 극단적으로 말하고 9x9 3 다이얼 필터를 사용한다고 가정 해 봅시다. 이제 필터가 전체 입력을 "둘러 둘 것"이므로 전혀 밀어 넣을 필요가 없습니다. 그러나 여전히 입력 x 에서 3x3 = 9 데이터 포인트 만 가져옵니다 .

x [0,0] U x [0,4] U x [0,8] U x [4,0] U x [4,4] U x [4,8] U x [8,0] U x [8,4] U x [8,8]

이제 다음 레이어의 뉴런 (하나만 갖게 됨)에는 이미지의 훨씬 더 많은 부분을 "대표하는"데이터가 있으며, 이미지의 데이터가 인접한 데이터에 대해 매우 중복되어있는 경우에도 데이터를 보존 할 수 있습니다. 동일한 정보를 얻었고 동등한 변형을 배웠지 만 더 적은 수의 레이어와 더 적은 매개 변수를 사용했습니다. 이 설명의 범위 내에서 리샘플링으로 정의 할 수 있지만 각 커널에 대해 다운 샘플링 하고 있음이 분명합니다 .


분수로 쪼개지거나 전치 또는 "탈선":

이런 종류의 마음은 여전히 ​​매우 많이 컨볼 루션입니다. 또 다른 점은 더 작은 입력 볼륨에서 더 큰 출력 볼륨으로 이동한다는 것입니다. OP는 업 샘플링이 무엇인지에 대해 의문을 제기하지 않았으므로 이번에는 약간의 폭을 절약하고 관련 예제로 곧장 갈 것입니다.

이전의 9x9 사례에서는 이제 11x11로 업 샘플링한다고 가정합니다. 이 경우에는 두 가지 공통 옵션이 있습니다. 3x3 커널과 stride 1을 사용하고 2 패딩으로 3x3 입력을 스윕하여 첫 번째 패스가 영역을 넘어갈 수 있습니다 [left-pad-2 : 1, 위-패드 -2 : 1] 다음 [왼쪽-패드 -1 : 2, 위-패드 -2 : 1] 등등.

또는 입력 데이터 사이에 패딩 추가로 삽입 하고 많은 패딩없이 커널을 쓸 수 있습니다. 분명히 우리는 때때로 단일 커널에 대해 정확히 동일한 입력 포인트를 두 번 이상 사용합니다. 여기에서 "분수로 분류 된"이라는 용어가보다 합리적으로 보입니다. 나는 이 작품 에서 다음과 같은 애니메이션 ( 여기서 빌려 왔고 나는 믿는다) 다른 차원에도 불구하고 사물을 깨끗하게하는 데 도움 될 것이라고 생각한다 .

전치 전환, 입력이 파란색, 출력이 녹색

물론 일부 지역을 완전히 무시할 수도 있고 무시하지 않는 확장과는 반대로 모든 입력 데이터를 다루고 있습니다. 그리고 우리가 시작한 것보다 더 많은 데이터, "업 샘플링"을 명확하게 정리하고 있습니다.

전치 컨볼 루션에 대한보다 건전하고 추상적 인 정의와 설명뿐만 아니라 공유 된 예제가 왜 표현되었지만 실제로 표현 된 변환을 계산하기에 부적절한 형태인지 배우는 데 도움이되는 훌륭한 문서를 읽으십시오.


1
나는 전문가가 아니라는 점을 명심하십시오. 최근에 이러한 개념을 스스로 구별해야했던 사람입니다. 답변이 전체적인 정확성을 저해 할 수있는 명백한 실수 나 과도한 단순화가 있으면 알려주십시오. 감사!
Doug Brummell

더그 Brummel 와우 잘 설명합니다. 나는 같은 아이디어를 가졌다. 확장 컨벌루션 적용에 대한 귀하의 의견을 알고 싶습니다. CNN에서 어떻게 적용해야합니까? 먼저 정상적인 컨볼 루션을 수행 한 다음 확장 된 conolution을 적용해야합니까? 우리가 제로 패드를 사용하지 않으면 확장 된 컨벌루션이 정보를 놓칠 수 있습니다. 그래서 우리는 정상적인 convnets 레이어가 거의없는 후에 확장 된 회선을 적용해야한다고 생각합니까?
Shamane Siriwardhana

표준 아이디어는 l = 1에 대한 확장되지 않은 일반 필터부터 시작하여 2 및 3 확장 필터로 이동하는 등 네트워크 깊이를 진행하면서 확장의 양을 늘리는 것입니다. 따라서 한 계층의 모든 데이터가 다음 계층 (중요하게 네트워크 자체 포함)으로 전달되는 동시에 각 계층마다 기하 급수적으로 더 빠른 다운 샘플링이 가능하지만 매개 변수가 증가하지는 않습니다. 목표는 데이터 포함을 희생시키지 않으면 서 넓은 수용 분야입니다. 그리고, 패딩에 대한주의는 초기에 중요해야합니다.
Doug Brummell

[본 백서] ( arxiv.org/pdf/1511.07122.pdf )를 참조하십시오. 위에 언급되어 있으며이 주제에 대해 읽은 내용에 대해 약간 설명했습니다.
Doug Brummell

한 가지 더, 그 논문은 증가하는 확장 체계에서 해상도의 손실이 없다고 말하고 있습니다. 나는 "해상도"하에서 담요가 될 수있는 다른 손실에 대해주의를 기울이고 있다고 생각합니다. 물론, 많은 conv 레이어를 더 적은 수의 확장 레이어로 교체하고 정확성을 유지할 수 있다면, 반드시해야합니다. 그러나 나에게 (그리고 이것에 관한 책을 다시 읽어야 할 것이다), 나는 당신이 팽창과 함께 처음부터 건축가의 경우 잠재적 손실에 대해 생각합니다 ...
Doug Brummell

5

레이어를 업 샘플링하는 동일한 작업을 수행하는 것처럼 보이지만 그 사이에는 분명한 여백이 있습니다.

먼저 Dilated Convolution 에 대해 이야기합니다

위의 주제 에서이 멋진 블로그 를 찾았습니다 . 내가 이해했듯이 이것은 입력 데이터 포인트를 광범위하게 탐색하는 것과 비슷 합니다 . 또는 컨볼 루션 연산의 수용 영역을 증가시킵니다.

여기이 논문 에서 확장 된 컨볼 루션 다이어그램이 있습니다 .

이미지 3

이것은 일반적인 컨볼 루션이지만 매개 변수의 크기를 늘리지 않고 입력 픽셀에서 더 많은 전역 컨텍스트를 캡처하는 데 도움이됩니다. 또한 출력의 공간 크기를 늘리는 데 도움이 될 수 있습니다. 그러나 여기서 중요한 것은 레이어 수에 따라 수용 필드 크기가 기하 급수적으로 증가한다는 것입니다. 이것은 신호 처리 분야에서 매우 일반적입니다.

이 블로그는 확장 된 회선의 새로운 기능과 이것이 일반 회선과 비교되는 방법을 설명합니다.

블로그 : 확장 된 컨벌루션과 크로네 커 팩터 컨벌루션

이제 디콘 볼 루션이 무엇인지 설명하겠습니다

이것을 전치 된 컨볼 루션이라고합니다. 이것은 역 전파에서 컨볼 루션에 사용한 함수와 같습니다.

단순히 backprop에서 우리는 출력 기능 맵의 한 뉴런에서 그라디언트를 수용 필드의 모든 요소에 분배 한 다음 동일한 수용 요소와 일치하는 그라디언트를 요약합니다.

여기에 좋은 자료가 있습니다 .

기본 아이디어는 출력 공간에서 디컨 볼 루션이 작동한다는 것입니다. 픽셀을 입력하지 않았습니다. 출력 맵에서 더 넓은 공간 크기를 만들려고 시도합니다. 이것은 시맨틱 분할을위한 완전 컨볼 루션 신경망 에서 사용됩니다 .

디컨 볼 루션은 학습 가능한 업 샘플링 레이어입니다.

최종 손실과 결합하여 업 샘플링하는 방법을 배우려고합니다.

이것은 deconvolution에 대해 찾은 최고의 설명입니다. , cs231 13 강의 이후 21.21에서 .


확장 된 회선이 출력의 공간 크기를 늘리는 데 어떻게 도움이되는지 자세히 설명 하시겠습니까? 기존 컨볼 루션보다 훨씬 많은 패딩이 필요하므로 출력 크기와 관련하여 더 나쁩니다.
wlnirvana
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.