위키득계정 ↗
기술

GPTQ 양자화

GPTQ 양자화기술
영문
GPTQ
시점
학습 후
대상
가중치 양자화
핵심 기준
보정 입력에서의 층 출력 오차
GPTQ 양자화는 근사적인 이차 정보를 활용해 학습이 끝난 언어 모형의 가중치를 저비트로 바꾸는 방법이다. 층 출력의 변화를 작게 유지하는 방향으로 가중치를 변환한다.

반올림 이상의 기준

각 가중치를 가장 가까운 값으로 따로 반올림하면 입력과 가중치 사이의 관계를 놓칠 수 있다. GPTQ는 보정 입력에서 원래 층 출력과 양자화된 층 출력의 차이를 줄이는 문제를 다룬다. 이 과정에 오차의 곡률을 나타내는 근사 이차 정보를 활용한다.

출력 오차의 독립 예제

가중치가 0.4, 0.4이고 보정 입력이 1, 1이면 출력은 0.8이다. 정수 격자에서 각각 0으로 반올림하면 출력 오차 크기는 0.8이다. 대신 1, 0을 택하면 그 입력의 오차는 0.2다. 실제 GPTQ 실행 결과가 아닌, 개별 값의 반올림과 출력 기준이 다를 수 있음을 보이는 예다.

보정 입력의 범위

한 입력에서 오차가 작아도 다른 입력에서는 커질 수 있다. 따라서 여러 보정 입력을 이용해 층의 변환을 평가한다. 이 방식은 전체 사전 학습을 처음부터 반복하는 절차와 다르며 보정 자료의 대표성과 양자화 설정에 영향을 받는다.

비트 수와 실행 비용

4비트 가중치의 원시 값 저장량은 같은 개수의 16비트 값보다 작지만 스케일과 부가 정보가 필요하다. 캐시와 활성값의 메모리까지 같은 비율로 줄어드는 것도 아니다. 압축 형식을 읽는 실행 커널을 포함해 품질, 메모리, 실제 지연시간을 비교한다.

관련 문서

AWQ 양자화 / 신경망 양자화 / 언어 모형 / 트랜스포머 / 자기 주의 / PagedAttention