좌표를 바꾸는 접근
한 좌표에 값이 크게 몰리면 정수 표현의 제한된 범위를 효율적으로 쓰기 어렵다. 회전은 정보를 없애기보다 좌표 사이에 다시 배치한다. 모형의 적절한 위치에서 대응하는 변환을 함께 적용해야 원래 계산을 유지할 수 있다.
직교 변환의 독립 예제
벡터 x=(6, 0)을 45도 회전하면 (3√2, 3√2)가 된다. 길이는 6으로 같지만 가장 큰 좌표의 절댓값은 약 4.24로 줄어든다. 이는 한 벡터의 예이며 모든 벡터에서 어떤 회전이나 최대 좌표를 줄여 준다는 뜻은 아니다.
등가성과 양자화 오차
직교 행렬 R에서는 R의 전치와 R의 곱이 항등행렬이다. 선형 계산에서 이를 대응시켜 삽입하면 정확한 산술의 결과를 유지할 수 있다. 하지만 회전 후 값을 반올림하면 새 오차가 생긴다. 변환 전후의 등가성을 양자화 후 무오차 보장으로 혼동하면 안 된다.
실행 범위
잔차 표현, 피드포워드 및 주의 연산과 캐시에 적용하는 변환은 각 구조에 맞아야 한다. 비선형층 사이에 회전을 임의로 넣을 수는 없다. 실제 이득은 회전 계산과 저비트 커널의 비용, 모형 품질을 포함해 판단한다.
관련 문서
SpinQuant / SmoothQuant / AWQ 양자화 / GPTQ 양자화 / 신경망 양자화 / 언어 모형