더 빠른 웹 로딩을위한 이미지 압축.
예 : 웨이트 매트릭스 (왼쪽) 및 양자화 된 버전 (오른쪽).
양자화 오류 행렬.
맵 플로팅 지점 값을 고정점 범위에 균등하게 맵핑합니다. 최소/최대 값, 스케일, 제로 포인트, 양자화 및 쿼트 화 (추론 중)를 계산하는 것이 포함됩니다.
선형 양자화 방정식
예 : 중량 행렬의 선형 양자화
양자화는 가중치 (정적) 및 활성화 (동적) 모두에 적용될 수 있습니다. 활성화 양자화는 더 복잡합니다.
후 훈련 후 양자화 (PTQ) 대 양자화 인식 훈련 (QAT) :
PTQ는 미리 훈련 된 모델을 정량화합니다. QAT는 양자화 효과를 시뮬레이션하기위한 교육을 수정하여 정확도가 향상되지만 교육 시간이 증가합니다.
모델을로드하십시오 :
를 사용하여 from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "EleutherAI/pythia-410m"
model = AutoModelForCausalLM.from_pretrained(model_name, low_cpu_mem_usage=True)
tokenizer = AutoTokenizer.from_pretrained(model_name)
를 사용하여 모델을 변환하십시오
quantize()
를 사용하려면 가중치에 양자화를 적용하십시오
from quanto import quantize, freeze
quantize(model, weights=torch.int8, activations=None)
결과 확인 : 감소 된 모델 크기 및 테스트 추론을 확인하십시오. (참고 : 는 사용자 정의 기능입니다. 구현을 위해 DataCamp Datalab 참조).
freeze()
freeze(model)
compute_module_sizes()
quantize()
위 내용은 대형 언어 모델 (LLMS)의 양자화 : AI 모델 크기를 효율적으로 줄이기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!