Squeeze-and-Excitation Networks(SENet)을 읽고 내용을 정리하고자 한다.
주의 : 내용이 중구난방,,입니다
convolutional neural network는 spatial, channel-wise한 정보를 서로 융합시키는 방법으로 informative feature를 추출하고 이를 통해 representation을 생성해낸다. 이러한 강력한 CNN의 성능이 계층적 pattern을 학습하여 image에 대해 강력한 descriptor가 될 수 있음이 증명되어왔다. 더 나아가 성능을 더욱 향상시키기 위해서 당시 많은 연구들은 representation을 boost하기 위한 'spatial encoding'에 집중되어 있었다. (ex. inception 등)
저자들은 많은 연구들이 관심을 가진 spatial encoding 보다는 channel relationship에 집중을 하고, 새로운 architecture인 SENet을 발표한다.
아래에서 기술하겠지만 SENet을 간략하게 언급하고 넘어가자면, channel간의 interdependency을 반영하여 channel-wise feature를 중요도에 따라 recalibration(재조정)하는 과정인 Squeeze-and-Excitation(SE) block으로 이루어진 network이다.
SENet은 기존의 architecture에도 쉽게 적용될 수 있다는 점과 SE block을 network에 추가함으로써 생기는 파라미터의 증가 수 대비 성능의 향상도가 더 높다는 점이 특징으로 뽑힌다.
SENet은 마지막 대회인 2017ILSVRC에서 top-5 error를 2.251%(2016 winning model 대비 약 25%감소)까지 줄이면서 1위를 달성했다.
Figure 1은 SE block 연산과정을 도식화 한 것이다.
SE block의 연산과정
논문의 Figure1 에서는 최종 아웃풋을 $\tilde{X}$로 나타내고 있지만, $X$가 아닌 $U$에 scale을 적용해주는 것이기 때문에 $\tilde{U}$로 표현하는 것이 더 낫다고 생각하여 이하 $\tilde{X}$를 $\tilde{U}$로 표현하겠습니다.