Yolo 비전 선전
선전
지금 참여하기
용어집

모델 양자화

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

모델 양자화는 딥러닝 모델 실행 시 발생하는 계산 및 메모리 비용을 줄이기 위해 사용되는 정교한 모델 최적화 기법입니다. 표준 훈련 워크플로우에서 신경망은 일반적으로 32비트 부동소수점 숫자(FP32)를 사용하여 매개변수(weights and biases) 및 활성화 맵을 저장합니다. 이러한 높은 정밀도는 훈련 중 정확한 계산을 보장하지만, 추론에는 종종 불필요합니다. 양자화는 이러한 값들을 16비트 부동소수점(FP16)이나 8비트 정수(INT8)와 같은 저정밀 형식으로 변환하여 정확도를 크게 저하시키지 않으면서 모델 크기를 효과적으로 축소하고 실행 속도를 가속화합니다.

양자화가 중요한 이유

양자화의 주요 동인은 자원 제약 하드웨어에 강력한 AI를 배포해야 하는 필요성이다. YOLO26과 같은 컴퓨터 비전 모델이 점점 더 복잡해짐에 따라, 그들의 계산 요구도 증가한다. 양자화는 세 가지 핵심 병목 현상을 해결한다:

  • 메모리 사용량: 가중치의 비트 폭을 줄임으로써(예: 32비트에서 8비트로), 모델의 저장 공간 요구량이 최대 4배까지 감소합니다. 이는 애플리케이션 크기가 제한되는 모바일 앱에서 매우 중요합니다.
  • 추론 지연 시간: 낮은 정밀도 연산은 계산 비용이 더 저렴합니다. 현대 프로세서, 특히 전용 신경망 처리 장치(NPU)를 탑재한 프로세서는 FP32보다 INT8 연산을 훨씬 빠르게 실행할 수 있어 추론 지연 시간을 크게 줄입니다.
  • 전력 소비: 메모리를 통해 전송되는 데이터량을 줄이고 더 간단한 산술 연산을 수행함으로써 에너지 소비가 감소하여 휴대용 기기와 자율주행 차량의 배터리 수명이 연장됩니다.

관련 개념과의 비교

양자화는 다른 최적화 기법과 구별하는 것이 중요합니다. 이는 모델을 서로 다른 방식으로 수정하기 때문입니다:

  • 양자화 대 정제: 양자화는 매개변수의 비트 폭을 낮추어 파일 크기를 줄이는 반면, 모델 정제는 불필요한 연결(가중치)을 완전히 제거하여 스파스 네트워크를 생성합니다. 정제는 모델 구조를 변경하는 반면, 양자화는 데이터 표현을 변경합니다.
  • 양자화 대 지식 증류: 지식 증류는 소규모 "학생" 모델이 대규모 "교사" 모델을 모방하도록 학습시키는 훈련 기법입니다. 양자화는 증류 후 학생 모델에 적용되어 에지 AI 성능을 더욱 향상시키는 경우가 많습니다.

실제 애플리케이션

양자화는 효율성이 최우선인 다양한 산업 분야에서 컴퓨터 비전과 인공지능을 가능하게 합니다.

  1. 자율 시스템: 자동차 산업에서 자율주행차는 카메라와 라이다(LiDAR)로부터의 시각 데이터를 실시간으로 처리해야 합니다. NVIDIA TensorRT 엔진에 배포된 양자화 모델은 이 차량들이 detect 장애물을 밀리초 단위의 지연 시간으로 detect 수 있게 하여 승객 안전을 보장합니다.
  2. 스마트 농업: 다중 스펙트럼 카메라를 장착한 드론은 양자화된 객체 탐지 모델을 활용해 작물 질병을 식별하거나 생장 단계를 모니터링합니다. 이러한 모델을 드론의 임베디드 시스템에서로컬로 실행함으로써 외딴 농장에서 불안정한 셀룰러 연결이 필요 없어집니다.

Ultralytics 정량화 구현하기

Ultralytics 수출 프로세스를 간소화하여 개발자가 최첨단 YOLO26과 같은 모델을 양자화 형식으로 변환할 수 있게 합니다. Ultralytics 또한 이러한 배포를 원활하게 관리할 수 있는 도구를 제공합니다.

다음 예제는 모델을 TFLite로 내보내는 방법을 보여줍니다. TFLite 로 내보내는 방법을 보여줍니다. 이 과정에는 모델이 샘플 데이터를 관찰하여 양자화된 값에 대한 최적의 동적 범위를 결정하는 보정 단계가 포함됩니다.

from ultralytics import YOLO

# Load a standard YOLO26 model
model = YOLO("yolo26n.pt")

# Export to TFLite format with INT8 quantization
# The 'int8' argument triggers Post-Training Quantization
# 'data' provides the calibration dataset needed for mapping values
model.export(format="tflite", int8=True, data="coco8.yaml")

최적화된 모델은 종종 ONNX와 같은 상호운용 가능한 표준을 사용하여 배포됩니다. ONNX 또는 고성능 추론 엔진인 OpenVINO과 같은 고성능 추론 엔진을 통해 배포되어 다양한 하드웨어 생태계 전반에 걸쳐 광범위한 호환성을 보장합니다.

Ultralytics 커뮤니티 가입

AI의 미래에 동참하세요. 글로벌 혁신가들과 연결하고, 협력하고, 성장하세요.

지금 참여하기