Self-Attention (셀프 어텐션) vs. 채널 어텐션 (Channel Attention) 비교

셀프 어텐션과 채널 어텐션은 모델이 "무엇에 집중해야 하는지"를 학습하는 서로 다른 방식입니다.

셀프 어텐션"어디를" 봐야 할지, 즉 입력 데이터의 요소 간 관계에 초점을 맞춥니다. 반면, 채널 어텐션"무엇을" 봐야 할지, 즉 여러 특징(feature) 채널 중 어느 것이 더 중요한지에 초점을 맞춥니다.


1. 🤖 Self-Attention (셀프 어텐션)

셀프 어텐션은 트랜스포머 모델의 핵심이며, 주로 시퀀스 데이터(문장, 비디오 프레임 등)나 이미지 패치 간의 관계를 파악하는 데 사용됩니다.

  • 핵심 아이디어: 입력 시퀀스의 각 요소가 다른 모든 요소와 얼마나 연관되어 있는지 계산하여, 문맥을 반영한 새로운 표현을 만듭니다.
  • 작동 방식 (QKV 메커니즘):
    1. Query (Q): 현재 내가 찾고 있는 정보 (예: "이 단어와 관련된 정보는?")
    2. Key (K): 다른 요소들이 "나는 이런 정보를 가지고 있어"라고 알려주는 일종의 식별표.
    3. Value (V): 다른 요소들이 가진 실제 내용 또는 값.
    모델은 각 요소의 **Query(Q)**와 다른 모든 요소의 **Key(K)**를 비교하여 '주의 집중 점수(Attention Score)'를 계산합니다. 이 점수를 Softmax로 정규화하여 '가중치'를 만들고, 이 가중치를 각 요소의 **Value(V)**에 곱하여 모두 합산합니다.
  • 이 어텐션은 내부적으로 **Query(Q), Key(K), Value(V)**라는 세 가지 벡터를 사용하여 작동합니다.
  • 핵심 질문: "이 단어(또는 이미지 패치)를 이해하기 위해, 다른 어떤 단어(패치)를 얼마나 참고해야 하는가?"
  • 비유: 도서관에서 특정 주제(Query)로 책을 찾을 때, 모든 책의 제목(Key)을 훑어보고, 관련 있는 책의 실제 내용(Value)을 참고하여 정보를 종합하는 것과 같습니다.

2. 🎛️ 채널 어텐션 (Channel Attention)

채널 어텐션(대표적으로 Squeeze-and-Excitation)은 주로 CNN(합성곱 신경망)에서 사용되며, 각 특징 채널의 중요도를 동적으로 조절합니다.

  • 핵심 아이디어: 입력된 이미지(또는 특징 맵) 전체를 보고, 현재 작업에 더 유용한 특징 채널(예: '빨간색 감지 채널', '가장자리 감지 채널')에 더 높은 가중치를 부여하고, 덜 유용한 채널은 억제합니다.
  • 작동 방식 (Squeeze-and-Excitation):
    1. Squeeze (압축): 각 채널의 공간 정보(H, W)를 글로벌 평균 풀링(Global Average Pooling) 등을 통해 하나의 값으로 요약합니다. (B, C, H, W) -> (B, C, 1, 1)
    2. Excite (활성화): 이 요약된 채널 정보((B, C))를 작은 신경망(MLP)에 통과시켜 채널 간의 관계를 학습하고, 각 채널의 "중요도 점수"를 계산합니다.
    3. Scale (조정): 이 점수(0~1 사이, Sigmoid 사용)를 원래의 특징 맵 (B, C, H, W)의 각 채널에 곱해줍니다.
  • 핵심 질문: "이 이미지를 분류하는 데 어떤 특징(채널)이 가장 중요한가?"
  • 비유: 오디오 믹서에서 엔지니어가 노래 전체를 듣고, 현재 장면에 맞게 보컬 채널의 볼륨은 높이고 베이스 채널의 볼륨은 낮추는 것과 같습니다.

3. 📊 핵심 비교표

항목 Self-Attention (셀프 어텐션) 채널 어텐션 (Squeeze-and-Excitation)
주요 목표 요소 간 관계 및 문맥 파악 특징 채널의 중요도 계산
작동 대상 시퀀스 내 요소 (단어, 픽셀, 패치) 특징 맵의 채널
핵심 질문 "어디를 봐야 하는가?" (요소 간 연관성) "무엇을 봐야 하는가?" (특징의 유용성)
가중치 적용 각 요소의 Value를 가중 합산 각 채널 전체를 스케일링 (조절)
주요 사용처 트랜스포머 (NLP, Vision Transformers) CNN (ResNet-SE, EfficientNet 등)

+ Recent posts