본문 바로가기
AI

Quantization (양자화) 에 대해서.

by bryan.oh 2022. 1. 26.
반응형

간단히 예를들어 float32(아래 라인) 범위의 값들을, int8(위 라인)의 범위에 맞추는 것

 

 

신경망(Neural Networks)을 양자화하는 이유

  • 신경망에는 많은 매개변수가 있고 공간을 차지합니다.
  • 모델 파일의 크기를 줄일 수 있습니다.
  • 컴퓨팅 리소스를 줄일 수 있습니다.
  • 모델을 더 빠르게 실행하고 더 적은 전력을 사용합니다.

 

 

양자화의 이점

  •  Faster compute
  •  Low memory bandwidth
  •  Low power
  •  Integer operations supported across CPU/DSP/NPUs

 

 

양자화의 Trade-offs

모델 정확도가 낮아짐.
  - 위 사진처럼 넓고 자세한 범위에서 작은 범위로 줄어들기 때문에.
  - 하지만 드물게 약간의 정확도를 더 얻는 경우도 있음
  - 즉, 레이어 변환이 올바른 방향인지 잘못된 방향인지 평가하기 어려움...

 

결론

애플리케이션의 리소스 효율성을 유지하는 것이 중요합니다. 작업에 따라 모델 정확도와 모델 복잡성 간에 균형을 유지해야 합니다. 작업에 높은 정확도가 필요한 경우 크고 복잡한 모델이 필요할 수 있습니다. 정밀도가 덜 필요한 작업의 경우 더 작고 덜 복잡한 모델을 사용하는 것이 좋습니다. 메모리에서 디스크 공간을 덜 사용할 뿐만 아니라 일반적으로 더 빠르고 에너지 효율적이기 때문입니다.

모바일 장치에 최적화된 모델의 한 예는 모바일 비전 애플리케이션에 최적화된 MobileNets입니다. 
작업에 적합한 후보 모델을 선택한 후에는 모델을 프로파일링하고 벤치마킹하는 것이 좋습니다.

 

참고

https://medium.com/tensorflow/introducing-the-model-optimization-toolkit-for-tensorflow-254aca1ba0a3

 

Introducing the Model Optimization Toolkit for TensorFlow

We are excited to introduce a new optimization toolkit in TensorFlow: a suite of techniques that developers, both novice and advanced, can…

medium.com

https://blog.tensorflow.org/2020/04/quantization-aware-training-with-tensorflow-model-optimization-toolkit.html

 

Quantization Aware Training with TensorFlow Model Optimization Toolkit - Performance with Accuracy

The TensorFlow blog contains regular news from the TensorFlow team and the community, with articles on Python, TensorFlow.js, TF Lite, TFX, and more.

blog.tensorflow.org

 

728x90
반응형

댓글