>기술 주변기기 >일체 포함 >Microsoft의 6페이지짜리 논문이 폭발합니다: 삼항 LLM, 정말 맛있습니다!

Microsoft의 6페이지짜리 논문이 폭발합니다: 삼항 LLM, 정말 맛있습니다!

WBOY
WBOY앞으로
2024-02-29 22:01:02501검색

이것은 Microsoft와 중국 과학 아카데미 대학이 최근 연구에서 제시한 결론입니다.

모든 LLM은 1.58비트입니다.

Microsoft의 6페이지짜리 논문이 폭발합니다: 삼항 LLM, 정말 맛있습니다!

구체적으로 본 연구에서 제안한 방법은 BitNet b1.58이라고 하는데, 이는 대규모 언어 모델의 "루트" 매개변수에서 시작된다고 할 수 있습니다.

16비트 부동 소수점 숫자 형식의 기존 저장소 (예: FP16 또는 BF16) 삼항 , 즉 {-1, 0, 1}으로 변경되었습니다.

Microsoft의 6페이지짜리 논문이 폭발합니다: 삼항 LLM, 정말 맛있습니다!

"1.58비트"는 각 매개변수가 1.58바이트의 저장 공간을 차지한다는 의미가 아니라, 각 매개변수가 1.58비트의 정보로 인코딩될 수 있다는 의미입니다.

이러한 변환 후 행렬의 계산에는 정수 추가만 포함됩니다. 따라서 대형 모델은 특정 정확도를 유지하면서 필요한 저장 공간과 컴퓨팅 리소스를 크게 줄일 수 있습니다.

예를 들어 BitNet b1.58은 모델 크기가 3B일 때 Llama와 비교하면 속도는 2.71배 증가한 반면 GPU 메모리 사용량은 원본의 거의 4분의 1에 불과합니다.

그리고 모델의 크기가 더 커지면(예: 70B)

속도 향상과 메모리 절약이 더욱 중요해집니다! 이 파괴적인 아이디어는 네티즌들에게 깊은 인상을 줬고, 이 논문은 신문에서도 높은 관심을 받았습니다. 오래된 농담:

1비트면 충분합니다.

Microsoft의 6페이지짜리 논문이 폭발합니다: 삼항 LLM, 정말 맛있습니다!

BitNet b1.58은 어떻게 구현됩니까? 계속해서 읽어보자.

모든 매개변수를 삼항으로 변환

이 연구는 실제로 이전에 발표된 논문을 기반으로 원래 팀이 수행한 최적화입니다. 즉, 원래 BitNet에 추가로 0 값이 추가됩니다. Microsoft의 6페이지짜리 논문이 폭발합니다: 삼항 LLM, 정말 맛있습니다!

전반적으로 BitNet b1.58은 여전히 ​​BitNet 아키텍처

(변압기)

를 기반으로 하며 nn.Linear를 BitLinear로 대체합니다.

자세한 최적화를 위해 가장 먼저 언급한 "0을 더하는 것", 즉 Microsoft의 6페이지짜리 논문이 폭발합니다: 삼항 LLM, 정말 맛있습니다!Weight Quantization

(Weight Quantization)입니다.

BitNet b1.58 모델의 가중치는 삼항 값 ​​{-1, 0, 1}으로 양자화됩니다. 이는 이진 시스템에서 각 가중치를 표현하기 위해 1.58비트를 사용하는 것과 같습니다. 이 정량화 방법은 모델의 메모리 공간을 줄이고 계산 프로세스를 단순화합니다.

둘째,

양자화 함수 설계

측면에서, 가중치를 -1, 0, +1로 제한하기 위해 연구자들은 절대 평균(absmean)이라는 양자화 함수를 사용했습니다.

Microsoft의 6페이지짜리 논문이 폭발합니다: 삼항 LLM, 정말 맛있습니다!

이 함수는 먼저 가중치 행렬의 평균 절대값에 따라 크기를 조정한 다음 각 값을 가장 가까운 정수(-1, 0, +1)로 반올림합니다. 다음 단계는

활성화 양자화

Microsoft의 6페이지짜리 논문이 폭발합니다: 삼항 LLM, 정말 맛있습니다!(활성화 양자화)

입니다.

활성화 값의 양자화는 BitNet의 구현과 동일하지만 활성화 값은 비선형 함수 이전의 [0, Qb] 범위로 스케일링되지 않습니다. 대신, 활성화는 영점 양자화를 제거하기 위해 [-Qb, Qb] 범위로 스케일링됩니다.

BitNet b1.58이 오픈 소스 커뮤니티와 호환되도록 하기 위해 연구팀은 RMSNorm, SwiGLU 등과 같은 LLaMA 모델의 구성 요소를 채택하여 주류 오픈 소스에 쉽게 통합될 수 있다는 점을 언급할 가치가 있습니다. 소스 소프트웨어.

마지막으로 실험적 성능 비교 측면에서 팀은 다양한 크기의 모델에서 BitNet b1.58과 FP16 LLaMA LLM을 비교했습니다.

Microsoft의 6페이지짜리 논문이 폭발합니다: 삼항 LLM, 정말 맛있습니다!

결과에 따르면 BitNet b1.58은 3B 모델 크기의 완전 정밀도 LLaMA LLM과 일치하기 시작하면서 대기 시간, 메모리 사용량 및 처리량이 크게 향상되었습니다.

그리고 모델 크기가 커지면 이러한 성능 향상이 더욱 중요해집니다.

네티즌: 소비자급 GPU에서 1200억 개의 대형 모델을 실행할 수 있습니다

위에서 언급했듯이 이 연구의 독특한 방법은 인터넷에서 많은 열띤 토론을 불러일으켰습니다.

DeepLearning.scala 작성자 Yang Bo는 다음과 같이 말했습니다.

원래 BitNet과 비교할 때 BitNet b1.58의 가장 큰 특징은 0개의 매개변수를 허용한다는 것입니다. 양자화 함수를 조금만 수정하면 0개의 매개변수 비율을 조절할 수 있지 않을까 생각합니다. 0개 매개변수의 비율이 크면 가중치를 희소 형식으로 저장할 수 있으므로 각 매개변수가 차지하는 평균 비디오 메모리는 1비트보다 훨씬 작습니다. 이는 중량 수준 MoE와 동일합니다. 일반 MoE보다 더 우아한 것 같아요.

동시에 그는 BitNet의 단점도 제기했습니다.

BitNet의 가장 큰 단점은 추론 중에 메모리 오버헤드를 줄일 수 있지만 최적화 상태와 그래디언트가 여전히 부동 소수점 수를 사용하고 훈련이 여전히 매우 어렵다는 것입니다. 메모리 소모적입니다. BitNet이 훈련 중에 비디오 메모리를 절약하는 기술과 결합할 수 있다면 기존의 반정밀도 네트워크에 비해 동일한 컴퓨팅 성능과 비디오 메모리로 더 많은 매개변수를 지원할 수 있어 큰 장점이 될 것이라고 생각합니다.

최적화 상태의 그래픽 메모리 오버헤드를 절약하는 현재 방법은 오프로드입니다. 그래디언트의 메모리 사용량을 절약하는 방법은 ReLoRA일 수 있습니다. 그러나 ReLoRA 논문 실험에서는 10억 개의 매개변수를 갖는 모델만 사용했을 뿐, 수백억, 수천억 개의 매개변수를 갖는 모델로 일반화할 수 있다는 증거는 없다.

Microsoft의 6페이지짜리 논문이 폭발합니다: 삼항 LLM, 정말 맛있습니다!

Δ이미지 출처: Zhihu, 허가를 받아 인용

그러나 일부 네티즌들은 다음과 같이 분석했습니다.

논문이 성립되면 24GB 소비자급 GPU에서 120B 대형 모델을 실행할 수 있습니다.

Microsoft의 6페이지짜리 논문이 폭발합니다: 삼항 LLM, 정말 맛있습니다!
Microsoft의 6페이지짜리 논문이 폭발합니다: 삼항 LLM, 정말 맛있습니다!

이 새로운 방법에 대해 어떻게 생각하시나요?

위 내용은 Microsoft의 6페이지짜리 논문이 폭발합니다: 삼항 LLM, 정말 맛있습니다!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 51cto.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제