이 요약은 AI가 원문을 분석해 생성했습니다. 정확한 내용은 원문 기준으로 확인하세요.
핵심 요약
토큰 라우팅은 단순히 전문가를 선택하는 것을 넘어, 전문가 용량 제한(Capacity)과 토큰 드롭(Dropping) 메커니즘을 통해 연산 효율성과 모델 성능 사이의 균형을 맞추는 정교한 과정이다.
배경
최근 대규모 언어 모델(LLM)에서 널리 사용되는 Mixture of Experts(MoE) 아키텍처의 효율성을 결정짓는 핵심 요소인 토큰 라우팅 메커니즘을 다룹니다.
대상 독자
MoE 모델의 내부 동작 원리를 깊이 있게 이해하고 직접 구현해보고 싶은 AI 엔지니어 및 연구자
의미 / 영향
이 영상은 MoE 모델의 내부 동작을 수식과 코드로 완벽히 분해하여 제공함으로써, 개발자가 Mixtral이나 Llama 3 MoE와 같은 최신 모델의 성능을 최적화하거나 커스텀 MoE 레이어를 설계하는 데 실질적인 가이드를 제공한다. 특히 전문가 용량과 토큰 드롭 메커니즘에 대한 이해는 대규모 모델의 추론 비용과 정확도 사이의 균형을 맞추는 실무적인 통찰을 준다.
챕터별 상세
02:36
MoE 레이어의 구조와 기본 개념
Transformer 아키텍처 내에서 기존의 MLP(Multi-Layer Perceptron) 레이어를 여러 개의 전문가(Expert) 레이어로 대체하는 MoE 구조를 설명했다. 각 토큰은 모든 전문가를 거치지 않고 라우팅 알고리즘에 의해 선택된 일부 전문가에게만 전달된다. 이를 통해 모델의 전체 파라미터 수는 늘리면서도 실제 추론 시 활성화되는 파라미터 수를 제한하여 연산 효율성을 확보했다.
- •MLP 레이어를 여러 개의 독립적인 전문가 레이어로 복제하여 구성했다
- •입력 토큰별로 필요한 전문가만 활성화하는 Sparsity 개념을 도입했다
- •연산 예산(Compute Budget)을 유지하면서 모델 용량을 확장하는 핵심 기법이다
08:31
라우터 로짓(Router Logits) 계산 과정
입력 토큰 임베딩을 전문가 수만큼의 차원으로 투영하는 선형 레이어(Linear Layer)를 통해 라우터 로짓을 생성했다. 이 과정에서 Bias는 단순화를 위해 생략할 수 있으며, 결과값은 각 토큰이 특정 전문가와 얼마나 적합한지를 나타내는 점수가 된다. PyTorch의 torch.nn.Linear를 활용하여 구현하며, 입력 텐서의 형태는 [Batch Size, Num Tokens, Embedding Dim]에서 [Batch Size, Num Tokens, Num Experts]로 변환되었다.
- •토큰 임베딩을 전문가 공간으로 매핑하는 Linear Projection을 수행했다
- •결과값인 Logits은 각 전문가에 대한 토큰의 선호도를 나타낸다
- •학습 가능한 라우터 가중치 행렬이 이 할당 과정을 결정한다
10:54
Top-K 선택과 희소성(Sparsity) 구현
계산된 로짓 중 상위 K개의 전문가만 선택하는 Top-K Selection 과정을 시연했다. 선택되지 않은 전문가의 로짓은 음의 무한대(-inf)로 마스킹 처리하여 Softmax 계산 시 확률값이 0이 되도록 유도했다. 이를 통해 모델은 전체 전문가 중 가장 적합한 소수의 전문가에게만 연산을 집중하며, 이는 MoE의 핵심적인 효율성 원천이 되었다.
- •torch.topk 함수를 사용하여 상위 K개의 전문가 인덱스와 점수를 추출했다
- •선택되지 않은 전문가를 마스킹하여 연산에서 제외하는 Sparsity를 구현했다
- •일반적으로 K=1 또는 K=2 설정이 가장 많이 사용된다
14:39
전문가 용량(Expert Capacity)과 슬롯 선택
각 전문가가 한 번에 처리할 수 있는 토큰의 최대 개수인 전문가 용량(Expert Capacity) 개념을 도입했다. Capacity Factor를 사용하여 전문가당 할당 가능한 슬롯(Slot) 수를 계산하며, 이는 하드웨어 연산의 균형을 맞추기 위해 필수적이다. 토큰들은 자신의 우선순위에 따라 전문가의 빈 슬롯을 차지하게 되며, 이 과정은 누적 합계(Cumulative Sum)를 통해 관리되었다.
- •Capacity Factor를 통해 전문가별 처리 가능한 토큰 슬롯 수를 결정했다
- •토큰의 우선순위에 따라 전문가 내 슬롯 위치를 할당했다
- •하드웨어 가속기(GPU/TPU)의 연산 효율을 위해 고정된 크기의 배치를 유지한다
16:51
토큰 드롭(Token Dropping) 메커니즘
특정 전문가에게 너무 많은 토큰이 몰려 용량을 초과할 경우 발생하는 토큰 드롭 과정을 상세히 다뤘다. 슬롯 번호가 Capacity를 초과하는 토큰은 유효하지 않은 할당으로 간주되어 마스킹 처리되었다. 드롭된 토큰은 해당 레이어의 전문가 연산을 거치지 않게 되며, 이는 모델 성능에 영향을 줄 수 있으므로 적절한 Capacity Factor 설정이 중요하다는 점을 확인했다.
- •전문가 용량을 초과하여 할당된 토큰은 연산에서 제외(Drop)되었다
- •불리언 마스크(Boolean Mask)를 생성하여 유효한 할당만 남기는 과정을 코드로 구현했다
- •토큰 드롭은 연산 속도와 모델 정확도 사이의 트레이드오프 관계에 있다
24:35
최종 가중치 행렬 및 전문가 배치 구성
선택된 전문가, 할당된 슬롯, 그리고 정규화된 라우팅 가중치를 결합하여 최종 연산 행렬을 구축했다. 3차원 또는 4차원 텐서 연산을 통해 각 전문가가 처리해야 할 토큰들을 모으는(Gather) 과정을 수행했다. 최종적으로 각 전문가는 자신에게 할당된 토큰 배치에 대해 MLP 연산을 수행하고, 그 결과에 라우팅 확률을 곱하여 원래의 토큰 순서대로 복원했다.
- •전문가, 슬롯, 토큰 정보를 통합한 최종 가중치 행렬을 생성했다
- •정규화된 가중치를 전문가 출력값에 곱해 최종 출력을 산출했다
- •텐서 Permutation과 Matrix Multiplication을 통해 효율적인 배치를 구성했다
실무 Takeaway
- MoE 아키텍처는 Router를 통해 입력 토큰을 가장 적합한 Expert에게 동적으로 할당함으로써 거대한 파라미터 규모에서도 효율적인 추론을 가능하게 한다.
- Top-K Selection 과정에서 선택되지 않은 전문가를 -inf로 마스킹하고 Softmax를 취하는 방식은 미분 가능한 라우팅 가중치를 생성하는 표준적인 방법이다.
- Expert Capacity 제한은 하드웨어 연산 효율을 위해 필수적이지만, 특정 전문가에 토큰이 쏠릴 경우 토큰 손실(Drop)이 발생할 수 있음을 인지해야 한다.
- 최종 연산은 전문가별로 할당된 토큰들을 배치 처리한 후 라우팅 확률을 가중치로 곱해 합산하는 방식으로 이루어진다.
AI 분석 전체 내용 보기
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
원문 발행 2026. 01. 23.수집 2026. 02. 21.출처 타입 YOUTUBE
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.