소식

3.8B 매개변수만 활성화되며 성능은 동일한 7B 모델과 비슷합니다!Microsoft의 교육 미세 조정을 사용할 수 있습니다.

2024-07-18

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

  • 크레시는 아오페이 사원(Aofei Temple)에서 왔습니다.
    Qubits 공개 계정 QbitAI

매개변수의 60%만 활성화하면 됩니다., 완전히 활성화된 밀집 모델과 유사한 성능을 달성할 수 있습니다.

Microsoft Research Asia의 새로운 연구에서는 이 모델을 구현합니다.완전히 희박한 활성화, 추론 비용을 크게 줄입니다.

그리고 처음부터 훈련을 하든, 계속 훈련을 하든, 미세 조정을 하든 광범위한 적용 범위를 갖고 있어 효과적인 지원을 제공할 수 있습니다.



메소드가 호출됩니다.Q-스파스, 뉴런 수준에서 모델 희소성을 달성하고 다른 방법보다 더 세분화되어 동일한 추론 오버헤드에서 성능과 희소성 비율이 모두 더 좋습니다.

이름에서 Q는 Quantization을 의미하며, 이는 일반 모델 외에정량화 기술과 호환 가능, 다양한 정량화 방법의 모델에 적합합니다.

또한 저자는 Q-Sparse에 모델 정량화 기술을 결합하면 더 큰 비용 절감과 효율성 향상을 이룰 수 있다고 밝혔습니다.

또한, 팀은 Q-Sparse를 연구하는 동안 매개변수 크기, 희소성 비율 및 모델 성능 간의 관계에 대한 심층적인 탐색도 수행하여 이를 발견했습니다.모델 추론 최적화를 위한 "확장 법칙"

일부 네티즌들은 이 기술이 ReLU보다 정말 좋고 더 낫다고 믿고 있습니다.



다른 사람들은 (AMD의) ROCm이 Nvidia보다 더 빨리 이 기술을 지원할 수 있다면 좋겠다고 말하면서 희망 모드를 켰습니다.



Top-K 함수를 사용하여 희소화 구현

Q-Sparse가 수행하는 핵심 작업은 다음과 같습니다.입력 텐서에 Top-K 희소화 함수 적용

특히 Transformer 아키텍처는 Attention 레이어와 Feedforward 레이어 모두에서 투영을 위해 nn.Linear 선형 레이어(행렬 곱셈)를 사용하며 이는 Y=X·W^T로 표현될 수 있습니다. (여기서 X는 입력 텐서, W는 가중치, Y는 출력 텐서)

Q-Sparse에서는 입력 활성화 텐서 X의 경우 절대값 |X|가 먼저 계산되고 정렬됩니다.그 중 절대값이 가장 큰 K개 요소를 찾습니다.

여기서 K는 희소화 정도를 결정하는 미리 설정된 하이퍼파라미터입니다.

그런 다음 Q-Sparse는 X와 동일한 모양의 이진 마스크 ​​텐서 M을 생성합니다. 계열에서 절대값이 가장 큰 K 요소에 해당하는 위치는 0입니다.

그런 다음, 입력 텐서 X와 마스크 텐서 M에 대해 Hadamard 곱(요소별 곱셈) 연산을 수행하여 희소 텐서를 얻습니다.X_희소

순방향 전파 프로세스 동안 희소 텐서 X_sparse는 원래 입력 텐서 X를 대체하여 후속 계산(예: 행렬 곱셈)에 참여합니다.

X_sparse의 대부분 요소가 0으로 설정되었으므로 계산량과 메모리 대역폭 요구 사항을 크게 줄일 수 있습니다.



역전파 동안 Q-Sparse는 다음을 사용합니다.통과 추정기(Straight-Through Estimator, STE)를 사용하여 Top-K 함수의 기울기를 계산합니다.

전통적인 훈련 방법에서는 일반적으로 네트워크 매개변수에 대한 손실 함수의 기울기를 계산하고 경사하강법을 사용하여 매개변수를 업데이트하여 손실을 최소화해야 합니다.

그러나 네트워크에 양자화 및 Top-K와 같은 미분 불가능한 작업이 있는 경우 입력에 대한 이러한 작업의 출력 그라데이션이 대부분의 지점에서 0이기 때문에 기울기 계산에 문제가 발생하여 불가능합니다. 그라데이션을 효과적으로 전파합니다.

STE는 희소화 전에 기울기를 텐서에 직접 전달하여 기울기 소멸 문제를 방지합니다.

일반적인 역전파에서 x에 대한 손실 함수 L의 기울기는 ∂L/∂x=∂L/∂y⋅∂y/∂x이지만 미분 불가능하기 때문에 직접 계산할 수는 없습니다.

STE의 해결책은 희소 텐서 y에 대한 손실 함수의 기울기만 계산한 다음 이를 원래 텐서 x에 직접 복사하는 것입니다. 즉, ∂L/∂y를 ∂L/∂x의 추정값으로 직접 사용하는 것입니다.


△STE 유무에 따른 기울기 비교

피드포워드 레이어의 경우 Q-Sparse는 다음을 사용합니다.제곱된 ReLU 함수기존의 ReLU 활성화 함수 대신 제곱 연산을 통해 활성화의 희소성을 더욱 향상시킬 수 있습니다(∨는 Hadamard 곱을 나타냄).



또한 양자화 모델에 적응하기 위해 Q-Sparse는 Top-K 희소성을 적용하기 전에 먼저 입력 텐서를 양자화하여 희소성 연산이 양자화 표현과 호환되는지 확인합니다. 그 기능은 다음과 같습니다.



그 중 ε은 분모가 0이 되는 것을 피하기 위해 사용되는 작은 상수이다.

특히, 1비트 양자화된 가중치의 경우 Q-Sparse는 다음과 같은 양자화 함수를 사용합니다. 여기서 α는 가중치 텐서 W의 평균 절대값입니다.



60% 활성화 매개변수는 동일한 효과를 얻습니다.

비교 실험을 통해 Q-Sparse는 희소성 비율 및 모델 성능 측면에서 이전 ReLU 방법보다 훨씬 우수하다는 것을 보여줍니다.



Q-Sparse의 구체적인 효과와 관련하여 저자는 스크래치 훈련, 지속적인 훈련, 미세 조정이라는 세 가지 작업에 대한 성능을 평가했습니다.

처음부터 훈련하기실험에 사용된 모델은 Llama입니다. 결과는 700M 및 7B 모델에서 70% top-K(즉, 전체 희소성 비율의 40%)를 사용한 Q-Sparse가density와 비슷한 훈련 손실을 달성할 수 있음을 보여줍니다. 기준선.



훈련을 계속하다밀도가 높은 모델을 희소화하는 것이 목적이며, 여기서 실험 대상은 Mistral-7B입니다.

그 결과, 활성화 매개변수가 2.9B와 3.8B일 때 ARC, MMLU 및 기타 데이터 세트의 모델 점수는 크게 떨어지지 않았습니다.



존재하다미세 조정실험에서 Qwen-7B와 Mistral-7B 모델 모두에 대해 Q-Sparse는 활성화 매개변수의 약 60%를 사용하여 밀집 모델에 매우 가까운 성능을 달성하면서 지속적인 훈련과 유사한 결과를 보여주었습니다.



이러한 결과는 동일한 성능으로 밀집된 모델에 비해희소 활성화 모델은 추론 중에 활성화 매개변수를 크게 줄일 수 있습니다., 따라서 소비되는 FLOPS 수를 줄입니다.

정량적 모델의 경우 자체 개발한 BitNet b1.58 모델에 Q-Sparse를 적용하고 여러 데이터 세트에 대한 훈련 및 평가를 수행했습니다.

700M과 7B 두 스케일 모두에서 Q-Sparse를 사용한 양자화 모델의 수렴 속도와 최종 손실 함수 값이 Q-Sparse를 적용하지 않은 양자화 모델(BitNet b1.58)과 비슷함을 알 수 있습니다.

이는 Q-Sparse가정량적 모델에 완벽하게 통합 가능, 모델의 훈련 및 수렴에 큰 영향을 미치지 않습니다.

이에 따라 저자는 Q-Sparse와 양자화 기술을 결합하면 추론 단계에서 대규모 언어 모델의 효율성을 더욱 향상시킬 수 있다고 믿는다.



추론 최적화를 위한 새로운 "확장 법칙"을 알아보세요

희소 활성화를 사용할 때 이러한 모델의 성능을 평가하는 것 외에도 저자는 모델 성능, 규모 및 희소율 간의 관계를 탐색하고 몇 가지 새로운 발견을 했습니다.

희소 활성화 모델의 성능 스케일링 법칙: 저자는 밀도 모델과 유사하게 희소 활성화 모델의 성능도 거듭제곱 법칙 스케일링 관계를 따른다는 것을 발견했습니다.

구체적으로, 희소율 S가 주어지면 모델이 수렴할 때의 손실 함수 값 L(N,S)은 다음 공식으로 근사화할 수 있습니다.



그 중 N은 모델 매개변수의 수이고, E는 무한대에서의 모델 손실을 나타내는 상수이고, A(S)는 희소율 S와 관련된 스케일링 인자입니다.

이 스케일링 법칙은 다음을 보여줍니다.묽게 한부족한활성화 모델의 성능은 모델의 크기가 커질수록 향상되지만, 개선 속도는 점차 느려집니다.



동시에 저자는 모델의 성능이 희소성 비율에도 영향을 받는다는 사실을 발견했습니다.

매개변수 규모와 성능의 관계 섹션에서 언급했듯이 A(S)는 희소율 S와 관련된 규모 조정 인자이며 다음 공식으로 근사화할 수 있습니다.



여기서 B와 C는 상수이고 β는 지수 감쇠율을 제어하는 ​​매개변수입니다.

이 공식은 희소율 S가 증가할 때(모델이 더 희소해짐) 다음을 의미함을 보여줍니다.희소성 비율이 높을수록 성능 저하가 발생합니다., 감소율은 기하급수적입니다.



위의 결과를 바탕으로 저자는 예산(추론 중 부동 소수점 연산)이 확실할 때 모델 손실 함수의 값을 최소화할 수 있는 추론을 위한 최적의 희소율 S*를 도출했습니다.

완전 정밀도(FP32) 모델의 경우 최적의 희소성 비율은 약 45.58%인 반면, 저정밀도(예: 1.58비트) 모델의 경우 최적의 희소성 비율은 약 61.25%로 더 높습니다.



저자는 모델 크기가 증가함에 따라 희소 활성화 모델과 밀집 모델 간의 성능 격차가 점차 좁아지는 것을 관찰했습니다.

이는 스케일링 법칙으로 설명할 수 있습니다. 모델 크기 N이 무한대에 가까워지는 경향이 있을 때 희소 활성화 모델의 손실 함수 값은 L(,S)=E가 되는 경향이 있는 반면, 밀집 모델의 손실 함수 값은 L이 되는 경향이 있습니다. (무한대,0)=E.

이는 매우 큰 규모에서 희소 활성화 모델이 조밀한 모델과 비슷한 성능을 달성할 수 있어 대규모 희소 활성화 모델을 설계하고 교육하는 데 유용한 참조를 제공할 수 있음을 의미합니다.

논문 주소: https://arxiv.org/abs/2407.10969