표준 컨볼루션 레이어는 묘하게도 모두를 똑같이 대우합니다. 수십 개, 때로는 수백 개의 특징 검출기(feature detectors)를 쌓아놓고는, 그 하나하나를 모두 동일한 비중으로 다룹니다. 대각선 가장자리를 찾아내도록 학습된 채널이 푸른 하늘 픽셀을 감지하는 채널과 똑같은 투표권을 갖습니다. 고양이 사진에서 털 질감에 반응하는 채널은 배경 노이즈에 의해 활성화된 채널과 동일한 가중치로 전달됩니다. 이러한 획일성이 바로 약점입니다. 모든 이미지에 대해 모든 채널이 똑같이 중요한 것은 아니지만, 기존의 딥 네트워크에는 이를 구분할 수 있는 메커니즘이 부족했습니다.

Hu와 동료들이 도입한 Squeeze-and-Excitation은 매우 작은 추가 요소로 이 문제를 해결합니다. 이 방식은 어떤 컨볼루션 블록에도 학습 가능한 게이팅 메커니즘(gating mechanism)을 부착하여, 네트워크가 각 채널의 기여도를 입력값마다 동적으로 재보정할 수 있게 하며, 이를 매 입력마다 새롭게 수행합니다. 추가되는 비용은 미미합니다. ResNet-50에 적용했을 때 파라미터가 약 2.5% 정도 늘어날 뿐이지만, 표현력(representational power)의 향상은 매우 상당하여 SE 블록은 ILVSRC 2017 우승에 기여했으며 현재는 MobileNetV3나 EfficientNet과 같은 실제 서비스용 아키텍처에도 포함되어 있습니다.

이 아이디어는 세 단계로 나누어 처음부터 직접 구현할 수 있을 만큼 간단합니다.

Squeeze: 네트워크에 광각 렌즈를 제공하기

컨볼루션은 설계상 국소적(local)입니다. 3×3 커널은 이미지를 따라 슬라이딩하며 오직 인접한 영역만을 봅니다. 레이어를 충분히 쌓으면 수용 영역(receptive field)이 커지긴 하지만, 단일 연산이 한 번에 전체 특징 맵(feature map)을 훑어볼 수는 없습니다. 이는 특정 채널이 개나 자동차의 전체 공간 영역에 걸쳐 강력하게 활성화되더라도, 다음 레이어는 "이 검출기가 모든 곳에서 작동했다"라는 명시적인 요약을 전달받지 못한다는 것을 의미합니다.

Squeeze 단계는 글로벌 평균 풀링(global average pooling)을 통해 그 간극을 메웁니다. 각 채널에 대해 H×W 공간 그리드의 모든 값을 평균 내어 하나의 숫자로 만듭니다. 만약 512개의 채널이 있다면, 이제 512개의 스칼라(scalar) 값을 갖게 됩니다. 각 스칼라는 해당 채널이 학습한 것이 무엇이든(바퀴 테두리든, 풀밭이든, 피부색이든) 그 전역적인 존재감을 인코딩합니다. 즉, 전체 장면을 채널별로 요약한 것입니다.

이것이 중요한 이유는 문맥(context)에 따라 의미가 변하기 때문입니다. 수평선 검출기는 어떤 이미지에서는 지평선을 식별하는 데 유용하지만, 다른 이미지(예: 숲의 캐노피)에서는 노이즈를 잡아내는 무의미한 도구가 될 수 있습니다. 공간적 집계(spatial aggregation) 없이는 네트워크가 이러한 차이를 구분할 수 있는 명확한 신호를 얻기 어렵습니다.

Excite: 협력을 강제하는 병목(Bottleneck)

Squeeze 단계에서 전역 채널 기술자(global channel descriptors) 벡터가 생성되면, Excite 단계는 이 벡터를 어떻게 활용할지 학습합니다. 이는 아주 작은 2층 MLP입니다. 벡터를 입력받아 병목(bottleneck) 지점까지 압축한 다음, 다시 원래의 채널 차원으로 확장합니다.

일반적인 구현에서는 16의 축소 비율(reduction ratio)을 사용합니다. 입력 채널이 512개라면, 첫 번째 선형 레이어는 512개의 스칼라를 32개로 투영하고, 그 사이에 ReLU가 위치하며, 두 번째 레이어가 32개를 다시 512개로 매핑합니다. 이러한 압축은 의도적인 것입니다. 이는 깔때기처럼 작동합니다. 네트워크는 원래 값을 아무런 변화 없이 그대로 통과시킬 수 없습니다. 대신 채널들이 서로 어떻게 연관되어 있는지에 대한 압축된 공유 표현을 학습해야 합니다. 이 병목 구조는 채널 간 의존성(cross-channel dependencies)이 나타나도록 강제합니다. 예를 들어, 모델은 "나무껍질 질감" 채널이 강할 때 "나무 몸통" 윤곽 채널도 강조되어야 하며, "물 반사" 채널은 억제되어야 한다는 것을 학습할 수 있습니다.

여기서 마지막 활성화 함수(activation)는 매우 중요하며, 직관이 어긋나기 쉬운 지점이기도 합니다. 많은 이들이 어텐션(attention)은 확률 분포여야 한다고 생각하여 본능적으로 Softmax를 선택하곤 합니다. 하지만 Softmax를 사용하면 모든 채널의 가중치 합이 1이 될 때까지 서로 경쟁하게 만듭니다. 즉, 한 채널의 값이 올라가면 다른 채널의 값은 반드시 내려가야 합니다. 이는 이 작업에 있어 완전히 잘못된 방식입니다. 일몰 사진의 경우, 오렌지빛 광채 채널과 구름 질감 채널이 동시에 최대 강도로 작동해야 할 수도 있습니다. 게이트는 제로섬(zero-sum) 예산이 아니라, 독립적인 조광기(dimmer switches)처럼 작동해야 합니다.

Sigmoid가 이 문제를 해결합니다. 각 스칼라를 0과 1 사이의 값으로 압축하면서도, 모든 채널이 독립적으로 움직일 수 있게 합니다. 모델은 인위적인 경쟁 없이도 특정 하위 집합을 높이거나, 나머지는 중립으로 두거나, 다른 것들을 억제할 수 있습니다.

Scale: 게이트를 적용하고 다음 단계로 이동

마지막 단계는 거의 허무할 정도로 단순하지만, 바로 그 점이 우아함의 일부입니다. 각 원본 특징 맵(feature map)에 그에 대응하는 시그모이드 활성화 게이트 값을 곱합니다. 게이트 값이 1에 가까우면 채널은 변함없이 통과합니다. 게이트 값이 0에 가까우면 해당 특징 맵 전체가 억제되어 마치 소리가 사라지듯 약해집니다. 그 결과는 네트워크의 다음 레이어로 전달됩니다.

이는 공간 맵 전체에 걸친 단순한 곱셈 연산이기 때문에 추론 시 연산 오버헤드가 매우 적습니다. 주요 연산은 글로벌 풀링(global pooling)과 두 개의 작은 프로젝션(projection)에서 이루어지는데, 이는 주변의 3×3 컨볼루션과 비교하면 무시할 수 있는 수준입니다.

이 설계가 지속되는 이유

깔끔한 수학적 구조를 넘어, Squeeze-and-Excitation이 오랫동안 살아남은 이유는 엔지니어링 제약 조건을 존중하기 때문입니다.

저렴한 파라미터. ResNet-50에 SE 블록을 추가해도 파라미터는 약 2.5% 정도만 더 늘어납니다. MLP 레이어는 작아서 모델을 비대하게 만들지 않습니다. 정확도 향상을 위해 모델 크기를 두 배로 키워야 하는 시대에, SE는 보기 드문 '공짜 점심'과 같습니다.

모듈성. SE는 파이프라인을 재설계해야 하는 새로운 백본 아키텍처가 아닙니다. 바로 끼워 넣을 수 있는(drop-in) 모듈입니다. ResNet, DenseNet 또는 커스텀 스택의 어떤 컨볼루션 블록 뒤에도 주변 로직을 다시 작성할 필요 없이 삽입할 수 있습니다. 이러한 유연성 덕분에 연구 분야를 시작으로 모바일 최적화 네트워크에 이르기까지 빠르게 도입될 수 있었습니다.

입력 적응형 동작. 학습 중에 학습되어 고정되는 정적인 채널 가중치와 달리, SE 게이트는 매 순전파(forward pass)마다 실시간으로 계산됩니다. 네트워크에 특징 없는 평평한 하늘 이미지를 입력하면 관련 채널들은 억제된 상태를 유지합니다. 보행자, 표지판, 차량이 있는 복잡한 거리 풍경을 보여주면, 게이트는 해당 이미지에 중요한 탐지기들을 강화하도록 재조정됩니다. 동일한 네트워크가 장면마다 스스로의 민감도를 조절하는 것입니다.

대회 우승자에서 일상적인 배포까지

SE 블록은 ILSVRC 2017에서 1위를 차지했지만, 진정한 검증은 그 이후에 이루어졌습니다. SE 블록은 MobileNetV3에 통합되어, 모바일 배터리를 소모하지 않으면서도 경량 모델이 체급 이상의 성능을 낼 수 있도록 돕습니다. 또한 EfficientNet의 복합 스케일링(compound scaling) 레시피에도 등장하며, 채널 어텐션(channel attention)이 고성능 서버를 위한 사치품이 아니라 효율적인 설계를 위한 실용적인 도구임을 증명했습니다.

이 기능이 실제로 얼마나 적은 코드를 필요로 하는지 확인하고 싶다면, 라이브 데모에서 블록을 한 줄씩 분석해 볼 수 있습니다:

커뮤니티와 함께 구축하고 싶다면: https://t.me/GyaanSetuAi

핵심 요약

더 나은 비전 모델이 항상 더 깊은 스택이나 더 넓은 필터를 필요로 하는 것은 아닙니다. 때로는 눈앞의 이미지에 어떤 채널이 실제로 중요한지 잠시 자문하는 시간이 필요할 뿐입니다. Squeeze-and-Excitation은 풀링된 평균, 압축된 MLP, 그리고 시그모이드 게이트만으로 그 시간을 제공합니다. 그 결과, 모든 특징을 동일한 볼륨으로 외치는 대신, 장면이 요구하는 정확한 순간에 각 채널을 속삭이거나, 강조하거나, 혹은 침묵시키는 법을 배우는 네트워크가 탄생합니다.