AI 모델 개발: 구조/방법 – Switch Transformer
ㅁ 구조/방법
1. Switch Transformer
ㅇ 정의:
구글에서 제안한 혼합전문가 모델(MoE)의 변형으로, 여러 전문가(Expert) 중 하나만 활성화하여 연산 효율을 극대화한 대규모 언어 모델 구조.
ㅇ 특징:
– 기존 MoE는 여러 전문가를 동시에 활성화하지만, Switch Transformer는 입력 토큰마다 하나의 전문가만 선택(Switch)하여 연산량을 줄임.
– 라우팅 네트워크가 각 토큰을 담당할 전문가를 결정.
– 파라미터 수는 많지만, 실제 연산되는 파라미터는 적어 메모리와 속도 효율성이 높음.
– 학습 시 전문가 간 부하 불균형 문제를 해결하기 위해 Load Balancing Loss를 사용.
ㅇ 적합한 경우:
– 초대규모 언어 모델을 효율적으로 학습/추론해야 하는 경우.
– 제한된 GPU 메모리 환경에서 대규모 파라미터 모델을 운영해야 하는 경우.
ㅇ 시험 함정:
– “Switch Transformer는 모든 전문가를 동시에 활성화한다” → X (하나만 활성화)
– “Switch Transformer의 파라미터 수는 작다” → X (많지만 연산되는 수가 적음)
– “Load Balancing Loss는 전문가 선택을 균등하게 하기 위한 목적” → O
ㅇ 시험 대비 “패턴 보기” 예시:
– O: Switch Transformer는 입력 토큰마다 하나의 전문가만 활성화하여 효율성을 높인다.
– X: Switch Transformer는 모든 전문가를 동시에 활성화하여 정확도를 높인다.
– O: 전문가 간 부하 분산을 위해 추가적인 손실 함수를 적용한다.
– X: Switch Transformer는 라우팅 네트워크 없이 전문가를 무작위로 선택한다.
ㅁ 추가 학습 내용
Switch Transformer는 전문가 선택 시 Top-1 라우팅을 적용하여 연산 효율성을 극대화하는 구조이다. 이는 한 번에 하나의 전문가만 활성화하므로 계산량이 줄어드는 장점이 있지만, 전문가 활용의 다양성이 감소하는 단점이 있다. 일반적인 MoE(Mixture of Experts) 구조와 비교하면, MoE는 Top-k 라우팅을 사용하여 여러 전문가를 병렬로 활용하는 경우가 많으며, 이에 따라 연산량이 더 많지만 부하 분산이 보다 고르게 이루어진다. Switch Transformer의 라우팅 네트워크는 softmax를 통해 전문가별 확률 분포를 계산한 후 argmax로 하나의 전문가를 선택한다. 학습 과정에서는 특정 전문가에 작업이 몰리는 불균형 문제가 발생할 수 있으며, 이를 해결하기 위해 Load Balancing Loss를 도입하거나 Capacity Factor를 설정하여 각 전문가의 처리 용량을 제한한다. 실제 응용 사례로는 T5 모델과 GPT 계열 모델 확장에서 Switch Transformer 구조가 활용된 바 있으며, 시험에서는 이러한 적용 분야를 묻는 문제도 출제될 수 있다.