용어집

모델 정량화

모델 정량화를 통해 AI 성능을 최적화하세요. 실제 배포를 위해 크기를 줄이고, 속도를 높이고, 에너지 효율성을 개선하세요.

YOLO 모델을 Ultralytics HUB로 간단히
훈련

자세히 알아보기

모델 양자화는 모델의 계산 및 메모리 비용을 줄이기 위해 딥러닝(DL) 에서 사용되는 중요한 모델 최적화 기법입니다. 이는 모델 매개변수(가중치 및 활성화)의 수치 정밀도를 일반적으로 32비트 부동 소수점 숫자(FP32)와 같은 고정밀 표현에서 16비트 부동 소수점(FP16), 8비트 정수(INT8) 또는 더 낮은 비트 표현과 같은 저정밀 형식으로 변환함으로써 달성할 수 있습니다. 이 프로세스는 모델을 더 작고, 더 빠르고, 더 에너지 효율적으로 만들며, 특히 모바일 장치나 엣지 AI 시스템과 같이 리소스가 제한된 환경에 복잡한 모델을 배포하는 데 필수적입니다.

모델 정량화 작동 방식

모델 양자화의 핵심은 고정밀 텐서(FP32의 가중치 및 활성화 등)에서 발견되는 값의 범위를 고정밀도가 낮은 데이터 유형( INT8 등)으로 표현 가능한 더 작은 범위로 매핑하는 것입니다. 이러한 변환은 모델을 저장하는 데 필요한 메모리와 추론에 필요한 계산 능력을 크게 줄여주는데, 저정밀도 숫자(특히 정수)에 대한 연산은 GPU와 같은 최신 하드웨어나 TPU와 같은 특수 가속기에서 더 빠르고 에너지 효율이 높기 때문입니다.

모델 정량화의 이점

딥러닝 모델에 양자화를 적용하면 몇 가지 주요 이점이 있습니다:

  • 모델 크기 감소: 정밀도가 낮을수록 파라미터당 필요한 비트 수가 줄어들어 모델의 저장 공간을 크게 줄일 수 있습니다. 이는 무선 업데이트 및 저장 공간이 제한된 디바이스에 유용합니다.
  • 더 빠른 추론 속도: 정밀도가 낮은 숫자, 특히 정수 연산을 사용하는 계산은 일반적으로 호환되는 하드웨어에서 더 빠르므로 추론 대기 시간이 단축됩니다.
  • 전력 소비 감소: 메모리 액세스가 줄어들고 계산이 단순해지면 에너지 사용량이 줄어들어 배터리로 구동되는 엣지 디바이스에 매우 중요합니다.
  • 향상된 배포 가능성: 다음과 같은 대규모의 복잡한 모델을 배포할 수 있습니다. Ultralytics YOLO 와 같은 대규모의 복잡한 모델을 마이크로컨트롤러나 에지 TPU와 같은 컴퓨팅 리소스가 제한된 하드웨어에 배포할 수 있습니다.

정량화 기술

모델 정량화에는 크게 두 가지 접근 방식이 있습니다:

  1. 학습 후 정량화(PTQ): 이 방법은 표준 부동소수점 정밀도를 사용하여 이미 학습된 모델을 정량화하는 것입니다. 재학습이 필요하지 않으므로 구현하기가 더 간단하지만, 때때로 모델 정확도가 눈에 띄게 떨어질 수 있습니다. 이러한 정확도 손실을 최소화하기 위해 대표 데이터 세트를 사용한 보정이 종종 사용됩니다.
  2. 양자화 인식 훈련(QAT): QAT는 훈련 과정 자체에서 양자화의 효과를 시뮬레이션합니다. 모델은 낮은 정밀도에 적응하도록 학습하여 일반적으로 PTQ에 비해 정확도가 향상되지만, 원래 학습 파이프라인과 데이터에 액세스할 수 있어야 합니다.

실제 애플리케이션

모델 정량화는 다양한 영역에서 널리 사용됩니다:

  1. 모바일 컴퓨팅: 클라우드 컴퓨팅에 크게 의존하지 않고 스마트폰에서 직접 카메라 필터를 위한 실시간 물체 감지, 이미지 분류, 자연어 처리와 같은 정교한 AI 기능을 사용할 수 있습니다. TensorFlow Lite와 같은 프레임워크는 양자화를 많이 활용합니다.
  2. 자율주행 차량: 정량화된 모델을 사용하면 자율 주행 시스템의 실시간 의사 결정에 중요한 보행자 감지, 차선 유지, 교통 표지판 인식과 같은 작업을 위한 센서 데이터(카메라, LiDAR)를 더 빠르게 처리할 수 있습니다. Ultralytics 이러한 애플리케이션에 적합한 다양한 모델 배포 옵션을 제공합니다.

고려 사항 및 관련 개념

정량화는 매우 유익하지만 잠재적으로 모델 정확도에 영향을 미칠 수 있습니다. 정량화 후에는 관련 성능 메트릭을 사용하여 신중하게 평가해야 합니다. 양자화 친화적인 모델 아키텍처를 사용하는 것과 같은 기술(예: YOLO 볼 수 있는 특정 활성화 기능 대체)은 양자화된 YOLOv8 모델 배포에서 설명한 대로 정확도 저하를 완화하는 데 도움이 될 수 있습니다.

모델 정량화는 여러 모델 최적화 기법 중 하나입니다. 다른 기법에는 다음이 포함됩니다:

  • 모델 가지치기: 덜 중요한 가중치나 연결을 제거하여 모델 복잡성을 줄이는 작업입니다.
  • 혼합 정밀도: 속도/메모리 및 정확도 간의 균형을 위해 훈련 또는 추론 중에 FP16과 FP32를 조합하여 사용합니다.
  • 지식 증류: 더 작은 '학생' 모델을 훈련시켜 미리 훈련된 더 큰 '교사' 모델의 결과물을 모방합니다.

Ultralytics 다음을 포함하여 정량화를 용이하게 하는 다양한 형식으로 모델 내보내기를 지원합니다. ONNX, OpenVINO, TensorRT, CoreMLTFLite를 지원하여 다양한 하드웨어 플랫폼에 효율적으로 배포할 수 있습니다. 정량화된 버전을 포함하여 모델을 관리하고 배포할 수 있는 도구는 Ultralytics HUB입니다.

모두 보기