본문 바로가기
Paper review

[Tech Report] Nemotron-4 15B Technical Report

by AI미남홀란드 2024. 3. 5.
728x90

Nemotron

 

안녕하세요 오늘 소개해드릴 논문 리뷰는 Nvidia의 오픈소스 언어모델 Nemotron-4 15B입니다.

 

기존의 엔비디아도 오픈소스 생태계를 위한 언어모델 네모트론을 시리즈별로 발표하기는 했었는데 반응이 그럭저럭이었습니다. 3 같은 경우 Access 신청을 받아서 써볼 수가 있었는데요. 현재 허깅페이스에는 네모트론 3가 업로드가 돼있긴 합니다.

 

nvidia/nemotron-3-8b-base-4k · Hugging Face

Nemotron-3-8B-Base-4k Model Overview License The use of this model is governed by the NVIDIA AI Foundation Models Community License Agreement. Description Nemotron-3-8B-Base-4k is a large language foundation model for enterprises to build custom LLMs. This

huggingface.co

 

이번 모델은 버전 4로 15B 사이즈입니다. 7B , 13B가 보통 언어모델의 중복이 이루어졌다면 15B 크기로 기존의 모델들보다 다소 사이즈가 큰 모델입니다. 위 논문은 어차피 테크니컬 리포트이기 때문에 Insight 요소는 크게 없을 듯 하지만 모델을 만든 구조 쪽을 보면 좋을 듯합니다.



논문 원문 링크

Abstract

 

Nemotron-4 15B 8 개의 텍스트 토큰으로 훈련된 150 개의 파라미터를 가진 대규모 다국어 언어 모델입니다.  모델은 영어, 다국어  코딩 작업에 대한 평가에서 강력한 성능을 보여주며, 유사한 크기의 기존 오픈 모델을 7  4개의 다운스트림 평가 영역에서 모두 능가하고 나머지 영역에서는 선도하는 오픈 모델들과 경쟁력 있는 성능을 달성합니다. 특히, Nemotron-4 15B 유사한 크기의 모델  최고의 다국어 능력을 보여주며, 크기가 4 이상 크거나 다국어 작업에 명시적으로 전문화된 모델들마저 능가합니다.

 

Introduce

네모트론의 성능비교

 

최근 언어 모델 사전 훈련 노력은 모델 크기와 함께 데이터를 확장하는 Chinchilla 스케일링 법칙 영감을 받았습니다. 이는 고정된 컴퓨트 예산 하에서 모델의 크기만 확장하는 과거의 작업과 비교됩니다. 예를 들어, 비슷한 데이터 분포를 가진  개의 GPT 모델이 있는 경우, 1.4 토큰에서 훈련된 650 파라미터 모델이 3000 토큰에서 훈련된 2800 파라미터 모델보다 다운스트림 작업에서  높은 정확도를 보입니다. 이러한 트레이드오프는 추론 관점에서 모델 크기를 증가시키는 대신  많은 데이터에 대한 계산을 할당하는 것이 매력적이며, 모델을 제공하는  필요한 지연 시간과 계산량을 줄입니다. 결과적으로, 고품질의 다중- 토큰 데이터셋을 공공 소스에서 수집하는 것으로 언어 모델링 훈련 노력의 주요 초점이 이동했습니다. 우리는 8 개의 영어, 다국어  코딩 텍스트 토큰으로 훈련된 Nemotron-4 15B 소개함으로써  트렌드를 계속합니다.  모델은 단일 NVIDIA A100 또는 H100 GPU에서 운영될  있는 최고의 범용 대형 언어 모델로 개발되었습니다. Nemotron-4 15B 다양한 영어, 코드  다국어 평가 영역에서 높은 다운스트림 정확도를 보여주며, 유사한 크기의 선도하는 오픈 모델들과 비교했을  상당히 우수한 성능을 나타냅니다. Nemotron-4 15B는 다국어 데이터의 상당한 양에 훈련되었기 때문에 현재 그 크기 등급에서 모든 다국어 벤치마크에서 최고의 범용 모델입니다.

Vocabulary sizer가 비교적 크지 않은듯 하다.

친칠라 스케일링은 크기가 클수록 더 나을 때가 있다는 인사이트입니다. 모델의 크기를 키우는 것보다 훈련데이터 양을 키움으로써, 적은 파라미터를 가진 모델이 많은 파라미터를 가진모델보다 더 정확도가 높다.

-> 한국어가 잘되는지는 Test를 해봐야 하지만, 다양한 데이터셋으로 학습이 되었다는 관점에서 기대해 볼 만하지 않을까 싶다.

 

Architecture Details

네모트론도 디코더기반의 모델로 표 1의 하이퍼 파라미터세팅이고 32억 개의 임베딩 파라미터와 125억 개의 비임베딩 파라미터가 있습니다. 회전 위치 임베딩 RoPE, SentencePiece tokenizer, squared ReLU 활성화 함수를 사용하고, 편향 조건이 없으며, 드롭아웃이 0이고, 입력-출력 임베딩이 묶이지 않은 상태입니다. 그룹화된 쿼리 사용 더 효율적이고 빠른 추론을 위해서 그룹쿼리 어텐션을 사용하였습니다.

그룹 쿼리 어텐션은 라마에서 추론속도 향상을 위해 사용된 어텐션 기법이다. 기존의 MQA와 MHA의 어텐션 방법론들의 학습의 불안정성을 개선하고자 Google에서 발표한 방법론이다. 최근에 나온 Gemma가 MHA를 사용하고 있다.

정답은 없지 않을까?
그림2

 

Nemotron-4 15B는 8조 토큰으로 구성된 사전 훈련 데이터 세트에서 훈련됩니다. 고수준에서 데이터는 세 가지 다른 유형으로 나뉩니다: 영어 자연어 데이터(70%), 다언어 자연어 데이터(15%), 그리고 소스 코드 데이터(15%).

영어 데이터 코퍼스는 웹 문서, 뉴스 기사, 과학 논문, 책 등 다양한 출처와 도메인에서 큐레이션 된 문서로 구성되며, 사전 훈련 세트에서 사용된 분포는 그림 2에서 강조되었습니다. 코드 및 다언어 데이터는 다양한 자연 및 프로그래밍 언어로 구성됩니다. 이 언어들에서 적절히 토큰을 샘플링하는 것이 이러한 도메인에서 강력한 정확도를 달성하는 데 중요하다는 것을 발견했습니다

 

그림3 사전 교육에 사용된 코딩 언어의 데이터 분포입니다. 각 막대 안의 숫자는 개별 언어가 전체 코드 분포에서 차지하는 비율을 나타냅니다.

 

위 그림 3을 보다시피 markdown이 제일 많은 학습량을 가지고 있기 때문에 확실히 Prompt engineering을 할 때 마크다운의 양식을 기반으로 하면 더 모델이 찰떡 같이 알아먹을 수 있겠구나 생각했습니다. html 관련 태그때문에 확실히 Javascript 가 많은 편이었고, 파이썬, C순이었습니다. 언어가 되게 편향되지 않게 골고루 학습된 모습을 볼 수 있었는데요. 생각보다 C언어가 학습이 많이 되어있어서, C코드도 잘 짜주려나 궁금해지긴 합니다.

 

Nemotron-4 사전 훈련은 384개의 DGX H100 노드를 사용하여 진행되었습니다.  노드에는 NVIDIA 호퍼 아키텍처를 기반으로  8개의 H100 80GB SXM5 GPU 포함되어 있습니다(NVIDIA, 2022).  H100 GPU 희소성 없이 16비트 부동 소수점(bfloat16) 연산을   최대 989 테라FLOP/s의 처리량을 가집니다.  노드 내의 GPU NVLink  NVSwitch(nvl) 의해 연결되며, GPU  대역폭은 900 GB/s( 방향으로 450 GB/s)입니다.  노드는 노드  통신을 위해 8개의 NVIDIA Mellanox 400 Gbps HDR InfiniBand 호스트 채널 어댑터(HCAs) 가지고 있습니다.

배치 크기 램프업 일정 및 시간 및 효율성 지표와 Nemotron-4 15B의 시간 및 효율성 지표 파라미터 모델에 대한 시간 및 효율성 지표.

 

NV 링크라고 해서 H100 GPU 규격을 만들어서 하나의 데이터센터로 운영할 수 있게끔 nvidia 가 만들어서 현재 판매 중이고 그 덕분에 주식이 많이 올랐고, 대규모 언어모델의 학습, 추론에 사용되곤 합니다. PCI-Expree Bus를 이동해서 왔다 갔다를 해야 하는데 GPU가 GPU 끼리 디렉트로 빠르게 통신할 수 있도록 구현을 해서 더 많은 데이터를 보낼 수 있습니다. 놀라운 게 초당 900GB의 데이터 전송이 가능하고 PCle Gen 5의 7배라고 합니다.

기존의 통신방법

 

 모델은 8-방향 텐서 병렬성과 데이터 병렬성의 조합을 사용하여 훈련되었으며, 데이터 병렬 복제본에 옵티마이저 상태를 샤딩하기 위해 분산 옵티마이저도 사용됩니다. 데이터 병렬성의 정도는 배치 크기가 증가함에 따라 96에서 384까지 변화되었습니다.  2 배치 크기 증가의 3단계를 요약하고, 반복 시간  모델 FLOP/s 활용도(MFU) 포함합니다. MFU 모델 훈련에서 GPU 얼마나 효율적으로 사용되는지를 정량화합니다. 훈련은 대략 13일의 달력 일로 완료되었습니다

그림 4: 사전 교육에 사용되는 다국어 언어의 데이터 분포. 각 막대 안의 숫자 는 개별 언어가 전체 다국어 분포에서 차지하는 비율을 나타냅니다.

 

위 그림에서 주목할 점은 생각보다 많은 KO 비율이었다. openAI의 GPT가 한국어를 0.0 단위의 학습을 시킨 걸 생각해 보면 이수치 높은 게 아닌가(?)

 

Nemotron-4의 연속 훈련 과정은 최근의 연구)와 유사하게, 모델 훈련의 마지막에서 데이터 분포와 학습률 감소 일정을 전환하는 것이 모델 품질을 크게 향상한다는 것을 발견했습니다. 구체적으로, 8T 사전 훈련 데이터셋 전체에 대한 훈련을 마친 후, 동일한 손실 목표를 사용하고 사전 훈련 토큰에 비해 소수의 토큰에 대해 연속 훈련을 수행합니다.

 추가적인 연속 훈련 단계에서는  가지 구별되는 데이터 분포를 활용합니다.  번째 분포는 연속 훈련 동안 샘플링된 대부분의 토큰이 사용되는 곳으로, 사전 훈련 중에 이미 소개된 토큰을 사용하지만,  높은 품질의 소스에   샘플링 가중치를 두는 분포입니다.  번째 분포는 벤치마크 스타일의 정렬 예제를 소수 도입하여 모델이 하류 평가에서 이러한 질문에   응답할  있도록 하면서, 모델 성능이 낮은 영역에서  데이터 소스를  중시하는 방식입니다. 학습률의 크기보다는 감소의 경사를 우선시하는 학습률 일정과 함께, 이러한 데이터 분포의 순서와 스타일이 모델이 사전 훈련 데이터셋에서 부드럽게 전환하고 새롭게 강조된 데이터 영역을   학습할  있도록 한다는 것을 발견했습니다

 

데이터 분포 전환을 통해서 모델의 품질을 향상했다는 부분이 인상적이었다. 고품질 소스의 데이터 샘플링 가중치를 증가시켜 유용성을 높인듯했다. 위 모델에 nvidia가 얼마나 신경을 썼는지 알 수 있는 부분이 아닐까 생각했다.

 

Results

Nemotron-4 15B 모델이 다양한 하류 평가 영역에서 어떻게 수행되는지 평가합니다. 이러한 영역은 다양한 작업과 도메인을 포함하며, 모델의 범용성과 특정 영역에서의 성능을 측정합니다. 제공된 평가 범주는 상식 추론, 인기 있는 집계 벤치마크, 수학, 코드, 다국어 작업 등을 포함합니다. Nemotron-4 특히 상식 추론 작업에서 뛰어난 성능을 보여주며, 다른 최신 모델들과 비교하여 평균적으로 높은 점수를 달성합니다.

표3. ZeroShot 설정으로 표준 추론 벤치마크 결과

 

결과를 봐도 놀라운 점은 QWEN 이 약간 오픈소스 모델 생태계 강자였었는데 아직 QWEN 만큼의 SIQA의 성능은 나오지 않는 듯하다. (SIQA : 사회적 상식 지식) 논문에서 강조하는 건 수학적인능력과, 코드, 그리고 다국어 능력에 대한 강조였다. 말 그대로 범용적으로 쓸 수 있는 모델이란 것을 강조하고 싶은 것 같다.

Conclusion

 모델은 디코더 전용 트랜스포머 기반의 대규모 언어 모델로, 영어와 추가적인 53개의 자연어, 그리고 43개의 프로그래밍 언어를 포함한 8 개의 토큰에 대해 훈련되었습니다. Nemotron-4 15B  규모에서 일반 목적의 언어 모델  최강의 다국어 성능을 나타내며, 심지어 다국어 도메인에 특화된 모델들마저도 능가하는 성능을 보여줍니다.

 

Paper Point

  • 다국어 성능: Nemotron-4는 다양한 언어에 걸쳐 우수한 성능을 보여주며, 이는 모델이 다양한 언어 및 문화적 배경을 가진 사용자들에게 적용될 수 있음을 의미합니다.
  • 대규모 훈련 데이터: 모델이 8조 개의 토큰에 대해 훈련되었다는 것은, 대규모 언어 모델이 이전에 추정된 것보다 더 많은 토큰으로 뛰어난 결과를 달성할 수 있음을 시사합니다. 이는 대규모 언어 모델의 발전 가능성을 제시하며, 더 많은 데이터로 훈련될수록 모델의 성능이 향상될 수 있음을 보여줍니다.
  • 일반 목적의 언어 모델: Nemotron-4 성능은 일반 목적의 언어 모델이 특정 도메인에 특화된 모델들을 넘어서는 성능을   있음을 보여줍니다. 이는 다양한 애플리케이션과 사용 사례에서 Nemotron-4 유용성을 강조합니다.

 

일단 써봐야 알겠지만 분명히 좋은 모델일 듯하다 한국어 성능이 매우기대가 되는 모델이라고 할 수 있을 것 같다. 엔비디아 직원의 절반이상이 연봉이 3억이 넘어갔고, 시가총액이 3위가 되었다.. 과연 엔비디아의 질주는 어디까지 갈지..

728x90