Note
Go to the end to download the full example code.
What is the opset number?¶
Every library is versioned. scikit-learn may change the implementation of a specific model. That happens for example with the SVC model where the parameter break_ties was added in 0.22. ONNX does also have a version called opset number. Operator ArgMin was added in opset 1 and changed in opset 11, 12, 13. Sometimes, it is updated to extend the list of types it supports, sometimes, it moves a parameter into the input list. The runtime used to deploy the model does not implement a new version, in that case, a model must be converted by usually using the most recent opset supported by the runtime, we call that opset the targeted opset. An ONNX graph only contains one unique opset, every node must be described following the specifications defined by the latest opset below the targeted opset.
This example considers an IsolationForest and digs into opsets.
Data¶
A simple example.
from onnx.defs import onnx_opset_version
from skl2onnx import to_onnx
import numpy
import matplotlib.pyplot as plt
from sklearn.ensemble import IsolationForest
from sklearn.datasets import make_blobs
X, y = make_blobs(n_samples=100, n_features=2)
model = IsolationForest(n_estimators=3)
model.fit(X)
labels = model.predict(X)
fig, ax = plt.subplots(1, 1)
for k in (-1, 1):
ax.plot(X[labels == k, 0], X[labels == k, 1], "o", label="cl%d" % k)
ax.set_title("Sample")

ONNX¶
onx = to_onnx(
model, X[:1].astype(numpy.float32), target_opset={"": 15, "ai.onnx.ml": 2}
)
print(onx)
ir_version: 8
producer_name: "skl2onnx"
producer_version: "1.19.1"
domain: "ai.onnx"
model_version: 0
doc_string: ""
graph {
node {
input: "X"
input: "node_sample0_Gathercst"
output: "node_sample0_output0"
name: "node_sample0_Gather"
op_type: "Gather"
attribute {
name: "axis"
i: 1
type: INT
}
domain: ""
}
node {
input: "X"
input: "node_sample0_Gathercst"
output: "node_sample1_output0"
name: "node_sample1_Gather"
op_type: "Gather"
attribute {
name: "axis"
i: 1
type: INT
}
domain: ""
}
node {
input: "X"
input: "node_sample0_Gathercst"
output: "node_sample2_output0"
name: "node_sample2_Gather"
op_type: "Gather"
attribute {
name: "axis"
i: 1
type: INT
}
domain: ""
}
node {
input: "node_sample0_output0"
output: "node_sample0_Y0"
name: "node_sample0_TreeEnsembleRegressor"
op_type: "TreeEnsembleRegressor"
attribute {
name: "n_targets"
i: 1
type: INT
}
attribute {
name: "nodes_falsenodeids"
ints: 6
ints: 3
ints: 0
ints: 5
ints: 0
ints: 0
ints: 40
ints: 33
ints: 18
ints: 13
ints: 12
ints: 0
ints: 0
ints: 15
ints: 0
ints: 17
ints: 0
ints: 0
ints: 26
ints: 23
ints: 22
ints: 0
ints: 0
ints: 25
ints: 0
ints: 0
ints: 30
ints: 29
ints: 0
ints: 0
ints: 32
ints: 0
ints: 0
ints: 35
ints: 0
ints: 39
ints: 38
ints: 0
ints: 0
ints: 0
ints: 42
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_featureids"
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 1
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_hitrates"
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
type: FLOATS
}
attribute {
name: "nodes_missing_value_tracks_true"
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_modes"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
type: STRINGS
}
attribute {
name: "nodes_nodeids"
ints: 0
ints: 1
ints: 2
ints: 3
ints: 4
ints: 5
ints: 6
ints: 7
ints: 8
ints: 9
ints: 10
ints: 11
ints: 12
ints: 13
ints: 14
ints: 15
ints: 16
ints: 17
ints: 18
ints: 19
ints: 20
ints: 21
ints: 22
ints: 23
ints: 24
ints: 25
ints: 26
ints: 27
ints: 28
ints: 29
ints: 30
ints: 31
ints: 32
ints: 33
ints: 34
ints: 35
ints: 36
ints: 37
ints: 38
ints: 39
ints: 40
ints: 41
ints: 42
type: INTS
}
attribute {
name: "nodes_treeids"
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_truenodeids"
ints: 1
ints: 2
ints: 0
ints: 4
ints: 0
ints: 0
ints: 7
ints: 8
ints: 9
ints: 10
ints: 11
ints: 0
ints: 0
ints: 14
ints: 0
ints: 16
ints: 0
ints: 0
ints: 19
ints: 20
ints: 21
ints: 0
ints: 0
ints: 24
ints: 0
ints: 0
ints: 27
ints: 28
ints: 0
ints: 0
ints: 31
ints: 0
ints: 0
ints: 34
ints: 0
ints: 36
ints: 37
ints: 0
ints: 0
ints: 0
ints: 41
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_values"
floats: -4.91437864
floats: -5.5100522
floats: 0
floats: -5.24938059
floats: 0
floats: 0
floats: 2.12062478
floats: 11.1905489
floats: -4.31129265
floats: -4.75225878
floats: -4.76837587
floats: 0
floats: 0
floats: -4.45826435
floats: 0
floats: 6.03335953
floats: 0
floats: 0
floats: -0.714648902
floats: -3.90312386
floats: 6.56421041
floats: 0
floats: 0
floats: 9.1439209
floats: 0
floats: 0
floats: 6.19892
floats: 2.33801
floats: 0
floats: 0
floats: -0.6312446
floats: 0
floats: 0
floats: -2.43172026
floats: 0
floats: -1.81629825
floats: -2.02227831
floats: 0
floats: 0
floats: 0
floats: 2.43460631
floats: 0
floats: 0
type: FLOATS
}
attribute {
name: "post_transform"
s: "NONE"
type: STRING
}
attribute {
name: "target_ids"
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "target_nodeids"
ints: 2
ints: 4
ints: 5
ints: 11
ints: 12
ints: 14
ints: 16
ints: 17
ints: 21
ints: 22
ints: 24
ints: 25
ints: 28
ints: 29
ints: 31
ints: 32
ints: 34
ints: 37
ints: 38
ints: 39
ints: 41
ints: 42
type: INTS
}
attribute {
name: "target_treeids"
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "target_weights"
floats: 2
floats: 4
floats: 5
floats: 11
floats: 12
floats: 14
floats: 16
floats: 17
floats: 21
floats: 22
floats: 24
floats: 25
floats: 28
floats: 29
floats: 31
floats: 32
floats: 34
floats: 37
floats: 38
floats: 39
floats: 41
floats: 42
type: FLOATS
}
domain: "ai.onnx.ml"
}
node {
input: "node_sample0_Y0"
output: "node_sample0_output02"
name: "node_sample0_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 7
type: INT
}
domain: ""
}
node {
input: "node_sample0_Y0"
output: "path_length0_output0"
name: "path_length0_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 7
type: INT
}
domain: ""
}
node {
input: "node_sample1_output0"
output: "node_sample1_Y0"
name: "node_sample1_TreeEnsembleRegressor"
op_type: "TreeEnsembleRegressor"
attribute {
name: "n_targets"
i: 1
type: INT
}
attribute {
name: "nodes_falsenodeids"
ints: 20
ints: 19
ints: 6
ints: 5
ints: 0
ints: 0
ints: 12
ints: 9
ints: 0
ints: 11
ints: 0
ints: 0
ints: 14
ints: 0
ints: 16
ints: 0
ints: 18
ints: 0
ints: 0
ints: 0
ints: 64
ints: 37
ints: 34
ints: 27
ints: 26
ints: 0
ints: 0
ints: 31
ints: 30
ints: 0
ints: 0
ints: 33
ints: 0
ints: 0
ints: 36
ints: 0
ints: 0
ints: 53
ints: 46
ints: 43
ints: 42
ints: 0
ints: 0
ints: 45
ints: 0
ints: 0
ints: 50
ints: 49
ints: 0
ints: 0
ints: 52
ints: 0
ints: 0
ints: 59
ints: 58
ints: 57
ints: 0
ints: 0
ints: 0
ints: 61
ints: 0
ints: 63
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_featureids"
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 1
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 1
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_hitrates"
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
type: FLOATS
}
attribute {
name: "nodes_missing_value_tracks_true"
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_modes"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
type: STRINGS
}
attribute {
name: "nodes_nodeids"
ints: 0
ints: 1
ints: 2
ints: 3
ints: 4
ints: 5
ints: 6
ints: 7
ints: 8
ints: 9
ints: 10
ints: 11
ints: 12
ints: 13
ints: 14
ints: 15
ints: 16
ints: 17
ints: 18
ints: 19
ints: 20
ints: 21
ints: 22
ints: 23
ints: 24
ints: 25
ints: 26
ints: 27
ints: 28
ints: 29
ints: 30
ints: 31
ints: 32
ints: 33
ints: 34
ints: 35
ints: 36
ints: 37
ints: 38
ints: 39
ints: 40
ints: 41
ints: 42
ints: 43
ints: 44
ints: 45
ints: 46
ints: 47
ints: 48
ints: 49
ints: 50
ints: 51
ints: 52
ints: 53
ints: 54
ints: 55
ints: 56
ints: 57
ints: 58
ints: 59
ints: 60
ints: 61
ints: 62
ints: 63
ints: 64
type: INTS
}
attribute {
name: "nodes_treeids"
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_truenodeids"
ints: 1
ints: 2
ints: 3
ints: 4
ints: 0
ints: 0
ints: 7
ints: 8
ints: 0
ints: 10
ints: 0
ints: 0
ints: 13
ints: 0
ints: 15
ints: 0
ints: 17
ints: 0
ints: 0
ints: 0
ints: 21
ints: 22
ints: 23
ints: 24
ints: 25
ints: 0
ints: 0
ints: 28
ints: 29
ints: 0
ints: 0
ints: 32
ints: 0
ints: 0
ints: 35
ints: 0
ints: 0
ints: 38
ints: 39
ints: 40
ints: 41
ints: 0
ints: 0
ints: 44
ints: 0
ints: 0
ints: 47
ints: 48
ints: 0
ints: 0
ints: 51
ints: 0
ints: 0
ints: 54
ints: 55
ints: 56
ints: 0
ints: 0
ints: 0
ints: 60
ints: 0
ints: 62
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_values"
floats: -4.13174248
floats: 8.62347698
floats: -5.17501211
floats: -5.86771631
floats: 0
floats: 0
floats: -4.50546074
floats: -4.93615389
floats: 0
floats: -4.76907063
floats: 0
floats: 0
floats: 5.71810293
floats: 0
floats: -4.37862825
floats: 0
floats: -4.19817543
floats: 0
floats: 0
floats: 0
floats: 2.5238018
floats: -2.90020013
floats: 9.84431553
floats: -3.83820748
floats: 6.87787867
floats: 0
floats: 0
floats: -3.7140789
floats: -3.76325393
floats: 0
floats: 0
floats: 7.59524107
floats: 0
floats: 0
floats: -3.17346501
floats: 0
floats: 0
floats: -1.81719685
floats: 7.73759
floats: 6.62668419
floats: -2.2911129
floats: 0
floats: 0
floats: 6.84645224
floats: 0
floats: 0
floats: 9.51551819
floats: -2.26091146
floats: 0
floats: 0
floats: -1.88877606
floats: 0
floats: 0
floats: 0.38286528
floats: 11.0070925
floats: 2.20380831
floats: 0
floats: 0
floats: 0
floats: 1.63472724
floats: 0
floats: 1.20069849
floats: 0
floats: 0
floats: 0
type: FLOATS
}
attribute {
name: "post_transform"
s: "NONE"
type: STRING
}
attribute {
name: "target_ids"
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "target_nodeids"
ints: 4
ints: 5
ints: 8
ints: 10
ints: 11
ints: 13
ints: 15
ints: 17
ints: 18
ints: 19
ints: 25
ints: 26
ints: 29
ints: 30
ints: 32
ints: 33
ints: 35
ints: 36
ints: 41
ints: 42
ints: 44
ints: 45
ints: 48
ints: 49
ints: 51
ints: 52
ints: 56
ints: 57
ints: 58
ints: 60
ints: 62
ints: 63
ints: 64
type: INTS
}
attribute {
name: "target_treeids"
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "target_weights"
floats: 4
floats: 5
floats: 8
floats: 10
floats: 11
floats: 13
floats: 15
floats: 17
floats: 18
floats: 19
floats: 25
floats: 26
floats: 29
floats: 30
floats: 32
floats: 33
floats: 35
floats: 36
floats: 41
floats: 42
floats: 44
floats: 45
floats: 48
floats: 49
floats: 51
floats: 52
floats: 56
floats: 57
floats: 58
floats: 60
floats: 62
floats: 63
floats: 64
type: FLOATS
}
domain: "ai.onnx.ml"
}
node {
input: "node_sample2_output0"
output: "node_sample2_Y0"
name: "node_sample2_TreeEnsembleRegressor"
op_type: "TreeEnsembleRegressor"
attribute {
name: "n_targets"
i: 1
type: INT
}
attribute {
name: "nodes_falsenodeids"
ints: 32
ints: 3
ints: 0
ints: 9
ints: 6
ints: 0
ints: 8
ints: 0
ints: 0
ints: 17
ints: 16
ints: 15
ints: 14
ints: 0
ints: 0
ints: 0
ints: 0
ints: 25
ints: 22
ints: 21
ints: 0
ints: 0
ints: 24
ints: 0
ints: 0
ints: 29
ints: 28
ints: 0
ints: 0
ints: 31
ints: 0
ints: 0
ints: 72
ints: 61
ints: 50
ints: 43
ints: 40
ints: 39
ints: 0
ints: 0
ints: 42
ints: 0
ints: 0
ints: 47
ints: 46
ints: 0
ints: 0
ints: 49
ints: 0
ints: 0
ints: 58
ints: 55
ints: 54
ints: 0
ints: 0
ints: 57
ints: 0
ints: 0
ints: 60
ints: 0
ints: 0
ints: 71
ints: 70
ints: 67
ints: 66
ints: 0
ints: 0
ints: 69
ints: 0
ints: 0
ints: 0
ints: 0
ints: 80
ints: 79
ints: 78
ints: 77
ints: 0
ints: 0
ints: 0
ints: 0
ints: 84
ints: 83
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_featureids"
ints: 1
ints: 0
ints: 0
ints: 1
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 1
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 1
ints: 1
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 1
ints: 1
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 1
ints: 1
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 1
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_hitrates"
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
type: FLOATS
}
attribute {
name: "nodes_missing_value_tracks_true"
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_modes"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
type: STRINGS
}
attribute {
name: "nodes_nodeids"
ints: 0
ints: 1
ints: 2
ints: 3
ints: 4
ints: 5
ints: 6
ints: 7
ints: 8
ints: 9
ints: 10
ints: 11
ints: 12
ints: 13
ints: 14
ints: 15
ints: 16
ints: 17
ints: 18
ints: 19
ints: 20
ints: 21
ints: 22
ints: 23
ints: 24
ints: 25
ints: 26
ints: 27
ints: 28
ints: 29
ints: 30
ints: 31
ints: 32
ints: 33
ints: 34
ints: 35
ints: 36
ints: 37
ints: 38
ints: 39
ints: 40
ints: 41
ints: 42
ints: 43
ints: 44
ints: 45
ints: 46
ints: 47
ints: 48
ints: 49
ints: 50
ints: 51
ints: 52
ints: 53
ints: 54
ints: 55
ints: 56
ints: 57
ints: 58
ints: 59
ints: 60
ints: 61
ints: 62
ints: 63
ints: 64
ints: 65
ints: 66
ints: 67
ints: 68
ints: 69
ints: 70
ints: 71
ints: 72
ints: 73
ints: 74
ints: 75
ints: 76
ints: 77
ints: 78
ints: 79
ints: 80
ints: 81
ints: 82
ints: 83
ints: 84
type: INTS
}
attribute {
name: "nodes_treeids"
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_truenodeids"
ints: 1
ints: 2
ints: 0
ints: 4
ints: 5
ints: 0
ints: 7
ints: 0
ints: 0
ints: 10
ints: 11
ints: 12
ints: 13
ints: 0
ints: 0
ints: 0
ints: 0
ints: 18
ints: 19
ints: 20
ints: 0
ints: 0
ints: 23
ints: 0
ints: 0
ints: 26
ints: 27
ints: 0
ints: 0
ints: 30
ints: 0
ints: 0
ints: 33
ints: 34
ints: 35
ints: 36
ints: 37
ints: 38
ints: 0
ints: 0
ints: 41
ints: 0
ints: 0
ints: 44
ints: 45
ints: 0
ints: 0
ints: 48
ints: 0
ints: 0
ints: 51
ints: 52
ints: 53
ints: 0
ints: 0
ints: 56
ints: 0
ints: 0
ints: 59
ints: 0
ints: 0
ints: 62
ints: 63
ints: 64
ints: 65
ints: 0
ints: 0
ints: 68
ints: 0
ints: 0
ints: 0
ints: 0
ints: 73
ints: 74
ints: 75
ints: 76
ints: 0
ints: 0
ints: 0
ints: 0
ints: 81
ints: 82
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_values"
floats: 4.39543915
floats: -3.1974
floats: 0
floats: 1.53005695
floats: 1.25531924
floats: 0
floats: 0.46847403
floats: 0
floats: 0
floats: 3.20477152
floats: 2.84214711
floats: 2.54921579
floats: 1.57987797
floats: 0
floats: 0
floats: 0
floats: 0
floats: 3.647861
floats: 3.41221929
floats: 3.32649326
floats: 0
floats: 0
floats: 3.47843742
floats: 0
floats: 0
floats: 3.83744454
floats: 1.76698327
floats: 0
floats: 0
floats: 3.95678949
floats: 0
floats: 0
floats: -1.15621173
floats: -2.27936578
floats: -3.42832732
floats: 7.02152824
floats: -3.90729976
floats: 5.64085293
floats: 0
floats: 0
floats: -3.81152844
floats: 0
floats: 0
floats: -3.85145426
floats: 9.51444435
floats: 0
floats: 0
floats: 8.04163361
floats: 0
floats: 0
floats: -2.33718634
floats: 7.01655674
floats: 5.76514
floats: 0
floats: 0
floats: 8.78447056
floats: 0
floats: 0
floats: -2.33011413
floats: 0
floats: 0
floats: -1.36622953
floats: 11.9991589
floats: 8.1781
floats: 7.19285107
floats: 0
floats: 0
floats: 11.1368809
floats: 0
floats: 0
floats: 0
floats: 0
floats: 5.14858866
floats: 4.61073971
floats: 0.295421958
floats: 4.4874
floats: 0
floats: 0
floats: 0
floats: 0
floats: 10.6296263
floats: -0.897378743
floats: 0
floats: 0
floats: 0
type: FLOATS
}
attribute {
name: "post_transform"
s: "NONE"
type: STRING
}
attribute {
name: "target_ids"
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "target_nodeids"
ints: 2
ints: 5
ints: 7
ints: 8
ints: 13
ints: 14
ints: 15
ints: 16
ints: 20
ints: 21
ints: 23
ints: 24
ints: 27
ints: 28
ints: 30
ints: 31
ints: 38
ints: 39
ints: 41
ints: 42
ints: 45
ints: 46
ints: 48
ints: 49
ints: 53
ints: 54
ints: 56
ints: 57
ints: 59
ints: 60
ints: 65
ints: 66
ints: 68
ints: 69
ints: 70
ints: 71
ints: 76
ints: 77
ints: 78
ints: 79
ints: 82
ints: 83
ints: 84
type: INTS
}
attribute {
name: "target_treeids"
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "target_weights"
floats: 2
floats: 5
floats: 7
floats: 8
floats: 13
floats: 14
floats: 15
floats: 16
floats: 20
floats: 21
floats: 23
floats: 24
floats: 27
floats: 28
floats: 30
floats: 31
floats: 38
floats: 39
floats: 41
floats: 42
floats: 45
floats: 46
floats: 48
floats: 49
floats: 53
floats: 54
floats: 56
floats: 57
floats: 59
floats: 60
floats: 65
floats: 66
floats: 68
floats: 69
floats: 70
floats: 71
floats: 76
floats: 77
floats: 78
floats: 79
floats: 82
floats: 83
floats: 84
type: FLOATS
}
domain: "ai.onnx.ml"
}
node {
input: "node_sample1_Y0"
output: "node_sample1_output02"
name: "node_sample1_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 7
type: INT
}
domain: ""
}
node {
input: "node_sample2_Y0"
output: "node_sample2_output02"
name: "node_sample2_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 7
type: INT
}
domain: ""
}
node {
input: "node_sample1_Y0"
output: "path_length1_output0"
name: "path_length1_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 7
type: INT
}
domain: ""
}
node {
input: "node_sample2_Y0"
output: "path_length2_output0"
name: "path_length2_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 7
type: INT
}
domain: ""
}
node {
input: "node_sample0_output02"
output: "node_sample0_Y02"
name: "node_sample0_LabelEncoder"
op_type: "LabelEncoder"
attribute {
name: "keys_int64s"
ints: 2
ints: 4
ints: 5
ints: 11
ints: 12
ints: 14
ints: 16
ints: 17
ints: 21
ints: 22
ints: 24
ints: 25
ints: 28
ints: 29
ints: 31
ints: 32
ints: 34
ints: 37
ints: 38
ints: 39
ints: 41
ints: 42
type: INTS
}
attribute {
name: "values_floats"
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 3
floats: 31
floats: 18
floats: 11
floats: 20
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
type: FLOATS
}
domain: "ai.onnx.ml"
}
node {
input: "path_length0_output0"
output: "path_length0_Y0"
name: "path_length0_LabelEncoder"
op_type: "LabelEncoder"
attribute {
name: "keys_int64s"
ints: 2
ints: 4
ints: 5
ints: 11
ints: 12
ints: 14
ints: 16
ints: 17
ints: 21
ints: 22
ints: 24
ints: 25
ints: 28
ints: 29
ints: 31
ints: 32
ints: 34
ints: 37
ints: 38
ints: 39
ints: 41
ints: 42
type: INTS
}
attribute {
name: "values_floats"
floats: 3
floats: 4
floats: 4
floats: 7
floats: 7
floats: 7
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 5
floats: 7
floats: 7
floats: 6
floats: 4
floats: 4
type: FLOATS
}
domain: "ai.onnx.ml"
}
node {
input: "node_sample1_output02"
output: "node_sample1_Y02"
name: "node_sample1_LabelEncoder"
op_type: "LabelEncoder"
attribute {
name: "keys_int64s"
ints: 4
ints: 5
ints: 8
ints: 10
ints: 11
ints: 13
ints: 15
ints: 17
ints: 18
ints: 19
ints: 25
ints: 26
ints: 29
ints: 30
ints: 32
ints: 33
ints: 35
ints: 36
ints: 41
ints: 42
ints: 44
ints: 45
ints: 48
ints: 49
ints: 51
ints: 52
ints: 56
ints: 57
ints: 58
ints: 60
ints: 62
ints: 63
ints: 64
type: INTS
}
attribute {
name: "values_floats"
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 2
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 3
floats: 2
floats: 5
floats: 1
floats: 1
floats: 8
floats: 1
floats: 1
floats: 2
floats: 5
floats: 2
floats: 11
floats: 1
floats: 4
floats: 21
floats: 1
floats: 1
floats: 11
floats: 4
floats: 1
type: FLOATS
}
domain: "ai.onnx.ml"
}
node {
input: "node_sample2_output02"
output: "node_sample2_Y02"
name: "node_sample2_LabelEncoder"
op_type: "LabelEncoder"
attribute {
name: "keys_int64s"
ints: 2
ints: 5
ints: 7
ints: 8
ints: 13
ints: 14
ints: 15
ints: 16
ints: 20
ints: 21
ints: 23
ints: 24
ints: 27
ints: 28
ints: 30
ints: 31
ints: 38
ints: 39
ints: 41
ints: 42
ints: 45
ints: 46
ints: 48
ints: 49
ints: 53
ints: 54
ints: 56
ints: 57
ints: 59
ints: 60
ints: 65
ints: 66
ints: 68
ints: 69
ints: 70
ints: 71
ints: 76
ints: 77
ints: 78
ints: 79
ints: 82
ints: 83
ints: 84
type: INTS
}
attribute {
name: "values_floats"
floats: 1
floats: 1
floats: 1
floats: 1
floats: 10
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 2
floats: 2
floats: 1
floats: 2
floats: 3
floats: 3
floats: 4
floats: 1
floats: 2
floats: 3
floats: 1
floats: 1
floats: 2
floats: 2
floats: 10
floats: 5
floats: 11
floats: 1
floats: 1
floats: 2
floats: 1
floats: 9
floats: 2
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
type: FLOATS
}
domain: "ai.onnx.ml"
}
node {
input: "path_length1_output0"
output: "path_length1_Y0"
name: "path_length1_LabelEncoder"
op_type: "LabelEncoder"
attribute {
name: "keys_int64s"
ints: 4
ints: 5
ints: 8
ints: 10
ints: 11
ints: 13
ints: 15
ints: 17
ints: 18
ints: 19
ints: 25
ints: 26
ints: 29
ints: 30
ints: 32
ints: 33
ints: 35
ints: 36
ints: 41
ints: 42
ints: 44
ints: 45
ints: 48
ints: 49
ints: 51
ints: 52
ints: 56
ints: 57
ints: 58
ints: 60
ints: 62
ints: 63
ints: 64
type: INTS
}
attribute {
name: "values_floats"
floats: 5
floats: 5
floats: 6
floats: 7
floats: 7
floats: 6
floats: 7
floats: 8
floats: 8
floats: 3
floats: 7
floats: 7
floats: 8
floats: 8
floats: 8
floats: 8
floats: 6
floats: 6
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 7
floats: 7
floats: 8
floats: 8
floats: 3
type: FLOATS
}
domain: "ai.onnx.ml"
}
node {
input: "path_length2_output0"
output: "path_length2_Y0"
name: "path_length2_LabelEncoder"
op_type: "LabelEncoder"
attribute {
name: "keys_int64s"
ints: 2
ints: 5
ints: 7
ints: 8
ints: 13
ints: 14
ints: 15
ints: 16
ints: 20
ints: 21
ints: 23
ints: 24
ints: 27
ints: 28
ints: 30
ints: 31
ints: 38
ints: 39
ints: 41
ints: 42
ints: 45
ints: 46
ints: 48
ints: 49
ints: 53
ints: 54
ints: 56
ints: 57
ints: 59
ints: 60
ints: 65
ints: 66
ints: 68
ints: 69
ints: 70
ints: 71
ints: 76
ints: 77
ints: 78
ints: 79
ints: 82
ints: 83
ints: 84
type: INTS
}
attribute {
name: "values_floats"
floats: 3
floats: 5
floats: 6
floats: 6
floats: 8
floats: 8
floats: 7
floats: 6
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 7
floats: 7
floats: 8
floats: 8
floats: 8
floats: 8
floats: 6
floats: 5
floats: 7
floats: 7
floats: 6
floats: 5
floats: 6
floats: 6
floats: 5
type: FLOATS
}
domain: "ai.onnx.ml"
}
node {
input: "node_sample0_Y02"
input: "path_length0_Reshapecst"
output: "node_sample0_reshaped0"
name: "node_sample0_Reshape"
op_type: "Reshape"
attribute {
name: "allowzero"
i: 0
type: INT
}
domain: ""
}
node {
input: "path_length0_Y0"
input: "path_length0_Reshapecst"
output: "path_length0_reshaped0"
name: "path_length0_Reshape"
op_type: "Reshape"
attribute {
name: "allowzero"
i: 0
type: INT
}
domain: ""
}
node {
input: "node_sample0_reshaped0"
input: "dec_Powcst"
output: "eq2_0_C0"
name: "eq2_0_Equal"
op_type: "Equal"
domain: ""
}
node {
input: "node_sample0_reshaped0"
input: "dec_Powcst"
output: "plus2_0_C0"
name: "plus2_0_Greater"
op_type: "Greater"
domain: ""
}
node {
input: "node_sample1_Y02"
input: "path_length0_Reshapecst"
output: "node_sample1_reshaped0"
name: "node_sample1_Reshape"
op_type: "Reshape"
attribute {
name: "allowzero"
i: 0
type: INT
}
domain: ""
}
node {
input: "node_sample2_Y02"
input: "path_length0_Reshapecst"
output: "node_sample2_reshaped0"
name: "node_sample2_Reshape"
op_type: "Reshape"
attribute {
name: "allowzero"
i: 0
type: INT
}
domain: ""
}
node {
input: "path_length1_Y0"
input: "path_length0_Reshapecst"
output: "path_length1_reshaped0"
name: "path_length1_Reshape"
op_type: "Reshape"
attribute {
name: "allowzero"
i: 0
type: INT
}
domain: ""
}
node {
input: "path_length2_Y0"
input: "path_length0_Reshapecst"
output: "path_length2_reshaped0"
name: "path_length2_Reshape"
op_type: "Reshape"
attribute {
name: "allowzero"
i: 0
type: INT
}
domain: ""
}
node {
input: "eq2_0_C0"
output: "eq2_0_output0"
name: "eq2_0_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 1
type: INT
}
domain: ""
}
node {
input: "plus2_0_C0"
output: "plus2_0_output0"
name: "plus2_0_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 1
type: INT
}
domain: ""
}
node {
input: "node_sample1_reshaped0"
input: "dec_Powcst"
output: "eq2_1_C0"
name: "eq2_1_Equal"
op_type: "Equal"
domain: ""
}
node {
input: "node_sample2_reshaped0"
input: "dec_Powcst"
output: "eq2_2_C0"
name: "eq2_2_Equal"
op_type: "Equal"
domain: ""
}
node {
input: "node_sample1_reshaped0"
input: "dec_Powcst"
output: "plus2_1_C0"
name: "plus2_1_Greater"
op_type: "Greater"
domain: ""
}
node {
input: "node_sample2_reshaped0"
input: "dec_Powcst"
output: "plus2_2_C0"
name: "plus2_2_Greater"
op_type: "Greater"
domain: ""
}
node {
input: "eq2_1_C0"
output: "eq2_1_output0"
name: "eq2_1_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 1
type: INT
}
domain: ""
}
node {
input: "eq2_2_C0"
output: "eq2_2_output0"
name: "eq2_2_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 1
type: INT
}
domain: ""
}
node {
input: "plus2_1_C0"
output: "plus2_1_output0"
name: "plus2_1_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 1
type: INT
}
domain: ""
}
node {
input: "plus2_2_C0"
output: "plus2_2_output0"
name: "plus2_2_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 1
type: INT
}
domain: ""
}
node {
input: "plus2_0_output0"
input: "node_sample0_reshaped0"
output: "eqp2ps0_C0"
name: "eqp2ps0_Mul"
op_type: "Mul"
domain: ""
}
node {
input: "eqp2ps0_C0"
input: "eqp2p_m1_0_Addcst"
output: "eqp2p_m1_0_C0"
name: "eqp2p_m1_0_Add"
op_type: "Add"
domain: ""
}
node {
input: "eqp2ps0_C0"
input: "eqp2p_m1_0_Maxcst"
output: "eqp_ns0_max0"
name: "eqp_ns0_Max"
op_type: "Max"
domain: ""
}
node {
input: "plus2_1_output0"
input: "node_sample1_reshaped0"
output: "eqp2ps1_C0"
name: "eqp2ps1_Mul"
op_type: "Mul"
domain: ""
}
node {
input: "plus2_2_output0"
input: "node_sample2_reshaped0"
output: "eqp2ps2_C0"
name: "eqp2ps2_Mul"
op_type: "Mul"
domain: ""
}
node {
input: "eqp2ps1_C0"
input: "eqp2p_m1_0_Addcst"
output: "eqp2p_m1_1_C0"
name: "eqp2p_m1_1_Add"
op_type: "Add"
domain: ""
}
node {
input: "eqp2ps2_C0"
input: "eqp2p_m1_0_Addcst"
output: "eqp2p_m1_2_C0"
name: "eqp2p_m1_2_Add"
op_type: "Add"
domain: ""
}
node {
input: "eqp2p_m1_0_C0"
input: "eqp2p_m1_0_Maxcst"
output: "eqp2p_m1_0_max0"
name: "eqp2p_m1_0_Max"
op_type: "Max"
domain: ""
}
node {
input: "eqp2p_m1_0_C0"
input: "eqp2p_m1_0_Maxcst1"
output: "eqp2p_m1_0_max02"
name: "eqp2p_m1_0_Max1"
op_type: "Max"
domain: ""
}
node {
input: "eqp2ps1_C0"
input: "eqp2p_m1_0_Maxcst"
output: "eqp_ns1_max0"
name: "eqp_ns1_Max"
op_type: "Max"
domain: ""
}
node {
input: "eqp2ps2_C0"
input: "eqp2p_m1_0_Maxcst"
output: "eqp_ns2_max0"
name: "eqp_ns2_Max"
op_type: "Max"
domain: ""
}
node {
input: "eqp2p_m1_0_max02"
input: "eqp_ns0_max0"
output: "eqp_ns0_C01"
name: "eqp_ns0_Div"
op_type: "Div"
domain: ""
}
node {
input: "eqp2p_m1_0_max0"
output: "eqp_log0_output0"
name: "eqp_log0_Log"
op_type: "Log"
domain: ""
}
node {
input: "eqp2p_m1_1_C0"
input: "eqp2p_m1_0_Maxcst"
output: "eqp2p_m1_1_max0"
name: "eqp2p_m1_1_Max"
op_type: "Max"
domain: ""
}
node {
input: "eqp2p_m1_1_C0"
input: "eqp2p_m1_0_Maxcst1"
output: "eqp2p_m1_1_max02"
name: "eqp2p_m1_1_Max1"
op_type: "Max"
domain: ""
}
node {
input: "eqp2p_m1_2_C0"
input: "eqp2p_m1_0_Maxcst"
output: "eqp2p_m1_2_max0"
name: "eqp2p_m1_2_Max"
op_type: "Max"
domain: ""
}
node {
input: "eqp2p_m1_2_C0"
input: "eqp2p_m1_0_Maxcst1"
output: "eqp2p_m1_2_max02"
name: "eqp2p_m1_2_Max1"
op_type: "Max"
domain: ""
}
node {
input: "eqp_log0_output0"
input: "eqp_log0_Addcst"
output: "eqp_log0_C01"
name: "eqp_log0_Add"
op_type: "Add"
domain: ""
}
node {
input: "eqp2p_m1_1_max02"
input: "eqp_ns1_max0"
output: "eqp_ns1_C01"
name: "eqp_ns1_Div"
op_type: "Div"
domain: ""
}
node {
input: "eqp2p_m1_2_max02"
input: "eqp_ns2_max0"
output: "eqp_ns2_C01"
name: "eqp_ns2_Div"
op_type: "Div"
domain: ""
}
node {
input: "eqp2p_m1_1_max0"
output: "eqp_log1_output0"
name: "eqp_log1_Log"
op_type: "Log"
domain: ""
}
node {
input: "eqp2p_m1_2_max0"
output: "eqp_log2_output0"
name: "eqp_log2_Log"
op_type: "Log"
domain: ""
}
node {
input: "eqp_ns0_C01"
input: "eqp_ns0_Mulcst"
output: "eqp_ns0_C0"
name: "eqp_ns0_Mul"
op_type: "Mul"
domain: ""
}
node {
input: "eqp_log1_output0"
input: "eqp_log0_Addcst"
output: "eqp_log1_C01"
name: "eqp_log1_Add"
op_type: "Add"
domain: ""
}
node {
input: "eqp_log2_output0"
input: "eqp_log0_Addcst"
output: "eqp_log2_C01"
name: "eqp_log2_Add"
op_type: "Add"
domain: ""
}
node {
input: "eqp_log0_C01"
input: "dec_Powcst"
output: "eqp_log0_C0"
name: "eqp_log0_Mul"
op_type: "Mul"
domain: ""
}
node {
input: "eqp_ns1_C01"
input: "eqp_ns0_Mulcst"
output: "eqp_ns1_C0"
name: "eqp_ns1_Mul"
op_type: "Mul"
domain: ""
}
node {
input: "eqp_ns2_C01"
input: "eqp_ns0_Mulcst"
output: "eqp_ns2_C0"
name: "eqp_ns2_Mul"
op_type: "Mul"
domain: ""
}
node {
input: "eqp_log0_C0"
input: "eqp_ns0_C0"
output: "avlog0_C01"
name: "avlog0_Add"
op_type: "Add"
domain: ""
}
node {
input: "eqp_log1_C01"
input: "dec_Powcst"
output: "eqp_log1_C0"
name: "eqp_log1_Mul"
op_type: "Mul"
domain: ""
}
node {
input: "eqp_log2_C01"
input: "dec_Powcst"
output: "eqp_log2_C0"
name: "eqp_log2_Mul"
op_type: "Mul"
domain: ""
}
node {
input: "eqp_log1_C0"
input: "eqp_ns1_C0"
output: "avlog1_C01"
name: "avlog1_Add"
op_type: "Add"
domain: ""
}
node {
input: "eqp_log2_C0"
input: "eqp_ns2_C0"
output: "avlog2_C01"
name: "avlog2_Add"
op_type: "Add"
domain: ""
}
node {
input: "avlog0_C01"
input: "plus2_0_output0"
output: "avlog0_C0"
name: "avlog0_Mul"
op_type: "Mul"
domain: ""
}
node {
input: "eq2_0_output0"
input: "avlog0_C0"
output: "avpl0_C0"
name: "avpl0_Add"
op_type: "Add"
domain: ""
}
node {
input: "avlog1_C01"
input: "plus2_1_output0"
output: "avlog1_C0"
name: "avlog1_Mul"
op_type: "Mul"
domain: ""
}
node {
input: "avlog2_C01"
input: "plus2_2_output0"
output: "avlog2_C0"
name: "avlog2_Mul"
op_type: "Mul"
domain: ""
}
node {
input: "eq2_1_output0"
input: "avlog1_C0"
output: "avpl1_C0"
name: "avpl1_Add"
op_type: "Add"
domain: ""
}
node {
input: "eq2_2_output0"
input: "avlog2_C0"
output: "avpl2_C0"
name: "avpl2_Add"
op_type: "Add"
domain: ""
}
node {
input: "path_length0_reshaped0"
input: "avpl0_C0"
output: "depth0_C01"
name: "depth0_Add"
op_type: "Add"
domain: ""
}
node {
input: "depth0_C01"
input: "eqp2p_m1_0_Addcst"
output: "depth0_C0"
name: "depth0_Add1"
op_type: "Add"
domain: ""
}
node {
input: "path_length1_reshaped0"
input: "avpl1_C0"
output: "depth1_C01"
name: "depth1_Add"
op_type: "Add"
domain: ""
}
node {
input: "path_length2_reshaped0"
input: "avpl2_C0"
output: "depth2_C01"
name: "depth2_Add"
op_type: "Add"
domain: ""
}
node {
input: "depth1_C01"
input: "eqp2p_m1_0_Addcst"
output: "depth1_C0"
name: "depth1_Add1"
op_type: "Add"
domain: ""
}
node {
input: "depth2_C01"
input: "eqp2p_m1_0_Addcst"
output: "depth2_C0"
name: "depth2_Add1"
op_type: "Add"
domain: ""
}
node {
input: "depth0_C0"
input: "depth1_C0"
input: "depth2_C0"
output: "dec_sum0"
name: "dec_Sum"
op_type: "Sum"
domain: ""
}
node {
input: "dec_sum0"
input: "dec_Divcst"
output: "dec_C0"
name: "dec_Div"
op_type: "Div"
domain: ""
}
node {
input: "dec_C0"
output: "dec_Y01"
name: "dec_Neg"
op_type: "Neg"
domain: ""
}
node {
input: "dec_Powcst"
input: "dec_Y01"
output: "dec_Z0"
name: "dec_Pow"
op_type: "Pow"
domain: ""
}
node {
input: "dec_Z0"
output: "dec_Y0"
name: "dec_Neg1"
op_type: "Neg"
domain: ""
}
node {
input: "dec_Y0"
input: "dec_Addcst"
output: "scores"
name: "dec_Add"
op_type: "Add"
domain: ""
}
node {
input: "scores"
input: "eqp2p_m1_0_Maxcst1"
output: "predict_C01"
name: "predict_Less"
op_type: "Less"
domain: ""
}
node {
input: "predict_C01"
output: "predict_output0"
name: "predict_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 7
type: INT
}
domain: ""
}
node {
input: "predict_output0"
input: "predict_Mulcst"
output: "predict_C0"
name: "predict_Mul"
op_type: "Mul"
domain: ""
}
node {
input: "predict_C0"
input: "predict_Addcst"
output: "label"
name: "predict_Add"
op_type: "Add"
domain: ""
}
name: "ONNX(IsolationForest)"
initializer {
dims: 1
data_type: 1
float_data: 2
name: "dec_Powcst"
}
initializer {
dims: 2
data_type: 7
int64_data: 0
int64_data: 1
name: "node_sample0_Gathercst"
}
initializer {
dims: 2
data_type: 7
int64_data: -1
int64_data: 1
name: "path_length0_Reshapecst"
}
initializer {
dims: 1
data_type: 1
float_data: -1
name: "eqp2p_m1_0_Addcst"
}
initializer {
dims: 1
data_type: 1
float_data: 1
name: "eqp2p_m1_0_Maxcst"
}
initializer {
dims: 1
data_type: 1
float_data: 0.577215672
name: "eqp_log0_Addcst"
}
initializer {
dims: 1
data_type: 1
float_data: 0
name: "eqp2p_m1_0_Maxcst1"
}
initializer {
dims: 1
data_type: 1
float_data: -2
name: "eqp_ns0_Mulcst"
}
initializer {
dims: 1
dims: 1
data_type: 1
float_data: 25.0940132
name: "dec_Divcst"
}
initializer {
dims: 1
data_type: 1
float_data: 0.5
name: "dec_Addcst"
}
initializer {
dims: 1
data_type: 7
int64_data: -2
name: "predict_Mulcst"
}
initializer {
dims: 1
data_type: 7
int64_data: 1
name: "predict_Addcst"
}
input {
name: "X"
type {
tensor_type {
elem_type: 1
shape {
dim {
}
dim {
dim_value: 2
}
}
}
}
}
output {
name: "label"
type {
tensor_type {
elem_type: 7
shape {
dim {
}
dim {
dim_value: 1
}
}
}
}
}
output {
name: "scores"
type {
tensor_type {
elem_type: 1
shape {
dim {
}
dim {
dim_value: 1
}
}
}
}
}
}
opset_import {
domain: "ai.onnx.ml"
version: 2
}
opset_import {
domain: ""
version: 15
}
The last line shows the opsets. Let’s extract it.
domains = onx.opset_import
for dom in domains:
print("domain: %r, version: %r" % (dom.domain, dom.version))
domain: 'ai.onnx.ml', version: 2
domain: '', version: 15
There are two opsets, one for standard operators, the other for machine learning operators.
ONNX and opset¶
The converter can convert a model to an older opset than the default one, from 1 to the last available one.
def get_domain_opset(onx):
domains = onx.opset_import
res = [{"domain": dom.domain, "version": dom.version} for dom in domains]
return {d["domain"]: d["version"] for d in res}
for opset in range(6, onnx_opset_version() + 1):
try:
onx = to_onnx(
model,
X[:1].astype(numpy.float32),
target_opset={"": opset, "ai.onnx.ml": 2},
)
except RuntimeError as e:
print("target: %r error: %r" % (opset, e))
continue
nodes = len(onx.graph.node)
print("target: %r --> %s %d" % (opset, get_domain_opset(onx), nodes))
target: 6 --> {'ai.onnx.ml': 2, '': 6} 91
target: 7 --> {'ai.onnx.ml': 2, '': 7} 91
target: 8 --> {'ai.onnx.ml': 2, '': 8} 91
target: 9 --> {'ai.onnx.ml': 2, '': 9} 91
target: 10 --> {'ai.onnx.ml': 2, '': 10} 91
target: 11 --> {'ai.onnx.ml': 2, '': 11} 91
target: 12 --> {'': 12, 'ai.onnx.ml': 2} 91
target: 13 --> {'ai.onnx.ml': 2, '': 13} 91
target: 14 --> {'ai.onnx.ml': 2, '': 14} 91
target: 15 --> {'ai.onnx.ml': 2, '': 15} 91
target: 16 --> {'ai.onnx.ml': 2, '': 16} 91
target: 17 --> {'ai.onnx.ml': 2, '': 17} 91
target: 18 --> {'ai.onnx.ml': 2, '': 18} 91
target: 19 --> {'ai.onnx.ml': 2, '': 19} 91
target: 20 --> {'ai.onnx.ml': 2, '': 20} 91
target: 21 --> {'ai.onnx.ml': 2, '': 21} 91
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1654: UserWarning: Parameter target_opset 22 > 21 is higher than the the latest tested version.
warnings.warn(
target: 22 error: RuntimeError("The model is using version 22 of domain '' not supported yet by this library. You need to specify target_opset={'': 21}.")
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1654: UserWarning: Parameter target_opset 23 > 21 is higher than the the latest tested version.
warnings.warn(
target: 23 error: RuntimeError("The model is using version 23 of domain '' not supported yet by this library. You need to specify target_opset={'': 21}.")
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1654: UserWarning: Parameter target_opset 24 > 21 is higher than the the latest tested version.
warnings.warn(
target: 24 error: RuntimeError("The model is using version 24 of domain '' not supported yet by this library. You need to specify target_opset={'': 21}.")
It shows that the model cannot be converted for opset below 5. Operator Reshape changed in opset 5: a parameter became an input. The converter does not support opset < 5 because runtimes usually do not.
Other opsets¶
The previous example changed the opset of the main domain
''
but the other opset domain can be changed as well.
for opset in range(9, onnx_opset_version() + 1):
for opset_ml in range(1, 4):
tops = {"": opset, "ai.onnx.ml": opset_ml}
try:
print("try target_opset:", tops)
onx = to_onnx(model, X[:1].astype(numpy.float32), target_opset=tops)
except RuntimeError as e:
print("target: %r error: %r" % (opset, e))
continue
nodes = len(onx.graph.node)
print("target: %r --> %s %d" % (opset, get_domain_opset(onx), nodes))
try target_opset: {'': 9, 'ai.onnx.ml': 1}
target: 9 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 9, 'ai.onnx.ml': 2}
target: 9 --> {'ai.onnx.ml': 2, '': 9} 91
try target_opset: {'': 9, 'ai.onnx.ml': 3}
target: 9 --> {'ai.onnx.ml': 3, '': 9} 91
try target_opset: {'': 10, 'ai.onnx.ml': 1}
target: 10 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 10, 'ai.onnx.ml': 2}
target: 10 --> {'ai.onnx.ml': 2, '': 10} 91
try target_opset: {'': 10, 'ai.onnx.ml': 3}
target: 10 --> {'ai.onnx.ml': 3, '': 10} 91
try target_opset: {'': 11, 'ai.onnx.ml': 1}
target: 11 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 11, 'ai.onnx.ml': 2}
target: 11 --> {'ai.onnx.ml': 2, '': 11} 91
try target_opset: {'': 11, 'ai.onnx.ml': 3}
target: 11 --> {'ai.onnx.ml': 3, '': 11} 91
try target_opset: {'': 12, 'ai.onnx.ml': 1}
target: 12 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 12, 'ai.onnx.ml': 2}
target: 12 --> {'': 12, 'ai.onnx.ml': 2} 91
try target_opset: {'': 12, 'ai.onnx.ml': 3}
target: 12 --> {'': 12, 'ai.onnx.ml': 3} 91
try target_opset: {'': 13, 'ai.onnx.ml': 1}
target: 13 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 13, 'ai.onnx.ml': 2}
target: 13 --> {'ai.onnx.ml': 2, '': 13} 91
try target_opset: {'': 13, 'ai.onnx.ml': 3}
target: 13 --> {'': 13, 'ai.onnx.ml': 3} 91
try target_opset: {'': 14, 'ai.onnx.ml': 1}
target: 14 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 14, 'ai.onnx.ml': 2}
target: 14 --> {'ai.onnx.ml': 2, '': 14} 91
try target_opset: {'': 14, 'ai.onnx.ml': 3}
target: 14 --> {'': 14, 'ai.onnx.ml': 3} 91
try target_opset: {'': 15, 'ai.onnx.ml': 1}
target: 15 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 15, 'ai.onnx.ml': 2}
target: 15 --> {'ai.onnx.ml': 2, '': 15} 91
try target_opset: {'': 15, 'ai.onnx.ml': 3}
target: 15 --> {'ai.onnx.ml': 3, '': 15} 91
try target_opset: {'': 16, 'ai.onnx.ml': 1}
target: 16 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 16, 'ai.onnx.ml': 2}
target: 16 --> {'ai.onnx.ml': 2, '': 16} 91
try target_opset: {'': 16, 'ai.onnx.ml': 3}
target: 16 --> {'': 16, 'ai.onnx.ml': 3} 91
try target_opset: {'': 17, 'ai.onnx.ml': 1}
target: 17 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 17, 'ai.onnx.ml': 2}
target: 17 --> {'ai.onnx.ml': 2, '': 17} 91
try target_opset: {'': 17, 'ai.onnx.ml': 3}
target: 17 --> {'ai.onnx.ml': 3, '': 17} 91
try target_opset: {'': 18, 'ai.onnx.ml': 1}
target: 18 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 18, 'ai.onnx.ml': 2}
target: 18 --> {'ai.onnx.ml': 2, '': 18} 91
try target_opset: {'': 18, 'ai.onnx.ml': 3}
target: 18 --> {'ai.onnx.ml': 3, '': 18} 91
try target_opset: {'': 19, 'ai.onnx.ml': 1}
target: 19 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 19, 'ai.onnx.ml': 2}
target: 19 --> {'ai.onnx.ml': 2, '': 19} 91
try target_opset: {'': 19, 'ai.onnx.ml': 3}
target: 19 --> {'ai.onnx.ml': 3, '': 19} 91
try target_opset: {'': 20, 'ai.onnx.ml': 1}
target: 20 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 20, 'ai.onnx.ml': 2}
target: 20 --> {'ai.onnx.ml': 2, '': 20} 91
try target_opset: {'': 20, 'ai.onnx.ml': 3}
target: 20 --> {'': 20, 'ai.onnx.ml': 3} 91
try target_opset: {'': 21, 'ai.onnx.ml': 1}
target: 21 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 21, 'ai.onnx.ml': 2}
target: 21 --> {'ai.onnx.ml': 2, '': 21} 91
try target_opset: {'': 21, 'ai.onnx.ml': 3}
target: 21 --> {'ai.onnx.ml': 3, '': 21} 91
try target_opset: {'': 22, 'ai.onnx.ml': 1}
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1654: UserWarning: Parameter target_opset 22 > 21 is higher than the the latest tested version.
warnings.warn(
target: 22 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 22, 'ai.onnx.ml': 2}
target: 22 error: RuntimeError("The model is using version 22 of domain '' not supported yet by this library. You need to specify target_opset={'': 21}.")
try target_opset: {'': 22, 'ai.onnx.ml': 3}
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1654: UserWarning: Parameter target_opset 22 > 21 is higher than the the latest tested version.
warnings.warn(
target: 22 error: RuntimeError("The model is using version 22 of domain '' not supported yet by this library. You need to specify target_opset={'': 21}.")
try target_opset: {'': 23, 'ai.onnx.ml': 1}
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1654: UserWarning: Parameter target_opset 23 > 21 is higher than the the latest tested version.
warnings.warn(
target: 23 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 23, 'ai.onnx.ml': 2}
target: 23 error: RuntimeError("The model is using version 23 of domain '' not supported yet by this library. You need to specify target_opset={'': 21}.")
try target_opset: {'': 23, 'ai.onnx.ml': 3}
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1654: UserWarning: Parameter target_opset 23 > 21 is higher than the the latest tested version.
warnings.warn(
target: 23 error: RuntimeError("The model is using version 23 of domain '' not supported yet by this library. You need to specify target_opset={'': 21}.")
try target_opset: {'': 24, 'ai.onnx.ml': 1}
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1654: UserWarning: Parameter target_opset 24 > 21 is higher than the the latest tested version.
warnings.warn(
target: 24 error: RuntimeError("This converter requires at least opset 2 for domain 'ai.onnx.ml'.")
try target_opset: {'': 24, 'ai.onnx.ml': 2}
target: 24 error: RuntimeError("The model is using version 24 of domain '' not supported yet by this library. You need to specify target_opset={'': 21}.")
try target_opset: {'': 24, 'ai.onnx.ml': 3}
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1654: UserWarning: Parameter target_opset 24 > 21 is higher than the the latest tested version.
warnings.warn(
target: 24 error: RuntimeError("The model is using version 24 of domain '' not supported yet by this library. You need to specify target_opset={'': 21}.")
Total running time of the script: (0 minutes 1.413 seconds)