NLP, 비전, 로봇 공학 등을 위한 확장 가능하고 효율적인 모델을 지원하는 획기적인 AI 아키텍처인 MoE(Mixture of Experts)를 알아보세요.
MoE(Mixture of Experts)는 "전문가"로 알려진 특수 하위 모델 간에 문제를 분할하여 모델이 보다 효율적으로 학습할 수 있도록 하는 신경망(NN) 아키텍처입니다. 단일의 통합 모델이 모든 입력을 처리하는 대신 MoE 아키텍처는 "게이팅 네트워크"를 사용하여 각 입력을 가장 관련성이 높은 전문가에게 동적으로 라우팅합니다. 이 접근 방식은 특정 작업에 능숙한 전문가 팀이 단일의 제너럴리스트보다 복잡한 문제를 보다 효과적으로 공동으로 해결할 수 있다는 아이디어에서 영감을 받았습니다. 이러한 조건부 계산을 통해 MoE 모델은 엄청난 수의 파라미터로 확장할 수 있지만 모델의 일부만 특정 입력에 사용되기 때문에 추론에 대한 계산 비용을 관리할 수 있습니다.
MoE 아키텍처는 두 가지 주요 구성 요소로 구성됩니다.
전문가 네트워크: 이는 종종 동일한 아키텍처를 가진 여러 개의 더 작은 신경망으로, 데이터의 여러 부분에 대한 전문가가 되도록 훈련됩니다. 예를 들어 자연어 처리 (NLP) 모델에서 한 전문가는 영어를 프랑스어로 번역하는 데 특화될 수 있고, 다른 전문가는 Python 코드 생성에 능숙해질 수 있습니다. 각 전문가는 더 큰 딥 러닝 시스템의 구성 요소입니다.
게이팅 네트워크: 이는 트래픽 컨트롤러 또는 라우터 역할을 하는 작은 신경망입니다. 입력을 받아 어떤 전문가 또는 전문가 조합이 입력을 처리하는 데 가장 적합한지 결정합니다. 게이팅 네트워크는 각 전문가에 대한 확률을 출력하고 이를 기반으로 입력을 처리하기 위해 하나 또는 몇 명의 전문가를 선택적으로 활성화합니다. 네트워크의 하위 집합만 활성화하는 이 기술은 종종 희소 활성화라고 불리며 Google의 "터무니없이 큰 신경망"과 같은 영향력 있는 논문에 자세히 설명된 핵심 개념입니다.
훈련 과정에서 전문가 네트워크와 게이팅 네트워크는 역전파를 사용하여 동시에 훈련됩니다. 시스템은 전문가 내에서 작업을 해결하는 방법뿐만 아니라 게이팅 네트워크를 통해 입력을 효과적으로 라우팅하는 방법도 학습합니다.
전문가 혼합(Mixture of Experts)은 종종 모델 앙상블과 비교되지만 근본적으로 다른 원리로 작동합니다.
MoE 아키텍처는 특히 NLP에서 최첨단 모델을 확장하는 데 특히 두드러졌습니다.
MoE 모델을 효과적으로 구현하려면 전문가 간의 균형 잡힌 로드(일부 전문가가 과도하게 또는 과소하게 활용되는 것을 방지), PyTorch 및 TensorFlow와 같은 프레임워크에서 볼 수 있듯이 분산 훈련 환경에서 통신 오버헤드 관리, 훈련 프로세스의 복잡성 증가와 같은 문제가 있습니다. 모델 배포 옵션에 대한 신중한 고려와 Ultralytics HUB와 같은 플랫폼을 사용한 관리도 필요합니다.