Neural Magic의 DeepSparse 엔진을 활용한 YOLO26 추론 최적화
객체 탐지 모델인 Ultralytics YOLO26을 다양한 하드웨어에 배포할 때 최적화와 같은 고유한 문제에 직면할 수 있습니다. 바로 이때 YOLO26과 Neural Magic의 DeepSparse 엔진 통합이 필요합니다. 이는 YOLO26 모델이 실행되는 방식을 혁신하며, CPU에서 직접 GPU 수준의 성능을 구현할 수 있도록 합니다.
본 가이드에서는 Neural Magic의 DeepSparse를 사용하여 YOLO26을 배포하는 방법, 추론 실행 방법, 그리고 최적화 상태를 확인하기 위한 성능 벤치마킹 방법을 안내합니다.
Neural Magic은 2025년 1월 Red Hat에 인수되었으며, deepsparse, sparseml, sparsezoo, sparsify 라이브러리의 커뮤니티 버전에 대한 지원을 중단합니다. 자세한 내용은 sparseml GitHub 저장소의 Readme에 게시된 공지 사항을 참조하십시오.
Neural Magic의 DeepSparse
Neural Magic의 DeepSparse는 CPU에서 신경망 실행을 최적화하도록 설계된 추론 런타임입니다. 희소성(sparsity), 가지치기(pruning), 양자화(quantization)와 같은 고급 기술을 적용하여 정확도를 유지하면서도 계산 요구 사항을 크게 줄입니다. DeepSparse는 다양한 장치에서 효율적이고 확장 가능한 신경망 실행을 위한 민첩한 솔루션을 제공합니다.
YOLO26과 Neural Magic의 DeepSparse 통합 이점
DeepSparse를 사용하여 YOLO26을 배포하는 방법을 살펴보기 전에, DeepSparse를 사용할 때의 이점을 이해해 보겠습니다. 주요 장점은 다음과 같습니다.
- 향상된 추론 속도: (YOLO11n 기준) 최대 525 FPS를 달성하여 기존 방식 대비 YOLO의 추론 성능을 크게 향상시킵니다.
- 최적화된 모델 효율성: 가지치기와 양자화를 사용하여 YOLO26의 효율성을 높이고, 정확도를 유지하면서 모델 크기와 계산 요구 사항을 줄입니다.
-
표준 CPU에서의 고성능: CPU에서 GPU와 같은 성능을 제공하여 다양한 애플리케이션에 대해 더 접근하기 쉽고 비용 효율적인 옵션을 제공합니다.
-
간소화된 통합 및 배포: 이미지 및 비디오 주석 기능을 포함하여 애플리케이션에 YOLO26을 쉽게 통합할 수 있는 사용자 친화적인 도구를 제공합니다.
-
다양한 모델 유형 지원: 표준 YOLO26 모델과 희소성 최적화 YOLO26 모델 모두와 호환되어 배포 유연성을 더합니다.
-
비용 효율적이고 확장 가능한 솔루션: 운영 비용을 절감하고 고급 객체 탐지 모델의 확장 가능한 배포를 지원합니다.
Neural Magic의 DeepSparse 기술은 어떻게 작동합니까?
Neural Magic의 DeepSparse 기술은 신경망 계산에서 인간 뇌의 효율성으로부터 영감을 받았습니다. 이는 뇌의 다음과 같은 두 가지 핵심 원칙을 채택합니다.
-
희소성(Sparsity): 희소화 과정은 딥러닝 네트워크에서 중복된 정보를 가지치기하여 정확도를 저하시키지 않으면서 더 작고 빠른 모델을 만드는 과정을 포함합니다. 이 기술은 네트워크의 크기와 계산 요구량을 크게 줄입니다.
-
참조 지역성(Locality of Reference): DeepSparse는 네트워크를 텐서 열(Tensor Columns)로 나누는 고유한 실행 방식을 사용합니다. 이 열들은 CPU 캐시 내에 완전히 들어맞도록 깊이 우선 방식으로 실행됩니다. 이 접근 방식은 데이터 이동을 최소화하고 CPU 캐시 사용을 최대화하여 뇌의 효율성을 모방합니다.
사용자 지정 데이터 세트로 훈련된 YOLO26의 희소 버전 생성
Neural Magic의 오픈 소스 모델 저장소인 SparseZoo는 미리 희소화된 YOLO26 모델 체크포인트 모음을 제공합니다. Ultralytics와 원활하게 통합된 SparseML을 사용하면, 명령줄 인터페이스를 통해 특정 데이터 세트에서 이러한 희소 체크포인트를 손쉽게 미세 조정할 수 있습니다.
자세한 내용은 Neural Magic의 SparseML YOLO26 문서를 확인하십시오.
사용법: DeepSparse를 사용하여 YOLO26 배포하기
Neural Magic의 DeepSparse로 YOLO26을 배포하는 과정은 몇 가지 간단한 단계로 이루어집니다. 사용 지침을 살펴보기 전에 Ultralytics에서 제공하는 다양한 YOLO26 모델을 확인하십시오. 프로젝트 요구 사항에 가장 적합한 모델을 선택하는 데 도움이 됩니다. 시작하는 방법은 다음과 같습니다.
1단계: 설치
필요한 패키지를 설치하려면 다음을 실행하십시오:
# Install the required packages
pip install deepsparse[yolov8]2단계: YOLO26을 ONNX 형식으로 내보내기
DeepSparse 엔진은 ONNX 형식의 YOLO26 모델이 필요합니다. 모델을 이 형식으로 내보내는 것은 DeepSparse와의 호환성을 위해 필수적입니다. 다음 명령어를 사용하여 YOLO26 모델을 내보내십시오:
# Export YOLO26 model to ONNX format
yolo task=detect mode=export model=yolo26n.pt format=onnx opset=13이 명령어를 실행하면 yolo26n.onnx 모델이 디스크에 저장됩니다.
3단계: 배포 및 추론 실행
ONNX 형식의 YOLO26 모델이 준비되었다면 DeepSparse를 사용하여 배포하고 추론을 실행할 수 있습니다. 직관적인 Python API를 통해 쉽게 수행할 수 있습니다:
from deepsparse import Pipeline
# Specify the path to your YOLO26 ONNX model
model_path = "path/to/yolo26n.onnx"
# Set up the DeepSparse Pipeline
yolo_pipeline = Pipeline.create(task="yolov8", model_path=model_path)
# Run the model on your images
images = ["path/to/image.jpg"]
pipeline_outputs = yolo_pipeline(images=images)4단계: 성능 벤치마킹
YOLO26 모델이 DeepSparse에서 최적으로 작동하는지 확인하는 것이 중요합니다. 모델의 성능을 벤치마킹하여 처리량과 지연 시간을 분석할 수 있습니다:
# Benchmark performance
deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"5단계: 추가 기능
DeepSparse는 애플리케이션에서 YOLO26을 실질적으로 통합하기 위한 이미지 주석 및 데이터 세트 평가와 같은 추가 기능을 제공합니다.
# For image annotation
deepsparse.yolov8.annotate --source "path/to/image.jpg" --model_filepath "path/to/yolo26n.onnx"
# For evaluating model performance on a dataset
deepsparse.yolov8.eval --model_path "path/to/yolo26n.onnx"annotate 명령을 실행하면 지정된 이미지를 처리하여 객체를 탐지하고 바운딩 박스와 분류가 포함된 주석 이미지를 저장합니다. 주석 처리된 이미지는 annotation-results 폴더에 저장됩니다. 이는 모델의 탐지 기능을 시각적으로 보여줍니다.
eval 명령을 실행한 후에는 정밀도, 재현율, mAP(mean Average Precision)과 같은 상세한 출력 메트릭을 얻게 됩니다. 이는 데이터 세트에서 모델의 성능에 대한 포괄적인 정보를 제공하며, 특히 특정 사용 사례에 맞춰 YOLO26 모델을 미세 조정하고 최적화하여 높은 정확도와 효율성을 보장하는 데 유용합니다.
요약
이 가이드에서는 Ultralytics의 YOLO26과 Neural Magic의 DeepSparse 엔진 통합에 대해 살펴보았습니다. 이 통합이 CPU 플랫폼에서 YOLO26의 성능을 향상시키고 GPU 수준의 효율성과 고급 신경망 희소화 기술을 제공하는 방법을 강조했습니다.
더 자세한 정보와 고급 사용법은 Neural Magic의 DeepSparse 문서를 참조하십시오. 또한 YOLO26 통합 가이드 살펴보기와 YouTube의 워크스루 세션 시청도 권장합니다.
또한 다양한 YOLO26 통합에 대한 폭넓은 이해를 위해 Ultralytics 통합 가이드 페이지를 방문하여 다른 흥미로운 통합 가능성을 확인해 보십시오.
FAQ
Neural Magic의 DeepSparse 엔진이란 무엇이며, 어떻게 YOLO26 성능을 최적화합니까?
Neural Magic의 DeepSparse 엔진은 희소성, 가지치기, 양자화와 같은 고급 기술을 통해 CPU에서 신경망 실행을 최적화하도록 설계된 추론 런타임입니다. DeepSparse를 YOLO26과 통합하면 표준 CPU에서 GPU와 같은 성능을 구현할 수 있으며, 정확도를 유지하면서도 추론 속도, 모델 효율성, 전반적인 성능을 크게 향상시킬 수 있습니다. 자세한 내용은 Neural Magic의 DeepSparse 섹션을 확인하십시오.
Neural Magic의 DeepSparse를 사용하여 YOLO26을 배포하려면 어떤 패키지를 설치해야 합니까?
Neural Magic의 DeepSparse로 YOLO26을 배포하기 위해 필요한 패키지 설치는 간단합니다. CLI를 사용하여 쉽게 설치할 수 있습니다. 실행해야 할 명령어는 다음과 같습니다:
pip install deepsparse[yolov8]설치가 완료되면 설치 섹션의 단계를 따라 환경을 설정하고 YOLO26과 함께 DeepSparse 사용을 시작하십시오.
DeepSparse에서 사용하기 위해 YOLO26 모델을 ONNX 형식으로 변환하려면 어떻게 해야 합니까?
DeepSparse와 호환되는 ONNX 형식으로 YOLO26 모델을 변환하려면 다음 CLI 명령어를 사용하십시오:
yolo task=detect mode=export model=yolo26n.pt format=onnx opset=13이 명령어를 실행하면 YOLO26 모델(yolo26n.pt)이 DeepSparse 엔진에서 사용할 수 있는 형식(yolo26n.onnx)으로 내보내집니다. 모델 내보내기에 대한 자세한 내용은 모델 내보내기 섹션에서 확인할 수 있습니다.
DeepSparse 엔진에서 YOLO26 성능을 벤치마킹하려면 어떻게 해야 합니까?
DeepSparse에서 YOLO26 성능을 벤치마킹하면 처리량과 지연 시간을 분석하여 모델이 최적화되었는지 확인할 수 있습니다. 다음 CLI 명령어를 사용하여 벤치마크를 실행할 수 있습니다:
deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"이 명령어를 실행하면 중요한 성능 메트릭을 얻을 수 있습니다. 자세한 내용은 성능 벤치마킹 섹션을 참조하십시오.
객체 탐지 작업을 위해 YOLO26과 함께 Neural Magic의 DeepSparse를 사용해야 하는 이유는 무엇입니까?
Neural Magic의 DeepSparse를 YOLO26과 통합하면 다음과 같은 여러 이점이 있습니다:
- 향상된 추론 속도: (YOLO11n 기준) 최대 525 FPS를 달성하여 DeepSparse의 최적화 능력을 보여줍니다.
- 최적화된 모델 효율성: 희소성, 가지치기 및 양자화 기술을 사용하여 정확도를 유지하면서 모델 크기와 계산 요구량을 줄입니다.
- 표준 CPU에서의 고성능: 비용 효율적인 CPU 하드웨어에서 GPU와 같은 성능을 제공합니다.
- 간소화된 통합: 쉬운 배포와 통합을 위한 사용자 친화적인 도구를 제공합니다.
- 유연성: 표준 및 희소성 최적화 YOLO26 모델을 모두 지원합니다.
- 비용 효율성: 효율적인 리소스 활용을 통해 운영 비용을 절감합니다.
이러한 장점에 대해 더 자세히 알아보려면 YOLO26과 Neural Magic의 DeepSparse 통합 이점 섹션을 방문하십시오.