Python Runtime for ONNX models, other helpers to convert machine learned models in C++.
Project description
mlprodict
The packages explores ways to productionize machine learning predictions. One approach uses ONNX and tries to implement a runtime in python / numpy or wraps onnxruntime into a single class. The package provides tools to compare predictions, to benchmark models converted with sklearn-onnx.
The second approach consists in converting a pipeline directly into C and is not much developed.
from sklearn.linear_model import LinearRegression from sklearn.datasets import load_iris from mlprodict.onnxrt import OnnxInference, measure_relative_difference import numpy iris = load_iris() X = iris.data[:, :2] y = iris.target lr = LinearRegression() lr.fit(X, y) # Predictions with scikit-learn. expected = lr.predict(X[:5]) print(expected) # Conversion into ONNX. from mlprodict.onnxrt import to_onnx model_onnx = to_onnx(lr, X.astype(numpy.float32)) # Predictions with onnxruntime oinf = OnnxInference(model_onnx, runtime='onnxruntime1') ypred = oinf.run({'X': X[:5]}) print(ypred) # Measuring the maximum difference. print(measure_relative_difference(expected, ypred))
History
current - 2019-08-01 - 0.00Mb
26: Tests all converters in separate processeses to make it easier to catch crashes (2019-08-01)
25: Ensures operator clip returns an array of the same type (ONNX Python Runtime) (2019-07-30)
22: Implements a function to shake an ONNX model and test float32 conversion (2019-07-28)
21: Add customized converters (2019-07-28)
20: Enables support for TreeEnsemble operators in python runtime (ONNX). (2019-07-28)
19: Enables support for SVM operators in python runtime (ONNX). (2019-07-28)
16: fix documentation, visual graph are not being rendered in notebooks (2019-07-23)
18: implements python runtime for SVM (2019-07-20)
0.2.272 - 2019-07-15 - 0.09Mb
17: add a mechanism to use ONNX with double computation (2019-07-15)
13: add automated benchmark of every scikit-learn operator in the documentation (2019-07-05)
12: implements a way to measure time for each node of the ONNX graph (2019-07-05)
11: implements a better ZipMap node based on dedicated container (2019-07-05)
8: implements runtime for decision tree (2019-07-05)
7: implement python runtime for scaler, pca, knn, kmeans (2019-07-05)
10: implements full runtime with onnxruntime not node by node (2019-06-16)
9: implements a onnxruntime runtime (2019-06-16)
6: first draft of a python runtime for onnx (2019-06-15)
5: change style highlight-ipython3 (2018-01-05)
0.1.11 - 2017-12-04 - 0.03Mb
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file mlprodict-0.2.363.tar.gz
.
File metadata
- Download URL: mlprodict-0.2.363.tar.gz
- Upload date:
- Size: 116.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: Python-urllib/3.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e2e2d8e714134a6a9ea7bce28dbf469f0d41aa9b9b20b28d53bd618ba2df2336 |
|
MD5 | 380159e186eb5a38fc4e8aaea09e705a |
|
BLAKE2b-256 | cae6c2f7adcf886bafb0678594545d77f1be36b4fb59f47c5f21ebec4476cabf |