ONNX的第一个正式版本(v1.0)发布于2017年12月。
ONNX(英语:Open Neural Network Exchange)是一种针对机器学习所设计的开放式的文件格式,用于存储训练好的模型。它使得不同的人工智能框架(如Pytorch、MXNet)可以采用相同格式存储模型数据并交互。 ONNX的规范及代码主要由微软,亚马逊,Facebook和IBM等公司共同开发,以开放源代码的方式托管在Github上。[1][2][3] 目前官方支持加载ONNX模型并进行推理的深度学习框架有: Caffe2, PyTorch, MXNet,ML.NET,TensorRT 和 Microsoft CNTK,并且 TensorFlow 也非官方的支持ONNX。

ONNX是微软和 Facebook 发布的一个深度学习开发工具生态系统,旨在让 AI 开发人员能够随着项目发展而选择正确的工具。

ONNX 所针对的是深度学习开发生态中最关键的问题之一,在任意一个框架上训练的神经网络模型,无法直接在另一个框架上用。开发者需要耗费大量时间精力把模型从一个开发平台移植到另一个。因此,如何实现不同框架之间的互操作性,简化从研究到生产的路径,成为了重中之重。

ONNX 的工作原理是:

实时跟踪某个神经网络是如何在这些框架上生成的,接着,使用这些信息创建一个通用的计算图,即符合ONNX 标准的计算图。这样做行得通,是因为在计算方面,这些框架产生的最终结果都非常接近,虽然更高级的表达不同。

ONNX 目前支持 Caffe2、PyTorch、Microsoft Cognitive Toolkit、Apache MXNet 等工具。

TensorRT提供了ONNX解析器,因此您可以轻松地从Caffe 2,Chainer,Microsoft Cognitive Toolkit,MxNet和PyTorch等框架中导入ONNX模型到TensorRT中。

TensorRT解析器(ONNX,开放神经网络交换)

相关文章:

  • 2021-04-09
  • 2022-12-23
  • 2021-09-22
  • 2021-04-14
  • 2022-01-05
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-03-31
  • 2022-12-23
  • 2021-05-17
  • 2022-12-23
  • 2021-08-11
  • 2021-12-06
  • 2021-09-02
相关资源
相似解决方案