Note
Click here 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.14.0"
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: "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: 52
ints: 11
ints: 4
ints: 0
ints: 10
ints: 7
ints: 0
ints: 9
ints: 0
ints: 0
ints: 0
ints: 35
ints: 20
ints: 15
ints: 0
ints: 17
ints: 0
ints: 19
ints: 0
ints: 0
ints: 28
ints: 25
ints: 24
ints: 0
ints: 0
ints: 27
ints: 0
ints: 0
ints: 32
ints: 31
ints: 0
ints: 0
ints: 34
ints: 0
ints: 0
ints: 45
ints: 44
ints: 41
ints: 40
ints: 0
ints: 0
ints: 43
ints: 0
ints: 0
ints: 0
ints: 51
ints: 50
ints: 49
ints: 0
ints: 0
ints: 0
ints: 0
ints: 56
ints: 55
ints: 0
ints: 0
ints: 58
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_featureids"
ints: 1
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 1
ints: 0
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: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 1
ints: 1
ints: 1
ints: 1
ints: 0
ints: 0
ints: 1
ints: 0
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
type: INTS
}
attribute {
name: "nodes_hitrates"
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
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
type: INTS
}
attribute {
name: "nodes_modes"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
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: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
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: "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
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
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
type: INTS
}
attribute {
name: "nodes_truenodeids"
ints: 1
ints: 2
ints: 3
ints: 0
ints: 5
ints: 6
ints: 0
ints: 8
ints: 0
ints: 0
ints: 0
ints: 12
ints: 13
ints: 14
ints: 0
ints: 16
ints: 0
ints: 18
ints: 0
ints: 0
ints: 21
ints: 22
ints: 23
ints: 0
ints: 0
ints: 26
ints: 0
ints: 0
ints: 29
ints: 30
ints: 0
ints: 0
ints: 33
ints: 0
ints: 0
ints: 36
ints: 37
ints: 38
ints: 39
ints: 0
ints: 0
ints: 42
ints: 0
ints: 0
ints: 0
ints: 46
ints: 47
ints: 48
ints: 0
ints: 0
ints: 0
ints: 0
ints: 53
ints: 54
ints: 0
ints: 0
ints: 57
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_values"
floats: 9.529556274414062
floats: 0.06639961153268814
floats: -1.2243356704711914
floats: 0.0
floats: 0.1448548436164856
floats: -1.0675677061080933
floats: 0.0
floats: -0.4722660183906555
floats: 0.0
floats: 0.0
floats: 0.0
floats: 6.237240314483643
floats: -1.5116932392120361
floats: 0.8247517943382263
floats: 0.0
floats: -5.144781589508057
floats: 0.0
floats: 5.4886579513549805
floats: 0.0
floats: 0.0
floats: -0.7253645658493042
floats: 1.3656964302062988
floats: -0.8799896836280823
floats: 0.0
floats: 0.0
floats: -1.0190058946609497
floats: 0.0
floats: 0.0
floats: -0.49304017424583435
floats: -0.5850936770439148
floats: 0.0
floats: 0.0
floats: 1.2917989492416382
floats: 0.0
floats: 0.0
floats: 7.957119941711426
floats: 7.862874507904053
floats: 7.656042575836182
floats: 7.188352584838867
floats: 0.0
floats: 0.0
floats: 7.790811538696289
floats: 0.0
floats: 0.0
floats: 0.0
floats: 9.259439468383789
floats: 8.948318481445312
floats: -4.675846576690674
floats: 0.0
floats: 0.0
floats: 0.0
floats: 0.0
floats: -3.819464921951294
floats: -4.20181941986084
floats: 0.0
floats: 0.0
floats: -3.639735460281372
floats: 0.0
floats: 0.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
type: INTS
}
attribute {
name: "target_nodeids"
ints: 3
ints: 6
ints: 8
ints: 9
ints: 10
ints: 14
ints: 16
ints: 18
ints: 19
ints: 23
ints: 24
ints: 26
ints: 27
ints: 30
ints: 31
ints: 33
ints: 34
ints: 39
ints: 40
ints: 42
ints: 43
ints: 44
ints: 48
ints: 49
ints: 50
ints: 51
ints: 54
ints: 55
ints: 57
ints: 58
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
type: INTS
}
attribute {
name: "target_weights"
floats: 3.0
floats: 6.0
floats: 8.0
floats: 9.0
floats: 10.0
floats: 14.0
floats: 16.0
floats: 18.0
floats: 19.0
floats: 23.0
floats: 24.0
floats: 26.0
floats: 27.0
floats: 30.0
floats: 31.0
floats: 33.0
floats: 34.0
floats: 39.0
floats: 40.0
floats: 42.0
floats: 43.0
floats: 44.0
floats: 48.0
floats: 49.0
floats: 50.0
floats: 51.0
floats: 54.0
floats: 55.0
floats: 57.0
floats: 58.0
type: FLOATS
}
domain: "ai.onnx.ml"
}
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: "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: "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: 72
ints: 45
ints: 22
ints: 17
ints: 12
ints: 9
ints: 8
ints: 0
ints: 0
ints: 11
ints: 0
ints: 0
ints: 14
ints: 0
ints: 16
ints: 0
ints: 0
ints: 19
ints: 0
ints: 21
ints: 0
ints: 0
ints: 30
ints: 25
ints: 0
ints: 29
ints: 28
ints: 0
ints: 0
ints: 0
ints: 38
ints: 35
ints: 34
ints: 0
ints: 0
ints: 37
ints: 0
ints: 0
ints: 42
ints: 41
ints: 0
ints: 0
ints: 44
ints: 0
ints: 0
ints: 69
ints: 58
ints: 53
ints: 52
ints: 51
ints: 0
ints: 0
ints: 0
ints: 55
ints: 0
ints: 57
ints: 0
ints: 0
ints: 66
ints: 63
ints: 62
ints: 0
ints: 0
ints: 65
ints: 0
ints: 0
ints: 68
ints: 0
ints: 0
ints: 71
ints: 0
ints: 0
ints: 74
ints: 0
ints: 96
ints: 83
ints: 78
ints: 0
ints: 82
ints: 81
ints: 0
ints: 0
ints: 0
ints: 91
ints: 88
ints: 87
ints: 0
ints: 0
ints: 90
ints: 0
ints: 0
ints: 95
ints: 94
ints: 0
ints: 0
ints: 0
ints: 102
ints: 99
ints: 0
ints: 101
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_featureids"
ints: 1
ints: 1
ints: 1
ints: 1
ints: 1
ints: 1
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 1
ints: 0
ints: 0
ints: 1
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: 1
ints: 0
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: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 1
ints: 1
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: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 1
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_hitrates"
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
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
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
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: "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: "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: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
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: "LEAF"
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: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
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: "LEAF"
strings: "BRANCH_LEQ"
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
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
ints: 85
ints: 86
ints: 87
ints: 88
ints: 89
ints: 90
ints: 91
ints: 92
ints: 93
ints: 94
ints: 95
ints: 96
ints: 97
ints: 98
ints: 99
ints: 100
ints: 101
ints: 102
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
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
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: 5
ints: 6
ints: 7
ints: 0
ints: 0
ints: 10
ints: 0
ints: 0
ints: 13
ints: 0
ints: 15
ints: 0
ints: 0
ints: 18
ints: 0
ints: 20
ints: 0
ints: 0
ints: 23
ints: 24
ints: 0
ints: 26
ints: 27
ints: 0
ints: 0
ints: 0
ints: 31
ints: 32
ints: 33
ints: 0
ints: 0
ints: 36
ints: 0
ints: 0
ints: 39
ints: 40
ints: 0
ints: 0
ints: 43
ints: 0
ints: 0
ints: 46
ints: 47
ints: 48
ints: 49
ints: 50
ints: 0
ints: 0
ints: 0
ints: 54
ints: 0
ints: 56
ints: 0
ints: 0
ints: 59
ints: 60
ints: 61
ints: 0
ints: 0
ints: 64
ints: 0
ints: 0
ints: 67
ints: 0
ints: 0
ints: 70
ints: 0
ints: 0
ints: 73
ints: 0
ints: 75
ints: 76
ints: 77
ints: 0
ints: 79
ints: 80
ints: 0
ints: 0
ints: 0
ints: 84
ints: 85
ints: 86
ints: 0
ints: 0
ints: 89
ints: 0
ints: 0
ints: 92
ints: 93
ints: 0
ints: 0
ints: 0
ints: 97
ints: 98
ints: 0
ints: 100
ints: 0
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_values"
floats: 5.84586238861084
floats: 3.3479835987091064
floats: 1.3570774793624878
floats: 1.2792494297027588
floats: 0.8155440092086792
floats: -0.14481677114963531
floats: -0.6906545162200928
floats: 0.0
floats: 0.0
floats: -0.7135818004608154
floats: 0.0
floats: 0.0
floats: 0.9292002320289612
floats: 0.0
floats: 1.0187170505523682
floats: 0.0
floats: 0.0
floats: 1.3404710292816162
floats: 0.0
floats: 1.343726634979248
floats: 0.0
floats: 0.0
floats: 1.8512831926345825
floats: -0.5900801420211792
floats: 0.0
floats: -0.019533302634954453
floats: 1.626607060432434
floats: 0.0
floats: 0.0
floats: 0.0
floats: -0.19708473980426788
floats: 2.966790199279785
floats: -1.8903709650039673
floats: 0.0
floats: 0.0
floats: 3.3281314373016357
floats: 0.0
floats: 0.0
floats: 2.2592618465423584
floats: 2.113555669784546
floats: 0.0
floats: 0.0
floats: 0.04144952446222305
floats: 0.0
floats: 0.0
floats: -0.7720679640769958
floats: -2.6698925495147705
floats: -3.359083414077759
floats: -3.819303274154663
floats: -3.8522212505340576
floats: 0.0
floats: 0.0
floats: 0.0
floats: 3.8754918575286865
floats: 0.0
floats: -2.76548433303833
floats: 0.0
floats: 0.0
floats: -1.5094605684280396
floats: 4.876166343688965
floats: -2.066214084625244
floats: 0.0
floats: 0.0
floats: 5.31315803527832
floats: 0.0
floats: 0.0
floats: 5.141677379608154
floats: 0.0
floats: 0.0
floats: 4.081350326538086
floats: 0.0
floats: 0.0
floats: -6.860238075256348
floats: 0.0
floats: 9.618461608886719
floats: 7.555417537689209
floats: 6.563416481018066
floats: 0.0
floats: 7.313610076904297
floats: -5.703146934509277
floats: 0.0
floats: 0.0
floats: 0.0
floats: -4.049132823944092
floats: -4.672673225402832
floats: -5.863733291625977
floats: 0.0
floats: 0.0
floats: -4.3013410568237305
floats: 0.0
floats: 0.0
floats: -2.4979329109191895
floats: -3.212557315826416
floats: 0.0
floats: 0.0
floats: 0.0
floats: 9.996405601501465
floats: 9.734021186828613
floats: 0.0
floats: 9.765551567077637
floats: 0.0
floats: 0.0
floats: 0.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
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: 7
ints: 8
ints: 10
ints: 11
ints: 13
ints: 15
ints: 16
ints: 18
ints: 20
ints: 21
ints: 24
ints: 27
ints: 28
ints: 29
ints: 33
ints: 34
ints: 36
ints: 37
ints: 40
ints: 41
ints: 43
ints: 44
ints: 50
ints: 51
ints: 52
ints: 54
ints: 56
ints: 57
ints: 61
ints: 62
ints: 64
ints: 65
ints: 67
ints: 68
ints: 70
ints: 71
ints: 73
ints: 77
ints: 80
ints: 81
ints: 82
ints: 86
ints: 87
ints: 89
ints: 90
ints: 93
ints: 94
ints: 95
ints: 98
ints: 100
ints: 101
ints: 102
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
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: 7.0
floats: 8.0
floats: 10.0
floats: 11.0
floats: 13.0
floats: 15.0
floats: 16.0
floats: 18.0
floats: 20.0
floats: 21.0
floats: 24.0
floats: 27.0
floats: 28.0
floats: 29.0
floats: 33.0
floats: 34.0
floats: 36.0
floats: 37.0
floats: 40.0
floats: 41.0
floats: 43.0
floats: 44.0
floats: 50.0
floats: 51.0
floats: 52.0
floats: 54.0
floats: 56.0
floats: 57.0
floats: 61.0
floats: 62.0
floats: 64.0
floats: 65.0
floats: 67.0
floats: 68.0
floats: 70.0
floats: 71.0
floats: 73.0
floats: 77.0
floats: 80.0
floats: 81.0
floats: 82.0
floats: 86.0
floats: 87.0
floats: 89.0
floats: 90.0
floats: 93.0
floats: 94.0
floats: 95.0
floats: 98.0
floats: 100.0
floats: 101.0
floats: 102.0
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_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: 56
ints: 33
ints: 14
ints: 5
ints: 0
ints: 13
ints: 10
ints: 9
ints: 0
ints: 0
ints: 12
ints: 0
ints: 0
ints: 0
ints: 20
ints: 17
ints: 0
ints: 19
ints: 0
ints: 0
ints: 26
ints: 23
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: 43
ints: 42
ints: 41
ints: 40
ints: 0
ints: 0
ints: 0
ints: 0
ints: 51
ints: 48
ints: 47
ints: 0
ints: 0
ints: 50
ints: 0
ints: 0
ints: 55
ints: 54
ints: 0
ints: 0
ints: 0
ints: 70
ints: 65
ints: 62
ints: 61
ints: 0
ints: 0
ints: 64
ints: 0
ints: 0
ints: 67
ints: 0
ints: 69
ints: 0
ints: 0
ints: 72
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_featureids"
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 1
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: 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: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 1
ints: 1
ints: 0
ints: 1
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
type: INTS
}
attribute {
name: "nodes_hitrates"
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
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
type: INTS
}
attribute {
name: "nodes_modes"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
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: "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: "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: "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: "LEAF"
strings: "BRANCH_LEQ"
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
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
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
type: INTS
}
attribute {
name: "nodes_truenodeids"
ints: 1
ints: 2
ints: 3
ints: 4
ints: 0
ints: 6
ints: 7
ints: 8
ints: 0
ints: 0
ints: 11
ints: 0
ints: 0
ints: 0
ints: 15
ints: 16
ints: 0
ints: 18
ints: 0
ints: 0
ints: 21
ints: 22
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: 38
ints: 39
ints: 0
ints: 0
ints: 0
ints: 0
ints: 44
ints: 45
ints: 46
ints: 0
ints: 0
ints: 49
ints: 0
ints: 0
ints: 52
ints: 53
ints: 0
ints: 0
ints: 0
ints: 57
ints: 58
ints: 59
ints: 60
ints: 0
ints: 0
ints: 63
ints: 0
ints: 0
ints: 66
ints: 0
ints: 68
ints: 0
ints: 0
ints: 71
ints: 0
ints: 0
type: INTS
}
attribute {
name: "nodes_values"
floats: 0.2054523527622223
floats: 5.720078945159912
floats: -2.2732791900634766
floats: -4.630293369293213
floats: 0.0
floats: 5.411093711853027
floats: -3.3866586685180664
floats: 4.608852386474609
floats: 0.0
floats: 0.0
floats: 3.734891891479492
floats: 0.0
floats: 0.0
floats: 0.0
floats: -0.10917384922504425
floats: -1.2374401092529297
floats: 0.0
floats: -0.827874481678009
floats: 0.0
floats: 0.0
floats: -2.071647882461548
floats: -2.102121114730835
floats: 0.0
floats: -2.0763232707977295
floats: 0.0
floats: 0.0
floats: 0.6638698577880859
floats: -0.8181525468826294
floats: 0.0
floats: 0.0
floats: 0.10006757825613022
floats: 0.0
floats: 0.0
floats: -6.082978248596191
floats: 0.0
floats: -4.585964202880859
floats: 9.586073875427246
floats: -4.862358570098877
floats: 7.337919235229492
floats: 0.0
floats: 0.0
floats: 0.0
floats: 0.0
floats: -3.677865743637085
floats: 7.8631792068481445
floats: -3.906221628189087
floats: 0.0
floats: 0.0
floats: -4.509670257568359
floats: 0.0
floats: 0.0
floats: -2.576967477798462
floats: 8.915074348449707
floats: 0.0
floats: 0.0
floats: 0.0
floats: 2.103733777999878
floats: 0.5658510327339172
floats: 1.2207704782485962
floats: 0.022815637290477753
floats: 0.0
floats: 0.0
floats: 1.3473073244094849
floats: 0.0
floats: 0.0
floats: 0.9728590846061707
floats: 0.0
floats: 0.4070947468280792
floats: 0.0
floats: 0.0
floats: 2.6099328994750977
floats: 0.0
floats: 0.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
type: INTS
}
attribute {
name: "target_nodeids"
ints: 4
ints: 8
ints: 9
ints: 11
ints: 12
ints: 13
ints: 16
ints: 18
ints: 19
ints: 22
ints: 24
ints: 25
ints: 28
ints: 29
ints: 31
ints: 32
ints: 34
ints: 39
ints: 40
ints: 41
ints: 42
ints: 46
ints: 47
ints: 49
ints: 50
ints: 53
ints: 54
ints: 55
ints: 60
ints: 61
ints: 63
ints: 64
ints: 66
ints: 68
ints: 69
ints: 71
ints: 72
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
type: INTS
}
attribute {
name: "target_weights"
floats: 4.0
floats: 8.0
floats: 9.0
floats: 11.0
floats: 12.0
floats: 13.0
floats: 16.0
floats: 18.0
floats: 19.0
floats: 22.0
floats: 24.0
floats: 25.0
floats: 28.0
floats: 29.0
floats: 31.0
floats: 32.0
floats: 34.0
floats: 39.0
floats: 40.0
floats: 41.0
floats: 42.0
floats: 46.0
floats: 47.0
floats: 49.0
floats: 50.0
floats: 53.0
floats: 54.0
floats: 55.0
floats: 60.0
floats: 61.0
floats: 63.0
floats: 64.0
floats: 66.0
floats: 68.0
floats: 69.0
floats: 71.0
floats: 72.0
type: FLOATS
}
domain: "ai.onnx.ml"
}
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_sample0_output02"
output: "node_sample0_Y02"
name: "node_sample0_LabelEncoder"
op_type: "LabelEncoder"
attribute {
name: "keys_int64s"
ints: 3
ints: 6
ints: 8
ints: 9
ints: 10
ints: 14
ints: 16
ints: 18
ints: 19
ints: 23
ints: 24
ints: 26
ints: 27
ints: 30
ints: 31
ints: 33
ints: 34
ints: 39
ints: 40
ints: 42
ints: 43
ints: 44
ints: 48
ints: 49
ints: 50
ints: 51
ints: 54
ints: 55
ints: 57
ints: 58
type: INTS
}
attribute {
name: "values_floats"
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 27.0
floats: 2.0
floats: 4.0
floats: 1.0
floats: 3.0
floats: 1.0
floats: 1.0
floats: 3.0
floats: 8.0
floats: 10.0
floats: 5.0
floats: 3.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 5.0
floats: 11.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
type: FLOATS
}
domain: "ai.onnx.ml"
}
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_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: "path_length0_output0"
output: "path_length0_Y0"
name: "path_length0_LabelEncoder"
op_type: "LabelEncoder"
attribute {
name: "keys_int64s"
ints: 3
ints: 6
ints: 8
ints: 9
ints: 10
ints: 14
ints: 16
ints: 18
ints: 19
ints: 23
ints: 24
ints: 26
ints: 27
ints: 30
ints: 31
ints: 33
ints: 34
ints: 39
ints: 40
ints: 42
ints: 43
ints: 44
ints: 48
ints: 49
ints: 50
ints: 51
ints: 54
ints: 55
ints: 57
ints: 58
type: INTS
}
attribute {
name: "values_floats"
floats: 4.0
floats: 6.0
floats: 7.0
floats: 7.0
floats: 5.0
floats: 6.0
floats: 7.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 6.0
floats: 8.0
floats: 8.0
floats: 7.0
floats: 6.0
floats: 4.0
floats: 4.0
floats: 4.0
floats: 4.0
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_length1_output0"
output: "path_length1_Y0"
name: "path_length1_LabelEncoder"
op_type: "LabelEncoder"
attribute {
name: "keys_int64s"
ints: 4
ints: 8
ints: 9
ints: 11
ints: 12
ints: 13
ints: 16
ints: 18
ints: 19
ints: 22
ints: 24
ints: 25
ints: 28
ints: 29
ints: 31
ints: 32
ints: 34
ints: 39
ints: 40
ints: 41
ints: 42
ints: 46
ints: 47
ints: 49
ints: 50
ints: 53
ints: 54
ints: 55
ints: 60
ints: 61
ints: 63
ints: 64
ints: 66
ints: 68
ints: 69
ints: 71
ints: 72
type: INTS
}
attribute {
name: "values_floats"
floats: 5.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 6.0
floats: 6.0
floats: 7.0
floats: 7.0
floats: 7.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 4.0
floats: 8.0
floats: 8.0
floats: 7.0
floats: 6.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 7.0
floats: 6.0
floats: 6.0
floats: 6.0
floats: 6.0
floats: 5.0
floats: 6.0
floats: 6.0
floats: 4.0
floats: 4.0
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: 7
ints: 8
ints: 10
ints: 11
ints: 13
ints: 15
ints: 16
ints: 18
ints: 20
ints: 21
ints: 24
ints: 27
ints: 28
ints: 29
ints: 33
ints: 34
ints: 36
ints: 37
ints: 40
ints: 41
ints: 43
ints: 44
ints: 50
ints: 51
ints: 52
ints: 54
ints: 56
ints: 57
ints: 61
ints: 62
ints: 64
ints: 65
ints: 67
ints: 68
ints: 70
ints: 71
ints: 73
ints: 77
ints: 80
ints: 81
ints: 82
ints: 86
ints: 87
ints: 89
ints: 90
ints: 93
ints: 94
ints: 95
ints: 98
ints: 100
ints: 101
ints: 102
type: INTS
}
attribute {
name: "values_floats"
floats: 1.0
floats: 2.0
floats: 4.0
floats: 4.0
floats: 1.0
floats: 2.0
floats: 3.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 2.0
floats: 2.0
floats: 1.0
floats: 3.0
floats: 3.0
floats: 1.0
floats: 1.0
floats: 2.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 2.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 4.0
floats: 1.0
floats: 2.0
floats: 7.0
floats: 3.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 4.0
floats: 1.0
floats: 1.0
floats: 9.0
floats: 1.0
floats: 2.0
floats: 7.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
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: 7
ints: 8
ints: 10
ints: 11
ints: 13
ints: 15
ints: 16
ints: 18
ints: 20
ints: 21
ints: 24
ints: 27
ints: 28
ints: 29
ints: 33
ints: 34
ints: 36
ints: 37
ints: 40
ints: 41
ints: 43
ints: 44
ints: 50
ints: 51
ints: 52
ints: 54
ints: 56
ints: 57
ints: 61
ints: 62
ints: 64
ints: 65
ints: 67
ints: 68
ints: 70
ints: 71
ints: 73
ints: 77
ints: 80
ints: 81
ints: 82
ints: 86
ints: 87
ints: 89
ints: 90
ints: 93
ints: 94
ints: 95
ints: 98
ints: 100
ints: 101
ints: 102
type: INTS
}
attribute {
name: "values_floats"
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 7.0
floats: 8.0
floats: 8.0
floats: 6.0
floats: 7.0
floats: 7.0
floats: 6.0
floats: 8.0
floats: 8.0
floats: 7.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 7.0
floats: 7.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 7.0
floats: 7.0
floats: 5.0
floats: 5.0
floats: 3.0
floats: 6.0
floats: 8.0
floats: 8.0
floats: 7.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 8.0
floats: 7.0
floats: 6.0
floats: 7.0
floats: 7.0
floats: 5.0
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: 8
ints: 9
ints: 11
ints: 12
ints: 13
ints: 16
ints: 18
ints: 19
ints: 22
ints: 24
ints: 25
ints: 28
ints: 29
ints: 31
ints: 32
ints: 34
ints: 39
ints: 40
ints: 41
ints: 42
ints: 46
ints: 47
ints: 49
ints: 50
ints: 53
ints: 54
ints: 55
ints: 60
ints: 61
ints: 63
ints: 64
ints: 66
ints: 68
ints: 69
ints: 71
ints: 72
type: INTS
}
attribute {
name: "values_floats"
floats: 1.0
floats: 4.0
floats: 1.0
floats: 1.0
floats: 7.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 2.0
floats: 32.0
floats: 1.0
floats: 1.0
floats: 3.0
floats: 9.0
floats: 1.0
floats: 1.0
floats: 2.0
floats: 2.0
floats: 1.0
floats: 7.0
floats: 5.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
floats: 1.0
type: FLOATS
}
domain: "ai.onnx.ml"
}
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_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: "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: "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: "node_sample0_reshaped0"
input: "dec_Powcst"
output: "plus2_0_C0"
name: "plus2_0_Greater"
op_type: "Greater"
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: "node_sample1_reshaped0"
input: "dec_Powcst"
output: "plus2_1_C0"
name: "plus2_1_Greater"
op_type: "Greater"
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: "eq2_0_C0"
output: "eq2_0_output0"
name: "eq2_0_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 1
type: INT
}
domain: ""
}
node {
input: "node_sample2_reshaped0"
input: "dec_Powcst"
output: "eq2_2_C0"
name: "eq2_2_Equal"
op_type: "Equal"
domain: ""
}
node {
input: "node_sample2_reshaped0"
input: "dec_Powcst"
output: "plus2_2_C0"
name: "plus2_2_Greater"
op_type: "Greater"
domain: ""
}
node {
input: "node_sample1_reshaped0"
input: "dec_Powcst"
output: "eq2_1_C0"
name: "eq2_1_Equal"
op_type: "Equal"
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_0_output0"
input: "node_sample0_reshaped0"
output: "eqp2ps0_C0"
name: "eqp2ps0_Mul"
op_type: "Mul"
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_2_C0"
output: "plus2_2_output0"
name: "plus2_2_Cast"
op_type: "Cast"
attribute {
name: "to"
i: 1
type: INT
}
domain: ""
}
node {
input: "plus2_1_output0"
input: "node_sample1_reshaped0"
output: "eqp2ps1_C0"
name: "eqp2ps1_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: "plus2_2_output0"
input: "node_sample2_reshaped0"
output: "eqp2ps2_C0"
name: "eqp2ps2_Mul"
op_type: "Mul"
domain: ""
}
node {
input: "eqp2ps0_C0"
input: "eqp2p_m1_0_Maxcst"
output: "eqp_ns0_max0"
name: "eqp_ns0_Max"
op_type: "Max"
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: "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_Addcst"
output: "eqp2p_m1_2_C0"
name: "eqp2p_m1_2_Add"
op_type: "Add"
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_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: "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_0_max02"
input: "eqp_ns0_max0"
output: "eqp_ns0_C01"
name: "eqp_ns0_Div"
op_type: "Div"
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: "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_0_max0"
output: "eqp_log0_output0"
name: "eqp_log0_Log"
op_type: "Log"
domain: ""
}
node {
input: "eqp2p_m1_1_max0"
output: "eqp_log1_output0"
name: "eqp_log1_Log"
op_type: "Log"
domain: ""
}
node {
input: "eqp_log0_output0"
input: "eqp_log0_Addcst"
output: "eqp_log0_C01"
name: "eqp_log0_Add"
op_type: "Add"
domain: ""
}
node {
input: "eqp_ns0_C01"
input: "eqp_ns0_Mulcst"
output: "eqp_ns0_C0"
name: "eqp_ns0_Mul"
op_type: "Mul"
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_max0"
output: "eqp_log2_output0"
name: "eqp_log2_Log"
op_type: "Log"
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: "eqp_log1_output0"
input: "eqp_log0_Addcst"
output: "eqp_log1_C01"
name: "eqp_log1_Add"
op_type: "Add"
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_log2_output0"
input: "eqp_log0_Addcst"
output: "eqp_log2_C01"
name: "eqp_log2_Add"
op_type: "Add"
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_log0_C01"
input: "dec_Powcst"
output: "eqp_log0_C0"
name: "eqp_log0_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_C01"
input: "dec_Powcst"
output: "eqp_log1_C0"
name: "eqp_log1_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_log2_C0"
input: "eqp_ns2_C0"
output: "avlog2_C01"
name: "avlog2_Add"
op_type: "Add"
domain: ""
}
node {
input: "eqp_log1_C0"
input: "eqp_ns1_C0"
output: "avlog1_C01"
name: "avlog1_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: "avlog1_C01"
input: "plus2_1_output0"
output: "avlog1_C0"
name: "avlog1_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: "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: "path_length0_reshaped0"
input: "avpl0_C0"
output: "depth0_C01"
name: "depth0_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_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: "depth0_C01"
input: "eqp2p_m1_0_Addcst"
output: "depth0_C0"
name: "depth0_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: "depth1_C01"
input: "eqp2p_m1_0_Addcst"
output: "depth1_C0"
name: "depth1_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.0
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.0
name: "eqp2p_m1_0_Addcst"
}
initializer {
dims: 1
data_type: 1
float_data: 1.0
name: "eqp2p_m1_0_Maxcst"
}
initializer {
dims: 1
data_type: 1
float_data: 0.5772156715393066
name: "eqp_log0_Addcst"
}
initializer {
dims: 1
data_type: 1
float_data: 0.0
name: "eqp2p_m1_0_Maxcst1"
}
initializer {
dims: 1
data_type: 1
float_data: -2.0
name: "eqp_ns0_Mulcst"
}
initializer {
dims: 1
dims: 1
data_type: 1
float_data: 25.094013214111328
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: ""
version: 15
}
opset_import {
domain: "ai.onnx.ml"
version: 2
}
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: '', version: 15
domain: 'ai.onnx.ml', version: 2
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 --> {'': 7, 'ai.onnx.ml': 2} 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 --> {'': 13, 'ai.onnx.ml': 2} 91
target: 14 --> {'': 14, 'ai.onnx.ml': 2} 91
target: 15 --> {'': 15, 'ai.onnx.ml': 2} 91
target: 16 --> {'': 16, 'ai.onnx.ml': 2} 91
target: 17 --> {'': 17, 'ai.onnx.ml': 2} 91
target: 18 --> {'': 18, 'ai.onnx.ml': 2} 91
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1405: UserWarning: Parameter target_opset 19 > 18 is higher than the the latest tested version.
warnings.warn(
target: 19 error: RuntimeError("The model is using version 19 of domain '' not supported yet by this library. You need to specify target_opset={'': 18}.")
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': 2, '': 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': 2, '': 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': 2, '': 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': 2} 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 --> {'': 13, 'ai.onnx.ml': 2} 91
try target_opset: {'': 13, 'ai.onnx.ml': 3}
target: 13 --> {'': 13, 'ai.onnx.ml': 2} 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 --> {'': 14, 'ai.onnx.ml': 2} 91
try target_opset: {'': 14, 'ai.onnx.ml': 3}
target: 14 --> {'': 14, 'ai.onnx.ml': 2} 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 --> {'': 15, 'ai.onnx.ml': 2} 91
try target_opset: {'': 15, 'ai.onnx.ml': 3}
target: 15 --> {'': 15, 'ai.onnx.ml': 2} 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 --> {'': 16, 'ai.onnx.ml': 2} 91
try target_opset: {'': 16, 'ai.onnx.ml': 3}
target: 16 --> {'': 16, 'ai.onnx.ml': 2} 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 --> {'': 17, 'ai.onnx.ml': 2} 91
try target_opset: {'': 17, 'ai.onnx.ml': 3}
target: 17 --> {'': 17, 'ai.onnx.ml': 2} 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 --> {'': 18, 'ai.onnx.ml': 2} 91
try target_opset: {'': 18, 'ai.onnx.ml': 3}
target: 18 --> {'': 18, 'ai.onnx.ml': 2} 91
try target_opset: {'': 19, 'ai.onnx.ml': 1}
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1405: UserWarning: Parameter target_opset 19 > 18 is higher than the the latest tested version.
warnings.warn(
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 error: RuntimeError("The model is using version 19 of domain '' not supported yet by this library. You need to specify target_opset={'': 18}.")
try target_opset: {'': 19, 'ai.onnx.ml': 3}
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1405: UserWarning: Parameter target_opset 19 > 18 is higher than the the latest tested version.
warnings.warn(
target: 19 error: RuntimeError("The model is using version 19 of domain '' not supported yet by this library. You need to specify target_opset={'': 18}.")
Total running time of the script: ( 0 minutes 1.345 seconds)