본문 바로가기
  • 책상 밖 세상을 경험할 수 있는 Playground를 제공하고, 수동적 학습에서 창조의 삶으로의 전환을 위한 새로운 라이프 스타일을 제시합니다.
Computer Vision

[2024-2] 박지원- SENet(Squeeze-and-Excitation Networks)

by jellydell_y 2024. 12. 19.

#Squeeze-and-Excitation Networks (2017) 

Paper ) https://arxiv.org/abs/1709.01507 

 

Squeeze-and-Excitation Networks

The central building block of convolutional neural networks (CNNs) is the convolution operator, which enables networks to construct informative features by fusing both spatial and channel-wise information within local receptive fields at each layer. A broa

arxiv.org

1) SENet의 등장 계기

- Squeeze는 이미 있지만, 이미지의 feature만 포착하지 않고, 채널 간의 상호 의존성(상관성)을 모델링하는 모델은 없음

- 이 의존성을 모델링하기 위해 Squeeze and Excitation (SE) Block 구조를 제안한 것. 이 블록은 기존 네트워크의 feature map 을 재조정(recalibration) 하는 역할을 함 

-즉 feature map 의 전체 정보를 요약하고, 각 map의 중요도를 높인다.

  • 용어) 채널: 픽셀은 주요한 색깔의 조합으로 구성된다고 하는데, 이때 채널이라는 것은 각각의 색깔에 해당한다고 보면 됨(ex. RGB Image는 red, green, blue 3개 채널로 구성)

 

2) SENet의 구조 및 과정

크게 크게 Squeeze → Excitation (재조정) 과정으로 분리 가능

 

b-1. 맨 왼쪽, 즉 X→U 수행 전 (H’ * W’ * C’) 크기 → (HWC) 크기로 변환(합성곱; Convolution 연산)

b-2.여기가 Squeeze 단계로, input은 b-1에서 마친 (HWC) 크기의 feature map을 11C 크기의 벡터로 만듬

  • Global average pooling feature를 1차원 벡터로 만들기 위한 풀링 작업); 논문에서는 이를 Global information Embedding이라고 명명했음
    • (height, width, channel) 형태의 feature를 (channel,) 형태로 변환
    • 같은 채널들의 feature을 평균 내서, 채널 개수만큼의 원소를 가지는 벡터로 만듬
    ex. 빨간 채널 9,1,7,3가 있음 → 평균 5, 원소 4개 → 5,5,5,5 로 변환

b-3. 이 11C 크기의 벡터를 Excitation 단계로 넘기게 됨(이미지의 F_ex 부분)

→ Excitation(재조정) 과정은 쉽게 말해 무색이었던 벡터에 색칠을 하는 과정

: 위 식에서 σ 는 sigmoid 함수, δ 는 ReLu, W1 W2 는 Fully Connected Layer의 가중치

:채널 간의 상관성 중, nonlinear 관계(비선형)를 찾아 학습할 수 있어야 함

 

b-4. 채널의 중요도를 표현하기 위한 Fex 연산 수행 : 정규화하여 가중치를 주는 과정

  • Fully Connected Layer 1(11C) - ReLU(차원축소; 11(C/r)) - FC Layer 2 (11C)- Sigmoid로 구성
  • 이때 Fully Connected Layer을 통과하고 나서까지는 1*1*C size지만, ReLU에서 축소비율(r) 만큼 축소된 1*1*(C/r) 크기로 감소
  • 그 후 FC Layer 2를 통과하면서 다시 1*1*C 크기로 돌아오게 됨

3) '블록' 구조인 만큼 여러 standard architecture(표준은 ResNET이지만) 에 모두 적용할 수 있다는 장점이 있음