onnx的ngraph后端

ngraph-onnx的Python项目详细描述


nx上的ngraphBuild Status

onnx的ngraph后端。

此存储库包含使用Intel nGraph library作为后端运行ONNX模型的工具。

安装

按照我们的build说明从源代码在nx上安装ngraph。

用法示例

导入onnx模型

您可以从ONNX model zoo下载模型。例如resnet-50:

$ wget https://s3.amazonaws.com/download.onnx/models/opset_8/resnet50.tar.gz
$ tar -xzvf resnet50.tar.gz

使用以下python命令将下载的模型转换为nggraph模型:

# Import ONNX and load an ONNX file from disk>>>importonnx>>>onnx_protobuf=onnx.load('resnet50/model.onnx')# Convert ONNX model to an ngraph model>>>fromngraph_onnx.onnx_importer.importerimportimport_onnx_model>>>ng_function=import_onnx_model(onnx_protobuf)# The importer returns a list of ngraph models for every ONNX graph output:>>>print(ng_function)<Function:'resnet50'([1,1000])>

这将创建一个nggraphFunction对象,该对象可用于在所选后端上执行计算。

运行计算

导入onnx模型后,您将拥有一个ngraphFunction对象。 现在可以创建nggraphRuntime后端,并使用它将Function编译为后端特定的Computation对象。 最后,可以使用输入数据调用创建的Computation对象来执行模型。

# Using an ngraph runtime (CPU backend) create a callable computation object>>>importngraphasng>>>runtime=ng.runtime(backend_name='CPU')>>>resnet_on_cpu=runtime.computation(ng_function)# Load an image (or create a mock as in this example)>>>importnumpyasnp>>>picture=np.ones([1,3,224,224],dtype=np.float32)# Run computation on the picture:>>>resnet_on_cpu(picture)[array([[2.16105007e-04,5.58412226e-04,9.70510227e-05,5.76671446e-05,7.45318757e-05,4.80892748e-04,5.67404088e-04,9.48728994e-05,...

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用JdbcDaoSupport在没有输出参数的情况下执行callable语句   在Netbeans中使用pjsua2时出现java错误   java spring data mongodb无法在未设置id的子对象上执行级联保存   单击对话框按钮时,java泄漏了窗口   eclipse中java编译groovy时出现编译时错误   java如何以简洁的方式调用超级构造函数   java从字符串中删除某些字符   java Vert中的sharedData异步映射的寿命有多长。十、   java Tomcat 8.0不会从纯Spring MVC模板开始   java获取@Autowired错误   java如何点击几秒钟   java JDO持久字段返回null   java将数据从对话框传递到活动Android   java如何在velocity静默表示法中转义“[”   在Eclipse中运行我的签名发布密钥库时出现java问题