728x90
ONNX (Open Neural Network Exchange)란?
ONNX(Open Neural Network Exchange)는 다양한 딥러닝 프레임워크(예: PyTorch, TensorFlow, MXNet 등)에서 만든 인공지능 모델을 서로 호환 가능하게 변환·공유할 수 있도록 만든 개방형 표준 포맷입니다2456.
주요 목적과 특징
- 프레임워크 간 호환성
ONNX는 서로 다른 프레임워크에서 학습한 모델을 ONNX 포맷으로 변환해, 다른 프레임워크나 하드웨어 환경에서도 쉽게 불러와 실행할 수 있게 해줍니다.
예를 들어, PyTorch에서 학습한 모델을 ONNX로 변환한 뒤 TensorFlow, 모바일, 엣지, 서버 등 다양한 환경에서 사용할 수 있습니다246. - 모델 이식성과 재사용성
ONNX는 표준화된 모델 표현 방식을 제공하여, 모델을 다양한 하드웨어와 플랫폼(CPU, GPU, NPU 등)에서 쉽게 이식·재사용할 수 있습니다57. - 공개 표준 및 생태계
페이스북과 마이크로소프트가 주도하여 개발을 시작했으며, 현재는 여러 기업과 연구기관이 참여하는 오픈소스 커뮤니티로 발전했습니다2. - 계산 그래프 기반 구조
ONNX 모델은 연산(노드)과 데이터 흐름(엣지)로 구성된 계산 그래프 형태로 저장됩니다. 이 구조 덕분에 모델의 연산 방식과 구조를 명확하게 표현할 수 있습니다23. - 공유 최적화 및 하드웨어 지원
ONNX 포맷을 기준으로 하드웨어별 최적화가 가능하여, 다양한 AI 가속기(NPU, GPU 등)에서 효율적으로 실행할 수 있습니다48.
활용 예시
- PyTorch에서 모델을 학습 → ONNX로 변환 → ONNX Runtime, TensorRT, OpenVINO 등 다양한 실행 환경에서 추론
- 모델을 한 번만 학습하고, 다양한 하드웨어와 서비스 환경에 손쉽게 배포
요약
ONNX는 딥러닝 모델의 호환성과 이식성을 극대화하기 위해 만들어진 오픈소스 표준 포맷으로, 다양한 프레임워크와 하드웨어에서 모델을 자유롭게 변환·공유·실행할 수 있도록 해줍니다24567.
Citations:
- https://adjh54.tistory.com/203
- https://wikidocs.net/210835
- https://woon.blogpro.so/onnxopen-neural-network-exchange
- https://beeny-ds.tistory.com/entry/%EC%86%8C%EA%B0%9C-ONNX-%EB%9E%80
- https://igotit.tistory.com/entry/ONNX-Open-Neural-Network-Exchange-%EB%94%A5%EB%9F%AC%EB%8B%9D-%EB%AA%A8%EB%8D%B8-%EB%B3%80%ED%99%98-%ED%91%9C%EC%A4%80-%ED%8F%AC%EB%A7%B7
- https://velog.io/@kaintels/ONNX%EB%9E%80
- https://moonlight314.tistory.com/entry/ONNXOpen-Neural-Network-Exchange
- https://www.ultralytics.com/ko/glossary/onnx-open-neural-network-exchange
728x90
'IT 자료 > Artificial intelligence' 카테고리의 다른 글
| AI 코딩 에이전트 주요 솔루션 (0) | 2025.05.23 |
|---|---|
| 토큰(token) (0) | 2025.05.17 |
| LoRA(Low-Rank Adaption of Large Language) (1) | 2025.05.11 |
| PEFT(Parameter-Efficient Fine-Tuning) (0) | 2025.05.11 |
| LLM Ops (Large Language Model Operations) (0) | 2025.05.11 |