SENet: Squeeze-and-Excitation Networks

박정민 (Jungmin Park)·2025년 1월 14일

논문 리뷰

목록 보기
14/21

Abstract

  • 최근 CNN이 더욱 발전하면서, 각 layer의 공간적인 정보와 필터로 생성된 채널간의 정보를 결합하여 많은 정보를 쌓는 것이 가능해졌다.
  • 특징들의 계층성을 이용하여 공간 정보를 인코딩하는 CNN의 능력을 강화시킬 수 있었다.
  • 해당 논문에서는 channel의 관계에 초점을 맞추었고, 새로운 구조인 SE block을 소개한다.
  • SE block은 채널간의 상호 의존성을 명확히 모델링함으로써 채널 간 feature response를 재측정 시켜준다.
  • 이를 여러 개 쌓아서 SE Net이라는 아키텍쳐를 생성하며, 이는 다양한 데이터셋에서 매우 효과적인 일반화 능력을 지닌다.
  • 약간의 계산량 증가로 높은 성능 증가를 달성했다고 한다.

Squeeze Operation

  • Squeeze란, 이전 convolution layer(Ftr)(F_{tr})에서 받아온 feature map(U)(U)을 압축하는 것을 목표로 한다.
  • 여기서 받아온 feature map들은 각 학습된 필터들로 부터 생성된 지역적인 특징들이기 때문에, 그 지역 밖에서는 맥락적인 정보로 이용할 수 없는 것이 문제라고 저자들은 제시한다.
  • 따라서, 이러한 문제를 해결하기 위해서 feature map들을 global average pooling을 통해서
    HxWxC → 1x1xC의 형태로 압축하는 squeeze 과정을 통해서 이들을 channel descriptor이라고 칭한다.

Excitation Operation

  • Squeeze과정을 통해서 1x1x6의 벡터가 나왔다고 가정을 하면 FC layer를 통해서 reduction ratio인 r만큼 (위 그림에선 C=6, r=2) 노드 수를 줄여 ReLU함수를 거치고, 다시 FC layer를 통해 최종적으로 C개의 값을 출력하여 Sigmoid 함수를 통해 0-1의 값을 지닌 6개의 벡터로 만들어준다.
  • 이렇게 하는 이유는 채널에 대한 벡터들을 한번 수축시킨 뒤에 채널 간의 관계를 한번 비선형 함수인 ReLU로 살펴봐주기 위해서다.
  • 이후에 sigmoid 함수를 통과시켜 0과 1사이의 값으로 인코딩 하여 중요도를 값으로 매긴 후 이를 각 feature map에 다시 곱해주는 방식으로 적용시켜, 어떤 채널에 집중을 얼만큼 해야할지를 골라주는 역할을 하는 것을 Excitation Operation이라고 부른다.

Reference

profile
1999.09.10 / LIG Nex1 AI Researcher

0개의 댓글