Paper Review

[Paper Review] DenseNet : Densely Connected Convolutional Networks

조상현 2023. 1. 5. 15:28

이전 ShuffleNet 논문 리뷰 : 2023.01.05 - [Paper Review] - [Paper Review] ShuffleNet: An Extremely Efficient Convolutional Neural Network for MobileDevices

 

[Paper Review] ShuffleNet: An Extremely Efficient Convolutional Neural Network for MobileDevices

이전 MobileNet 논문 리뷰 : 2023.01.04 - [Paper Review] - [Paper Review] MobileNet : Efficient Convolutional Neural Networks for Mobile VisionApplications [Paper Review] MobileNet : Efficient Convolutional Neural Networks for Mobile VisionApplications

josh3255.tistory.com


DenseNet 논문 : https://arxiv.org/pdf/1608.06993.pdf

 

일곱 번째로 리뷰할 논문은 DenseNet이다. DenseNet은 Shortcut Connection에서 영감을 받은 네트워크로 입력에 가까운 계층과 출력에 가까운 층을 연결하여 학습 중에 그래디언트가 소실되는 문제를 해결하고 매개 변수를 줄여 네트워크를 더 깊게 쌓을 수 있게 만들었다.

 


DenseNets

 

 

네트워크를 통과하는 단일 이미지 x0가 있고 네트워크가 비선형 변환 Hl()을 수행하는 L개의 계층으로 구성되어 있다고 할 때 l번째 층의 출력을 xl로 나타낸다.

 

ResNet의 경우 아래 수식과 같이 l번째 계층의 출력을 l+1계층의 입력으로 연결하는 동시에 identity mapping을 이용하여 skip connection을 추가하여 주었다. 허나 DenseNet의 저자들은 이러한 방식이 네트워크의 정보 흐름을 방해할 수 있다고 주장한다.

 

xl=Hl(xl1)+xl1

 

이에 DenseNet은 계층 간의 정보 흐름을 더욱 개선하기 위해서 그림 1과 같이 모든 계층에서 이어지는 모든 계층으로의 직접 연결을 제안하였다. 수식으로는 다음과 같이 표현된다.

 

xl=Hl([x0,x1,...,xl1])

 

Pooling layers

 

 

DenseNet에서는 컨볼루션 네트워크의 필수적인 요소인 다운샘플링 계층을 Dense Block 사이에 적용하였다. 이를 전이 계층이라고 부르는데 전이 계층은 Batch Normalization layer, 1 x 1 convolution layer, 2 x 2 average pooling layer로 구성된다.

 

Growth rate

 

각 함수 Hlk개의 특징맵을 생성한다고 할 때 lth 레이어는 k0+k x (l1)개의 입력 특징맵을 가진다. (이 때 k0는 입력 레이어의 채널 수이다.)

논문의 저자들은 이 k를 Growth rate parameter라고 설명하면서 DenseNet이 이전의 모든 특징 맵에 접근할 수 있기 때문에 네트워크의 'collective knowledge'에 접근할 수 있게 되었고 k=12와 같이 적은 레이어 수에서도 SOTA에 버금가는 성능을 얻기에 충분하다고 설명한다.

 


논문을 리뷰하면서 든 생각이 굉장히 길게 써놨지만 결국 레이어 간 연결을 통해 얕은 정보와 깊은 정보를 더 많이 보는 것, 그래디언트가 소실을 막는 것이 핵심이라고 생각한다.

 

다음글에서는 Batch Normalization에 대해서 리뷰하겠습니다.