본문 바로가기
Visual Intelligence/Image Classification

[Image Classification] DenseNet

by goatlab 2022. 9. 13.
728x90
반응형
SMALL

DenseNet

 

DenseNet은 후앙 등이 제안한 ResNet의 확장판이다. ResNet 블록에서는 합산을 통해 이전 레이어와 현재 레이어가 합쳐졌다. DenseNet의 경우, 연결을 통해 이전 레이어와 현재 레이어가 합쳐진다. DenseNet은 모든 레이어를 이전 레이어와 연결하고 현재 레이어를 다음 레이어에 연결한다.

 

https://pytorch.kr/hub/pytorch_vision_densenet/

 

특징

 

 더 적은 매개 변수, 정보 보존

DenseNet은 기존의 방법들에 비해 feature map에 대한 불필요한 학습이 필요가 없기 때문에, 더 적은 수의 parameter를 요구한다. ResNet은 identity transformation으로 정보를 보존하지만, 이러한 정보들이 학습 과정 중에서 random하게 dropped될 수 있다. DenseNet은 network에 더해지는 정보들을 명확하게 구분을 하면서 정보를 보존한다. DenseNet은 feature map이 그대로 보존이 되면서, feature map의 작은 집합들을 layer에 더해주면 된다.

정보의 흐름 및 기울기 개선

gradient를 조금 더 direct하게 각 레이어에 역전파할 수 있는 것이 핵심이다.


 작업 과적합을 줄이는 정규화 효과

Dense connection은 regularize 효과가 있어, overfitting을 막아주는 효과도 있다.

 

Architecture

 

https://pytorch.kr/hub/pytorch_vision_densenet/

  • Dense connectivity
  • composite function
  • pooling layers
  • growth rate
  • bottleneck layers
  • compression

 

ResNet은 이전의 정보를 합하는 identity function을 사용하지만, DenseNet은 여러 network를 concatenation을 사용하여 정보를 더 보존한다.

 

Pooling layer들은 denseblock 사이에 downsampling하는 역할로 사용된다.

 

728x90
반응형
LIST