어텐션 메커니즘 (Attention Mechanism)
쉽게 풀면
시끄러운 파티장에서도 대화 상대의 목소리만 골라 들을 수 있는 이유는, 뇌가 주변의 모든 소리를 똑같은 크기로 받아들이지 않고 지금 필요한 소리에 더 "집중"하기 때문입니다. 이를 심리학에서는 칵테일파티 효과라고 부르는데, 어텐션 메커니즘은 이 원리를 인공신경망에 적용한 것입니다.
예를 들어 영어 문장을 한국어로 번역할 때, 지금 번역하려는 단어와 관련 있는 원문의 단어에는 더 높은 가중치를, 관련 없는 단어에는 더 낮은 가중치를 자동으로 부여해 필요한 정보에 집중하도록 합니다.
왜 중요한가
어텐션 메커니즘은 순환 신경망이 안고 있던 장거리 의존성 학습의 어려움을 우회하는 방법으로 주목받으면서, 이후 트랜스포머 구조 전체의 근간이 되었습니다.
번역, 요약, 이미지 인식뿐 아니라 대규모 언어모델의 사전학습과 추론 전반이 이 메커니즘 위에서 작동하기 때문에, 관련 연구는 자연어처리를 넘어 컴퓨터 비전, 음성 처리 등 다양한 분야의 논문에서 폭넓게 다뤄집니다.
또한 계산 효율과 해석 가능성 개선이라는 실무적 문제와도 직결되어 있어 꾸준히 새로운 변형과 최적화 기법이 제안되고 있습니다.
어떤 절차인가
- 입력의 각 위치마다 쿼리(Q), 키(K), 밸류(V) 벡터를 만듭니다. 보통 학습되는 행렬을 곱해 얻습니다.
- 쿼리와 키의 유사도(점수)를 구합니다. 트랜스포머에서는 내적을 키 차원 dk의 제곱근으로 나눈 값을 씁니다(Vaswani et al., 2017).
- 점수에 소프트맥스를 적용해 합이 1인 가중치로 바꿉니다.
- 가중치로 밸류를 가중합해 출력을 얻습니다.
식으로 쓰면 Attention(Q, K, V) = softmax(QKT / √dk)V 입니다. 번역 모델에 어텐션을 처음 도입한 Bahdanau 등(2015)은 점수를 작은 신경망으로 계산하는 방식(덧셈형)을 썼고, 내적 방식은 이후 널리 쓰였습니다.
쿼리·키·밸류가 모두 같은 시퀀스에서 나오면 셀프 어텐션이고, 쿼리는 디코더에서, 키·밸류는 인코더에서 오면 교차 어텐션입니다.
언제 쓰고 무엇을 얻나
가상의 예: 한 쿼리에 대한 세 입력 위치의 점수가 2, 1, 0라면 소프트맥스 가중치는 약 0.665, 0.245, 0.090입니다(합 1.0). 점수가 큰 위치가 출력에 더 많이 반영되지만 나머지도 일부 반영됩니다. 위치 하나만 고르는 것이 아니라 가중 평균이라는 점이 핵심입니다.
- 얻는 것: 입력의 거리가 멀어도 한 번에 직접 연결할 수 있고, 위치별 계산을 병렬로 처리하기 쉽습니다.
- 치르는 값: 셀프 어텐션은 시퀀스 길이 n에 대해 n2에 비례하는 계산과 메모리가 듭니다. 어순 정보도 따로 넣어야 해서 트랜스포머는 위치 인코딩을 더합니다.
- 쓰이는 곳: 기계 번역, 요약, 언어모델, 이미지(패치 사이 관계), 음성 정렬 등.
논문에는 이렇게 적는다
- 어떤 어텐션인지 밝힙니다: 덧셈형/내적형, 셀프/교차, 헤드 수, 키 차원 dk, 마스킹(미래 위치 가리기) 여부.
- 기존 모델(트랜스포머 등)에서 무엇을 바꿨는지(어텐션 범위 제한, 근사 등)와 그 이유를 적습니다. 구조 설명은 트랜스포머 구조 문서를 참고하세요.
- 어텐션 가중치를 그림으로 보여 줄 때는 “모델이 이 단어를 근거로 판단했다”고 단정하지 않습니다. 가중치가 설명이 되는지는 논쟁이 있습니다. Jain과 Wallace(2019)는 어텐션 가중치와 예측의 관계가 약할 수 있다고 지적했고, Wiegreffe와 Pinter(2019)는 그 논증의 전제를 비판하며 설명으로 볼 수 있는 조건을 따졌습니다.
- 어텐션이 성능에 기여했는지 보려면 제거 실험(어텐션을 뺀 모델과 비교)을 합니다.
논문에서는 이렇게 쓰입니다
실제 논문에서
국내 학술지 논문에서 이 용어가 쓰인 문장을 그대로 옮겼습니다. 제목·학술지·연도와 원문 링크를 함께 적었습니다.
“또한 이러한 데이터가 포함하는 구문 정보를 학습하고 활용하는 BERT, GPT 등 언어 모델의 원리인 어텐션 메커니즘이 곧 문장 혹은 문서 내 구성 성분 사이의 관계성에 기반한 것임을 살펴보았다.”
컴퓨터언어학 분야 한국어 구문 연구의 현황, 國語學, 2023 · KCI 한국학술지인용색인 · 원문 보기 ↗
“먼저 네트워크 특징 융합 단계에서 어텐션 메커니즘 기반 신경망을 구성하여 특징 추출 성능 향상과 동시에 NMS(Non-Maximum Suppression)의 계산 부담을 줄였다.”
인파 밀집 분석을 위한 보행자 검출 방법에 대한 연구, 한국정보기술학회논문지, 2024 · KCI 한국학술지인용색인 · 원문 보기 ↗
예시 문장
아래는 용어의 쓰임을 보여 주려고 만든 예시로, 실제 논문에서 가져온 문장이 아닙니다.
모델이 문장 전체를 동일한 비중으로 참고하는 대신, 지금 처리 중인 부분과 관련성이 높은 정보에 자동으로 가중치를 더 실어준다는 의미입니다.
컴퓨터 비전 분야에서는 합성곱 대신, 또는 이를 보완하는 형태로 이미지의 부분들 사이 관계를 어텐션으로 학습해 멀리 떨어진 영역 간의 연관성까지 포착한다는 설명입니다.
음성 인식·합성 분야에서는 입력 음성과 출력 텍스트(또는 그 반대) 사이의 시간적 정렬을 사람이 미리 지정하지 않고, 어텐션이 매 순간 어느 구간을 참고할지 스스로 찾아내도록 한다는 의미입니다.
조금 더 깊게 보면
논문을 읽다 보면 어텐션은 대체로 쿼리(query), 키(key), 밸류(value)라는 세 벡터의 상호작용으로 계산된다는 설명을 자주 만나게 됩니다. 쿼리와 키의 유사도를 구해 가중치를 산출한 뒤, 이 가중치로 밸류를 조합하는 방식입니다.
하나의 어텐션만 쓰는 대신 여러 개를 병렬로 두어 서로 다른 종류의 관계를 동시에 포착하게 하는 멀티헤드 어텐션, 그리고 입력 시퀀스가 길어질수록 계산량과 메모리 사용량이 늘어나는 문제를 줄이기 위한 다양한 경량화·근사 기법들도 함께 다뤄지는 경우가 많습니다.
또한 어텐션 가중치를 시각화해 모델이 어느 부분을 상대적으로 더 참고했는지 살펴보는 분석이 종종 등장하는데, 앞서 언급했듯 이는 어디까지나 참고 자료이지 모델 판단의 결정적 증거로 단정하기는 어렵습니다.
주의할 점
어텐션 가중치가 특정 단어에 높게 나타났다고 해서 그것이 곧 모델이 "그 단어를 근거로 판단했다"는 확실한 설명이 되는 것은 아니라는 지적이 있습니다. 어텐션 값은 모델 내부 계산의 일부일 뿐, 해석 가능성을 완전히 보장하지는 않습니다. 이 기법은 트랜스포머 구조의 핵심 구성 요소로 널리 쓰입니다.
헷갈리기 쉬운 용어
| 용어 | 관계 |
|---|---|
| 어텐션 메커니즘 | 입력에 가중치를 주어 가중합을 만드는 계산 방식 |
| 트랜스포머 구조 | 어텐션을 핵심 블록으로 쌓아 만든 모델 구조. 어텐션은 부품, 트랜스포머는 완성된 구조 |
참고 문헌
- Bahdanau, D., Cho, K., & Bengio, Y. (2015). Neural machine translation by jointly learning to align and translate. In Proceedings of the 3rd International Conference on Learning Representations (ICLR).
- Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., Kaiser, L., & Polosukhin, I. (2017). Attention is all you need. Advances in Neural Information Processing Systems, 30.
- Jain, S., & Wallace, B. C. (2019). Attention is not explanation. In Proceedings of NAACL-HLT 2019.
- Wiegreffe, S., & Pinter, Y. (2019). Attention is not not explanation. In Proceedings of EMNLP-IJCNLP 2019.
표의 기준값은 위 문헌에 근거한 관례이며, 분야·학술지마다 다른 기준을 쓸 수 있습니다.