Attention 구조 비교: MHA vs MQA vs GQA

2025. 5. 30. 15:18AI빅데이터/Study

1. 개요

용어정의
MHA Multi-Head Attention: Q, K, V를 모두 여러 Head로 나눠 독립적으로 계산하는 전통적인 구조
MQA Multi-Query Attention: Q는 여러 개, K/V는 하나만 계산하고 모든 Head에서 공유
GQA Grouped-Query Attention: Q는 여러 개, K/V는 일부 Head끼리 공유 (MQA와 MHA의 절충형)
 

2. 구조 비교

항목MHA (기본형)MQA (속도 최적화형)GQA (절충형)
Query (Q) 각 Head마다 다름 각 Head마다 다름 각 Head마다 다름
Key (K) 각 Head마다 다름 공통 (1개만 사용) 그룹별 공유 (예: 8개 그룹)
Value (V) 각 Head마다 다름 공통 그룹별 공유
KV 캐시 크기 num_heads 만큼 1개 (8~16배 감소) num_groups 만큼
표현력 🟢 높음 🔴 가장 낮음 🟡 중간
속도/효율 🔴 느림 (메모리 병목 있음) 🟢 매우 빠름 (메모리 효율적) 🟡 빠름
 

3. 시각적 비교 (예: 8개의 Head 기준)

 
MHA:
  Head 0: Q0, K0, V0
  Head 1: Q1, K1, V1
  ...
  Head 7: Q7, K7, V7

MQA:
  Head 0: Q0, K_shared, V_shared
  ...
  Head 7: Q7, K_shared, V_shared

GQA (예: 4개 그룹):
  Group 0 (Heads 0-1): Q0, Q1, K0, V0
  Group 1 (Heads 2-3): Q2, Q3, K1, V1
  ...

4. 장단점 비교

 

항목  MHA  MQA  GQA
표현력 🔼 매우 높음 🔽 제한적 ◼️ 중간
추론 속도 🔽 느림 🔼 매우 빠름 ◼️ 빠름
메모리 효율 🔽 KV 캐시 큼 🔼 캐시 매우 작음 ◼️ 적당함
모델 크기 크고 무거움 가볍고 빠름 절충
훈련 적응성 대부분의 LLM MQA용 훈련 필요 일부 LLM에서 적용 가능
적용 사례 GPT, BERT 등 GPT-3.5 turbo, Mistral, 일부 LLaMA LLaMA-2, LLaMA-3 등 최신 모델들

 

5. 선택 기준

상황추천 방식

 

정확도 최우선 ✅ MHA
추론 속도 최우선 (예: 실시간 챗봇) ✅ MQA
속도와 성능의 균형이 필요할 때 ✅ GQA
 

6. 실제 사용 예

모델어텐션 구조

 

GPT-2, GPT-3 MHA
GPT-3.5 turbo, Mistral MQA
LLaMA-2, LLaMA-3, Falcon GQA
 

7. 결론 요약

 

비교 항목 MHA MQA GQA
계산 성능 느림 빠름 빠름
메모리 효율 낮음 매우 높음 중간
정확도 높음 낮음 중간
적용 대상 고정 성능 LLM 경량 추론 최신 대형 LLM (LLaMA 등)

'AI빅데이터 > Study' 카테고리의 다른 글

ADSP - 과목 3 - 데이터 분석  (0) 2024.02.23
ADSP - 과목 2 - 데이터 분석 기획  (0) 2024.02.19
ADSP - 과목 1 데이터의 이해  (0) 2024.02.16