onnx运行时python绑定

onnxruntime-gpu的Python项目详细描述


onnx运行时 实现对经过训练的机器学习(ML)的高性能评估 在保持低资源使用率的同时进行建模。 在微软致力于 Open Neural Network Exchange (ONNX) 社区,它也支持传统的ml模型 作为深度学习算法 ONNX-ML format。 文件可在 Python Bindings for ONNX Runtime

示例

下面的示例演示了一个端到端的示例 在一个非常常见的场景中。使用scikit learn训练模型 但它必须在优化的环境中运行得非常快。 然后将模型转换为onnx格式和onnx运行时 替换scikit learn来计算预测。

# Train a model.
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
iris = load_iris()
X, y = iris.data, iris.target
X_train, X_test, y_train, y_test = train_test_split(X, y)
clr = RandomForestClassifier()
clr.fit(X_train, y_train)

# Convert into ONNX format with onnxmltools
from skl2onnx import convert_sklearn
from skl2onnx.common.data_types import FloatTensorType
initial_type = [('float_input', FloatTensorType([1, 4]))]
onx = convert_sklearn(clr, initial_types=initial_type)
with open("rf_iris.onnx", "wb") as f:
    f.write(onx.SerializeToString())

# Compute the prediction with ONNX Runtime
import onnxruntime as rt
import numpy
sess = rt.InferenceSession("rf_iris.onnx")
input_name = sess.get_inputs()[0].name
label_name = sess.get_outputs()[0].name
pred_onx = sess.run([label_name], {input_name: X_test.astype(numpy.float32)})[0]

更改

0.3.1

protobuf lite,nuget文件修复(补丁到0.3.0)。

0.3.0

c-api,linux支持dotnet-nuget包,cuda 9.1支持。

0.2.1

C-API、Linux对Dotnet Nuget包的支持、CUDA 10.0支持(补丁到0.2.0)。

0.2.0

C-API、Linux对Dotnet Nuget包的支持、CUDA 10.0支持

0.1.5

GA发布作为开放源代码onnxruntime(0.1.4补丁)的一部分。

0.1.4

GA发布作为开放源代码onnxruntime的一部分。

0.1.3

修复了不支持AVX指令的计算机上的崩溃。

0.1.2

在Ubuntu16.04上首次发布的CPU和GPU,带有CUDA9.1和CUDNN7.0, 支持深度学习模型体系结构的运行时,如AlexNet、ResNet, 例外,vgg,inception,densenet,标准线性学习者, 标准合奏学习者, 变换标量器,输入器。

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

推荐PyPI第三方库


热门话题
Spring 4升级后未加载java应用程序上下文   java Android 2.3.3 internet可以在我的Galaxy S上运行,但不能在我的Galaxy选项卡上运行?(许可?)   java通过不改变其原始位置对大小写字母进行排序   java Spring Boot一直在破坏我的电脑。。。sts的最佳配置是什么。Windows 10上的ini文件?   css Java Spring+引导问题   java Jackson将GeoJsonPoint序列化为纬度/经度   xml Java Transformer:如何将其结果生成OutputStream?   java如何更改字体、文本大小和设置文本位置?   在JavaSpringHibernate3.6.3中,如何告诉一个方法等待,直到获得锁,以及如何重试失败的事务?   java安卓服务代替线程   Java Swing使用鼠标移动JFrame