onnx/tensorflow-onnx
Convert TensorFlow, Keras, Tensorflow.js and Tflite models to ONNX
해결하는 문제
TensorFlow 생태계의 머신러닝 모델을 ONNX(Open Neural Network Exchange) 형식으로 변환할 수 있게 해줍니다. 이로써 TensorFlow, Keras, TensorFlow.js 또는 TFLite에서 훈련된 모델을 ONNX를 지원하는 다양한 런타임 및 하드웨어 가속기에서 실행할 수 있으며, 특정 프레임워크에 종속되는 제약을 회피할 수 있습니다.
작동 방식
이 도구는 TensorFlow 연산자를 그에 해당하는 ONNX 연산자로 매핑하는 명령줄 인터페이스(CLI)와 Python API를 제공합니다. SavedModel, 체크포인트, graphdef 파일, TFLite, TensorFlow.js 모델 등 다양한 입력 형식을 지원합니다. 사용자는 특정 런타임과의 호환성을 보장하기 위해 대상 ONNX opset 버전을 지정할 수 있으며, Windows ML과 같은 특정 플랫폼용 워크어라운드도 적용할 수 있습니다.
대상 사용자
TensorFlow 기반 모델을 재훈련 없이 다양한 환경이나 런타임(예: ONNX Runtime)에 배포해야 하는 머신러닝 엔지니어 및 개발자.
주요 기능
- 광범위한 형식 지원: TensorFlow 2.x, Keras, TFLite, TensorFlow.js 모델 변환 지원.
- 유연한 변환: 빠른 변환을 위한 CLI와 워크플로우에 통합하기 위한 Python API 제공.
- opset 제어: ONNX opset 버전(14~18)을 지정 가능.
- 대용량 모델 처리: 2GB를 초과하는 모델 변환을 위해 외부 텐서 저장 형식 지원.
- 사용자 정의 기능: 사용자 정의 연산자 처리, 이미지 포맷 전치(NHWC → NCHW), 플랫폼별 워크어라운드 적용 가능.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트