피드로 돌아가기
SegMoE: Segmind Mixture of Diffusion Experts
Hugging Face BlogHugging Face Blog
AI/ML

Segmind가 Feed-Forward 레이어를 Mixture-of-Experts 레이어로 교체하여 여러 확산 모델을 하나의 프레임워크로 통합

SegMoE: Segmind Mixture of Diffusion Experts

2024년 2월 3일7intermediate

Context

기존 Stable Diffusion 모델은 단일 모델 구조로 다양한 프롬프트 이해 능력이 제한적이며, 여러 전문화된 모델의 장점을 결합하기 어렵다.

Technical Solution

  • Feed-Forward 레이어를 Mixture-of-Experts(MoE) 레이어로 교체: 라우터 네트워크가 각 토큰을 처리할 최적의 전문가 모델 선택
  • 여러 기본 모델과 전문가 모델을 config.yaml로 조합: base_model, num_experts, moe_layers(ff/attn/all), num_experts_per_tok 설정
  • SegMoEPipeline을 통한 단일 인터페이스 제공: Hugging Face Diffusers와 완전 통합으로 pip install segmoe로 설치 후 즉시 사용 가능
  • segmoe 패키지를 사용한 커스텀 MoE 모델 생성: 수 분 내에 자신의 MoE 모델 구축 가능
  • SegMoE-AxB 명명규칙 정의: A는 전문가 모델 수, B는 이미지 생성 시 사용할 전문가 수 (SegMoE-2x1, SegMoE-4x2, SegMoE-SD 4x2 공개)

Impact

아티클에 정량적 성능 수치가 명시되지 않음. 다만 SegMoE-4x2는 반정밀도(half-precision)에서 24GB VRAM 필요로 명시됨.

Key Takeaway

MoE 아키텍처를 확산 모델에 적용하면 선택적 전문가 활성화를 통해 프롬프트 이해도를 향상시킬 수 있으나, 여러 전문가 모델 동시 실행으로 인해 추론 속도 저하와 VRAM 사용량 증가가 발생한다.


이미지 생성 AI를 사용하는 팀이 여러 개의 파인튜닝된 확산 모델을 보유하고 있다면, config.yaml에 base_model과 각 전문가 모델의 긍정/부정 프롬프트를 정의하여 SegMoE로 통합하면 단일 모델보다 프롬프트 해석 능력을 개선할 수 있다. 다만 배포 환경에는 24GB 이상의 VRAM(SegMoE-4x2 기준)과 여러 GPU가 필요하다.

원문 읽기