AI 모델 및 플랫폼

전문가混合모델의 효율적인 대형 언어 모델에 대한 부상

mm
Unite.AI를 Google의 선호 소스에 추가

자연어 처리(NLP) 세계에서 더 큰 규모와 더 강력한 언어 모델을 구축하는 것은 최근의 많은 발전의 원동력이 되었습니다. 그러나 이러한 모델의 크기가 증가함에 따라 훈련과 추론을 위한 계산 요구사항이 점점 더苛刻해져서, 사용 가능한 하드웨어 자원의 한계를 밀어붙이고 있습니다.

여기서 전문가混合모델(Mixture-of-Experts, MoE)이라는 기술이 등장합니다. MoE는 계산 부담을 완화하면서 더 큰 규모와 더 강력한 언어 모델을 훈련할 수 있는 방법을 제공합니다. 아래에서 MoE에 대해 자세히 살펴보겠습니다.

전문가混合모델의 기원

전문가混合모델의 개념은 1990년대 초에 연구자들이 조건부 계산의 아이디어를 탐구하기 시작했을 때부터 시작되었습니다. 여기서 신경망의 일부는 입력 데이터에 따라 선택적으로 활성화됩니다. 이 분야의 선구적인 연구 중 하나는 Jacobs et al.의 “로컬 전문가의 적응적 혼합” 논문입니다.

전문가混合모델의 핵심 아이디어는 여러 개의 “전문가” 네트워크를 사용하여 입력 데이터의 하위 집합을 처리하는 것입니다. 게이팅 메커니즘, 일반적으로 신경망 자체,는 입력 데이터에 따라 어느 전문가가 활성화되어야 하는지 결정합니다. 이 접근 방식은 모델이 계산 자원을 더 효율적으로 할당할 수 있도록 허용합니다. 즉, 모든 입력에 대해 전체 모델 용량을 사용하는 대신 각 입력에 대해 관련 전문가만 활성화합니다.

이후 여러 연구자들이 조건부 계산의 아이디어를 탐구하고 확장하여 계층적 MoE, 조건부 계산을 위한 저ラン크 근사, 확률적 뉴런과 하드 임계 활성화 함수를 통해 기울기를 추정하는 기술 등이 개발되었습니다.

트랜스포머에서 전문가混合모델

전문가混合모델

전문가混合모델

전문가混合모델의 아이디어는 수십 년 동안 존재해 왔지만, 트랜스포머 기반 언어 모델에 적용하는 것은 비교적 최근의 발전입니다. 트랜스포머는 현재 언어 모델의 표준이 되었습니다. 트랜스포머는 여러 레이어로 구성되며, 각 레이어에는 셀프 어텐션 메커니즘과 피드 포워드 신경망(FFN)이 있습니다.

트랜스포머에 전문가混合모델을 적용하는 핵심 혁신은 밀집 FFN 레이어를 희박한 전문가混合모델 레이어로 대체하는 것입니다. 각 레이어에는 여러 개의 전문가 FFN과 게이팅 메커니즘으로 구성됩니다. 게이팅 메커니즘은 각 입력 토큰에 대해 어느 전문가가 활성화되어야 하는지 결정합니다.

트랜스포머에서 전문가混合모델을 적용한 초기 연구 중 하나는 Shazeer et al.의 “Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer” 논문입니다. 이 연구에서는 희박한 게이팅 메커니즘을 사용하여 전문가 선택 과정에 희박성과 노이즈를 추가했습니다.

이후 여러 연구에서 트랜스포머에 전문가混合모델을 적용한 연구를 진행했습니다. 이러한 연구에서는 훈련 불안정성, 로드 밸런싱, 효율적인 추론 등과 같은課題를 해결했습니다. 주목할 만한 예로는 Switch Transformer, ST-MoE, GLaM 등이 있습니다.

전문가混合모델의 언어 모델에 대한 이점

전문가混合모델을 언어 모델에 적용하는 주요 이점은 모델의 크기를 확대하면서 추론 중 계산 비용을 상대적으로 일정하게 유지할 수 있다는 것입니다. 각 입력 토큰에 대해 관련 전문가만 활성화함으로써, 전문가混合모델은 밀집 모델의 표현력을 달성할 수 있을 뿐만 아니라 계산 비용을 크게 줄일 수 있습니다.

예를 들어, 7억 개의 매개변수를 가진 밀집 FFN 레이어를 가진 언어 모델을 고려해 보겠습니다. 이 레이어를 8개의 전문가로 구성된 전문가混合모델 레이어로 대체합니다. 각 전문가는 7억 개의 매개변수를 가지며, 총 56억 개의 매개변수가 됩니다. 그러나 추론 중에 각 토큰에 대해 2개의 전문가만 활성화하면, 계산 비용은 14억 개의 매개변수를 가진 밀집 모델과 동일합니다.

이 계산 효율성은 모바일 기기나 에지 컴퓨팅 환경과 같은 자원 제한된 배포 시나리오에서 특히 유용합니다. 또한 훈련 중 계산 비용의 감소는 에너지 소비와 탄소 배출을 줄이는 데 도움이 됩니다.

課題와 고려 사항

전문가混合모델은 여러 이점을 제공하지만, 그採用과 배포에는 여러課題와 고려 사항이 있습니다.

  1. 훈련 불안정성: 전문가混合모델은 훈련 불안정성에 더 취약할 수 있습니다. 이는 전문가 활성화의 희박성과 조건부성으로 인해 기울기 전파와 수렴에課題가 발생할 수 있습니다. 이러한 불안정성을 완화하기 위한 기술이 개발되고 있습니다.
  2. 파인튜닝과 오버피팅: 전문가混合모델은 파인튜닝 중 오버피팅에 더 취약할 수 있습니다. 이는 모델의 용량과 희박성이 증가하여 훈련 데이터에 과도하게 특화될 수 있습니다. 이러한課題를 완화하기 위한 규제와 파인튜닝 전략이 필요합니다.
  3. 메모리 요구사항: 전문가混合모델은 밀집 모델과 비교하여 더 높은 메모리 요구사항을 가질 수 있습니다. 이는 모든 전문가의 가중치가 메모리에 로드되어야 하기 때문입니다. 메모리 제약은 전문가混合모델의 확장성을 제한할 수 있습니다.
  4. 로드 밸런싱: 전문가混合모델의 효율적인 계산을 위해서는 전문가 간 로드 밸런싱이 중요합니다. 각 전문가가 적절한 수의 토큰을 처리하도록 하는 것이 목표입니다. 이는 보조 손실 함수와 용량 요인 조정을 통해 달성할 수 있습니다.
  5. 통신 오버헤드: 분산 훈련과 추론 시나리오에서 전문가混合모델은 추가적인 통신 오버헤드를 가질 수 있습니다. 효율적인 통신 전략과 하드웨어 인식 모델 설계가 필요합니다.

이러한課題에도 불구하고, 전문가混合모델은 언어 모델의 확장성과 효율성을提高하는 데 중요한 역할을 할 수 있습니다.

예시: Mixtral 8x7B와 GLaM

전문가混合모델의 실제 적용을示す 예시로 Mixtral 8x7B와 GLaM을 고려해 보겠습니다.

Mixtral 8x7B는 Anthropic에서 개발한 Mistral 언어 모델의 전문가混合모델 버전입니다. 8개의 전문가로 구성되며, 각 전문가는 7억 개의 매개변수를 가집니다. 총 56억 개의 매개변수를 가지지만, 추론 중에 각 토큰에 대해 2개의 전문가만 활성화하므로, 계산 비용은 14억 개의 매개변수를 가진 밀집 모델과 동일합니다.

Mixtral 8x7B는 70억 개의 매개변수를 가진 Llama 모델을超越하는 성능을 보여주었습니다. 또한 Mixtral-8x7B-Instruct-v0.1이라는 명령어 튜닝 버전도 출시되었습니다.

또 다른 예시로 GLaM을 고려해 보겠습니다. GLaM은 Google에서 개발한 대규모 전문가混合모델입니다. 1.6조 개의 토큰으로 구성된 대규모 데이터셋에서 훈련되었습니다. GLaM은 몇몇 평가에서 GPT-3와 유사한 성능을 보여주었습니다.

Grok-1 아키텍처

GROK MIXTURE OF EXPERT

GROK MIXTURE OF EXPERT

Grok-1은 효율성과 성능을 최대화하기 위해 설계된 트랜스포머 기반 전문가混合모델입니다. Grok-1의 주요 사양을 살펴보겠습니다.

  1. 매개변수: Grok-1은 314억 개의 매개변수를 가집니다. 그러나 전문가混合모델 아키텍처 덕분에, 각 시간에 활성화되는 가중치는 약 86억 개로, 처리 능력이 향상됩니다.
  2. 아키텍처: Grok-1은 8개의 전문가로 구성된 전문가混合모델 아키텍처를 사용합니다. 각 토큰은 추론 중에 2개의 전문가에 의해 처리됩니다.
  3. 레이어: 모델은 64개의 트랜스포머 레이어로 구성되며, 각 레이어에는 멀티헤드 어텐션과 밀집 블록이 있습니다.
  4. 토큰화: Grok-1은 131,072개의 토큰을 가진 SentencePiece 토큰화기를 사용합니다.
  5. 임베딩과 위치 인코딩: 모델에는 6,144차원의 임베딩과 회전 위치 인코딩이 있습니다. 이는 전통적인 고정 위치 인코딩보다 더 동적인 데이터 해석을 허용합니다.
  6. 어텐션: Grok-1은 쿼리와 키 및 값에 대해 각각 48개의 어텐션 헤드를 사용합니다. 각 헤드의 크기는 128입니다.
  7. 컨텍스트 길이: 모델은 최대 8,192개의 토큰을 처리할 수 있으며, 효율적인 계산을 위해 bfloat16 정밀도를 사용합니다.

성능 및 구현 세부 사항

Grok-1은 LLaMa 2 70B와 Mixtral 8x7B를超越하는 성능을 보여주었습니다. 또한 모델의 효율성과 정확성을 다양한 테스트에서 입증했습니다.

그러나 Grok-1은 큰 규모로 인해 상당한 GPU 자원을 필요로 합니다. 현재 구현은 모델의 올바름을 검증하기 위해 비효율적인 전문가混合모델 레이어 구현을 사용합니다.

xAI는 Grok-1을 Apache 2.0 라이선스로 공개했습니다. 이는 모델의 가중치와 아키텍처를 글로벌 커뮤니티에서 사용하고 기여할 수 있도록 합니다.

전문가混合모델의 언어 모델에 대한 미래

더 큰 규모와 더 강력한 언어 모델에 대한需求이 계속 증가함에 따라, 전문가混合모델의採用은 더욱 증가할 것으로 예상됩니다. 현재 연구는 전문가混合모델의 残りの課題를 해결하기 위해 진행되고 있습니다.

한 가지 유망한 방향은 계층적 전문가混合모델 아키텍처를 탐구하는 것입니다. 여기서 각 전문가는 여러 개의 하위 전문가로 구성됩니다. 이는 더욱 큰 규모와 효율성을 제공할 수 있습니다.

또한 전문가混合모델을 위한 하드웨어와 소프트웨어 시스템의 개발이 진행되고 있습니다. 이러한 시스템은 전문가混合모델의 희박성과 조건부성에 최적화되어 있습니다.

결론

전문가混合모델은 언어 모델의 확장성과 효율성을提高하는 데 중요한 역할을 할 수 있습니다. 그러나 전문가混合모델의採用과 배포에는 여러課題와 고려 사항이 있습니다.

전문가混合모델은 언어 모델의 미래에 중요한 역할을 할 수 있습니다. 전문가混合모델을 다른 기술과 결합하여 더욱 강력하고 유연한 언어 모델을 개발할 수 있습니다.

지난 5년 동안私は Machine Learning과 Deep Learning의 매혹적인 세계에 몰두해 왔습니다.私の熱情と専門知識は私を50以上의多様한 소프트웨어 엔지니어링 프로젝트에 기여하게 했으며, 특히 AI/ML에 중점을 두었습니다.私の継続的な 호기심은 또한私를自然어 처리로 끌어들였습니다.私は이 분야를さらに 탐구하기를熱望합니다.