欢迎使用 ONNX 运行时

ONNX 运行时是一个跨平台的机器学习模型加速器,具有灵活的接口,可集成特定于硬件的库。 ONNX 运行时可以与来自 PyTorch、Tensorflow/Keras、TFLite、scikit-learn 和其他框架的模型一起使用。

如何使用 ONNX 运行时

贡献和自定义


快速入门模板


ONNX 运行时推理

ONNX 运行时推理为微软 Office、Azure、Bing 等关键产品和服务以及数十个社区项目中的机器学习模型提供支持。

ONNX 运行时推理的用例,例如:

  • 提高各种 ML 模型的推理性能
  • 在不同的硬件和操作系统上运行
  • 在 Python 中训练,但部署到 C#/C++/Java 应用
  • 使用在不同框架中创建的模型进行训练和推理

工作原理

前提很简单。

  1. 获取模型。 这可以从任何支持导出/转换为 ONNX 格式的框架中进行训练。请参阅教程,了解一些流行的框架/库。
  2. 使用 ONNX 运行时加载并运行模型。 请参阅基本教程,了解如何在不同语言中运行模型。
  3. (可选) 使用各种运行时配置或硬件加速器调整性能。 这里有很多选项 - 请参阅性能部分作为起点。

即使没有步骤 3,与原始框架相比,ONNX 运行时通常也会提供性能改进。

ONNX 运行时在模型图上应用了许多图优化,然后根据可用的特定于硬件的加速器将其划分为子图。核心 ONNX 运行时的优化计算内核提供性能改进,并且分配的子图从每个执行提供程序获得进一步的加速。


ONNX 运行时训练