Mixtral of Experts

하임·2024년 11월 27일

MoE

목록 보기
1/9

https://arxiv.org/pdf/2401.04088


  • 전반적 요약

    요약

    Mixtral 8x7B는 Sparse Mixture of Experts(SMoE) 모델로, Apache 2.0 라이선스로 공개된 모델입니다. 이 모델은 각 토큰마다 전체 파라미터의 일부만을 사용하므로, Llama 2 70B 및 GPT-3.5 대비 더 낮은 메모리와 연산 자원을 필요로 하면서도 더 높은 성능을 보입니다. 특히 Mixtral은 수학, 코드 생성, 다국어 이해, 긴 문맥 처리와 같은 작업에서 뛰어난 성능을 보여주며, 32k 토큰의 긴 컨텍스트를 효과적으로 처리합니다. 또한 BBQ 및 BOLD와 같은 편향 벤치마크에서도 Llama 2보다 더 긍정적인 감정을 보여, 편향이 적은 모델로 평가되었습니다.

    방법론 (Methodology)

    1. Sparse Mixture of Experts(SMoE) 구조:

      • Mixtral은 트랜스포머 아키텍처를 기반으로, 피드포워드 네트워크(FFN) 부분을 SMoE 레이어로 대체하였습니다. 각 토큰에 대해 8개의 전문가 중 2개를 선택하여 해당 토큰을 처리하고, 이를 통해 계산 비용을 줄이고 모델의 효율성을 높였습니다.
      • SMoE 구조에서는 라우터가 매 레이어마다 2명의 전문가를 선택하고, 선택된 전문가들의 출력을 합산하여 결과를 반환합니다. 이 방식으로, 각 토큰마다 사용되는 파라미터의 수가 크게 줄어들어 효율적인 연산이 가능해집니다.
    2. SwiGLU 활성화 함수 사용:

      • Mixtral은 SwiGLU 활성화 함수로 각 전문가의 출력을 계산합니다. SwiGLU는 효율적인 연산을 지원하며, 전문가 네트워크가 독립적으로 SwiGLU의 서로 다른 가중치를 사용함으로써 모델의 표현력을 강화합니다.
    3. 다국어 데이터 및 긴 문맥 성능:

      • Mixtral은 Mistral 7B와 비교해 사전 학습 중 다국어 데이터의 비율을 높여 프랑스어, 독일어, 스페인어, 이탈리아어와 같은 다양한 언어에서 Llama 2 70B보다 뛰어난 성능을 보입니다.
      • 긴 문맥 처리 측면에서는 패스키 검색 작업을 통해 평가되었으며, 입력 시퀀스의 길이와 위치에 관계없이 100%의 검색 정확도를 달성했습니다. 문맥 길이가 증가함에 따라 당혹감(perplexity)이 단조롭게 감소해, 긴 문맥을 효과적으로 이해하는 능력을 입증했습니다.
    4. 편향 벤치마크 (Bias Benchmark):

      • Mixtral은 BBQ와 BOLD 데이터셋을 통해 사회적 편향을 평가하였으며, Llama 2와 비교하여 더 긍정적인 감정을 나타내며 편향을 줄인 것으로 나타났습니다.
      • BBQ에서 Mixtral은 정확도가 더 높았으며, BOLD에서는 성별, 직업, 종교 이데올로기, 정치 이데올로기, 인종 항목에서 더 높은 감성 점수를 기록했습니다. 이는 Mixtral이 특정 민감한 항목에서 상대적으로 더 긍정적이고 편향이 적은 응답을 생성함을 보여줍니다.
    5. 지도 학습 튜닝 (Instruction Fine-tuning):

      • Mixtral - Instruct 모델은 지도 학습 튜닝(SFT)과 Direct Preference Optimization(DPO)을 사용하여 인간 피드백 데이터셋에서 추가 튜닝을 거쳤습니다. 이를 통해 GPT-3.5, Claude-2.1, Gemini Pro 등과 같은 모델보다 인간 평가 벤치마크에서 우수한 성능을 보였습니다.
    6. 라우팅 분석 (Routing Analysis):

      • Mixtral은 라우터를 통해 전문가 네트워크의 선택을 조정하는 구조로 되어 있습니다. 이를 통해 특정 입력에 대해 일부 전문가가 더 자주 선택되는 패턴을 분석하였으며, 특히 고층 레이어에서는 동일한 전문가가 연속된 토큰에 대해 반복적으로 선택되는 경향이 나타났습니다. 이러한 구조는 효율적인 캐싱과 가속화에 유리하며, 특히 특정 도메인에 특화된 전문가 선택이 이루어지도록 설계되었습니다.
    7. 성능 및 비용 효율성:
      - Mixtral은 13B 활성 파라미터만 사용하면서도, 70B 파라미터 모델인 Llama 2 70B와 비교해 유사하거나 더 나은 성능을 보입니다. 이는 Mixtral의 SMoE 구조가 비용 효율적인 성능 최적화에 기여함을 의미하며, 특히 수학, 코드 생성 및 다국어 작업에서 강점을 발휘합니다.

      결론

      Mixtral 8x7B는 Sparse Mixture of Experts 모델로, 오픈 소스 모델 중 최상위 수준의 성능을 달성했습니다. 효율적인 파라미터 사용과 긴 문맥 처리 능력을 통해, Mixtral은 다양한 작업에서 Llama 2 70B 및 GPT-3.5 Turbo를 능가하거나 동등한 성능을 보여줍니다. Apache 2.0 라이선스로 공개되어 다양한 산업 및 연구에 활용될 가능성이 크며, 향후 새로운 기술과 애플리케이션 개발에 기여할 수 있을 것입니다.


1 소개

이 논문에서는 Apache 2.0 라이선스로 공개된 가중치가 있는 Sparse Mixture of Experts 모델(SMoE)인 Mixtral 8x7B를 소개합니다. Mixtral은 대부분의 벤치마크에서 Llama 2 70B 및 GPT-3.5보다 우수한 성능을 보입니다. Mixtral은 매 토큰마다 파라미터의 일부만 사용하기 때문에 낮은 배치 크기에서 더 빠른 추론 속도와 큰 배치 크기에서 더 높은 처리량을 제공합니다.

Mixtral은 Sparse Mixture-of-Experts 네트워크입니다. 피드포워드 블록이 각 레이어에서 8개의 서로 다른 파라미터 그룹 중 두 개를 선택하는 디코더 전용 모델입니다. 매 레이어에서, 매 토큰마다 라우터 네트워크가 이러한 그룹(즉, '전문가') 중 두 개를 선택하여 토큰을 처리하고 그들의 출력을 합산합니다. 이 기술은 매 토큰마다 모델이 사용하는 전체 파라미터 세트의 일부만 사용하므로 비용과 지연 시간을 제어하면서 모델의 파라미터 수를 늘립니다.

Mixtral은 32k 토큰의 컨텍스트 크기를 사용하여 다국어 데이터를 기반으로 사전 학습되었습니다. 이 모델은 여러 벤치마크에서 Llama 2 70B 및 GPT-3.5의 성능과 동등하거나 이를 초과합니다.

Mixtral은 수학, 코드 생성, 다국어 이해 등의 분야에서 우수한 성능을 발휘하여 Llama 2 70B를 크게 능가합니다. 실험 결과, Mixtral이 32k 토큰의 컨텍스트 윈도우에서 정보를 성공적으로 검색하여 시퀀스 길이와 정보 위치에 상관없이 정확히 정보를 가져올 수 있음을 보여줍니다.

또한, Mixtral 8x7B - Instruct라는 모델도 소개합니다. 이 모델은 Direct Preference Optimization과 같은 지도 학습 튜닝을 통해 인간 평가 기준에서 GPT-3.5 Turbo, Claude-2.1, Gemini Pro 및 Llama 2 70B보다 높은 성능을 보여줍니다. Mixtral - Instruct는 편향을 줄이고 더 균형 잡힌 감성 평가를 보장합니다.

우리는 Apache 2.0 라이선스 아래 Mixtral 8x7B와 Mixtral 8x7B - Instruct를 모두 공개하여 학계 및 상업적 사용을 보장합니다. 이를 통해 커뮤니티가 Mixtral을 쉽게 실행할 수 있도록 Megablocks CUDA 커널을 통합했으며, 이를 통해 클라우드에서 vLLM 엔드포인트를 배포할 수 있습니다.


2 아키텍처 세부사항

Mixtral은 [31]의 트랜스포머 아키텍처를 기반으로 하며, [18]에 설명된 것과 동일한 수정을 적용합니다. Mixtral은 완전히 밀집된 32k 토큰의 컨텍스트 길이를 지원하며, 피드포워드 블록은 Mixture-of-Experts 계층으로 대체됩니다 (섹션 2.1 참조). 모델의 아키텍처 매개변수는 표 1에 요약되어 있습니다.

2.1 Sparse Mixture of Experts

우리는 Mixture of Experts 계층의 간략한 개요를 제공합니다 (그림 1 참조). MoE 모듈의 출력은 주어진 입력의 값에 따라 전문가 네트워크의 가중 합으로 결정됩니다. 게이트의 가중치는 라우터 네트워크에서 계산됩니다. 이 계층의 출력은 아래 수식과 같습니다.

[
i=0n1G(x)Ei(x)\sum_{i=0}^{n-1} G(x) \cdot E_i(x)
]

여기서 ( G(x) )는 i번째 전문가의 게이트 출력이며, ( E_i(x) )는 i번째 전문가 네트워크의 출력입니다. 게이트 벡터가 희소하다면, 게이트가 0인 전문가의 출력을 계산하지 않음으로써 계산 비용을 줄일 수 있습니다.


MoE 레이어

MoE 레이어는 고성능 특화 커널을 갖춘 단일 GPU에서도 효율적으로 실행될 수 있습니다. 예를 들어, Megablocks는 MoE 레이어의 피드포워드 네트워크(FFN) 연산을 수행할 때 희소 행렬 곱셈을 사용하여 실행 속도를 향상시키고 실행에 할당된 GPU 자원을 효과적으로 사용합니다. MoE 레이어는 표준 모델 병렬화 기술을 통해 여러 GPU로 분산될 수 있으며, 특정 종류의 분할 전략을 사용하여 각 전문가가 분산될 수 있습니다. MoE 레이어의 실행 중에는 특정 전문가에 의해 처리되는 토큰이 원래 위치로 출력되어 부하 분산을 보장합니다.

Transformer 모델에서, MoE 레이어는 각 토큰에 대해 독립적으로 적용되며 트랜스포머 블록의 피드포워드(FFN) 서브 블록을 대체합니다. Mixtral의 경우, SwiGLU 아키텍처가 전문가 함수 ( E_i(x) )로 사용되며 ( K = 2 )입니다. 이는 각 토큰이 서로 다른 가중치를 가진 SwiGLU 서브 블록으로 라우팅됨을 의미합니다. 이를 종합하여, 입력 토큰 ( x )의 출력 ( y )는 다음과 같이 계산됩니다.

[
y=i=0n1Softmax(Top2(xWy))SwiGLUi(x)y = \sum_{i=0}^{n-1} \text{Softmax}(\text{Top2}(x \cdot W_y)) \cdot \text{SwiGLU}_i(x)
]

이 수식은 GShard 아키텍처와 유사하지만, Mixtral은 모든 FFN 서브 블록을 MoE 레이어로 대체하며, GShard가 모든 두 번째 블록마다 레이어를 대체하는 것과는 다릅니다.


3 결과

우리는 Mixtral과 Llama를 비교하고 공정한 비교를 위해 자체 평가 파이프라인에서 모든 벤치마크를 재실행합니다. 성능은 다음과 같은 다양한 작업 범주에서 측정되었습니다:

  • 상식적 추론 (0-shot): HellaSwag [32], Winogrande [26], PIQA [3], SIQA [27], OpenbookQA [22], ARC-Easy, ARC-Challenge [8], CommonsenseQA [30]
  • 세계 지식 (5-shot): NaturalQuestions [20], TriviaQA [19]
  • 독해 (0-shot): BoolQ [7], QuAC [5]
  • 수학: GSM8K (8-shot) [14]와 MATH (1/4-shot) [4]를 maj@4와 함께 사용
  • 코드: HumanEval [4]와 MBPP 11
  • 종합 집계 결과: MMLU 16, BBH 29, AGI Eval [34] (3-5-shot, 영어 다중 선택 질문만 해당)

표 2: Mixtral과 Llama의 성능 비교

표 2는 Mixtral이 대부분의 인기 있는 벤치마크에서 Llama 2 70B의 성능을 초과하거나 동등한 성능을 보여주는 것을 나타냅니다. Mixtral은 추론 시 활성 파라미터를 5배 적게 사용하면서도 거의 모든 벤치마크에서 뛰어난 성능을 보입니다.


그림 3: MMLU, 상식적 추론, 세계 지식, 독해, 수학 및 코드에 대한 Mixtral 성능

그림 3에서는 Mixtral의 성능이 Llama 2와 비교된 결과를 보여줍니다. Mixtral은 더 적은 활성 파라미터를 사용하면서도 Llama 2 70B보다 대부분의 지표에서 더 높은 성능을 보입니다.

  • 크기 및 효율성: Mixtral 모델의 효율성은 비용-성능 스펙트럼에서 Llama 2 계열보다 우수합니다. Mixtral은 각 토큰에 대해 13B 활성 파라미터만 사용하여 Llama 2 70B보다 우수한 성능을 제공합니다.

이 분석은 활성 파라미터 수에 중점을 둡니다(섹션 2.1 참조). 이는 추론 시 계산 비용에 직접 비례하지만 메모리 비용과 하드웨어 활용도는 고려하지 않습니다. Mixtral의 메모리 비용은 희소한 파라미터 수에 비례하며, 이는 여전히 Llama 2 70B보다 작습니다. 장치 활용 측면에서, SMoE 계층이 라우팅 메커니즘으로 인해 추가적인 오버헤드를 발생시키고 한 장치에서 여러 전문가를 실행할 때 메모리 부하가 증가할 수 있습니다. 이러한 구조는 높은 산술 밀도가 요구되는 일괄 처리 작업에 더 적합합니다.

Llama 2 70B 및 GPT-3.5와의 비교

표 3에서는 Llama 2 70B와 GPT-3.5와 비교한 Mixtral 8x7B의 성능을 보여줍니다. Mixtral은 두 모델과 비슷하거나 우수한 성능을 보이며, 특히 MMLU에서 더 좋은 성능을 보입니다. MT Bench에서는 최신 GPT-3.5 Turbo 모델(gpt-3.5-turbo-1106)의 성능과 비교됩니다.


모델MMLU (57과목 다중 선택)HellaSwag (10-shot)ARC Challenge (25-shot)Winogrande (5-shot)MBPP (pass@1)GSM8K (5-shot)MT Bench
LLaMA 2 70B69.9%87.1%85.1%83.2%49.8%53.6%6.86
GPT-3.570.0%85.5%85.2%81.6%52.2%57.1%8.32
Mixtral 8x7B70.6%86.7%85.8%81.2%60.7%58.4%8.30

표 3: Llama 2 70B 및 GPT-3.5와 비교한 Mixtral의 성능. Mixtral은 대부분의 지표에서 Llama 2 70B 및 GPT-3.5를 초과하거나 일치하는 성능을 보입니다.


3.1 다국어 벤치마크

Mistral 7B와 비교하여, 사전 학습 중 다국어 데이터의 비율을 크게 증가시켰습니다. 이 추가 용량 덕분에 Mixtral은 높은 영어 정확도를 유지하면서 다국어 벤치마크에서도 우수한 성능을 보입니다. 특히 프랑스어, 독일어, 스페인어 및 이탈리아어에서 Llama 2 70B보다 현저히 우수한 성능을 보입니다.

모델활성 파라미터Arc-c프랑스어 HellaSwag프랑스어 MMLU독일어 HellaSwag독일어 MMLU스페인어 HellaSwag스페인어 MMLU이탈리아어 HellaSwag이탈리아어 MMLU
LLaMA 1 33B33B39.3%68.1%49.9%41.1%64.3%46.5%49.8%52.3%49.0%
LLaMA 2 70B70B49.9%72.5%64.3%47.3%64.2%50.5%74.6%49.4%65.1%
Mixtral 8x7B13B58.2%77.4%70.9%54.3%71.5%56.7%72.5%52.8%70.9%

표 4: 다국어 벤치마크에서 Llama와 Mixtral의 비교. ARC Challenge, HellaSwag 및 MMLU에서 Mixtral은 프랑스어, 독일어, 스페인어 및 이탈리아어에서 Llama 2 70B보다 우수합니다.


3.2 긴 문맥 성능

Mixtral이 긴 문맥을 처리하는 능력을 평가하기 위해 패스키 검색 작업을 통해 모델의 성능을 측정합니다. 이 작업에서는 길이가 긴 프롬프트에 무작위로 삽입된 패스키를 검색하는 능력을 평가합니다. 왼쪽 그림 4는 Mixtral이 입력 시퀀스의 위치와 상관없이 100% 검색 정확도를 달성함을 보여줍니다. 오른쪽 그림 4는 프루프 파일 데이터셋의 부분 집합에서 문맥 크기가 증가함에 따라 Mixtral의 당혹감이 단조롭게 감소함을 나타냅니다.

그림 4: Mixtral의 장거리 성능. (왼쪽) Mixtral은 패스키의 위치와 입력 시퀀스의 길이에 관계없이 패스키 작업의 검색 정확도가 100%입니다. (오른쪽) Proof-pile 데이터 세트에 대한 Mixtral의 퍼플렉시티는 컨텍스트 길이가 증가함에 따라 단조롭게 감소합니다.


3.3 편향 벤치마크

미세 조정 및 선호 모델링을 통해 수정할 수 있는 잠재적인 결함을 식별하기 위해, 우리는 BBQ(Bias Benchmark for QA) [24] 및 편향이 포함된 개방형 언어 생성 데이터셋(BOLD) [10]에서 모델 성능을 측정합니다. BBQ는 연령, 장애 상태, 성 정체성, 국적, 신체적 외모, 인종/민족, 종교, 사회경제적 지위, 성적 지향 등 아홉 가지 사회적 편향 카테고리에 대해 테스트된 수작업 질문 세트를 포함한 데이터셋입니다. BOLD는 영어 텍스트 생성 프롬프트로 구성된 대규모 데이터셋으로 다섯 가지 영역에서 편향을 평가할 수 있도록 합니다.

우리는 BBQ와 BOLD에서 Llama 2와 Mixtral을 평가하고, 표 5에 결과를 보고합니다. Llama 2와 비교했을 때, Mixtral은 BBQ 벤치마크에서 더 적은 편향(정확도 56.0% vs 51.5%)을 보이며, 각 BOLD 그룹에서 감성 점수가 더 높은 평균과 표준 편차가 낮은 결과를 나타냅니다. 전반적으로 Mixtral은 Llama 2보다 더 긍정적인 감정을 표시하며, 각 그룹 내 분산은 유사합니다.

항목Llama 2 70BMixtral 8x7B
BBQ 정확도51.5%56.0%
BOLD 감성 점수 (평균 ± 표준 편차)
성별0.293 ± 0.0730.323 ± 0.045
직업0.218 ± 0.0730.243 ± 0.087
종교 이데올로기0.188 ± 0.1330.144 ± 0.089
정치 이데올로기0.149 ± 0.1400.186 ± 0.146
인종0.232 ± 0.0490.232 ± 0.052

표 5: 편향 벤치마크 결과. Llama 2 70B와 비교하여 Mixtral은 BBQ에서 더 높은 정확도를 보이며 BOLD에서 더 긍정적인 감성 점수를 표시합니다.


4 지도 학습 튜닝 (Instruction Fine-tuning)

우리는 Mixtral - Instruct를 지도 학습 튜닝(SFT)으로 훈련했으며, 이후 Direct Preference Optimization(DPO) [25]을 사용하여 피드백 데이터셋에서 조정했습니다. Mixtral - Instruct는 MT-Bench [33]에서 8.30의 점수에 도달했으며, 이는 2023년 12월 기준 공개된 최고 성능 모델로 간주됩니다. LMSys에서 독립적인 인적 평가를 통해 GPT-3.5-Turbo, Gemini Pro, Claude-2.1 및 Llama 2 70B를 능가하는 성능이 보고되었습니다.


5 라우팅 분석

이 섹션에서는 라우터가 전문가를 선택하는 방법에 대한 간단한 분석을 수행합니다. 특히, 훈련 중 특정 전문가가 특정 도메인(예: 수학, 생물학, 철학 등)에 특화되는지 확인하고자 합니다.

이를 조사하기 위해, 우리는 The Pile 검증 데이터셋 [14]의 다양한 하위 집합에서 선택된 전문가의 분포를 측정했습니다. 예를 들어, 모든 레이어에서 특정 주제에 대한 전문가 할당 패턴을 관찰하지 못했지만, ArXiv 문서(텍스트로 작성된 문서), 생물학(PubMed 초록), 철학(PhilPapers 문서)에서 전문가 할당은 유사하게 나타났습니다.

오직 DM Mathematics에서만 전문가 할당이 다른 분포를 보였는데, 이는 자연 언어 범위의 제한적 적용 때문일 가능성이 큽니다. 이러한 결과는 라우터가 구조적인 구문적 행동을 보일 수 있음을 시사합니다. 예를 들어, 연속 토큰이 종종 동일한 전문가에 할당되며 이는 모델의 입력 및 출력에 따라 상관관계를 보입니다.

우리는 또한 The Pile 데이터셋에서 연속적인 토큰이 동일한 전문가에 할당되는 위치 현상을 관찰했습니다.


데이터셋첫 번째 선택 (Layer 0)첫 번째 선택 (Layer 15)첫 번째 선택 (Layer 31)첫 번째 또는 두 번째 선택 (Layer 0)첫 번째 또는 두 번째 선택 (Layer 15)첫 번째 또는 두 번째 선택 (Layer 31)
ArXiv14.0%27.9%22.7%46.5%62.3%52.9%
DM Mathematics14.1%28.4%19.7%44.9%67.0%44.5%
Github14.9%28.1%19.7%49.9%66.9%49.2%
Gutenberg13.9%26.1%26.3%49.5%63.1%52.2%
PhilPapers13.6%25.3%22.1%46.9%61.9%51.3%
PubMed Abstracts14.2%24.6%22.0%48.6%61.6%51.8%
StackExchange13.6%27.2%23.6%48.2%64.6%53.6%
Wikipedia (en)14.4%23.6%25.3%49.8%62.1%51.8%

표 5: 전문가 할당 반복 비율. 우리는 동일한 전문가가 연속적인 토큰에 대해 선택된 비율을 평가합니다. 연속된 토큰에서 첫 번째로 선택된 전문가가 동일한지, 첫 번째 또는 두 번째로 선택된 전문가가 동일한지를 기록합니다. 임의 할당의 경우, "첫 번째 선택"에서의 반복 비율은 약 12.5%, "첫 번째 또는 두 번째 선택"에서는 약 46%로 예상됩니다. 초기 레이어에서의 반복 비율은 무작위에 가깝지만, 15 및 31 레이어에서 반복 비율이 크게 높아져 높은 시간적 지역성을 나타냅니다.

연속 할당의 비율이 고층 레이어에서는 임의보다 훨씬 높습니다. 이는 빠른 학습 및 추론을 위해 모델을 최적화하는 방법에 중요한 함의를 갖습니다. 높은 지역성이 있는 경우, 특정 전문가에게 할당되는 과부하가 발생할 수 있습니다. 반대로, 이 지역성은 캐싱을 활용할 수 있는 기회를 제공합니다.


6 결론

이 논문에서 우리는 Mixtral 8x7B, 최초의 mixture-of-experts 네트워크를 소개하며, 오픈 소스 모델 중 최고 수준의 성능을 달성했습니다. Mixtral 8x7B Instruct는 Claude-2.1, Gemini Pro 및 GPT-3.5 Turbo를 인간 평가 벤치마크에서 능가합니다. 각 토큰에 두 명의 전문가만 사용하므로 활성 파라미터 수는 13B에 불과하지만, 70B 파라미터 모델(Llama 2 70B)을 능가하는 성능을 보입니다. Apache 2.0 라이선스 하에 학습된 모델과 미세 조정된 모델을 공개함으로써, 우리는 다양한 산업 및 분야에 도움이 되는 새로운 기술과 응용 프로그램의 발전을 촉진하고자 합니다.


그림 8: 각 토큰이 첫 번째 전문가 선택으로 색칠된 텍스트 샘플. 전문가 선택은 특히 초기 및 최종 계층에서 도메인보다는 구문과 더 일치하는 것으로 보입니다.

profile
NLP 공부합니당

0개의 댓글