본문 바로가기
지속가능티끌/Data.Math.Phys

ONNX . Open Neural Network Exchange . 딥러닝 모델 변환 표준 포맷

by i.got.it 2024. 8. 29.

 

 

ONNX . Open Neural Network Exchange

- 딥러닝 모델 변환 표준 포맷 

 

 

 

ONNX 개요

  • 목적: ONNX는 다양한 딥러닝 프레임워크 간에 모델을 쉽게 변환하고 사용할 수 있도록 하는 표준화된 모델 포맷.
  • 지원 프레임워크: PyTorch, TensorFlow, Keras, MXNet 등 여러 주요 딥러닝 프레임워크에서 모델을 ONNX 형식으로 변환할 수 있음.
  • 런타임: ONNX Runtime을 통해 다양한 하드웨어에서 최적화된 추론을 지원함.
  • 특징: 모델의 이식성, 경량화, 하드웨어 최적화, 다양한 플랫폼에서의 실행 등을 지원.

ONNX는 딥러닝 모델의 호환성과 이식성을 높이기 위해 개발된 포맷으로, 다양한 프레임워크와 플랫폼에서 모델을 쉽게 변환하고 실행할 수 있게 해준다.  ONNX 공식 웹사이트와 GitHub 리포지토리에서 필요한 자료와 도구를 다운로드하고, ONNX Runtime을 활용하여 모델을 효율적으로 실행 가능. 

 

다운로드 주소 및 공식 웹사이트

  • ONNX 공식 웹사이트: https://onnx.ai
    • ONNX 프로젝트에 대한 공식 정보, 문서, 및 다양한 자료를 제공.
  • ONNX GitHub 리포지토리: https://github.com/onnx/onnx
    • ONNX의 소스 코드, 업데이트, 문제 보고 등을 관리하는 GitHub 리포지토리.
  • ONNX Runtime GitHub 리포지토리: https://github.com/microsoft/onnxruntime
    • ONNX 모델의 추론을 위한 런타임 라이브러리.

 

ONNX 개념 이해

  • 모델 변환:
    • PyTorch, TensorFlow 등에서 학습된 모델을 ONNX 포맷으로 변환하여 다양한 프레임워크에서 사용할 수 있도록 함.
    • 변환 과정에서 모델의 구조, 가중치, 연산 등을 ONNX 형식으로 표현.
  • ONNX Runtime:
    • ONNX 모델을 효율적으로 실행하기 위한 경량화된 런타임.
    • 다양한 하드웨어에서 최적화된 실행 지원 (CPU, GPU, TPU 등).
  • 모델 최적화:
    • 모델 크기를 줄이고, 연산 속도를 향상시키기 위한 최적화 기법 지원.
    • 예를 들어, 퀀타이제이션(양자화) 등을 통해 모델을 경량화함.
  • 이식성:
    • ONNX는 프레임워크에 종속되지 않고 다양한 환경에서 동일한 모델을 사용할 수 있게 해줌.
    • 다양한 플랫폼(서버, 클라우드, 엣지 디바이스 등)에서 모델을 일관되게 실행할 수 있음. 

 

ONNX 활용 방법

  1. 모델 변환:
    • PyTorch: torch.onnx.export를 사용하여 모델을 ONNX 형식으로 저장.
    • TensorFlow: TensorFlow 모델을 ONNX 형식으로 변환하기 위한 도구 사용.
  2. ONNX Runtime 사용:
    • ONNX Runtime을 설치하고, ONNX 모델을 로드하여 추론을 수행.
    • 다양한 하드웨어와 플랫폼에서 성능을 최적화하여 모델 실행.
  3. 모델 배포:
    • ONNX 모델을 클라우드, 서버, 모바일, IoT 디바이스 등 다양한 환경에 배포 가능.
    • ONNX Runtime을 통해 성능을 조정하고, 다양한 하드웨어 가속기 지원.

 

 

 

Visual C++ 에서 ONNX 개발환경 구축 

 

 

ONNX . Visual C++ 에서 ONNX 개발 환경 구축

개요  C++ 에서 ONNX 사용 가능하게 해주는 라이브러리인 ONNX Runtime 다운로드 하고 VC++ 2022 에서 ONNX 활용 개발 환경 셋팅.  VC++ 에서 개발환경 셋팅이라 함은 프로젝트 설정 옵션에서 Include Director

igotit.tistory.com

 

 

 

 

메타트레이더 5 에서 ONNX 모델 직접 지원됨.

 

 

메타트레이더 5 . ONNX 모델 직접 지원 .

메타트레이더 5 . ONNX 모델 직접 지원 .   ONNX 처리 가능한 함수 전체  MQL5 provides the following functions for working with ONNX:FunctionActionOnnxCreateCreate an ONNX session, loading a model from an *.onnx fileOnnxCreateF

igotit.tistory.com

 

 


첫 등록 : 2024.08.29 

최종 수정 : 

단축 주소 : https://igotit.tistory.com/5798


 

댓글



 

비트코인




암호화폐       외환/나스닥/골드         암호화폐/외환/나스닥/골드
     
현물 |선물 인버스 |선물 USDT       전략매니저(카피트레이딩)         프랍 트레이더 온라인 지원가능. MT4,MT5