개요
SwiGLU는 입력의 하나의 선형 투영에 Swish 활성화된 두 번째 투영을 곱하는 게이트 활성화 함수로, 변환기 피드포워드 레이어 내에서 학습 가능한 데이터 종속 게이트 역할을 합니다. 언어 모델 품질을 지속적으로 향상시키므로 거의 모든 최신 LLM이 이를 사용합니다.
SwiGLU 및 Gated Activations는 모델 품질, 인프라 비용, 대기 시간 및 규모에 따른 안정성에 영향을 미치는 기술 구성 요소입니다.
심층 분석
표준 변압기 피드포워드 블록은 ReLU 또는 GELU가 사이에 있는 두 개의 선형 레이어입니다. Dauphin 등이 제안한 Gated Linear Units. 2016년에는 첫 번째 투영을 두 개의 절반으로 나누고 절반을 사용하여 요소별 곱셈을 통해 다른 절반을 게이트로 연결했습니다. 2020년 Noam Shazeer가 대중화한 SwiGLU는 해당 게이트에 Swish(SiLU) 함수를 사용합니다. 출력 = (Swish(xW) * (xV)) W2, 2개가 아닌 3개의 가중치 행렬이 있습니다. 게이팅을 통해 네트워크는 차원별로 정보를 선택적으로 전달하거나 억제할 수 있습니다. 세 번째 행렬을 추가하면 매개변수가 증가하므로 구현 시 숨겨진 차원이 대략 2/3로 줄어들어 총 컴퓨팅이 GELU MLP와 유사하게 유지됩니다. Shazeer의 실험에서는 측정 가능한 Perplexity 이득이 나타났으며 LLaMA, PaLM 및 Mistral이 모두 이를 채택했습니다.
기술적 통찰력
Swish는 ReLU와 달리 작은 음수 값을 허용하는 부드럽고 비단조적인 함수인 x * sigmoid(beta*x)입니다. SwiGLU에서 '게이트' 분기 Swish(xW)는 '값' 분기에 xV 요소를 곱하는 0 또는 1 근처의 값을 생성하므로 각 숨겨진 유닛의 기여는 학습된 입력 종속 신호에 의해 변조됩니다. 세 번째 가중치 행렬은 비용입니다. 2/3 숨겨진 크기 트릭은 FLOP 예산을 바닐라 피드포워드 레이어와 일치하도록 유지합니다.
SwiGLU 및 게이트 활성화 마스터하기
SwiGLU는 입력의 하나의 선형 투영에 Swish 활성화된 두 번째 투영을 곱하는 게이트 활성화 함수로, 변환기 피드포워드 레이어 내에서 학습 가능한 데이터 종속 게이트 역할을 합니다. 언어 모델 품질을 지속적으로 향상시키므로 거의 모든 최신 LLM이 이를 사용합니다. SwiGLU 및 Gated Activations는 모델 품질, 인프라 비용, 대기 시간 및 규모에 따른 안정성에 영향을 미치는 기술 구성 요소입니다. 깊은 이해를 구축하려면 SwiGLU 및 Gated Activation을 단일 기능이 아닌 운영 모델로 취급하십시오. 즉, 원하는 결과를 정의하고, 가정을 명확히 하고, 시스템이 안정적으로 수행할 수 있는 작업과 여전히 전문가 판단이 필요한 작업을 분리하세요.
실제로 SwiGLU 및 Gated Activation을 사용하는 강력한 팀은 안정성과 비용에 맞춰 아키텍처, 데이터 및 인프라 선택을 최적화합니다. 명시적인 성공 기준을 문서화하고, 현실적인 데이터 및 워크플로를 기준으로 테스트하며, 일회성 벤치마크 승리보다는 관찰된 실패 패턴을 기반으로 반복합니다. 이론적 이해가 제품, 정책, 운영 전반에 걸쳐 지속 가능한 역량으로 바뀌는 곳입니다.
아키텍처 결정은 수년간 성능과 운영 비용을 결정합니다. 동시에 하나의 벤치마크를 최적화하면 더 광범위한 시스템 약점을 숨길 수 있습니다. 가장 탄력적인 접근 방식은 실험 속도와 거버넌스 규율을 결합하는 것입니다. 즉, 파일럿 실행, 증거 캡처, 결정 로그 게시, 모델 동작, 사용자 기대 및 규제 요구 사항이 발전함에 따라 보호 장치를 지속적으로 업데이트합니다.
전략적 영향
아키텍처 결정은 수년간 성능과 운영 비용을 결정합니다.
아키텍처 결정은 수년간 성능과 운영 비용을 결정합니다. 고품질 배포에서는 이는 측정 가능한 운영 규칙, 소유권 경계 및 반복적인 검토 의식으로 변환되므로 팀은 모호성을 확장하는 대신 자신감을 확장할 수 있습니다.
기술 교육은 팀이 최신 스택뿐만 아니라 올바른 스택을 선택하는 데 도움이 됩니다.
기술 교육은 팀이 최신 스택뿐만 아니라 올바른 스택을 선택하는 데 도움이 됩니다. 고품질 배포에서는 이는 측정 가능한 운영 규칙, 소유권 경계 및 반복적인 검토 의식으로 변환되므로 팀은 모호성을 확장하는 대신 자신감을 확장할 수 있습니다.
더 나은 엔지니어링 선택은 생산 시 신뢰성 사고를 줄입니다.
더 나은 엔지니어링 선택은 생산 시 신뢰성 사고를 줄입니다. 고품질 배포에서는 이는 측정 가능한 운영 규칙, 소유권 경계 및 반복적인 검토 의식으로 변환되므로 팀은 모호성을 확장하는 대신 자신감을 확장할 수 있습니다.
실제 구현
LLaMA, PaLM 및 Mistral은 동일한 컴퓨팅에서 복잡성을 낮추기 위해 GELU 피드포워드 계층을 SwiGLU로 대체합니다.
숨겨진 차원은 약 2/3(8/3d)로 확장되므로 추가 게이팅 행렬이 FLOP를 팽창시키지 않습니다.
Mixtral과 같은 전문가 혼합 모델은 SwiGLU 블록을 전문가별 피드포워드 네트워크로 사용합니다.
비전 및 다중 모드 변환기는 GeGLU/SwiGLU 게이팅을 빌려 MLP 하위 계층을 개선합니다.
구현 패턴
실제로 SwiGLU 및 Gated Activation
LLaMA, PaLM 및 Mistral은 GELU 피드포워드 계층을 SwiGLU로 대체하여 동일한 컴퓨팅에서 복잡성을 낮춥니다.
LLaMA, PaLM 및 Mistral은 GELU 피드포워드 레이어를 SwiGLU로 대체하여 동일한 컴퓨팅에서 복잡성을 낮춥니다. 팀은 일반적으로 품질 임계값을 미리 정의하고, 엣지 케이스에 대한 인적 에스컬레이션 경로를 유지하고, 시간이 지남에 따라 생산성 향상과 오류 비용을 모두 추적할 때 더 나은 결과를 얻습니다.
실제로 SwiGLU 및 Gated Activation
숨겨진 차원은 약 2/3(8/3d)로 확장되므로 추가 게이팅 행렬이 FLOP를 팽창시키지 않습니다.
숨겨진 차원은 약 2/3(8/3d)로 확장되므로 추가 게이팅 매트릭스가 FLOP를 부풀리지 않습니다. 팀은 일반적으로 품질 임계값을 미리 정의하고, 극단적인 경우에 대한 인적 에스컬레이션 경로를 유지하고, 시간이 지남에 따라 생산성 향상과 오류 비용을 모두 추적할 때 더 나은 결과를 얻습니다.
실제로 SwiGLU 및 Gated Activation
Mixtral과 같은 전문가 혼합 모델은 SwiGLU 블록을 전문가별 피드포워드 네트워크로 사용합니다.
Mixtral과 같은 전문가 혼합 모델은 SwiGLU 블록을 전문가별 피드포워드 네트워크로 사용합니다. 팀은 일반적으로 품질 임계값을 미리 정의하고, 극단적인 경우에 대한 인적 에스컬레이션 경로를 유지하고, 시간이 지남에 따라 생산성 향상과 오류 비용을 모두 추적할 때 더 나은 결과를 얻습니다.
실제로 SwiGLU 및 Gated Activation
비전 및 다중 모드 변환기는 GeGLU/SwiGLU 게이팅을 빌려 MLP 하위 계층을 개선합니다.
비전 및 다중 모드 변환기는 GeGLU/SwiGLU 게이팅을 빌려 MLP 하위 계층을 개선합니다. 팀은 일반적으로 품질 임계값을 미리 정의하고, 엣지 케이스에 대한 인적 에스컬레이션 경로를 유지하고, 시간이 지남에 따라 생산성 향상과 오류 비용을 모두 추적할 때 더 나은 결과를 얻습니다.
위험 및 가드레일
하나의 벤치마크를 최적화하면 더 광범위한 시스템 약점을 숨길 수 있습니다.
인프라 및 유지 관리 비용은 종종 과소평가됩니다.
시스템이 더욱 복잡해짐에 따라 보안 및 관찰 가능성의 격차가 커질 수 있습니다.
구현 로드맵
구현하기 전에 지연 시간, 품질, 비용 목표를 정의하세요.
구현하기 전에 지연 시간, 품질, 비용 목표를 정의하세요. 각 단계를 증거 게이트로 처리합니다. 기준이 충족되지 않으면 롤아웃을 일시 중지하고 간격을 좁힌 다음 사용을 확장합니다.
현실적인 로드 및 데이터 조건에서 벤치마킹합니다.
현실적인 로드 및 데이터 조건에서 벤치마킹합니다. 각 단계를 증거 게이트로 처리합니다. 기준이 충족되지 않으면 롤아웃을 일시 중지하고 간격을 좁힌 다음 사용을 확장합니다.
오류, 드리프트 및 사용자 영향에 대한 계측기 모니터링.
오류, 드리프트 및 사용자 영향에 대한 계측기 모니터링. 각 단계를 증거 게이트로 처리합니다. 기준이 충족되지 않으면 롤아웃을 일시 중지하고 간격을 좁힌 다음 사용을 확장합니다.
확장하기 전에 롤백 및 사고 대응 경로를 준비하세요.
확장하기 전에 롤백 및 사고 대응 경로를 준비하세요. 각 단계를 증거 게이트로 처리합니다. 기준이 충족되지 않으면 롤아웃을 일시 중지하고 간격을 좁힌 다음 사용을 확장합니다.