Mixture of Experts는 무엇인가? 일부 Expert만 선택해 계산하는 이유

AI 모델의 성능을 높이는 대표적인 방법 가운데 하나는 모델의 크기를 키우는 것입니다.

더 많은 Parameter(파라미터·AI가 학습 과정에서 조정하는 내부 숫자값)를 사용하면 모델은 더 복잡한 언어 패턴과 지식을 학습할 수 있습니다.

하지만 모델이 커질수록 문제가 생깁니다.

질문 하나에 답하기 위해 거대한 모델 전체를 매번 계산한다면 GPU(Graphics Processing Unit·그래픽처리장치이지만 현재는 AI 연산에 핵심적으로 사용되는 반도체)의 연산량과 메모리 사용량, 전력 소비가 함께 늘어나기 때문입니다.

이 문제를 해결하기 위해 사용되는 대표적인 구조가 Mixture of Experts(전문가 혼합 구조·여러 전문 신경망 가운데 필요한 일부만 골라 사용하는 AI 구조), 줄여서 MoE입니다.

1. Mixture of Experts는 무엇인가

Mixture of Experts는 하나의 AI 모델 안에 여러 개의 Expert(전문가 신경망·특정 입력을 처리하도록 학습된 내부 신경망 블록)를 만들어 놓고 필요한 Expert만 선택해 계산하는 방식입니다.

예를 들어 AI 안에 64개의 Expert가 있다고 가정해보겠습니다.

사용자의 문장이 들어왔다고 해서 64개가 모두 동시에 작동하는 것은 아닙니다.

입력된 Token(토큰·AI가 글을 읽고 계산하는 기본 단위)을 분석한 뒤 가장 적합한 Expert 1개나 2개만 선택할 수 있습니다.

사람이 종합병원에 가는 것과 비슷합니다.

환자 한 명이 병원을 방문했다고 해서 내과, 안과, 피부과, 정형외과 의사가 모두 동시에 진료할 필요는 없습니다.

증상을 확인한 뒤 필요한 전문의에게 보내는 것이 훨씬 효율적입니다.

MoE도 이와 비슷하게 필요한 계산 경로만 선택합니다.

여기서 ‘일부만 사용한다’는 표현은 모델 전체에서 필요한 뉴런을 하나씩 무작위로 골라 쓴다는 뜻이 아닙니다. 일반적인 MoE 구조에서는 MoE가 적용된 층에 여러 Expert 블록이 있고 Router가 각 Token에 대해 그중 일부 Expert를 선택합니다. 즉 핵심은 전체 뉴런을 일일이 선별하는 것이 아니라 여러 Expert 계산 경로 가운데 필요한 일부를 활성화하는 구조에 가깝습니다.

2. Expert는 어떤 역할을 하는가

MoE에서 Expert라고 해서 사람처럼 정확한 직업이 정해져 있는 것은 아닙니다.

Expert는 AI 모델 내부에 있는 별도의 Neural Network(신경망·데이터 속 패턴을 학습하는 계산 구조)를 의미합니다.

학습 과정에서 각각의 Expert가 서로 다른 데이터 패턴을 많이 처리하면서 역할이 조금씩 나뉠 수 있습니다.

예를 들어 어떤 Expert는 Program Code(프로그램 코드·컴퓨터가 실행하는 명령문)와 관련된 입력을 상대적으로 많이 처리할 수 있습니다.

다른 Expert는 자연어 문장 구조나 숫자 패턴과 관련된 입력에 자주 선택될 수 있습니다.

하지만 개발자가 처음부터 1번은 영어, 2번은 수학, 3번은 코딩처럼 완전히 고정하는 구조라고 이해하면 안 됩니다.

AI가 학습하는 과정에서 내부 역할이 자연스럽게 분화되는 경우가 많습니다.

3. Router가 전문가를 선택한다

어떤 Expert를 사용할지 결정하는 핵심 부품이 Router(라우터·입력에 맞는 Expert를 골라주는 선택 장치)입니다.

사용자가 입력한 문장은 Token 단위로 나뉩니다.

Router는 각각의 Token을 분석해 어느 Expert에 보내는 것이 가장 적합한지 점수를 계산합니다.

예를 들어 Expert가 32개 있다고 가정해보겠습니다.

Router는 32개에 각각 점수를 부여한 뒤 가장 높은 점수를 받은 Expert를 선택합니다.

가장 높은 하나를 선택하는 방식을 Top-1 Routing(톱원 라우팅·가장 적합한 Expert 하나를 선택하는 방식)이라고 합니다.

가장 높은 두 개를 사용한다면 Top-2 Routing(톱투 라우팅·상위 두 Expert를 선택하는 방식)이라고 부를 수 있습니다.

이렇게 하면 전체 모델이 항상 계산에 참여하지 않아도 됩니다.

4. 전체 파라미터와 활성 파라미터는 다르다

MoE에서 반드시 구분해야 하는 것이 Total Parameters(전체 파라미터·모델이 보유한 전체 학습값)와 Active Parameters(활성 파라미터·실제 한 번의 추론에서 계산에 참여하는 학습값)입니다.

예를 들어 전체 모델에 5,000억 개의 Parameter가 있다고 가정해보겠습니다.

하지만 질문을 처리할 때 실제로 활성화되는 Parameter는 500억 개 정도일 수도 있습니다.

전체 모델이 가지고 있는 규모와 실제 계산에 사용되는 규모가 다른 것입니다.

그래서 MoE 모델을 비교할 때는 단순히 전체 Parameter 숫자만 봐서는 안 됩니다.

실제 추론 과정에서 몇 개의 Parameter가 활성화되는지를 함께 봐야 합니다.

5. Dense Model과 무엇이 다른가

Dense Model(밀집형 모델·입력을 처리할 때 모델의 주요 파라미터 대부분을 사용하는 구조)은 질문이 들어올 때 많은 Parameter가 계산에 참여합니다.

모델의 크기가 커질수록 일반적으로 연산량도 함께 증가합니다.

MoE는 다릅니다.

전체 Expert 숫자를 늘려 모델의 전체 용량을 키우면서도 한 번의 계산에서는 일부 Expert만 사용할 수 있습니다.

이를 Sparse Activation(희소 활성화·전체 신경망 중 일부만 선택적으로 작동시키는 방식)이라고 합니다.

Expert가 16개에서 64개로 늘어나도 Token마다 2개만 작동하도록 설계할 수 있습니다.

이것이 MoE가 초대형 AI 모델을 만드는 데 많이 활용되는 이유입니다.

6. MoE가 AI 기업에 중요한 이유

대형 AI 서비스에서는 하루 동안 처리하는 Token 수가 엄청납니다.

사용자가 수백만 명이면 Token 처리량은 수십억 개 이상으로 증가할 수 있습니다.

Token 하나를 처리하는 계산량을 조금만 줄여도 전체 GPU 사용량과 전력 소비에서 큰 차이가 발생합니다.

MoE를 사용하면 모델 전체 규모는 크게 유지하면서 실제 계산량은 상대적으로 줄일 수 있습니다.

이를 Computational Efficiency(연산 효율·같은 작업을 더 적은 연산으로 처리하는 능력)라고 볼 수 있습니다.

AI 기업 입장에서는 같은 수의 GPU로 더 많은 사용자를 처리할 가능성이 생깁니다.

7. MoE라고 무조건 빠른 것은 아니다

MoE는 계산량을 줄일 수 있지만 항상 빠른 것은 아닙니다.

Expert 전체의 Weight(가중치·AI가 학습을 통해 얻은 숫자값)는 어딘가에 저장돼 있어야 합니다.

모델 전체가 너무 크면 하나의 GPU에 들어가지 않습니다.

따라서 여러 GPU에 Expert를 나눠 배치해야 합니다.

이때 한 GPU에서 처리하던 Token이 다른 GPU에 있는 Expert로 이동해야 할 수 있습니다.

이 과정에서 Communication Overhead(통신 오버헤드·장치끼리 데이터를 주고받느라 추가로 발생하는 시간과 자원)가 발생합니다.

계산량은 줄었지만 데이터 이동 시간이 길어진다면 전체 속도가 생각보다 빨라지지 않을 수 있습니다.

8. Load Balancing이 중요한 이유

MoE에서는 Load Balancing(부하 균형·작업이 특정 장치에 몰리지 않도록 골고루 나누는 기술)이 매우 중요합니다.

예를 들어 Expert가 64개 있는데 Router가 대부분의 Token을 1번과 2번 Expert로만 보낸다고 가정해보겠습니다.

해당 Expert를 담당하는 GPU에는 작업이 몰립니다.

반면 다른 GPU는 거의 놀게 됩니다.

도로가 20개 있는데 차량이 두 개 도로에만 몰리는 것과 비슷합니다.

그래서 MoE 학습에서는 Router가 Expert를 적절히 분산해 사용할 수 있도록 조정합니다.

전체 Expert 숫자보다 실제로 얼마나 균형 있게 활용되는지가 중요할 수 있습니다.

9. Expert Parallelism도 중요하다

Expert를 여러 GPU에 나눠 배치하는 방식을 Expert Parallelism(전문가 병렬 처리·여러 Expert를 여러 GPU에 나눠 동시에 처리하는 방법)이라고 합니다.

이 방식은 매우 큰 MoE 모델을 여러 GPU에서 실행할 수 있게 해줍니다.

하지만 GPU끼리 데이터를 빠르게 주고받아야 합니다.

그래서 Interconnect(인터커넥트·GPU나 서버를 고속으로 연결하는 통신 장치)와 Network Bandwidth(네트워크 대역폭·한 번에 전송할 수 있는 데이터의 양)가 중요합니다.

GPU 자체가 아무리 빨라도 데이터를 기다리느라 쉬고 있다면 시스템 전체 성능은 떨어집니다.

이 때문에 AI 데이터센터에서는 GPU와 HBM뿐만 아니라 고속 네트워크와 스위치, 광통신 기술까지 함께 중요해지고 있습니다.

10. MoE의 핵심은 선택적으로 계산하는 AI다

Mixture of Experts는 AI 모델을 단순히 작게 만드는 기술이 아닙니다.

오히려 모델 전체 크기는 크게 유지하면서 필요한 부분만 선택적으로 계산하는 방식입니다.

앞으로 AI 모델을 비교할 때는 Parameter 숫자 하나만 보면 안 됩니다.

Total Parameters뿐 아니라 Active Parameters, Expert 숫자, Routing 방식, GPU 간 데이터 이동량까지 함께 봐야 합니다.

특히 AI 서비스가 수억 명 규모로 확대되면 Token 하나를 처리하는 데 필요한 작은 비용 차이도 전체 데이터센터에서는 엄청난 차이로 커질 수 있습니다.

결국 MoE의 핵심은 거대한 AI를 만드는 것에서 끝나지 않습니다.

거대한 AI 안에서 필요한 부분만 얼마나 정확하고 빠르게 골라 사용할 수 있는지가 핵심입니다.

AI 모델 경쟁이 단순한 크기 경쟁에서 Efficiency(효율성·같은 성능을 더 적은 자원으로 달성하는 능력) 경쟁으로 이동하면서 MoE의 중요성도 계속 커지고 있습니다.