• Turing Post Korea
  • Posts
  • Topic #37: 'MoE 2.0'이란 무엇인가?

Topic #37: 'MoE 2.0'이란 무엇인가?

현재 MoE 아키텍처의 재검토, 그리고 S'MoRE, Symbolic-MoE 등 차세대 AI를 위한 새로운 MoE 기법의 개요

글을 시작하며

‘변화’, 적응하기 쉽지 않은 것이죠 ^.^. Image Credit: Pinterest

아무리 세상 강력한, 엄청난 기술이라도, ‘트렌드가 바뀌고 새로운 환경에 놓이게 된다면’, 그 트렌드에 맞춰 재검토를 해야 합니다.

어쩌면 AI와 관련된 기법들 중에서, 특히 최근 수없이 많이 언급되고 있는, MoE (Mixture-of-Experts; 전문가 혼합) 기법은, 스케일링이 잘 되는 AI 시스템을 구축할 수 있도록 도와주는, 매력적인 프레임웍입니다. 하드웨어적인 부담을 줄이면서도 수조 개의 파라미터를 가진 모델 등 거대한 모델을 다룰 수 있게 해 줘서, 더더욱 주목을 받고 있죠. MoE가 특별히 강력한 것은, ‘입력값에 맞춰서 전문가를 다이나믹하게 선택’할 수 있게 해 주기 때문인데, 이런 방식 덕분에 특정한 다운스트림 작업이나 하위 도메인의 영역에 ‘특화’를 시킬 수 있습니다.

MoE는 이미 많은 AI 시스템의 핵심 구조로 자리를 잡고 있어요:

  • DeepSeek-V3는 MoE 구조를 이용해서 6,710억 개의 파라미터를 활용

  • 구글의 Gemini 1.5 Pro는 희소 MoE 트랜스포머 (Sparse MoE Transformer)를 사용해서 백만 토큰에 달하는 컨텍스트를 효율적으로 처리

  • Mistral의 Mixtral 8×22B는 각각의 레이어마다 8개의 전문가에 토큰을 라우팅해서 비용, 속도 면에서 Dense한 모델보다 우수한 성능을 보여줌

  • 20조 토큰으로 훈련한 3,250억 파라미터 MoE인 알리바바의 Qwen2.5-Max는 뛰어난 추론 및 코딩 능력을 보여주면서 Chatbot Arena에서 상위권에 랭크

  • 메타의 Llama 4는 멀티모달 및 다국어 작업용으로 만들어진 4,000억 파라미터의 Maverick과 2조 파라미터의 Behemoth를 포함한 모델 전반에 걸쳐서 MoE 아키텍처를 활용

저희 튜링 포스트 코리아의 AI 101 시리즈 첫 에피소드가 바로 MoE에 대한 것이었는데요. 그 후로 1년이 채 지나지 않았지만, 오늘은, 대부분의 구독자님들이 아직 익숙하지 않으실, 현재 한참 논의되고 있는 MoE의 새로운 트렌드와 관점에 대해서 이야기를 해 볼까 합니다. 왜, 어떤 관점에서 MoE가 다시 주목받고 조명되고 있을까요?

지금, 전세계적으로 많은 AI 연구소, 그리고 AI 산업계에서 이야기되는 AI 로드맵 중에 ‘차세대 MoE 디자인’은 빠지지 않는 중요한 토픽입니다. 최근에만 해도 몇 개의 새로운 논문이 발표되었는데요:

  1. S’MoRE (Structural Mixture of Residual Experts)

    이건 4월에 메타에서 발표한 논문인데, LoRA 스타일의 Low Rank 어댑터를 계층적인 MoE 트리와 결합하는 방법을 보여줍니다. 밀집형 (Dense) 모델이 따라가기 힘든, 지수적인 수준의 ‘구조적 유연성’을 보여줍니다.

  2. Symbolic-MoE (노스캐롤라이나 대학, Chapel Hill)

    MoE를 그래디언트 공간으로부터 순수한 언어 공간으로 이동시켜서, GPT-4o-mini보다 더 높은 정확도로 수행하고, 배치 추론 (Batched Inference) 덕분에 단일한 GPU 위에서 16개의 전문가를 실행할 수 있습니다.

이런 혁신적인 기법들을 통해서, 차세대 MoE 모델의 발전 방향이 어떤 곳을 향하고 있는지, 그리고 왜 이런 기법들이 특별한지, 그리고 왜 ‘스케일링이 잘 되는 오픈소스 모델’을 만들기 위한 가장 명확한 경로를 보여주는지, 한 번 함께 살펴보겠습니다.

오늘 에피소드에서는 아래와 같은 내용을 다룹니다:

S’MoRE (Structural Mixture of Residual Experts)

스모어 (S’more) 쿠키. 바삭하고도 쫀득하고 맛있어서, 먹는 사람마다 더 달라고 한다고 해서 이름이 붙었다고 (본문 내용과는 무관). Image Credit: SMEG Korea

지난 4월 8일, 메타 AI에서 발표한 내용은, 그야말로 ‘효과적으로 LLM을 훈련시키고 파인튜닝을 어떻게 할까’라는 질문에 대한 새로운 대답이었습니다. 바로, AI 영역의 기본 기술셋이라고 불러도 과언이 아닐 두 가지의 아주 유명한 기법, LoRA (Low-Rank Adaptation), 그리고 MoE (Mixture-of-Experts)를 합친 겁니다. 그 결과로 등장한 것이 바로 S’MoRE (Structural Mixture of Residual Experts) 입니다.

이 기법은, LoRA 스타일의 Low-Rank 어댑터, 그리고 계층적인 MoE 트리를 융합하는데, 이렇게 해서 두 가지 기법의 이점을 합치겠다는 거예요 - LoRA의 효율성, 그리고 MoE의 유연성과 성능, 이런 이점들이요. 한 번 이 기법이 어떻게 작동하는지 살펴보려고 합니다.

그런데 그 전에, LoRA에 대해서 간단히 복습을 한 번 할까요?

LoRA 개념도. Image Credit: https://kim95175.tistory.com/28

LoRA는 LLM을 파인튜닝할 때의 계산 부담을 줄여주는 효율화 기법인데요. 모델이 훈련한 다음에 설정되는 수백만, 수십억 개까지 이르는 파라미터를 모두 변경하지 않고 동결시킨 가운데, ‘모델 옆에’ 모델의 동작을 조정하는 역할을 하는 작은 계층 (저랭크 행렬의 형태로)을 추가해서 활용합니다. 굳이 비유를 한다면, 전통적인 파인튜닝이 ‘집 전체를 재건축’하는 개념이라면, LoRA는 ‘기존의 집은 그대로 두고, 필요한 부분에만 작게 확장 모듈을 추가’하는 개념으로 보면 되겠습니다.

S’MoRE의 작동 방식

S'MoRE 기법으로 만들어진 시스템은 아래와 같이 작동합니다:

  • 모델의 ‘전문가 (Experts)’를 잔차(Residuals)라고 불리는 작은 레이어들로 조정 (Adjustments)해서 분해합니다. 각각의 잔차는 저랭크 업데이트 기법을 사용해서 입력값을 수정합니다.

  • 이 잔차들은, 마치 나무의 가지처럼 트리 구조로 연결되어 있어서 모델이 정보를 어떻게 라우팅할지 결정할 수 있습니다.

  • 라우터는 각 토큰을 다이나믹하게 선택된 ‘잔차 전문가 (Residual Expert)’ 서브 트리로 보냅니다. 그러면, S'MoRE는 그 트리를 통해서 따라가면서 출력값을 계산합니다.

이 ‘트리’를 통한 경로를 잘 혼합하고 매칭해서, S'MoRE는 실제보다 훨씬 더 많은 전문가 (Experts)를 가진 것처럼 작동을 할 수 있는 겁니다. S'MoRE는 작은 모듈을 레이어 전체에서 재사용해서, 서로 다른 전문가 경로가 동일한 구성 요소를 공유할 수 있게 합니다. (아래 왼쪽 이미지 참조).

Image Credit: S’MoRE 오리지널 논문

S'MoRE의 라우팅에 대해서 조금만 더 알아볼께요.

S’MoRE의 라우팅은 ‘하향식의 단계별 프로세스’로, 각각의 단계에서 이뤄지는 선택의 결과를 바탕으로, 아래 층 레이어의 다음 선택을 가이드합니다. 라우터는:

  • 토큰 자체 (임베딩)

  • 상위 레이어의 잔차 (Residual)에서 오는 Key - ‘Parent Helper’라고도 부름

를 ‘들여다보는’ 작은 신경망 - MLP 입니다 - 을 사용합니다.

라우터는 이 정보를 사용해서, ‘이전에 어떤 부모 (Parent)가 선택되었는지를 바탕으로 해서, 어떤 하위 레벨의 가이드 (Children Helper)를 활성화하는게 가장 합리적인지를 계산’하게 됩니다.

이런 구조로, 소수의 작은 행렬만 인스턴스화 하면서도, 수십 개의 전문가를 가진 것 같은 능력을 확보하게 되는 것이죠.

자, 그렇다면 실제 보여주는 성능과 결과는 어떨까요?

S’MoRE의 성능

파라미터 수가 같더라도, S’MoRE는 기존 기법보다 훨씬 더 유연하고 효과적이고, LLM을 더 잘 파인튜닝하게끔 도와줍니다. S’MoRE는 이미 여러 종류의 작업에 대해서, 그리고 여러 종류의 모델 - LLaMA-3의 변형 모델 포함 - 에서 테스트를 마쳤는데, 아래의 두 가지 관점에서 기존의 최고 모델들을 능가했습니다:

  • 최대 2.1%까지도 높은 정확도

  • 작은 저랭크 행렬 (Low-Rank Matrices)과 경량의 프로젝션 레이어 (Projection Layer)만 훈련하기 때문에, 약 16% 적은, 훈련 가능한 파라미터를 사용

그리고, 그 외에도 S’MoRE의 다양한 장점들이 있습니다:

  • ‘구조적인 유연성’

    트리 같은 다층 구조를 통해서 모델이 ‘작은 전문가 조각’들을 다양한 조합으로 재결합, 재사용할 수가 있다고 말씀드렸죠. 결국, 의미있는 전문가 조합의 수가 기하급수적으로 증가하게 됩니다.

Image Credit: S’MoRE 오리지널 논문

  • 계산의 오버헤드가 낮음

    S'MoRE의 총 계산 비용은 LoRA와 거의 동일해서, 라우팅 오버헤드가 최소화되면서 어떨 때는 보통 기법 대비 5~10%에 불과한 정도일 때도 있습니다. 심지어는, 2~3개 레이어의 전문가 계층을 사용할 때도 효율성이 좋습니다.

  • 확장이 쉬운 설계

    더 많은 레이어를 추가할 때, 적은 추가 비용 (단 1-7%)으로도 성능이 곧잘 향상됩니다. 예를 들어서, 2개 레이어에서 3개 레이어로 전환할 때, S'MoRE는 파라미터의 수를 27% 줄이는 가운데에서도 더 높은 정확도를 보여줬습니다.

  • 유연한 라우팅 메커니즘

    S'MoRE는 밀집형 (Dense), 노이즈 상위-k(Noisy Top-k), 스위치 트랜스포머 등 여러 형태의 게이트를 지원합니다.

그렇지만, 물론 고려해야 할 몇 가지 제약 사항도 있죠.

S’MoRE의 한계점

S’MoRE의 한계점으로 아래와 같은 점에 주의해야 합니다:

  • 아키텍처의 복잡성이 높아요

    S'MoRE가 아무래도 더 복잡한 라우팅 시스템과 다층의 구조로 만들어져 있기 때문에, 단순한 LoRA나 평면적인 MoE 모델과 비교해서는 구현, 조정이 어려울 수 있습니다.

  • 라우터로 인해서 계산 및 메모리 비용이 증가할 수 있어요

    특히, 라우팅이 상대적으로 더 중요해지는 ‘저랭크 세팅’에서 그럴 가능성이 높습니다.

  • 아직 충분히 테스트되었다고 하기는 힘들어요

    더 거대한 모델, 그리고 실제 환경의 애플리케이션에서 어떤 성능을 보여줄지, 어떤 문제를 드러낼지 충분히 테스트되지는 않은 상태입니다.

  • 하이퍼파라미터 검색과 관련한 개발 비용이 증가할 수 있어요

    레이어를 깊게 한다면, 레이어의 조정을 위해서 하이퍼파라미터 검색을 한층 더 신중하게 해야 될 수도 있고, 이는 더 높은 개발 비용으로 연결됩니다.

어쨌든, 이런 다양한 제약 조건이 있을 수 있지만, S’MoRE의 ‘구조적 유연성’ 그 자체는 MoE의 차세대 발전 방향임에는 분명합니다. 모델의 일부, 그 ‘조각’들을 얼마나 스마트하게 배열하고 사용할 것인지가 중요한 토픽이라는 것이고, S’MoRE가 바로 더 대형의, 더 비싼 모델이 아니더라도 LLM이 특정 작업을 잘 하기 위해서 파인튜닝을 더 잘 할 수 있게 하는 핵심 기법이 될 수 있다는 겁니다.

S’MoRE에 대해서 알아봤는데요. 그렇다면 Symbolic-MoE는 뭘까요?

Symbolic-MoE

전통적인 MoE 접근법, 이 기법은 ‘전문화된 모델 그룹’을 사용해서 각자의 강점을 결합할 수 있게 해 주죠. 그렇지만, 처음부터 학습을 다시 해야 하는데서 오는 비용 문제, 그리고 그다지 현실적이지 못하다는 문제 등이 있습니다.

노스캐롤라이나 대학에서 지난 3월 7일 발표한 Symbolic-MoE는, 이렇게 지속적으로 재학습을 해야 하는 과정을 피하면서도 여러 모델의 출력값을 효율적으로 혼합하도록 해 주는 기법입니다.

이 방법은, 전체적인 ‘작업 그 자체’보다는 ‘개별적인 질문’의 내용에 초점을 맞춰서, 각각의 질문에 대해서 특정한 스킬셋을 기반으로 하는 최고의 전문가를 선택한다고 설명하겠습니다. 예를 들어서, 질문이 대수학에 관한 것이라면 대수학 전문가를 선택하고, 확률에 관한 것이라면 그 관련 지식과 기술을 가진 전문가를 선택하는 거죠. 이런 접근 방법으로, 쿼리를 그룹화하고, 선택된 각 모델에 대해서 ‘단일한 배치 (Single Batch)’로 모든 쿼리를 실행합니다. 따라서, Symbolic-MoE에서는 모델을 ‘반복적으로’ 로드할 필요가 없으니까, 속도가 더 빠르고 리소스에 대한 요구 사항이 적습니다.

Symbolic-MoE는 단일 GPU에서 최대 16개의 모델을 처리할 수 있고, 필요한 경우에는 여러 개의 GPU에 걸쳐서 스케일링할 수도 있습니다.

Image Credit: Symbolic-MoE 오리지널 논문

그런데, 왜 ‘Symbolic’이라는 이름을 붙였을까요? 이렇게 한 번 생각해 보면 어떨까 합니다.

전통적인 MoE 프레임웍이 ‘모델의 파라미터 공간’에서 운용하는 관점이라고 한다면, Symbolic-MoE 기법은 모델이 뱉어내는 ‘출력의 공간’에 초점을 맞추는 관점이라는 거죠. 즉, 텍스트를 기반으로 한 추론을 해서, 다양한 모델의 응답을 통합하는 방식입니다 - 모델의 전문성을 표현하는게 ‘자연어 형태’로 되어 있는 ‘상징적’ 표현이라는 겁니다. 어떤 면에서는, Symbolic-MoE는 구글의 제프 딘이 ‘AI의 미래다’라고 이야기했던 ‘모듈식 아키텍처’를 떠올리게 하기도 합니다.

자, 그럼 기술적인 관점에서 Symbolic-MoE의 작동 방식을 좀 알아보도록 하죠.

Symbolic-MoE의 작동 방식

Symbolic-MoE는, 1) 전처리 단계, 그리고 2) 최종 답변의 생성을 포함하는 추론 단계, 이렇게 두 개의 단계로 작동합니다. 각 단계를 한 번 살펴보겠습니다:

  1. 전처리 (Preprocessing)

어떤 일이든, 문제의 해결을 시도하기 전에, 환경을 세팅해야겠죠.

Symbolic-MoE도 마찬가지입니다. 소규모의 밸리데이션 셋 문제들, 그리고 사용할 수 있는 모델의 풀 (Pool)을 사용하는데, 각각의 모델이 예를 들어서 ‘기하학’, ‘생물학’ 등 어떤 분야에 강한지를 알려주는 ‘모델 프로파일’을 만들기 위해서 이 밸리데이션 셋에서 각각의 모델을 실행하는 거죠.

예를 들어서, A라는 모델의 프로파일은 ‘이 모델을 대수학에는 강하지만 화학에는 썩 좋은 성능을 보여주지 못한다’라는 식으로 설명을 할 수 있는 겁니다.

그리고, ‘키워드 LLM (Keyword LLM)’이라는 요소는 ‘수학에 있어서의 대수학, 미적분학’ 같이, 각각의 질문과 대응하는 영역에 필요한 핵심적인 기술을 식별하구요.

다음으로, Symbolic-MoE는 다양한 전문가의 답변을 잘 결합해서 ‘최종적인 고품질의 응답’으로 만들어내기 위한 ‘Aggregator’를 선택하게 됩니다.

Image Credit: Symbolic-MoE 오리지널 논문

  1. 추론 (Inference)

자, 그렇다면 이제 문제를 풀어야겠죠.

새로운 문제가 들어오면, Symbolic-MoE는 이미 만들어 놓은 ‘모델 프로필’을 살펴보고, 문제 해결에 필요한 기술이 어떤 건지를 기준으로 가장 적합한 전문가를 파악하게 됩니다.

이 과정을 통해서 각각의 모델에 대해서 적합성 점수 (Suitability Score)가 계산되고, 어떤 모델을 작업에 투입할지 결정하는데 사용됩니다. 이 과정이 다이나믹하게 바뀌는데, 즉 각각의 질문이 갖고 있는 특정한 요구 사항에 따라서 서로 다른 전문가 집합을 할당하게 됩니다.

그리고, Global Competency라는 개념으로, 주어진 문제에 대해서 선택된 모델이 ‘필요한 기술에서 좋은 성능’을 보여주는 것에 그치지 않고 ‘전체적으로도 균형잡힌, 강력한 성능’을 보여줄 수 있도록 보장을 합니다.

자, 일단 선택된 전문가들은, CoT (Chain-of-Thought) 응답을 생성해서 추론의 과정을 만들어 냅니다. 그리고 Aggregator가 이 추론의 결과물 - 출력값 - 을 받아서 최종적인 답변으로 결합하는 것이죠.

이런 흐름의 접근 방식으로, 모델과 왔다갔다 하면서 교신을 할 필요가 없도록 해서 프로세스를 더 빠르게, 효율적으로 진행할 수 있게 합니다.

특히, Symbolic-MoE는 작업의 속도를 높이기 위해서 배치 추론 전략 (Batch Inference Strategy)이라는 특별한 방법을 사용하는데요. 바로, 각각의 질문바다 모델을 반복적으로 로드, 언로드하지 않고, 같은 전문가 그룹이 필요한 질문들을 그룹화해서 한 번에 처리하는 겁니다 - 각각의 모델이 배치 당 한 번씩만 로드되는 거죠. 자연스럽게, 모델 로딩에 소요되는 시간도 줄어들고, GPU 메모리 사용량을 최적화하는데도 도움이 됩니다.

Symbolic-MoE의 성능과 장점

각각의 쿼리에 가장 적합한 전문가 (Expert)와 최고의 애그리게이터 (Aggregator)를 자동적으로 선택하고, 최적화를 위해서 배치 처리 (Batch Inference)라는 접근 방식을 사용해서, Symbolic-MoE는 더 복잡한 멀티 에이전트 형태의 구축을 시도하는 다른 시스템들보다 뛰어난 성능을 보여주면서도 더 간단하고 효과적인 솔루션을 제공합니다. Symbolic-MoE가 보여준 구체적인 성과는 다음과 같습니다:

  • 성능의 향상

    Symbolic-MoE는 MMLU-Pro, AIME, GPQA, MedMCQA 같은 벤치마크에서 최고 수준의 성능을 보여주는 멀티 에이전트 방식보다 평균 8.15% 더 높은 성능을 보입니다. 심지어 GPT-4o-mini보다 더 높은 정확도를 보여줍니다.

Image Credit: Symbolic-MoE 오리지널 논문

  • 대형 모델과 호환 가능

    주로 7-8B 파라미터 사이즈의 모델을 사용하는데도, Symbolic-MoE는 70B 사이즈 정도 되는 더 큰 모델과 동등하거나 더 나은 성능을 보여 줍니다. 이렇게 효율성이 높아서, 하드웨어 자원이 제한된 경우에도 접근성이 높습니다.

  • 높은 효율성

    단일 GPU에서 실행될 때, MoA(Mixture-of-Agents)와 같은 멀티 에이전트 방식보다 실행 시간이 44% 정도 짧습니다. 배치 추론 (Batch Inference) 기법 덕분에 단일 GPU에서 최대 16개 까지의 모델을 처리할 수 있고, 필요한 경우에는 여러 개의 GPU에 걸쳐 스케일링할 수 있습니다 - 4개의 GPU를 사용하는 환경에서 테스트를 해 보면, MoA보다 거의 2배 빠른 속도를 보여줍니다.

  • 확장 (Scaling)이 용이함

    Symbolic-MoE는 많은 수의 전문가를 사용할 때도 효율적으로 확장할 수 있습니다. 이건, 배치 추론 전략 (Batch Inference Strategy)를 활용해서 모델 로딩/언로딩을 빈번하게 하지 않아도 되도록 했기 때문에 가능합니다.

  • 우수한 유연성

    이 접근 방식은 모듈식으로 구성되어 있어서, 모델을 수정하거나 재훈련할 필요가 없이 다양한 작업에 적응이 가능합니다. 또, 처음부터 재훈련하지 않고도 새로운 모델을 도입할 수 있기 때문에 쉽게 쉽게 업데이트하고 적용할 수 있습니다.

Symbolic-MoE의 한계점

물론, 어떤 기술이든 완벽한 것은 없죠. Symbolic-MoE의 한계점은 아래와 같습니다:

  • 추론 비용 증가의 가능성

    Symbolic-MoE는 여전히 여러 개의 모델을 병렬로 실행해야 하기 때문에, 전반적으로 추론 비용이 증가합니다.

  • 보유 기술에 대한 추론에 의존하게 됨

    이 시스템은 소규모의 밸리데이션 셋으로 ‘기술 기반의 모델 프로파일’을 만들고, ‘키워드 LLM’이라는 요소로 모델이 어떤 기술을 갖고 있는지 추론한다고 말씀드렸죠. 그래서 이 추론 메커니즘의 품질에 의존할 수 밖에 없는 구조이고, 추론 메커니즘의 품질에 따라 전문가를 선택하는 효과나 성능에 영향을 줄 수 있습니다.

  • Pool에 있는 모델 및 전문가의 품질에 근본적으로 의존

    ‘전문화’가 충분히 잘 되지 않거나 필요한 도메인 전문성이 부족한 풀이 만들어진다면, 이 프레임웍은 최적의 성능을 달성하게끔 도와주기 힘듭니다.

  • 오버헤드가 있을 수 있음

    각각의 쿼리에 가장 적합한 전문가를 식별하기 위해서 대규모의 ‘모델 풀’을 다뤄야 하기 때문에, 종종 오버헤드가 발생할 수 있습니다.

전반적으로는, Symbolic-MoE는 ‘자연어를 기반으로 추론해서 모델의 기술 전문성을 수집하고 골라내는’ 기법이, ‘파라미터를 기반으로 선택하는 전통적인 MoE 시스템’보다 더 높은 효율성을 보여줄 수 있다는 걸 보여준다고 기억하시면 되겠습니다.

이 두 가지 기법이 시사하는 것

앞서 말씀드린 S'MoRE와 Symbolic-MoE, 이 두 가지의 기법을 잘 살펴보면, 현 시점 점점 더 큰 주목을 받고 있는 세 가지의 혁신적인 아이디어를 확인할 수 있습니다:

  1. S'MoRE의 계층적 잔차 라우팅 (Hierarchical Residual Routing)은, 파라미터의 숫자를 늘리지 않고서도 전문가를 선택할 수 있는 ‘선택 공간’을 스케일링할 수 있게 해 줍니다.

  2. Symbolic-MoE의 ‘스킬을 기반으로, 쿼리를 받았을 때 모델의 기술을 확인해서 전문가를 선택’하는 기법은, 각각 특정한 질문에 필요한 적합한 전문가를 더 잘 선택할 수 있는 가능성을 열어줍니다.

  3. GPU를 더 잘 활용하도록 하는 ‘배치 (Batch)’, ‘샤딩 (Sharding)’ 기법은, 10개 이상의 전문가를 활성화할 때도 지연 시간을 낮은 수준으로 유지할 수 있게 해 줍니다.

‘MoE 2.0으로의 진화’를 시사하는 다른 신호들

그렇다면, 이 기법들, 그리고 이런 세 가지 신호 외에도 ‘MoE라는 아키텍처가 새로운 성장의 단계에 진입하고 있다’는 걸 보여주는 다른 신호가 있을까요?

먼저, Meta의 Llama 4 Scout와 Maverick 모델, 이 최신의 모델들이 ‘MoE 아키텍처로 처음 출시된 모델’이라는 점에 주목할 만합니다. MoE 기법으로 만들어진 Llama 4 Scout 모델은, 170억 개의 활성 파라미터와 16개의 전문가를 가지고 단일 NVIDIA H100 GPU에서 작동합니다. 성능의 향상이라는 측면 외에도, MoE 아키텍처로 비용 절감 효과를 볼 수도 있죠. Bloomberg의 보도에 따르면, Meta는 MoE 아키텍처를 특히 ‘고성능 애플리케이션에서 대규모 추론 작업의 비용을 줄이기 위한 주요 전략’의 한 요소로 보고 있습니다.

둘째로는, MoE 추론 (MoE Inference)을 최적화하기 위한 꽤나 다양한 연구가 동시 다발적으로 진행되고 있는데요, 그 중 몇 가지 흥미로운 것들 살펴보시죠:

eMoE

eMoE는 버지니아 대학교조지아 공과대학의 연구자들이 함께 연구한, ‘MoE 기반 LLM을 위해서 만들어진, 효율적으로 메모리를 사용하는 추론 시스템’입니다.

재미있는 건, 토큰을 받아서 전문가를 라우팅하는 패턴이 반복될 텐데, 이 패턴을 기반으로 미래의 입력, 즉 쿼리를 받았을 때 필요한 전문가를 예측하는 예측 모델을 사용해서, 가장 필요할 것 같은 전문가만 미리 로드한다고 합니다. 물론, 오버헤드를 줄이기 위해서, eMoE는 몇 개의 프롬프트마다 주기적으로 전문가 예측 기계 (Expert Predictor)를 호출합니다.

그 뿐 아니라, ‘생성해야 하는 토큰의 길이’라든가 ‘전문가 라우팅에 대한 민감도’ 등 몇 가지 특정한 요구 사항에 따라서 작업을 스케줄링해서 자원을 최적으로 사용할 수 있도록 보장도 한다고 하네요.

결과적으로, eMoE는 정확도는 유지한 채 메모리 소비를 최대 80%까지 줄이고, 추론 지연 시간을 최대 17%까지 개선할 수 있다고 합니다.

MoEShard

MoEShard는, EPFL, 그리고 맥길 대학교 연구자들이 설계한 추론 시스템입니다.

MoE 시스템에서 발생할 수 있는, 여러 개 GPU 간의 부하 불균형 문제를 해결하기 위한 시도로, 텐서 샤딩 (Tensor Sharding)이라는 기법을 사용합니다. 간단하게 말한다면, ‘전문가 행렬이 GPU들 사이에 분할되어서 각각의 GPU가 모든 전문가의 일부를 가지고 있으면서 계산이 GPU 전체에 균등하게 분산되도록 하는 구조라고 하네요. 보통 다른 기법에서 메모리 사용량을 줄이려고 토큰을 삭제하는 것과는 달리, 이 MoEShard는 모든 토큰을 유지할 수 있도록 해 줍니다.

MoEShard는 DeepSpeed 같은 시스템과 비교하면 TTFT (Time-to-First-Token; 첫 번째 토큰이 생성되기 시작할 때까지의 시간)이 최대 6.4배 더 빨라진다고 합니다.

DeepSpeed-MoE

마이크로소프트에서 연구 개발한 DeepSpeed-MoE는, 사실 2022년에 개발된 기법이예요. 대규모의 MoE 모델을 효율적으로 처리하기 위해서 여러 가지 기술을 결합합니다:

  • 피라미드-잔차 MoE(PR-MoE; Pymarid-Residual MoE)

    잔차 연결과 MoE 레이어를 통합하는데, 잔차 연결의 핵심 파라미터를 유지하고 레이어 간 가중치는 공유해서, 품질을 손상시키지 않으면서 전체 모델 크기를 최대 3배까지 줄여줍니다.

  • 추론 시스템 최적화

    전문가의 병렬 처리, 텐서 슬라이싱 (모델의 파라미터를 작고 관리하기 쉬운 조각으로 나눔), 메모리 대역폭 관리(GPU와 메모리 간의 데이터 흐름을 최적화) 같은 기능을 포함하고 있습니다.

  • Mixture-of-Students(MoS)

    시스템이 MoE 모델의 더 작고 압축된 버전을 실행할 수 있도록 해 줍니다.

이런 기능들을 잘 결합한 덕분에, DeepSpeed-MoE는 추론의 지연 시간과 비용을 최대 7.3배 줄여준다고 보고되고 있고, 유사한 품질의 밀집형 (Dense) 모델에 비해서는 4.5배 더 빠르고 9배 더 저렴한 비용에 추론 작업을 할 수 있습니다. (그렇지만, 그 이후 등장한 MoE 기법들이 DeepSpeed-MoE의 성능을 크게 상회하는게 사실입니다)

Speculative-MoE (s-MoE)

s-MoE는 화웨이 테크놀로지에서 개발한 기술인데, 병렬 추론 작업에서 통신의 효율성을 향상시키는 것이 주된 목표입니다. 여기서는 두 가지의 메커니즘을 활용합니다:

  • 추측적 토큰 셔플링(s-TS; Speculative Token Shuffling)

    토큰의 라우팅 경로를 일찍 예측해서, 토큰이 미리 셔플되어서 가장 가능성이 높은 전문가에게 전달될 수 있게 해 줍니다. 이 기법은, 라우팅 중에 GPU 간의 비용이 많이 드는 ‘통신의 필요성’을 줄여줍니다.

  • 추측적 전문가 사전 그룹화(s-EG; Speculative Expert Pre-grouping)

    함께 활성화될 가능성이 높은 전문가들을 그룹화하고 같은 GPU에 배치해서, 장치 간에 일어나야 하는 통신을 최소화하고 로컬 활성화율을 향상시킵니다.

또, s-MoE 기법으로 구성된 시스템은 사전에 예측된 활성화 패턴에 기반해서 토큰과 전문가를 그룹화하는 다이나믹 코-클러스터링 (Dynamic Co-Clustering)을 활용합니다.

s-MoE 안에서 일어나는 모든 일들이 결국은 GPU 간의 통신 필요성을 최소화시켜 줘서, 통신 비용을 최대 75% 줄이고 지연 시간을 줄여줍니다. 추론 처리량도, DeepSpeed-MoE에 비해서는 최대 2.37배까지 크게 향상시켜 줍니다.

MoE-Gen

에든버러 대학의 MoE-Gen은, MoE 모델의 추론을 최적화하기 위해서 ‘단일 GPU에서 어떻게 더 처리량을 늘릴 수 있을까’에 초점을 맞춘 기법입니다.

모듈 기반 배치 (Module-based Batching)이라는 이름으로 불리는 기법을 사용하는데, 전체 모델의 배치를 한 번에 처리하는 대신에, MoE-Gen은 모델을 일단 어텐션과 전문가 모듈로 나눕니다. 호스트 메모리에 토큰을 축적하고 GPU 처리를 위해서 다이나믹하게 배치 처리를 하는데, GPU의 능력에 따라서 각 모듈의 배치 크기를 조정합니다.

MoE-Gen은 KV 캐시와 모델 파라미터를 호스트 메모리로 오프로드해서, GPU의 메모리 부담을 줄이고 배치 사이즈를 키울 수 있게 해 줍니다. 이렇게 해서 DeepSpeed-MoE 같은 다른 방법에 비해서 처리량이 8배에서 31배까지도 증가한다고 하네요.

지금까지 알아본 eMoE, MoEShard, s-MoE, MoE-Gen 같은 다양한 추론 최적화 방법을 봐도, MoE 기법과 모델의 효율성을 높이는 작업은 이제 한참 진전되고 있는 것 같습니다. 앞으로도 자원의 소비나 계산 비용을 극적으로 줄여 가면서 AI 시스템의 가능성을 확장하는 강력한 도구로서 MoE 아키텍처의 중요성은 점차 높아지지 않을까 생각합니다.

맺으며: 새로운 MoE 2.0 로의 진화가 중요한 이유

메타의 Llama로부터 시작해서 특히 올해 초 DeeSeek 사태 등의 이벤트로 인해서 ‘오픈소스 AI’에 대한 관심이 엄청나게 뜨거워진 것은 사실입니다. 오픈소스 AI 모델의 품질, 성능 등이 빠르게 폐쇄형 모델을 따라잡고 있는 것도 사실이구요.

하지만, 여전히 비공개/폐쇄형 모델과 오픈소스 AI 모델간의 싸움은 쉽지 않은 싸움이예요. 엄청난 자본을 등에 업고 있는 빅테크, 대형 스타트업이나 연구소들은 지금 각각 토큰에 대해서 대략 1~2% 정도의 적절한 파라미터만 활성화되는, ‘조 단위의 모델’이라는 방향으로 이동하고 있는 듯한데요.

오픈소스 커뮤니티도 역시 비슷한 방향의 효율성 향상을 추구하기는 하지만, 대규모 훈련을 위한 자원은 턱없이 부족하다고 봐야겠죠. MoE 기법은 일반적으로 계산의 비용을 더 많이 쓰지 않고도 성능을 높여주는 실용적인 해결책의 하나로 역할을 할 수 있습니다. 오늘 알아본 S’MoreSymbolic-MoE 같은 기법들이 그런 것들이죠; 예를 들어서 8B 파라미터의 더 작은 Dense Model에서 시작해서 특화된 저랭크의 전문가라든가 플러그인 모델을 통합하고, 거대한 GPU Farm 없이도 기대 이상의 성능을 발휘하는 강력한 시스템을 만들 수 있습니다.

그리고, 수많은 개발자들이 추론 (Inference) 단계, 그리고 그 단계의 효율성을 어떻게 높일 것이냐에 관심이 많은데, eMoE, MoEShard, DeepSpeed-MoE, Speculative-MoE, MoE-Gen 같은 기법들이 바로 ‘MoE 모델을 통한 추론’의 한계를 넓히고 있는 기법들입니다.

이런 MoE 2.0으로의 전환을 리드하는 새로운 연구, 새로운 기법들은, 근본적인 MoE의 철학을 현재의 트렌드와 어떻게 결합해서 새로운 단계로 도약할 수 있는지를 보여줍니다. 이런 변화는, 이제 시작일 뿐입니다.

보너스: 참고자료

읽어주셔서 감사합니다. 친구와 동료 분들에게도 뉴스레터 추천해 주세요!

Reply

or to participate.