Improving Post-Training Quantization on Object Detection with Task Loss-Guided Lp Metric

quantization에서의 두 접근 방식 QAT(Quantization Aware Training)와 PTQ(Post Training Quantization) 중에서 PTQ 방식에서의 성능 하락을 완화하기 위한 DetPTQ라는 새로운 방식을 제시
Inc Lomin's avatar
Apr 25, 2024
Improving Post-Training Quantization on Object Detection with Task Loss-Guided Lp Metric
notion image

요약

  • quantization에서의 두 접근 방식 QAT(Quantization Aware Training)와 PTQ(Post Training Quantization) 중에서 PTQ 방식에서의 성능 하락을 완화하기 위한 DetPTQ라는 새로운 방식을 제시
  • object detection 분야에서 DetPTQ를 적용하기 위해 ODOL(Object Detection Output Loss)라는 새로운 loss function을 제시
  • 대부분의 case에서 기존의 PTQ의 성능보다 더욱 우수한 성능을 보여줌
  • QAT(Quantization Aware Training)
    • 학습 단계에서 미리 inference에 quantization을 적용하는 방식
      • Training with Quantization noise for Extreme Model Compression
        Training with Quantization noise for Extreme Model Compression
    • 학습 시에 fake quantization node를 추가하여 quantization 시뮬레이션을 통해 weight에 반영
    • 학습을 진행하는 동시에 fine-tuning을 같이 진행하는 느낌
    • quantization 전후의 모델 성능 하락폭을 최소화할 수 있음
    • 사전 학습된 모델에 해당 방식으로 학습을 할 경우에는, 당시에 활용한 dataset을 그대로 가져와야하는 단점이 존재함
  • PTQ(Post Training Quantization)
    • floating point 모델로 이미 학습이 된 weight값들에 대하여 quantization하는 방식
    • parameter size가 큰 대형 모델의 경우에는 성능 하락폭이 크지 않지만, 소형 모델에서는 성능 하락폭이 커짐
    • edge device와 같이 소형 embed 추론 환경에서는 작은 error나 outlier 값에 더더욱 민감하기 때문에 적용하기가 훨씬 어려움
    • object detection에서도 object classification과 더불어 bbox를 예측하는 과정을 거치기 때문에 mAP에 상당한 영향을 주게 됨
  • Local Quantization Reconstruction
    • deep learning 모델 특성상 특정 layer의 결과의 작은 차이가 propagation을 통해 큰 차이로 귀결되기 때문에 layer 및 block별로 quantization parameter를 조절하려고 시도
    • quantization 전후의 feature map을 비교하기 위해 L2 norm 등의 고정된 metric을 사용
    • 본 논문에서는 이러한 고정된 metric을 사용하는 것이 quantization 성능에 부정적인 영향을 미칠 것이라고 주장
  • DetPTQ & ODOL(Object Detection Output Loss)
    • 각각 서로 다른 layer의 Lp metric에서 p 값을 변화시킴에 따라 성능이 달라지는 것을 확인
      • notion image
        notion image
    • 다양한 feature에 대한 최적의 p 값을 결정하기 위해 DetPTQ를 제안하여 가장 낮은 성능 하락을 보이는 p 값을 선택
    • quantization할 때 loss 변화를 나타낼 수 있는 Object Detection Output Loss (ODOL)를 제안
    • DetPTQ는 Lp loss가 ODOL에 근사되는 p 값을 선택
  • PTQ 관련 식
    • 기본적인 PTQ
      • notion image
        notion image
    • 각각의 feature별로 PTQ 적용 + p값을 2가 아닌 여러 값으로 활용할 때의 loss function
      • notion image
        notion image

      Method

      Influence of Different p Values

    • quantization에서의 loss는 다음과 같음
      • notion image
    • quantization의 목표는 위의 loss를 최소화하는 scale factor s를 찾는 과정
    • 모델의 layer마다 optimal scale factor를 결정하는 p값이 다른 것을 다음 표에서 확인
      • notion image

      Object Detection Output Loss (ODOL)

    • L_perf를 최소화하기 위한 ideal한 scale factor (s_p)*를 찾는 것이 목표
      • notion image
    • 하지만 ideal scale factor (s_ideal)*는 labeling 되어있지 않기 때문에 실험적으로 찾아야함
    • quantization 전후의 결과를 비교하기 위해 ODOL이라는 새로운 loss 함수를 정의
    • 새롭게 정의한 ODOL loss 함수가 L_perf의 그래프에 근사하면 L_perf를 대체할 수 있을 것으로 기대
    • detection 결과를 classification과 location의 두 부분으로 나누어 해석
    • classification loss는 KL distance나 L2를 사용하고, location loss는 L1이나 IOU를 사용
      • notion image
    • classification loss와 location loss를 다양하게 조합하여 다음과 같이 그래프를 그렸을 때 L_perf 그래프의 minimum loss 지점에서의 scale factor와 유사한 값을 갖는 조합은 KL + L1로 판명
      • notion image

      DetPTQ Framework

    • 주어진 p값(논문의 실험에서는 P = {1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5})에 대해 L_perf(위의 실험에 의한 결과를 바탕으로 하면 ODOL)를 최소화하는 scale fator (s_p)*를 찾는 과정
      • notion image

Experimental Results

  • layer별로 다르게 quantization하지 않는 간단한 PTQ의 경우에서 다양한 metric을 사용했을 때의 결과 비교
    • notion image
  • layer별로 다르게 quantization하는 복잡한 PTQ(다양한 SOTA 방식)의 경우에 대한 결과 비교
    • notion image

Ablation Study

The Quantization Parameters in ODOL

  • layer별로 다른 quantization을 적용하는 복잡한 PTQ의 경우 scale factor 이외에도 weight값을 올릴지 내릴지 결정하는 rounding 변수 V도 존재함
  • L_perf을 계산할 때 (s_p)* 이외에도 V 또한 영향을 주는데 해당 값의 유무에 따른 결과를 비교하기 위해 실험을 진행
  • V로 인해 parameter가 굉장히 많이 늘어난데 비해 optimal p값은 바뀌지 않는 것을 확인
notion image
  • 최종적으로 L_perf를 계산할 때는 scale factor만 고려하는 것으로 결정

Effect of ODOL on Different Functions

  • ODOL의 classification loss와 location loss의 다양한 조합에 따른 mAP 변화
    • notion image
  • 위에서 언급한 대로 KL + L1 조합이 가장 성능이 좋음

Conclusion

  • layer별로 quantization을 진행하는 복잡한 PTQ에 대해 각 layer별 loss를 계산하는 metric의 다양화
  • 정답 label이 주어지지 않은 다양한 최적의 p값을 계산하기 위해 ODOL을 제안
  • 수많은 경우에 SOTA 성능보다 더 좋은 quantization 성능을 보임
Share article