AI Engineer 공간 "사부작 사부작"

트랜스포머(Transformer): 멀티-헤드 어텐션(Multi-Head Attention, MHA) 본문

Theory/Transfomer

트랜스포머(Transformer): 멀티-헤드 어텐션(Multi-Head Attention, MHA)

ChoYongHo 2025. 5. 17. 11:07
728x90

멀티-헤드 어텐션(MHA): 숲을 보는 여러 개의 눈, 싱글-헤드 어텐션과의 차이점과 강력한 장점

자연어 처리(NLP) 분야에서 트랜스포머(Transformer) 모델의 등장은 가히 혁명적이었습니다. 트랜스포머의 심장에는 '어텐션(Attention)' 메커니즘이 자리 잡고 있으며, 특히 문장 내 단어들 사이의 관계를 스스로 파악하는 '셀프 어텐션(Self-Attention)'은 핵심적인 역할을 합니다. 하지만 마치 우리가 사물을 관찰할 때 하나의 눈으로만 보는 것보다 여러 각도에서 다양한 측면을 동시에 살펴보는 것이 더 깊이 있는 이해를 가져다주듯, 셀프 어텐션 역시 한 번의 연산만으로는 문맥의 다채로운 정보를 모두 담아내기 어려울 수 있습니다.

이러한 한계를 극복하고 모델의 표현력을 한층 끌어올리기 위해 등장한 것이 바로 멀티-헤드 어텐션(Multi-Head Attention, MHA)입니다. 이번 글에서는 멀티-헤드 어텐션이 무엇이며, 기존의 싱글-헤드 어텐션(Single-Head Attention, SHA)과 어떤 차이가 있는지, 그리고 어떤 강력한 장점들을 제공하는지 쉽고 자세하게 알아보겠습니다.

싱글-헤드 어텐션: 하나의 시선으로 세상을 읽다

멀티-헤드 어텐션을 이해하기 전에, 먼저 싱글-헤드 어텐션의 개념을 짚어보겠습니다.

개념
싱글-헤드 어텐션은 말 그대로 하나의 어텐션 연산을 통해 입력 시퀀스 내의 관계를 파악하는 방식입니다. 각 단어에 대해 쿼리(Query, Q), 키(Key, K), 밸류(Value, V)라는 세 가지 표현을 생성하고, 이들을 이용하여 어떤 단어에 주목해야 할지, 즉 '어텐션 가중치'를 계산합니다. 이 가중치를 바탕으로 밸류 값들의 가중합을 구해 해당 단어의 문맥적인 의미를 추출합니다.

비유: 한 명의 탐정
싱글-헤드 어텐션은 마치 한 명의 탐정이 하나의 사건 파일을 검토하는 모습과 같습니다. 탐정은 자신의 관점과 분석 도구를 활용하여 사건의 단서들을 살펴보고 결론을 도출합니다. 이 방식은 비교적 단순하고 직관적이지만, 탐정이 가진 전문 분야나 시각에 따라 사건의 특정 측면만을 깊게 보거나, 혹은 여러 복잡하게 얽힌 관계들을 놓칠 수도 있습니다. 예를 들어, 알리바이에만 집중하다 보면 다른 중요한 물증이나 증언의 의미를 간과할 수 있는 것이죠.

한계점
싱글-헤드 어텐션은 문장 전체의 맥락을 한 번에 평균적으로 고려하려는 경향이 있습니다. 이로 인해 문맥의 다양한 미묘한 차이나, 특정 단어가 여러 의미로 해석될 수 있는 가능성 등을 동시에 포착하기에는 한계가 있을 수 있습니다. 예를 들어, "은행에서 돈을 찾았다"라는 문장에서 '은행'이 금융기관인지 강둑인지 구분하려면 다양한 문맥적 단서가 필요한데, 단일 어텐션으로는 이러한 다층적인 의미 관계를 모두 효과적으로 잡아내기 어려울 수 있습니다.

멀티-헤드 어텐션: 다양한 시각으로 세상을 보다

이러한 싱글-헤드 어텐션의 한계를 극복하기 위해 고안된 것이 바로 멀티-헤드 어텐션입니다.

개념
멀티-헤드 어텐션은 여러 개의 독립적인 어텐션 '헤드(Head)'를 병렬적으로 사용하는 방식입니다. 각 헤드는 자신만의 고유한 쿼리(Q), 키(K), 밸류(V) 가중치 행렬을 학습합니다. 즉, 동일한 입력에 대해 여러 개의 서로 다른 '관점' 또는 '부분 공간(subspace)'에서 어텐션 연산을 동시에 수행하는 것입니다.

작동 방식

  1. 입력 분할 및 투영: 먼저, 원래의 입력 데이터(임베딩 벡터)는 여러 헤드의 수만큼 차원이 나뉘거나, 각 헤드별로 서로 다른 선형 변환(projection)을 거칩니다. 이를 통해 각 헤드는 입력 데이터의 서로 다른 측면을 학습할 준비를 합니다.
  2. 병렬 어텐션 수행: 각 헤드는 독립적으로 싱글-헤드 어텐션(주로 스케일드 닷-프로덕트 어텐션)을 수행합니다. 즉, 각 헤드마다 고유한 Q, K, V를 가지고 어텐션 가중치와 결과 벡터를 계산합니다.
    • 예시: 어떤 문장에서 한 헤드는 문법적인 관계(예: 주어-동사 일치)에 집중하고, 다른 헤드는 단어 간의 의미적 유사성에, 또 다른 헤드는 문장 전체의 감성적인 뉘앙스에 집중할 수 있습니다.
  3. 결과 병합 및 최종 변환: 각 헤드에서 나온 어텐션 결과 벡터들을 모두 연결(concatenate)합니다. 이렇게 합쳐진 벡터는 다시 한번 선형 변환을 거쳐 최종적인 멀티-헤드 어텐션의 출력을 형성합니다.

비유: 전문가 자문단 또는 특수 렌즈 세트
멀티-헤드 어텐션은 마치 하나의 복잡한 문제를 해결하기 위해 다양한 분야의 전문가들로 구성된 자문단과 같습니다. 경제학자, 사회학자, 심리학자 등 각 분야의 전문가가 자신의 전문 지식을 바탕으로 문제의 서로 다른 측면을 분석하고 의견을 제시하면, 이를 종합하여 훨씬 더 깊이 있고 다각적인 해결책을 찾을 수 있습니다. 또 다른 비유로는 다양한 필터와 초점을 가진 여러 개의 특수 렌즈 세트를 들 수 있습니다. 어떤 렌즈는 넓은 풍경을 담아내고, 어떤 렌즈는 특정 작은 디테일에 집중하며, 또 다른 렌즈는 특정 색상만 강조할 수 있습니다. 멀티-헤드 어텐션은 이처럼 여러 렌즈(헤드)를 통해 입력 정보의 다양한 특징들을 동시에 포착하여 더욱 풍부한 표현을 만들어냅니다.

멀티-헤드 어텐션의 강력한 장점

그렇다면 멀티-헤드 어텐션은 구체적으로 어떤 장점들을 제공할까요?

  • 다양한 관점에서의 정보 포착 (Attending to different positions/subspaces): 이것이 MHA의 가장 핵심적인 장점입니다. 각 헤드는 입력 시퀀스의 서로 다른 부분 공간(subspace)이나 위치, 관계(예: 통사적 관계, 의미적 유사성, 문맥적 흐름 등)에 집중할 수 있습니다.
    • 예시: "그녀는 강아지에게 간식을 주었는데, 꼬리를 흔들며 좋아했다."라는 문장에서, 어떤 헤드는 '그녀'와 '주었는데'의 주어-동사 관계에, 다른 헤드는 '강아지'와 '꼬리'의 소유 관계에, 또 다른 헤드는 '간식'과 '좋아했다'의 인과 관계에 집중하여 정보를 추출할 수 있습니다. 싱글-헤드 어텐션에서는 이러한 다양한 관계들이 평균화되어 특정 관계가 덜 부각될 수 있습니다.
  • 풍부하고 복합적인 표현 학습: 여러 헤드가 각기 다른 측면에서 추출한 정보를 종합함으로써, 모델은 단일 헤드보다 훨씬 더 풍부하고 복잡한 데이터의 특징과 패턴을 학습할 수 있습니다. 이는 모델의 전체적인 표현력을 크게 향상시킵니다.
  • 병렬 처리 및 연산 효율성: 각 헤드는 전체 모델 차원을 나누어 더 작은 차원에서 연산을 수행합니다. 예를 들어 모델 차원이 512이고 헤드 수가 8개라면, 각 헤드는 64차원의 벡터를 처리하게 됩니다. 트랜스포머는 순환 신경망(RNN)과 달리 순차적인 계산에 제약받지 않으므로, 이러한 여러 헤드의 계산은 병렬적으로 효율적으로 처리될 수 있습니다.
  • 앙상블과 유사한 효과: 여러 독립적인 어텐션 메커니즘의 결과를 결합하는 방식은 마치 여러 모델의 예측을 평균 내거나 종합하는 앙상블(ensemble) 기법과 유사한 효과를 낼 수 있습니다. 이는 종종 모델의 일반화 성능을 높이고 학습을 안정시키는 데 기여합니다.
  • 학습 과정 안정화: (Request에 명시된 내용) 다양한 부분 공간에서 학습이 이루어지므로, 특정 방향으로 학습이 치우치는 것을 방지하고 전반적인 학습 과정을 안정화하는 데 도움을 줄 수 있습니다.

싱글-헤드 vs. 멀티-헤드: 한눈에 비교

구분 싱글-헤드 어텐션 (SHA) 멀티-헤드 어텐션 (MHA)
어텐션 헤드 수 1개 여러 개 (일반적으로 8개, 12개 등)
정보 처리 관점 단일 관점에서 정보 통합 여러 헤드가 각기 다른 관점 또는 부분 공간(subspace)에서
정보 처리
표현 학습 문맥 정보를 평균적으로 반영, 상대적으로 단순한 패턴 학습 가능 다양한 측면의 정보를 종합하여 더 풍부하고 복합적인 패턴 학습 가능
계산 방식 전체 차원에 대해 한 번의 어텐션 계산 입력 차원을 헤드 수만큼 나누어 각 헤드가 병렬적으로 어텐션 계산, 이후 결과 병합
주요 장점 구조가 상대적으로 간단함 다양한 관점에서의 정보 포착, 표현력 증대, 병렬 처리 용이,
앙상블 효과, 학습 안정화 기여 가능
잠재적 단점 복잡한 관계나 다양한 측면 동시 포착에 한계 구현이 상대적으로 복잡하고, 헤드 수 등 하이퍼파라미터 설정 필요
 
일부 연구에서는 특정 조건(예: 매우 깊은 네트워크, 긴 시퀀스 및 큰 배치 사이즈)에서는 잘 설계된 싱글-헤드 어텐션을 여러 층 쌓는 것이 멀티-헤드 어텐션과 유사한 성능을 보이거나 특정 상황에서 더 효율적일 수 있다는 주장도 있습니다. 하지만 전반적으로 멀티-헤드 어텐션은 트랜스포머 기반 모델에서 강력한 성능을 발휘하는 핵심적인 구성 요소로 널리 사용되고 있습니다.

마무리하며

멀티-헤드 어텐션은 트랜스포머가 언어의 복잡하고 다층적인 의미를 이해하는 데 핵심적인 역할을 수행합니다. 마치 여러 명의 전문가가 협력하여 문제를 해결하듯, 여러 개의 '어텐션 헤드'가 각자의 관점에서 정보를 분석하고 이를 종합함으로써, 모델은 이전에는 상상하기 어려웠던 수준의 문맥 이해 능력을 보여줍니다. 싱글-헤드 어텐션이 하나의 렌즈로 세상을 바라본다면, 멀티-헤드 어텐션은 다양한 초점과 필터를 가진 여러 개의 렌즈를 동시에 활용하여 훨씬 더 풍부하고 입체적인 그림을 그려내는 것과 같습니다. 


https://arxiv.org/abs/1706.03762

 

Attention Is All You Need

The dominant sequence transduction models are based on complex recurrent or convolutional neural networks in an encoder-decoder configuration. The best performing models also connect the encoder and decoder through an attention mechanism. We propose a new

arxiv.org

 

 
728x90