YOLO Vision 2025를 놓치지 마세요!
2025년 9월 25일
10:00 — 18:00 BST
하이브리드 이벤트
Yolo Vision 2024
용어집

ONNX (Open Neural Network Exchange)

ONNX가 AI 모델의 이식성 및 상호 운용성을 어떻게 향상시켜 다양한 플랫폼에서 Ultralytics YOLO 모델을 원활하게 배포할 수 있도록 하는지 알아보세요.

ONNX(Open Neural Network Exchange)는 머신러닝(ML) 모델을 표현하기 위한 오픈 소스 형식입니다. Microsoft 및 Facebook과 같은 회사에서 공동 개발한 ONNX는 범용 번역기 역할을 하여 개발자가 다양한 ML 프레임워크 및 도구 간에 모델을 이동할 수 있도록 합니다. 이러한 상호 운용성은 모델 개발에서 프로덕션까지의 여정을 간소화하는 데 매우 중요합니다. 단일 에코시스템에 갇히는 대신 팀은 PyTorch와 같은 하나의 프레임워크에서 모델을 훈련하고 TensorFlow 또는 특수 추론 엔진과 같은 다른 프레임워크를 사용하여 추론을 위해 배포할 수 있습니다. 예를 들어 Ultralytics YOLO 모델은 ONNX 형식으로 쉽게 내보낼 수 있으므로 다양한 플랫폼에 걸쳐 배포할 수 있는 최대한의 유연성을 제공합니다.

ONNX 작동 방식

ONNX는 내장된 연산자 목록과 함께 계산 그래프에 대한 표준 정의를 제공합니다. 모델을 ONNX 형식으로 변환하면 레이어와 수학 연산으로 구성된 아키텍처가 이 범용 표준에 매핑됩니다. 결과적으로 .onnx 파일에는 네트워크 구조와 훈련된 내용이 모두 포함되어 있습니다. 모델 가중치.

이 표준화된 파일은 ONNX 사양을 지원하는 모든 도구에서 로드할 수 있습니다. 여기에는 다음이 포함됩니다.

  • 딥 러닝 프레임워크(Deep Learning Frameworks): PyTorchTensorFlow와 같은 프레임워크에는 ONNX 모델을 가져오고 내보내는 유틸리티가 있습니다.
  • 추론 런타임: ONNX Runtime, Intel의 OpenVINO 및 NVIDIA의 TensorRT와 같은 고성능 런타임은 CPU 또는 GPU와 같은 특정 하드웨어에서 ONNX 모델을 효율적으로 실행하도록 설계되었습니다.
  • 클라우드 서비스: Azure Machine LearningAmazon SageMaker를 포함한 주요 클라우드 플랫폼은 모델 제공을 간소화하기 위해 ONNX를 사용합니다.

ONNX의 실제 응용 분야

ONNX의 유연성은 많은 컴퓨터 비전 및 ML 시나리오에서 매우 유용합니다.

  1. 엣지 장치에 AI 배포: 개발자는 NVIDIA GPU가 장착된 강력한 데스크톱에서 객체 감지 모델인 Ultralytics YOLO11과 같은 복잡한 모델을 학습할 수 있습니다. 리테일 분석에 사용되는 스마트 카메라 또는 Raspberry Pi와 같은 저전력 엣지 장치에서 애플리케이션을 실행하기 위해 모델은 ONNX로 내보내집니다. 그런 다음 원래 PyTorch 환경 없이도 대상 하드웨어에서 효율적인 성능을 위해 ONNX Runtime 또는 OpenVINO와 같은 런타임에 의해 최적화될 수 있습니다.

  2. 다양한 애플리케이션에 모델 통합: Python 및 TensorFlow를 사용하여 의료 영상 분석 모델을 구축하는 의료 회사를 생각해 보십시오. 병원의 기존 소프트웨어 인프라는 C# 및 .NET을 사용하여 구축되었습니다. 모델을 다시 작성하는 대신 팀은 ONNX로 내보냅니다. 그런 다음 C# 애플리케이션은 .NET용 ONNX 런타임을 사용하여 모델의 기능을 직접 통합하여 개발 시간과 복잡성을 크게 줄일 수 있습니다.

ONNX vs. 관련 개념

ONNX를 관련 용어와 구별하는 것이 중요합니다.

  • 프레임워크별 형식: PyTorch와 같은 형식: .pt 또는 TensorFlow의 SavedModel 각 프레임워크에 고유합니다. ONNX는 이러한 형식 간의 변환 또는 공통 런타임을 통한 배포를 가능하게 하는 중간자 역할을 합니다. TorchScript 는 PyTorch 모델 직렬화를 위한 또 다른 형식이며, 때로는 ONNX 내보내기의 대안 또는 전조로 사용됩니다.
  • 추론 엔진/런타임: ONNX Runtime, TensorRT 및 OpenVINO와 같은 도구는 ML 모델을 효율적으로 실행하도록 설계된 소프트웨어 라이브러리입니다. 이러한 엔진 중 다수는 ONNX 모델을 사용할 수 있으며 특정 하드웨어 대상에 대해 추가 최적화(예: 양자화 또는 그래프 융합)를 적용하는 경우가 많습니다. ONNX는 이러한 엔진에 대한 표준화된 모델 입력을 제공합니다.

요약하자면, ONNX는 프레임워크 제한에 구애받지 않고 개발자가 훈련 및 배포에 가장 적합한 도구를 선택할 수 있도록 MLOps(Machine Learning Operations) 파이프라인에서 유연성과 상호 운용성을 보장하는 데 중요한 표준입니다. Ultralytics HUB와 같은 플랫폼은 이러한 형식을 활용하여 모델 개발에서 실제 애플리케이션으로의 여정을 단순화합니다. 자세한 내용은 공식 ONNX 웹사이트를 방문하여 GitHub에서 프로젝트를 살펴보십시오.

Ultralytics 커뮤니티에 참여하세요

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

지금 참여하기
클립보드에 링크가 복사되었습니다.