LLM 양자화 이해를 위한 정밀도 포맷 8종 핵심 정리
모델 실행 시 VRAM 부족 문제 해결을 위한 FP32, BF16, FP16 등 정밀도 포맷의 차이와 선택 기준을 명확히 이해할 수 있음.
요약
LLM 모델 운용 시 FP32 포맷은 7B 모델 기준 28GB 메모리를 요구하여 일반적인 12GB 소비자용 GPU 탑재가 어렵지만, 4-bit 등 저정밀도 포맷을 사용하면 메모리 사용량을 대폭 절감할 수 있다. 수치 정밀도를 희생하여 메모리 효율을 높이는 방식인 정밀도 포맷은 부동소수점 비트 할당 방식에 따라 FP32, BF16, FP16, TF32, FP8, INT8, INT4, NF4 등 8가지로 구분된다. BF16과 FP16은 16비트 내에서 지수부와 가수부 비트 할당이 달라 특성이 나뉘며, FP8은 가중치와 활성화 함수용 E4M3와 기울기용 E5M2 레이아웃으로 나뉜다. INT8과 INT4는 균등한 간격으로 값을 매핑하는데, 이상치로 인한 정보 손실 문제를 해결하기 위해 LLM.int8이나 SmoothQuant 같은 기술이 활용된다. NF4는 가중치 분포에 따라 비균등하게 값을 배치하는 방식으로 QLoRA 등에서 효율적인 모델 경량화를 지원한다.
AI가 원문을 요약한 내용으로, 부정확할 수 있습니다.
원문 제목 @_avichawla: 8 LLM precision formats, clearly explained: (bookmark this) A 12GB consumer GPU cannot hold a 7B model in FP32, which needs 28GB j
원문 보기 ↗