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 的不同运行时和硬件加速器上运行,从而摆脱对单一框架的依赖限制。
工作原理
该工具提供命令行接口(CLI)和 Python API,用于将 TensorFlow 操作映射到其 ONNX 等效操作。支持多种输入格式,包括 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 版本(支持 opset-14 到 18)。
- 大模型处理:支持外部张量存储格式,可转换超过 2 GB 的模型。
- 可定制性:提供处理自定义操作、转置图像格式(NHWC 到 NCHW)以及应用平台特定修复方案的选项。
相关
- 项目
- 项目
- 项目
- 项目
- 项目