>  기사  >  기술 주변기기  >  Nvidia는 가지치기 및 증류 작업을 수행합니다. 동일한 크기로 더 나은 성능을 달성하기 위해 Llama 3.1 8B 매개변수를 절반으로 줄였습니다.

Nvidia는 가지치기 및 증류 작업을 수행합니다. 동일한 크기로 더 나은 성능을 달성하기 위해 Llama 3.1 8B 매개변수를 절반으로 줄였습니다.

WBOY
WBOY원래의
2024-08-16 16:42:23994검색
소형모델의 대두.

지난달 Meta는 Meta의 현재까지 가장 큰 모델인 405B와 두 개의 작은 모델이 포함된 Llama 3.1 모델 시리즈를 출시했습니다. 매개변수 양은 각각 700억과 80억입니다.

Llama 3.1은 오픈소스의 새로운 시대를 여는 것으로 간주됩니다. 그러나 차세대 모델은 성능이 강력하더라도 배포 시 여전히 많은 양의 컴퓨팅 리소스가 필요합니다.

따라서 업계에서는 다양한 언어 작업에서 충분한 성능을 발휘하고 배포 비용도 매우 저렴한 소규모 언어 모델(SLM)을 개발하는 또 다른 추세가 나타났습니다.

최근 NVIDIA 연구에 따르면 지식 증류와 결합된 구조화된 가중치 가지치기를 통해 처음에는 더 큰 모델에서 더 작은 언어 모델을 점차적으로 얻을 수 있는 것으로 나타났습니다. #🎜🎜 ##### 🎜🎜 ## 🎜🎜 ## 🎜🎜 ## 🎜🎜 ## 🎜🎜#, 메타 수석 AI 과학자 Jann LECun도 연구를 칭찬했습니다.

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强
NVIDIA 연구팀은 가지치기 및 증류 과정을 거쳐 Llama 3.1 8B를 Llama-3.1-Minitron 4B로 개선하여 오픈 소스로 만들었습니다. 이는 Llama 3.1 오픈 소스 시리즈 중 Nvidia의 첫 번째 릴리스입니다.

Llama-3.1-Minitron 4B는 Minitron 4B, Phi-2 2.7B, Gemma2 2.6B 및 Qwen2-1.5B를 포함하여 비슷한 크기의 최첨단 오픈 소스 모델보다 성능이 뛰어납니다.

이 연구의 관련 논문은 이미 지난달에 발표되었습니다.

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强

페이퍼 링크: https://www.arxiv.org/pdf/2407.14679

#🎜 🎜#
英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强논문 제목: Compact Language Models via Pruning and Knowledge Distillation
  • Pruning and Distillation
  • # 🎜 🎜#
  • 가지치기는 레이어를 제거하거나(깊이 가지치기) 뉴런과 주의 헤드를 제거하고 채널을 삽입함으로써(폭 가지치기) 모델을 더 작고 가늘게 만듭니다. 가지치기에는 일반적으로 정확성을 복원하기 위한 어느 정도의 재교육이 수반됩니다.

    모델 증류는 크고 복잡한 모델(종종 교사 모델이라고도 함)의 지식을 더 작고 단순한 학생 모델로 전달하는 기술입니다. 목표는 더 빠르게 실행하고 더 적은 리소스를 소비하면서 원래의 대규모 모델의 예측력을 대부분 유지하는 보다 효율적인 모델을 만드는 것입니다.
두 가지 주요 증류 방법이 있습니다. SDG 미세 조정과 고전 지식 증류입니다. 이 두 가지 증류 방법은 상호 보완적입니다. 이 기사에서는 고전 지식 증류 방법에 중점을 둡니다.

NVIDIA는 가지치기와 고전적 지식 증류를 결합한 방법을 사용하여 대형 모델을 구성합니다. 다음 그림은 단일 모델의 가지치기 및 증류 과정(상단)과 모델 가지치기 및 증류의 체인(아래쪽)을 보여줍니다. ). 구체적인 프로세스는 다음과 같습니다:

1. NVIDIA는 15B 모델로 시작하여 각 구성 요소(레이어, 뉴런, 헤드 및 임베딩 채널)의 중요도를 평가한 후 모델을 정렬하고 정리하여 만듭니다. 목표 크기 도달: 8B 모델.

2 그런 다음 원래 모델을 교사로, 정리된 모델을 학생으로 사용하여 모델 증류를 사용하여 가벼운 재훈련을 수행했습니다.

3. 훈련 후 작은 모델(8B)을 시작점으로 잘라서 더 작은 4B 모델로 만듭니다.

                                          ~                                  .

주의할 점은 모델을 잘라내기 전에 모델의 어느 부분이 중요한지 이해해야 한다는 것입니다. NVIDIA는 1024개 샘플의 소규모 보정 데이터 세트를 사용하여 모든 관련 차원(깊이, 뉴런, 헤드 및 임베딩 채널)의 정보를 동시에 계산하는 활성화 기반 순수 중요도 평가 전략을 제안하며 순방향 전파만 필요합니다. 이 접근 방식은 기울기 정보에 의존하고 역전파가 필요한 전략보다 더 간단하고 비용 효율적입니다. 英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强
가지치기 중에 특정 축 또는 축 조합에 대한 가지치기와 중요도 추정을 반복적으로 번갈아 가며 수행할 수 있습니다. 경험적 연구에 따르면 단일 중요도 추정을 사용하는 것만으로도 충분하며 반복 추정이 추가적인 이점을 가져오지 않는 것으로 나타났습니다.

고전 지식 증류를 사용한 재교육

아래 그림 2는 M층 Teacher 모델(원래 가지치기되지 않은 모델)에서 N 계층 학생 모델(가지치기 모델)을 증류하는 증류 과정을 보여줍니다. 스튜던트 모델은 스튜던트 블록 S와 티처 블록 T에 매핑된 임베딩 출력 손실, 로짓 손실, 변환기 인코더별 손실의 조합을 최소화하여 학습됩니다. 그림 2: 증류 훈련 손실.

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强

가지치기 및 증류 모범 사례NVIDIA 압축 언어 모델을 기반으로 한 가지치기 및 지식 증류 기반 광범위한 절제 연구를 통해 학습 결과를 다음과 같은 구조화된 압축 모범 사례로 요약했습니다.

첫번째는 사이즈 조절입니다.

LLM 세트를 훈련하려면 가장 큰 LLM을 먼저 훈련한 다음 반복적으로 가지치기 및 증류를 통해 더 작은 LLM을 얻습니다.

다단계 학습 전략을 사용하여 가장 큰 모델을 학습하는 경우 마지막 학습 단계에서 얻은 모델을 잘라내고 다시 학습하는 것이 가장 좋습니다.
  • 대상 크기에 가장 가까운 사용 가능한 소스 모델을 정리합니다.
  • 두 번째는 가지치기입니다.
  • 깊이 가지치기보다 너비 가지치기를 우선시합니다. 이는 매개변수 크기가 15B 미만인 모델에 적합합니다.

반복 중요도 추정의 이점이 없으므로 단일 중요도 추정을 사용합니다.
  • 세 번째는 재교육입니다.
  • 재훈련에는 정규 훈련 대신 증류 손실만 사용하세요.

깊이가 크게 감소하는 경우 로짓, 중간 상태 및 임베딩 증류를 사용하세요.
  • 깊이가 크게 감소하지 않는 경우 로짓 전용 증류를 사용하세요.
  • Llama-3.1-Minitron: 모범 사례를 행동으로 옮기기
  • Meta가 최근 출시한 기능 강력한 Llama 3.1 오픈 소스 모델 제품군은 많은 벤치마크에서 폐쇄 소스 모델과 유사합니다. Llama 3.1의 매개변수 범위는 405B에서 70B 및 8B까지 다양합니다.
Nemotron 증류 경험을 바탕으로 NVIDIA는 Llama 3.1 8B 모델을 더 작고 효율적인 4B 모델로 증류하기 시작했으며 다음과 같은 조치를 취했습니다.

#🎜🎜 ##🎜 🎜# 선생님 미세 조정

깊이 전용 가지치기

  • 폭 전용 가지치기# 🎜🎜#

  • 정확도 벤치마크
  • 성능 벤치마크
  • # 🎜🎜 ## 🎜🎜#teacherfine-tuning
  • 모델 교육의 기반이 되는 원본 데이터 세트의 분포 편향을 수정하기 위해 NVIDIA는 먼저 정리되지 않은 8B 모델을 해당 모델에서 교육했습니다. 데이터 세트(94B 토큰) 미세 조정되었습니다. 실험에 따르면 분포 편향이 수정되지 않으면 교사 모델이 추출 시 데이터세트에 대해 최적이 아닌 지침을 제공하는 것으로 나타났습니다.

  • 깊이 전용 가지치기

  • 8B에서 4B로 줄이기 위해 NVIDIA는 16개 레이어(50%)를 가지치기했습니다. 먼저 모델에서 각 레이어 또는 연속 하위 레이어 그룹을 제거하여 중요성을 평가하고 다운스트림 작업에서 LM 손실의 증가 또는 정확도의 감소를 관찰합니다.

아래 그림 5는 1, 2, 8 또는 16개 레이어를 제거한 후 검증 세트의 LM 손실 값을 보여줍니다. 예를 들어, 레이어 16에 대한 빨간색 플롯은 처음 16개 레이어가 제거될 경우 발생하는 LM 손실을 나타냅니다. 레이어 17은 첫 번째 레이어를 유지하고 레이어 2~17을 삭제해도 LM 손실이 발생함을 나타냅니다. Nvidia는 다음과 같이 관찰합니다. 시작 및 종료 레이어가 가장 중요합니다.

                                          ~  그림 5: 중간 레이어의 깊이만 가지치기의 중요성.

그러나 NVIDIA는 이러한 LM 손실이 반드시 다운스트림 성능과 직접적인 관련이 있는 것은 아니라는 점을 관찰했습니다.

아래 그림 6은 각 가지치기 모델의 Winogrande 정확도를 보여주며, 이는 16~31번째 레이어를 삭제하는 것이 가장 좋음을 보여줍니다. 여기서 31번째 레이어는 끝에서 두 번째 레이어, 5번째는 가지치기 모델 -shot 정확도는 무작위 정확도(0.5)보다 훨씬 높습니다. Nvidia는 이 통찰력을 활용하여 레이어 16부터 31까지를 제거했습니다.

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强

                                             정확성.

너비 전용 가지치기

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强NVIDIA는 너비 축을 따라 임베딩(숨김) 및 MLP를 정리합니다. 중간 크기 Llama 3.1 8B를 압축합니다. 구체적으로 그들은 앞서 설명한 활성화 기반 전략을 사용하여 각 관심 헤드, 임베딩 채널 및 MLP 숨겨진 차원에 대한 중요도 점수를 계산합니다.

중요도 평가 후 NVIDIA는 MLP 중간 차원을 14336에서 9216으로 정리하기 위해 을 선택했습니다.

숨겨진 크기를 4096에서 3072로 정리합니다.

헤드 수와 레이어 수에 다시 주의를 기울이세요.

It is worth mentioning that after single-sample pruning, the LM loss of width pruning is higher than that of depth pruning. However, after a brief retraining period, the trend reversed.

Accuracy Benchmark

NVIDIA distilled the model using the following parameters

  • Peak learning rate = 1e-4

  • Minimum learning rate = 1e-5

  • 40 steps linear warm-up

  • Cosine Decay Plan

  • Global batch size = 1152

Table 1 below shows the Llama-3.1-Minitron 4B model variants (width pruning and depth pruning) similar to the original Llama 3.1 8B model, others Performance comparison of large and small models on benchmarks across multiple domains. Overall, NVIDIA once again confirmed the effectiveness of a wide pruning strategy compared to deep pruning that follows best practices.

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强

                                                                                                                                                                                                                Table 1: Accuracy comparison of Minitron 4B base model compared to base models of similar scale.

To verify whether the distilled model can become a powerful instruction model, NVIDIA used NeMo-Aligner to fine-tune the Llama-3.1-Minitron 4B model.

They used Nemotron-4 340B training data and evaluated on IFEval, MT-Bench, ChatRAG-Bench and Berkeley Function Calling Leaderboard (BFCL) to test instruction following, role-playing, RAG and function calling capabilities. Finally, it was confirmed that the Llama-3.1-Minitron 4B model can be a reliable command model and outperform other baseline SLMs.

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强

                                                                                                                                                                                                                          Table 2: Accuracy comparison of aligned Minitron 4B base model with similarly sized aligned models.

Performance Benchmarks

NVIDIA optimized the Llama 3.1 8B and Llama-3.1-Minitron 4B models using NVIDIA TensorRT-LLM, an open source toolkit for optimizing LLM inference.

The next two figures show the throughput requests per second of different models at FP8 and FP16 precision under different use cases, expressed as the input sequence length/output sequence length (ISL/OSL) combination of the batch size of 32 for the 8B model and The batch size of the 4B model is an input sequence length/output sequence length (ISL/OSL) combination of 64, thanks to the smaller weights allowing a larger batch size on an NVIDIA H100 80GB GPU.

The Llama-3.1-Minitron-4B-Depth-Base variant is the fastest, with an average throughput of about 2.7 times that of Llama 3.1 8B, while the Llama-3.1-Minitron-4B-Width-Base variant has an average throughput of Approximately 1.8 times that of Llama 3.1 8B. Deployment in FP8 also improves the performance of all three models by approximately 1.3x compared to BF16.

英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强
英伟达玩转剪枝、蒸馏:把Llama 3.1 8B参数减半,性能同尺寸更强

                                                                                                                                                                                                                      80GB GPU.

Conclusion

Pruning and classical knowledge refining is a very cost-effective method to progressively obtain LLMs of smaller sizes, achieving higher accuracy than training from scratch in all domains . This is a more efficient and data-efficient approach than fine-tuning on synthetic data or pre-training from scratch.

Llama-3.1-Minitron 4B is NVIDIA’s first attempt at using the state-of-the-art open source Llama 3.1 series. To use the SDG fine-tuning of Llama-3.1 with NVIDIA NeMo, see the /sdg-law-title-generation section on GitHub.

For more information, please see the following resources:

  • https://arxiv.org/abs/2407.14679

  • https://github.com/NVlabs/Minitron

  • https:// huggingface.co/nvidia/Llama-3.1-Minitron-4B-Width-Base

  • https://huggingface.co/nvidia/Llama-3.1-Minitron-4B-Depth-Base

Reference links:

https://developer.nvidia.com/blog/how-to-prune-and-distill-llama-3-1-8b-to-an-nvidia-llama-3-1-minitron-4b -model/

위 내용은 Nvidia는 가지치기 및 증류 작업을 수행합니다. 동일한 크기로 더 나은 성능을 달성하기 위해 Llama 3.1 8B 매개변수를 절반으로 줄였습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.