대형 모델도 크기가 다양하며 크기는 매개변수 수로 측정됩니다. GPT-3에는 175억 개의 매개변수가 있으며 Grok-1은 314억 개의 매개변수로 더욱 인상적입니다. 물론 Llama와 같이 매개변수 수가 70억에서 700억 사이에 불과한 더 얇은 모델도 있습니다.
여기서 언급된 70B는 훈련 데이터의 양이 아니라 모델에 조밀하게 포함된 매개변수를 의미할 수 있습니다. 이러한 매개변수는 작은 "뇌 세포"와 같습니다. 매개변수가 많을수록 모델이 더 똑똑해지고 데이터의 복잡한 관계를 더 잘 이해할 수 있습니다. 이러한 "뇌 세포"를 사용하면 모델이 작업을 더 잘 수행할 수 있습니다. 그러나 특히 대규모 모델에서는 이러한 매개변수로 인해 문제가 발생할 수 있는 경우가 많습니다. 이러한 "뇌 세포"는 작업을 처리할 때 서로 상호 작용할 수 있으므로 모델이 데이터의 복잡한 관계를 이해하기 어렵게 만듭니다. 이러한 "뇌 세포"를 사용하면 모델이 작업을 더 잘 수행할 수 있습니다. 따라서 작업을 수행할 때 이러한 매개변수 간의 관계를 관리할 수 있는 방법을 찾아야 합니다. 일반적으로 사용되는 방법은 정규화를 통한 것입니다. 이러한 대규모 모델의 매개변수는 모델 내부의 "설계자"와 같으며 복잡한 알고리즘과 학습 프로세스를 통해 이 거대한 언어 세계가 조금씩 구축됩니다. 각 매개변수에는 고유한 역할이 있으며, 함께 작동하여 모델이 우리의 언어를 더 정확하게 이해하고 더 적절한 답변을 제공할 수 있습니다.
그렇다면 대형 모델의 매개변수는 어떻게 구성되어 있나요?
1. 대형 모델의 매개변수
2. 대규모 모델 매개변수에 대한 메모리 요구 사항
2.1 훈련 단계의 메모리 요구 사항
훈련 중 언제든지 각 모델 매개변수에 대해 저장할 GPU 메모리가 항상 충분해야 합니다.
추론 단계는 사전 텍스트 생성 또는 번역과 같은 훈련된 LLM 작업. 여기에서 메모리 요구 사항은 일반적으로 낮으며 주요 영향 요인은 다음과 같습니다.
제한된 컨텍스트: 추론은 일반적으로 더 짧은 입력 시퀀스를 처리하므로 더 작은 텍스트 청크와 관련된 활성화를 저장하는 데 더 적은 메모리가 필요합니다. 역전파 없음: 추론 중에 LLM은 매개변수 조정을 위한 훈련에 사용되는 기술인 역전파의 중간 값을 보존할 필요가 없습니다. 이는 많은 메모리 오버헤드를 제거합니다.2.3 Transformer 기반 대형 모델의 메모리 추정
특히 Transformer 기반 대형 모델의 경우 훈련에 필요한 메모리를 계산해 보십시오. number of attention
s: 시퀀스 길이
그 중
십억 단위의 모델 매개변수는 B의 모델 매개변수 수입니다. 18은 훈련 중 다양한 구성 요소의 메모리 사용 요소입니다.1.25는 메모리에 필요한 활성화 프로세스를 나타냅니다. 금액 요소 활성화는 모델이 입력 데이터를 처리함에 따라 변경되는 동적 데이터 구조입니다. GB 단위의 GPU 크기는 사용 가능한 GPU 메모리의 총량입니다
실용적인 예로, 24GB VRAM을 갖춘 NVIDIA RTX 4090 GPU를 사용한다고 가정하고 'Llama3 7B'를 훈련하는 데 필요한 GPU 수를 계산하세요. ' 모델 , 대략:추론적으로는 훈련 단계의 1/8~1/9로 단순화할 수 있습니다. 물론 이는 일반적인 의미에서 대략적인 추정일 뿐입니다.
대형 모델 매개변수의 구성과 메모리 및 GPU에 대한 요구 사항을 이해하면 엔지니어링 실무에서 분산 교육이 직면하는 문제를 깊이 이해하는 데 도움이 됩니다.
풍부한 도구와 API를 제공하는 TensorFlow 또는 PyTorch와 같이 분산 교육용으로 설계된 프레임워크를 채택하면 분산 교육 전략의 구현 프로세스를 크게 단순화할 수 있습니다. 모델을 업데이트하기 전에 기울기 누적과 같은 기술을 사용하거나 기울기 압축과 같은 기술을 사용하여 노드 간 데이터 교환량을 줄이면 통신 비용을 효과적으로 줄일 수 있습니다. 분산 훈련을 위한 최적의 배치 크기(위에서 언급한 매개변수 b)를 결정하는 것이 중요합니다. b 값이 너무 작으면 통신 오버헤드가 증가할 수 있고, 값이 너무 크면 메모리가 부족할 수 있습니다.
LLMOps의 중요성이 점점 더 중요해지고 있습니다. 분산 훈련을 위해 구성된 성능 지표를 정기적으로 모니터링하고 하이퍼파라미터, 파티셔닝 전략, 통신 설정을 조정하여 성능을 최적화하는 것이 훈련 효율성을 높이는 데 핵심입니다. 모델에 대한 체크포인트 메커니즘을 구현하고 실패 시 효율적인 복구를 수행하면 처음부터 시작하지 않고도 훈련 프로세스를 계속할 수 있습니다.
즉, 대규모 모델의 훈련/추론은 본질적으로 다음과 같은 복잡한 분산 시스템 아키텍처 엔지니어링 과제입니다.
그러나 실제로 대부분의 엔지니어는 특정 교육 작업에 직접 참여하지 않고 애플리케이션 구축 시 대형 모델의 매개변수를 활용하는 방법에 중점을 둡니다.
Pictures
여기에서는 주로 대형 모델을 사용하여 텍스트를 출력할 때 구성할 수 있는 세 가지 매개변수인 온도, Top-K 및 Top-P에 중점을 둡니다.
온도 매개변수는 모델의 창의성만 제어하는 스위치로 오해되는 경우가 많지만 실제로 더 깊은 역할은 확률 분포의 '부드러움'을 조정하는 것입니다. 온도 값을 더 높게 설정하면 확률 분포가 더 부드럽고 균일해지기 때문에 모델이 더 다양하고 창의적인 결과를 생성할 수 있습니다. 반대로, 온도 값이 낮을수록 분포가 더 날카로워지고 피크가 더 뚜렷해지기 때문에 훈련 데이터와 유사한 출력을 생성하는 경향이 있습니다.
Top-K 매개변수는 각 단계에서 가장 가능성이 높은 Top-K 토큰을 출력하도록 모델을 제한하는 데 사용됩니다. 이러한 방식으로 출력에서 일관되지 않거나 의미 없는 내용을 줄일 수 있습니다. 이 전략은 가능한 최고의 출력 일관성을 유지하는 동시에 어느 정도 창의적인 샘플링을 허용하는 것 사이의 균형을 만듭니다.
Top-P는 설정된 P 값(0≤P≤1)을 기준으로 누적 확률이 P 값을 초과하는 최소 단어 집합을 출력으로 선택하는 또 다른 디코딩 방법입니다. 이 방법을 사용하면 다음 단어의 확률 분포에 따라 선택된 단어의 개수를 동적으로 늘리거나 줄일 수 있습니다. 특히, P 값이 1이면 Top-P는 모든 단어를 선택하는데, 이는 전체 분포에서 샘플링하는 것과 동일하므로 더 다양한 출력을 생성하는 반면, P 값이 0이면 Top-P는 단어만 선택합니다. 그리디 디코딩과 유사하게 가장 높은 확률을 사용하면 출력이 더욱 집중되고 일관되게 됩니다.
이 세 가지 매개변수는 함께 작동하여 모델의 동작에 영향을 미칩니다. 예를 들어 온도=0.8, Top-K=36, Top-P=0.7로 설정하면 모델은 먼저 컨텍스트를 기반으로 전체 어휘의 완전한 비정규화 로그 확률 분포를 계산합니다. 온도=0.8은 각 로그 확률을 0.8로 나누어 정규화 전 예측에 대한 모델의 신뢰도를 효과적으로 높인다는 의미입니다. Top-K=36은 빈도 비율 로그 확률이 가장 높은 36개의 마커를 선택하는 것을 의미합니다. 그런 다음 Top-P=0.7은 이 Top-K=36 집합에 필터링을 적용하여 누적 확률이 0.7에 도달할 때까지 높은 확률에서 낮은 확률로 정렬을 유지합니다. 마지막으로 이 필터링된 세트는 다시 정규화되어 후속 샘플링 프로세스에 사용됩니다.
공학 실습에서는 대형 모델의 매개변수를 이해하는 것이 의미가 있습니다. 매개변수는 대규모 모델에서 결정적인 역할을 하며 대규모 모델의 동작, 성능, 구현 비용 및 리소스 요구 사항을 정의합니다. 엔지니어링에서 대규모 모델의 매개변수를 이해한다는 것은 모델의 복잡성, 성능 및 기능 간의 관계를 파악하는 것을 의미합니다. 스토리지와 컴퓨팅의 관점에서 이러한 매개변수를 적절하게 구성하고 최적화하면 실제 애플리케이션에서 모델을 더 잘 선택하고 최적화하여 다양한 작업 요구 사항과 리소스 제약 조건에 적응할 수 있습니다.
【참고】
위 내용은 7B? 13B? 175B? 대형 모델의 매개변수 해석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!