AllenAI, '모듈성 자생' MoE 모델 'EMO' 공개… 14B 중 12.5%만 써도 풀모델 근접 성능, 1조 토큰 학습
AllenAI 연구팀이 사전학습 단계부터 모듈 구조가 데이터로부터 자연스럽게 출현하도록 설계된 새로운 혼합 전문가(MoE) 모델 'EMO(Pretraining mixture of experts for emergent modularity)'를 공개했다. 인간이 사전 정의한 도메인 라벨에 의존하지 않고도 작업·도메인별로 전문가의 작은 부분 집합만 선택해 사용할 수 있는 구조로, 전체 전문가 가운데 12.5%만 사용해도 풀모델에 근접한 성능을 유지한다는 것이 핵심이다.
EMO는 활성 파라미터 1B, 전체 파라미터 14B 규모의 MoE로, 토큰당 활성 전문가 8개, 전체 전문가 128개의 구성을 갖는다. 학습은 1조 토큰 규모로 진행됐다. AllenAI 측은 동일 아키텍처와 동일 데이터로 학습한 표준 MoE는 일부 전문가만 골라 쓸 경우 성능이 급격히 저하되는 반면, EMO는 선택적 전문가 사용 환경에서 견고한 성능을 유지한다고 설명했다.
기존 대형 언어 모델은 단일 모놀리식 시스템으로 학습·배포돼, 코드 생성·수학 추론·도메인 지식처럼 일부 능력만 필요한 응용에서도 전체 모델을 적재해야 한다는 비효율이 있었다. 이론적으로 MoE는 입력 토큰별로 일부 전문가만 활성화해 이 문제를 해결할 수 있지만, 실제로는 동일 입력 안에서도 토큰마다 다른 전문가가 활성화돼 결국 전체 전문가가 모두 동원되는 경향이 있다. EMO 연구팀은 표준 MoE의 전문가들이 도메인이나 능력 단위가 아니라 전치사·구두점 같은 저수준 어휘 패턴에 특화되는 경향이 있다는 점을 원인으로 지적했다.
EMO는 '같은 문서의 토큰은 대체로 같은 도메인에서 온다'는 관찰을 약한 지도 신호로 활용했다. 학습 시 문서 단위로 라우터가 해당 문서의 토큰들이 사용할 수 있는 공유 전문가 풀을 먼저 선택하고, 문서 내 모든 토큰은 그 풀 안에서만 라우팅되도록 제약된다. 풀은 문서 내 토큰 전반의 라우터 선호도 평균에서 가장 많이 사용된 전문가를 추리는 방식으로 결정되며, 문서마다 다른 풀이 사용된다. 이를 통해 반복적으로 함께 사용되는 전문가 그룹이 학습 데이터로부터 자연스럽게 형성된다.
구현상의 도전 과제로 연구팀은 부하 분산(load balancing) 문제를 들었다. 표준 MoE 학습에서는 부하 분산 목적함수가 모델이 일부 전문가에만 쏠리는 붕괴 현상을 막지만, 보통 문서 수가 적은 마이크로배치 단위로 적용돼 EMO의 '문서 내 일관된 전문가 사용' 목표와 충돌한다. EMO는 이를 다수의 문서를 가로지르는 전역 부하 분산으로 전환해 해소했고, 안정적 학습에 전역 부하 분산이 핵심이라고 보고했다. 또한 문서별 풀 크기를 학습 중 무작위로 샘플링해 추론 시 다양한 전문가 부분 집합 크기를 지원할 수 있도록 했다.
벤치마크 결과 EMO는 일반 목적 평가에서 동급 표준 MoE와 동일 수준의 성능을 보였다. 선택적 전문가 사용 환경에서는, 전체 128개 전문가 가운데 25%(32개)만 유지할 때 절대 성능 하락이 약 1%에 그쳤고, 12.5%(16개)만 유지해도 전반적인 성능 하락이 약 3% 수준이었다. 이는 미세조정 전후 모두 성립했다. 반면 동일 조건의 표준 MoE는 전문가 부분 집합이 작아질수록 성능이 급격히 떨어지며, 가장 작은 설정에서는 무작위 수준에 근접하거나 그 아래로 내려가는 결과를 보였다.
특정 작업에 적합한 전문가 부분 집합을 고르는 비용 또한 낮다는 것이 연구팀의 주장이다. 작업 검증 데이터에서 전문가의 라우팅 사용량 순위를 매겨 가장 많이 사용된 전문가만 남기고 나머지를 버리는 방식으로 작업별 부분 집합을 구성하는데, 단 한 개의 예시와 몇 개의 few-shot 시연만으로도 전체 검증 세트로 고른 모듈과 동등한 성능의 모듈을 식별할 수 있었다.
사전 정의된 의미 도메인을 라우팅에 활용한 BTX, AllenAI의 FlexOlmo 같은 선행 연구는 도메인 라벨 확보의 어려움과 인간 편향 주입, 추론 시 새로운 도메인 등장 시 어떤 전문가를 써야 할지 모호해지는 한계가 있었다. EMO는 이런 사전 도메인 정의 없이도 라우터 자체가 데이터로부터 모듈성을 학습하도록 설계해, 단일 모델을 작업·도메인 단위로 분해해 쓰는 합성 가능한 아키텍처(composable architecture)로 만들었다는 점이 차별점으로 제시됐다.