728x90
반응형

(개념) 훈련 단계에서부터 정수/저비트 연산을 모사해 모델을 학습시키는 경량화 기법

-  시간 시계열 예측을 위한 최적화된 Transformer 모델의 양자화 인식 훈련을 통한 하드웨어 친화적 기법임

- FPGA(Field Programmable Gate Arrays)와 같은 하드웨어 가속기를 통해 Transformer 모델의 성능을 최적화하고 예측 정확도를 높이며 메모리 사용량을 최소화하는 것

 

32bit 부동소수점(FP32)로만 학습한 뒤 나중에 비트를 줄이는 사후 양자화(PTQ)와 달리, QAT는 학습 중에 양자화 오차를 반영해서 파라미터를 조정하기 때문에 INT8 같은 저정밀도에서도 정확도 손실을 최소화할수 있음

 

Kimi K2는 미국의 수출 통제로 인한 저사양 GPU 환경에서, 테슬라는 차량 로봇의 실시간성, 저전력, 안정성이라는 물리적 제약 속에서 '메모리 대역폭'이라는 동일한 기술적 병목에 부딪혔습니다. 두 기업 모두 이 문제를 해결하기 위해 '양자화 인식 훈련(QAT)'이라는 정교한 기술을 핵심 전략으로 채택했습니다. 이는 AI 모델을 훈련하는 단계부터 최종 탑재될 저정밀 하드웨어의 제약 조건을 미리 시뮬레이션하여, 성능 저하 없이 최적의 효율을 내도록 모델 자체를 '단련'시키는 혁신적인 방식입니다.

- AI Bi-weekly, AI 지출은 거대한 사기인가, 대담한 베팅인가 , 한종목, 김은지, 미래에셋 마켓 인사이트 2025.11.13

 

(학습)

1) 사전 학습된 FP32 모델에 fake quantization 연산을 삽입해, 가중치와 활성값이 INT8 같은 낮은 정밀도로 변환되는 효과를 부동소수점 도메인에서 시뮬레이션

2) 학습/미세조정 과정에서 이 양자화 노이즈를 포함한 forward를 수행하고, backward는 부동소수점 그라디언트로 진행하며, 모델이 양자화 오차에 강인한 파라미터를 찾도록 합니다.

3) 결과적으로, 추론 시 실제 INT8로 양자화해도 FP32 대비 정확도 손실이 매우 작고, 엣지·모바일·온디바이스 환경에서 작은 메모리와 연산량으로 동작할 수 있습니다.

 

Fig. 1. Framework Overview. (a) The fundamental implementation of Quantization-aware Training (QAT) in which weight initialization is performed using full-precision counterparts. (b) The proposed block-wise replacement framework (BWRF) generates mixed-precision models during the training phase, employing full-precision counterparts for auxiliary supervision.

 

PTQ QAT 비교

항목 PTQ (Post-Training Quantization) QAT (Quantization-Aware Training)
적용 시점 학습 완료 후 일괄 양자화 학습/미세조정 중 양자화 반영
데이터 필요성 없거나 소량의 calibration 데이터만 필요 재학습용 train 데이터 필요
정확도 간단하지만 모델/태스크에 따라 정확도 손실 가능 일반적으로 가장 높은 정확도 유지
비용 추가 학습 거의 없음비용 낮음 재학습 필요비용/시간 더 큼

 

QAT가 특히 유리한 경우

  • 음성·자연어·비전에서 대형 모델을 INT8 이하로 줄이되 정확도 손실을 최소화해야 할 때.
  • 모바일, 임베디드, FPGA, MCU 등 메모리/전력 제약이 강한 온디바이스 AI에서 고성능을 유지하고 싶은 경우.
  • PTQ 적용 시 accuracy drop이 크게 발생했거나, 4bit/저비트 실험처럼 공격적인 양자화를 시도할 때.

QAT의 전형적인 워크플로우

  1. 사전 학습 FP32 모델 준비
    • ImageNet, COCO, 대규모 코퍼스 등으로 학습된 기존 모델을 사용.
  2. Fake quant 노드 삽입
    • 레이어별로 가중치/활성에 대해 quantize → dequantize를 흉내 내는 연산(faked quantization)을 삽입합니다.
    • TensorFlow의 tf.quantization.fake_quant_with_min_max_vars나 PyTorch QAT API 등을 활용.
  3. 범위 추정 및 calibration
    • 활성값 분포를 보고 min/max 혹은 histogram 기반으로 최적의 양자화 스케일·제로포인트를 추정합니다.
  4. 재학습 / 미세조정(fine-tuning)
    • 원래의 학습 데이터나 도메인 데이터로 몇 epoch~수십 epoch 재학습하면서, 양자화가 반영된 forward를 기준으로 손실을 최소화합니다.
    • Optimizer는 일반적인 SGD/Adam을 쓰되, 필요하다면 양자화 관련 regularization이나 clipping 전략을 함께 사용합니다.
  5. 실제 양자화 및 배포
    • 학습이 끝난 후, fake quant 구성을 기반으로 실제 INT8/INT4 등 정수 가중치와 연산을 가지는 모델로 변환합니다.
    • TFLite, ONNX, TensorRT 등 런타임 포맷으로 export해 모바일·엣지·GPU/CPU 가속 환경에 배포합니다.

장단점 정리

  • 장점
    • FP32 대비 모델 크기와 메모리 사용량을 크게 줄이면서도 높은 정확도 유지.
    • 레이턴시 및 전력 소비 감소 → 온디바이스·서버 모두에서 효율 향상.
    • aggressive bitwidth(예: binary, 4bit)에 도전할 수 있는 여지를 제공.
  • 단점
    • 재학습이 필요하므로 PTQ에 비해 학습 시간·리소스 비용이 증가.
    • 구현 복잡도와 엔지니어링 난이도가 높고, 프레임워크/하드웨어별 QAT 지원에 따라 워크플로우가 달라짐.

프레임워크별 지원 개요

  • TensorFlow / TFLite: Model Optimization Toolkit에서 QAT API 제공, fake quant 레이어를 자동 삽입하고 TFLite INT8로 export 가능.
  • PyTorch: torch.ao.quantization 기반 QAT 워크플로우 제공; eager 모드와 FX 그래프 모드 양쪽 모두 지원.
  • 기타: ONNX, TensorRT, 전용 툴(AIMET 등)에서 QAT된 모델의 변환·최적화를 지원해 CPU/GPU/전용 NPU에서 효율적인 실행이 가능.

현업에서의 활용 관점 (보안·엣지 환경)

  • 온프레/국방·관제 등에서 엣지 노드에 배포되는 침입 탐지·이상 탐지 모델을 INT8로 줄이면서도 탐지 성능을 유지하는 데 적합합니다.
  • 민감 데이터가 엣지에서만 처리되는 온디바이스 AI 시나리오에서, 모델을 작게 만들어 로컬 디바이스에 상주시켜 프라이버시·지연 시간을 동시에 만족시키는 전략으로 사용할 수 있습니다.

 

 

https://arxiv.org/pdf/2412.15846

https://arxiv.org/pdf/2408.16495

https://www.ultralytics.com/ko/glossary/quantization-aware-training-qat

728x90
Posted by Mr. Slumber
,