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
opset_import {
domain: "ai.onnx.ml"
version: 2
}
opset_import {
domain: ""
version: 15
}
producer_name: "skl2onnx"
producer_version: "1.17.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"
domain: ""
attribute {
name: "axis"
type: INT
i: 1
}
}
node {
input: "X"
input: "node_sample0_Gathercst"
output: "node_sample1_output0"
name: "node_sample1_Gather"
op_type: "Gather"
domain: ""
attribute {
name: "axis"
type: INT
i: 1
}
}
node {
input: "X"
input: "node_sample0_Gathercst"
output: "node_sample2_output0"
name: "node_sample2_Gather"
op_type: "Gather"
domain: ""
attribute {
name: "axis"
type: INT
i: 1
}
}
node {
input: "node_sample0_output0"
output: "node_sample0_Y0"
name: "node_sample0_TreeEnsembleRegressor"
op_type: "TreeEnsembleRegressor"
domain: "ai.onnx.ml"
attribute {
name: "n_targets"
type: INT
i: 1
}
attribute {
name: "nodes_falsenodeids"
type: INTS
ints: 70
ints: 45
ints: 22
ints: 13
ints: 6
ints: 0
ints: 10
ints: 9
ints: 0
ints: 0
ints: 12
ints: 0
ints: 0
ints: 15
ints: 0
ints: 19
ints: 18
ints: 0
ints: 0
ints: 21
ints: 0
ints: 0
ints: 34
ints: 29
ints: 26
ints: 0
ints: 28
ints: 0
ints: 0
ints: 31
ints: 0
ints: 33
ints: 0
ints: 0
ints: 40
ints: 39
ints: 38
ints: 0
ints: 0
ints: 0
ints: 42
ints: 0
ints: 44
ints: 0
ints: 0
ints: 47
ints: 0
ints: 55
ints: 54
ints: 51
ints: 0
ints: 53
ints: 0
ints: 0
ints: 0
ints: 63
ints: 60
ints: 59
ints: 0
ints: 0
ints: 62
ints: 0
ints: 0
ints: 67
ints: 66
ints: 0
ints: 0
ints: 69
ints: 0
ints: 0
ints: 72
ints: 0
ints: 0
}
attribute {
name: "nodes_featureids"
type: INTS
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 1
ints: 1
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: 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: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 1
ints: 1
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: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
}
attribute {
name: "nodes_hitrates"
type: FLOATS
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
}
attribute {
name: "nodes_missing_value_tracks_true"
type: INTS
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
}
attribute {
name: "nodes_modes"
type: STRINGS
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
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: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
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: "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: "BRANCH_LEQ"
strings: "LEAF"
strings: "BRANCH_LEQ"
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: "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: "LEAF"
}
attribute {
name: "nodes_nodeids"
type: INTS
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
}
attribute {
name: "nodes_treeids"
type: INTS
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
}
attribute {
name: "nodes_truenodeids"
type: INTS
ints: 1
ints: 2
ints: 3
ints: 4
ints: 5
ints: 0
ints: 7
ints: 8
ints: 0
ints: 0
ints: 11
ints: 0
ints: 0
ints: 14
ints: 0
ints: 16
ints: 17
ints: 0
ints: 0
ints: 20
ints: 0
ints: 0
ints: 23
ints: 24
ints: 25
ints: 0
ints: 27
ints: 0
ints: 0
ints: 30
ints: 0
ints: 32
ints: 0
ints: 0
ints: 35
ints: 36
ints: 37
ints: 0
ints: 0
ints: 0
ints: 41
ints: 0
ints: 43
ints: 0
ints: 0
ints: 46
ints: 0
ints: 48
ints: 49
ints: 50
ints: 0
ints: 52
ints: 0
ints: 0
ints: 0
ints: 56
ints: 57
ints: 58
ints: 0
ints: 0
ints: 61
ints: 0
ints: 0
ints: 64
ints: 65
ints: 0
ints: 0
ints: 68
ints: 0
ints: 0
ints: 71
ints: 0
ints: 0
}
attribute {
name: "nodes_values"
type: FLOATS
floats: 7.12720919
floats: -2.50847936
floats: -5.81569815
floats: -6.90573597
floats: -7.33749914
floats: 0
floats: 1.14596951
floats: -0.365689635
floats: 0
floats: 0
floats: -7.01047421
floats: 0
floats: 0
floats: -0.231543362
floats: 0
floats: 0.609032631
floats: -0.200652137
floats: 0
floats: 0
floats: 1.71771455
floats: 0
floats: 0
floats: -5.32672071
floats: 0.57932961
floats: -5.68109703
floats: 0
floats: 0.431736261
floats: 0
floats: 0
floats: -5.71494055
floats: 0
floats: 1.63313
floats: 0
floats: 0
floats: -4.93177
floats: -5.07430935
floats: 1.71232593
floats: 0
floats: 0
floats: 0
floats: 0.0723396093
floats: 0
floats: -4.68868732
floats: 0
floats: 0
floats: 0.389866889
floats: 0
floats: -1.38369834
floats: 3.0098443
floats: 2.09684968
floats: 0
floats: -1.58317983
floats: 0
floats: 0
floats: 0
floats: 3.69320822
floats: 3.11727071
floats: 0.911920846
floats: 0
floats: 0
floats: 3.4049294
floats: 0
floats: 0
floats: 5.54458904
floats: 3.85411906
floats: 0
floats: 0
floats: 9.64287
floats: 0
floats: 0
floats: 10.2398901
floats: 0
floats: 0
}
attribute {
name: "post_transform"
type: STRING
s: "NONE"
}
attribute {
name: "target_ids"
type: INTS
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
}
attribute {
name: "target_nodeids"
type: INTS
ints: 5
ints: 8
ints: 9
ints: 11
ints: 12
ints: 14
ints: 17
ints: 18
ints: 20
ints: 21
ints: 25
ints: 27
ints: 28
ints: 30
ints: 32
ints: 33
ints: 37
ints: 38
ints: 39
ints: 41
ints: 43
ints: 44
ints: 46
ints: 50
ints: 52
ints: 53
ints: 54
ints: 58
ints: 59
ints: 61
ints: 62
ints: 65
ints: 66
ints: 68
ints: 69
ints: 71
ints: 72
}
attribute {
name: "target_treeids"
type: INTS
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
}
attribute {
name: "target_weights"
type: FLOATS
floats: 5
floats: 8
floats: 9
floats: 11
floats: 12
floats: 14
floats: 17
floats: 18
floats: 20
floats: 21
floats: 25
floats: 27
floats: 28
floats: 30
floats: 32
floats: 33
floats: 37
floats: 38
floats: 39
floats: 41
floats: 43
floats: 44
floats: 46
floats: 50
floats: 52
floats: 53
floats: 54
floats: 58
floats: 59
floats: 61
floats: 62
floats: 65
floats: 66
floats: 68
floats: 69
floats: 71
floats: 72
}
}
node {
input: "node_sample0_Y0"
output: "node_sample0_output02"
name: "node_sample0_Cast"
op_type: "Cast"
domain: ""
attribute {
name: "to"
type: INT
i: 7
}
}
node {
input: "node_sample0_Y0"
output: "path_length0_output0"
name: "path_length0_Cast"
op_type: "Cast"
domain: ""
attribute {
name: "to"
type: INT
i: 7
}
}
node {
input: "node_sample1_output0"
output: "node_sample1_Y0"
name: "node_sample1_TreeEnsembleRegressor"
op_type: "TreeEnsembleRegressor"
domain: "ai.onnx.ml"
attribute {
name: "n_targets"
type: INT
i: 1
}
attribute {
name: "nodes_falsenodeids"
type: INTS
ints: 38
ints: 3
ints: 0
ints: 19
ints: 6
ints: 0
ints: 14
ints: 11
ints: 10
ints: 0
ints: 0
ints: 13
ints: 0
ints: 0
ints: 16
ints: 0
ints: 18
ints: 0
ints: 0
ints: 31
ints: 24
ints: 23
ints: 0
ints: 0
ints: 28
ints: 27
ints: 0
ints: 0
ints: 30
ints: 0
ints: 0
ints: 33
ints: 0
ints: 35
ints: 0
ints: 37
ints: 0
ints: 0
ints: 40
ints: 0
ints: 70
ints: 57
ints: 50
ints: 47
ints: 46
ints: 0
ints: 0
ints: 49
ints: 0
ints: 0
ints: 54
ints: 53
ints: 0
ints: 0
ints: 56
ints: 0
ints: 0
ints: 63
ints: 62
ints: 61
ints: 0
ints: 0
ints: 0
ints: 67
ints: 66
ints: 0
ints: 0
ints: 69
ints: 0
ints: 0
ints: 74
ints: 73
ints: 0
ints: 0
ints: 80
ints: 79
ints: 78
ints: 0
ints: 0
ints: 0
ints: 82
ints: 0
ints: 0
}
attribute {
name: "nodes_featureids"
type: INTS
ints: 0
ints: 0
ints: 0
ints: 1
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: 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: 1
ints: 0
ints: 1
ints: 0
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: 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: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
ints: 0
ints: 1
ints: 0
ints: 0
}
attribute {
name: "nodes_hitrates"
type: FLOATS
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
}
attribute {
name: "nodes_missing_value_tracks_true"
type: INTS
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
}
attribute {
name: "nodes_modes"
type: STRINGS
strings: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
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: "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: "BRANCH_LEQ"
strings: "LEAF"
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: "BRANCH_LEQ"
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: "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: "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: "BRANCH_LEQ"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
strings: "LEAF"
strings: "BRANCH_LEQ"
strings: "LEAF"
strings: "LEAF"
}
attribute {
name: "nodes_nodeids"
type: INTS
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
}
attribute {
name: "nodes_treeids"
type: INTS
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
}
attribute {
name: "nodes_truenodeids"
type: INTS
ints: 1
ints: 2
ints: 0
ints: 4
ints: 5
ints: 0
ints: 7
ints: 8
ints: 9
ints: 0
ints: 0
ints: 12
ints: 0
ints: 0
ints: 15
ints: 0
ints: 17
ints: 0
ints: 0
ints: 20
ints: 21
ints: 22
ints: 0
ints: 0
ints: 25
ints: 26
ints: 0
ints: 0
ints: 29
ints: 0
ints: 0
ints: 32
ints: 0
ints: 34
ints: 0
ints: 36
ints: 0
ints: 0
ints: 39
ints: 0
ints: 41
ints: 42
ints: 43
ints: 44
ints: 45
ints: 0
ints: 0
ints: 48
ints: 0
ints: 0
ints: 51
ints: 52
ints: 0
ints: 0
ints: 55
ints: 0
ints: 0
ints: 58
ints: 59
ints: 60
ints: 0
ints: 0
ints: 0
ints: 64
ints: 65
ints: 0
ints: 0
ints: 68
ints: 0
ints: 0
ints: 71
ints: 72
ints: 0
ints: 0
ints: 75
ints: 76
ints: 77
ints: 0
ints: 0
ints: 0
ints: 81
ints: 0
ints: 0
}
attribute {
name: "nodes_values"
type: FLOATS
floats: -4.633461
floats: -7.42188883
floats: 0
floats: 0.530768454
floats: -1.11584079
floats: 0
floats: -5.85772038
floats: -6.36452103
floats: -6.96083307
floats: 0
floats: 0
floats: -0.0912455469
floats: 0
floats: 0
floats: -0.10221155
floats: 0
floats: 0.210073888
floats: 0
floats: 0
floats: -5.46956968
floats: -6.41092587
floats: -7.02192736
floats: 0
floats: 0
floats: -5.8922987
floats: -6.19773626
floats: 0
floats: 0
floats: -5.77835941
floats: 0
floats: 0
floats: 1.13799345
floats: 0
floats: 1.63795125
floats: 0
floats: -5.27780867
floats: 0
floats: 0
floats: -0.68555
floats: 0
floats: 6.83443451
floats: 3.02940655
floats: -0.792439938
floats: 1.90140116
floats: -2.87935948
floats: 0
floats: 0
floats: -1.61651504
floats: 0
floats: 0
floats: 2.54447269
floats: 0.938594639
floats: 0
floats: 0
floats: 0.794950724
floats: 0
floats: 0
floats: 10.5930862
floats: 6.75694561
floats: 9.16451
floats: 0
floats: 0
floats: 0
floats: 5.74361849
floats: 10.7876577
floats: 0
floats: 0
floats: 10.6999283
floats: 0
floats: 0
floats: 7.01908875
floats: 6.85010433
floats: 0
floats: 0
floats: 11.2151642
floats: 8.99984
floats: 7.10709238
floats: 0
floats: 0
floats: 0
floats: 7.25135803
floats: 0
floats: 0
}
attribute {
name: "post_transform"
type: STRING
s: "NONE"
}
attribute {
name: "target_ids"
type: INTS
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
}
attribute {
name: "target_nodeids"
type: INTS
ints: 2
ints: 5
ints: 9
ints: 10
ints: 12
ints: 13
ints: 15
ints: 17
ints: 18
ints: 22
ints: 23
ints: 26
ints: 27
ints: 29
ints: 30
ints: 32
ints: 34
ints: 36
ints: 37
ints: 39
ints: 45
ints: 46
ints: 48
ints: 49
ints: 52
ints: 53
ints: 55
ints: 56
ints: 60
ints: 61
ints: 62
ints: 65
ints: 66
ints: 68
ints: 69
ints: 72
ints: 73
ints: 77
ints: 78
ints: 79
ints: 81
ints: 82
}
attribute {
name: "target_treeids"
type: INTS
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
}
attribute {
name: "target_weights"
type: FLOATS
floats: 2
floats: 5
floats: 9
floats: 10
floats: 12
floats: 13
floats: 15
floats: 17
floats: 18
floats: 22
floats: 23
floats: 26
floats: 27
floats: 29
floats: 30
floats: 32
floats: 34
floats: 36
floats: 37
floats: 39
floats: 45
floats: 46
floats: 48
floats: 49
floats: 52
floats: 53
floats: 55
floats: 56
floats: 60
floats: 61
floats: 62
floats: 65
floats: 66
floats: 68
floats: 69
floats: 72
floats: 73
floats: 77
floats: 78
floats: 79
floats: 81
floats: 82
}
}
node {
input: "node_sample2_output0"
output: "node_sample2_Y0"
name: "node_sample2_TreeEnsembleRegressor"
op_type: "TreeEnsembleRegressor"
domain: "ai.onnx.ml"
attribute {
name: "n_targets"
type: INT
i: 1
}
attribute {
name: "nodes_falsenodeids"
type: INTS
ints: 58
ints: 41
ints: 32
ints: 19
ints: 12
ints: 9
ints: 8
ints: 0
ints: 0
ints: 11
ints: 0
ints: 0
ints: 16
ints: 15
ints: 0
ints: 0
ints: 18
ints: 0
ints: 0
ints: 27
ints: 24
ints: 23
ints: 0
ints: 0
ints: 26
ints: 0
ints: 0
ints: 31
ints: 30
ints: 0
ints: 0
ints: 0
ints: 40
ints: 39
ints: 38
ints: 37
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 45
ints: 44
ints: 0
ints: 0
ints: 49
ints: 48
ints: 0
ints: 0
ints: 51
ints: 0
ints: 55
ints: 54
ints: 0
ints: 0
ints: 57
ints: 0
ints: 0
ints: 78
ints: 73
ints: 64
ints: 63
ints: 0
ints: 0
ints: 66
ints: 0
ints: 70
ints: 69
ints: 0
ints: 0
ints: 72
ints: 0
ints: 0
ints: 75
ints: 0
ints: 77
ints: 0
ints: 0
ints: 80
ints: 0
ints: 0
}
attribute {
name: "nodes_featureids"
type: INTS
ints: 1
ints: 1
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: 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: 0
ints: 1
ints: 1
ints: 1
ints: 0
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: 0
ints: 1
ints: 0
ints: 1
ints: 1
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 1
ints: 1
ints: 0
ints: 1
ints: 0
ints: 0
ints: 1
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: 0
ints: 1
ints: 0
ints: 0
}
attribute {
name: "nodes_hitrates"
type: FLOATS
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
}
attribute {
name: "nodes_missing_value_tracks_true"
type: INTS
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
}
attribute {
name: "nodes_modes"
type: STRINGS
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: "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: "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: "LEAF"
strings: "LEAF"
strings: "LEAF"
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: "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: "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"
}
attribute {
name: "nodes_nodeids"
type: INTS
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
}
attribute {
name: "nodes_treeids"
type: INTS
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
}
attribute {
name: "nodes_truenodeids"
type: INTS
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: 14
ints: 0
ints: 0
ints: 17
ints: 0
ints: 0
ints: 20
ints: 21
ints: 22
ints: 0
ints: 0
ints: 25
ints: 0
ints: 0
ints: 28
ints: 29
ints: 0
ints: 0
ints: 0
ints: 33
ints: 34
ints: 35
ints: 36
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 42
ints: 43
ints: 0
ints: 0
ints: 46
ints: 47
ints: 0
ints: 0
ints: 50
ints: 0
ints: 52
ints: 53
ints: 0
ints: 0
ints: 56
ints: 0
ints: 0
ints: 59
ints: 60
ints: 61
ints: 62
ints: 0
ints: 0
ints: 65
ints: 0
ints: 67
ints: 68
ints: 0
ints: 0
ints: 71
ints: 0
ints: 0
ints: 74
ints: 0
ints: 76
ints: 0
ints: 0
ints: 79
ints: 0
ints: 0
}
attribute {
name: "nodes_values"
type: FLOATS
floats: 5.56347609
floats: 3.54485059
floats: 0.892686963
floats: -2.91562176
floats: 0.208490029
floats: -5.62306833
floats: -6.84495974
floats: 0
floats: 0
floats: -0.359150738
floats: 0
floats: 0
floats: -6.40308762
floats: 1.7793287
floats: 0
floats: 0
floats: -4.90215826
floats: 0
floats: 0
floats: 0.571254671
floats: 0.256581962
floats: 1.56213474
floats: 0
floats: 0
floats: 0.354804
floats: 0
floats: 0
floats: 1.8861
floats: 0.65819484
floats: 0
floats: 0
floats: 0
floats: 2.98465371
floats: 2.26922607
floats: 2.18248677
floats: 1.16817224
floats: 0
floats: 0
floats: 0
floats: 0
floats: 0
floats: 3.66154408
floats: -4.17673826
floats: 0
floats: 0
floats: 4.12379313
floats: 4.49423361
floats: 0
floats: 0
floats: 4.62208128
floats: 0
floats: 5.29058266
floats: 5.07422256
floats: 0
floats: 0
floats: 9.79056454
floats: 0
floats: 0
floats: 7.32600832
floats: 6.88497257
floats: 8.66317
floats: 5.80218601
floats: 0
floats: 0
floats: 5.6827774
floats: 0
floats: 9.55748367
floats: 8.81950092
floats: 0
floats: 0
floats: 6.46453953
floats: 0
floats: 0
floats: 7.07542467
floats: 0
floats: 9.23579311
floats: 0
floats: 0
floats: 7.45949268
floats: 0
floats: 0
}
attribute {
name: "post_transform"
type: STRING
s: "NONE"
}
attribute {
name: "target_ids"
type: INTS
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
}
attribute {
name: "target_nodeids"
type: INTS
ints: 7
ints: 8
ints: 10
ints: 11
ints: 14
ints: 15
ints: 17
ints: 18
ints: 22
ints: 23
ints: 25
ints: 26
ints: 29
ints: 30
ints: 31
ints: 36
ints: 37
ints: 38
ints: 39
ints: 40
ints: 43
ints: 44
ints: 47
ints: 48
ints: 50
ints: 53
ints: 54
ints: 56
ints: 57
ints: 62
ints: 63
ints: 65
ints: 68
ints: 69
ints: 71
ints: 72
ints: 74
ints: 76
ints: 77
ints: 79
ints: 80
}
attribute {
name: "target_treeids"
type: INTS
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
ints: 0
}
attribute {
name: "target_weights"
type: FLOATS
floats: 7
floats: 8
floats: 10
floats: 11
floats: 14
floats: 15
floats: 17
floats: 18
floats: 22
floats: 23
floats: 25
floats: 26
floats: 29
floats: 30
floats: 31
floats: 36
floats: 37
floats: 38
floats: 39
floats: 40
floats: 43
floats: 44
floats: 47
floats: 48
floats: 50
floats: 53
floats: 54
floats: 56
floats: 57
floats: 62
floats: 63
floats: 65
floats: 68
floats: 69
floats: 71
floats: 72
floats: 74
floats: 76
floats: 77
floats: 79
floats: 80
}
}
node {
input: "node_sample1_Y0"
output: "node_sample1_output02"
name: "node_sample1_Cast"
op_type: "Cast"
domain: ""
attribute {
name: "to"
type: INT
i: 7
}
}
node {
input: "node_sample2_Y0"
output: "node_sample2_output02"
name: "node_sample2_Cast"
op_type: "Cast"
domain: ""
attribute {
name: "to"
type: INT
i: 7
}
}
node {
input: "node_sample1_Y0"
output: "path_length1_output0"
name: "path_length1_Cast"
op_type: "Cast"
domain: ""
attribute {
name: "to"
type: INT
i: 7
}
}
node {
input: "node_sample2_Y0"
output: "path_length2_output0"
name: "path_length2_Cast"
op_type: "Cast"
domain: ""
attribute {
name: "to"
type: INT
i: 7
}
}
node {
input: "node_sample0_output02"
output: "node_sample0_Y02"
name: "node_sample0_LabelEncoder"
op_type: "LabelEncoder"
domain: "ai.onnx.ml"
attribute {
name: "keys_int64s"
type: INTS
ints: 5
ints: 8
ints: 9
ints: 11
ints: 12
ints: 14
ints: 17
ints: 18
ints: 20
ints: 21
ints: 25
ints: 27
ints: 28
ints: 30
ints: 32
ints: 33
ints: 37
ints: 38
ints: 39
ints: 41
ints: 43
ints: 44
ints: 46
ints: 50
ints: 52
ints: 53
ints: 54
ints: 58
ints: 59
ints: 61
ints: 62
ints: 65
ints: 66
ints: 68
ints: 69
ints: 71
ints: 72
}
attribute {
name: "values_floats"
type: FLOATS
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 4
floats: 3
floats: 1
floats: 1
floats: 1
floats: 2
floats: 1
floats: 3
floats: 2
floats: 1
floats: 1
floats: 1
floats: 1
floats: 3
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 18
floats: 5
floats: 1
floats: 2
floats: 2
floats: 8
floats: 9
floats: 15
floats: 1
floats: 1
}
}
node {
input: "path_length0_output0"
output: "path_length0_Y0"
name: "path_length0_LabelEncoder"
op_type: "LabelEncoder"
domain: "ai.onnx.ml"
attribute {
name: "keys_int64s"
type: INTS
ints: 5
ints: 8
ints: 9
ints: 11
ints: 12
ints: 14
ints: 17
ints: 18
ints: 20
ints: 21
ints: 25
ints: 27
ints: 28
ints: 30
ints: 32
ints: 33
ints: 37
ints: 38
ints: 39
ints: 41
ints: 43
ints: 44
ints: 46
ints: 50
ints: 52
ints: 53
ints: 54
ints: 58
ints: 59
ints: 61
ints: 62
ints: 65
ints: 66
ints: 68
ints: 69
ints: 71
ints: 72
}
attribute {
name: "values_floats"
type: FLOATS
floats: 6
floats: 8
floats: 8
floats: 8
floats: 8
floats: 6
floats: 8
floats: 8
floats: 8
floats: 8
floats: 7
floats: 8
floats: 8
floats: 7
floats: 8
floats: 8
floats: 8
floats: 8
floats: 7
floats: 7
floats: 8
floats: 8
floats: 4
floats: 7
floats: 8
floats: 8
floats: 6
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 3
floats: 3
}
}
node {
input: "node_sample1_output02"
output: "node_sample1_Y02"
name: "node_sample1_LabelEncoder"
op_type: "LabelEncoder"
domain: "ai.onnx.ml"
attribute {
name: "keys_int64s"
type: INTS
ints: 2
ints: 5
ints: 9
ints: 10
ints: 12
ints: 13
ints: 15
ints: 17
ints: 18
ints: 22
ints: 23
ints: 26
ints: 27
ints: 29
ints: 30
ints: 32
ints: 34
ints: 36
ints: 37
ints: 39
ints: 45
ints: 46
ints: 48
ints: 49
ints: 52
ints: 53
ints: 55
ints: 56
ints: 60
ints: 61
ints: 62
ints: 65
ints: 66
ints: 68
ints: 69
ints: 72
ints: 73
ints: 77
ints: 78
ints: 79
ints: 81
ints: 82
}
attribute {
name: "values_floats"
type: FLOATS
floats: 1
floats: 1
floats: 1
floats: 2
floats: 2
floats: 1
floats: 1
floats: 1
floats: 3
floats: 1
floats: 1
floats: 2
floats: 3
floats: 1
floats: 4
floats: 1
floats: 1
floats: 1
floats: 3
floats: 1
floats: 2
floats: 3
floats: 2
floats: 3
floats: 12
floats: 4
floats: 5
floats: 3
floats: 6
floats: 15
floats: 1
floats: 1
floats: 1
floats: 1
floats: 2
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
}
}
node {
input: "node_sample2_output02"
output: "node_sample2_Y02"
name: "node_sample2_LabelEncoder"
op_type: "LabelEncoder"
domain: "ai.onnx.ml"
attribute {
name: "keys_int64s"
type: INTS
ints: 7
ints: 8
ints: 10
ints: 11
ints: 14
ints: 15
ints: 17
ints: 18
ints: 22
ints: 23
ints: 25
ints: 26
ints: 29
ints: 30
ints: 31
ints: 36
ints: 37
ints: 38
ints: 39
ints: 40
ints: 43
ints: 44
ints: 47
ints: 48
ints: 50
ints: 53
ints: 54
ints: 56
ints: 57
ints: 62
ints: 63
ints: 65
ints: 68
ints: 69
ints: 71
ints: 72
ints: 74
ints: 76
ints: 77
ints: 79
ints: 80
}
attribute {
name: "values_floats"
type: FLOATS
floats: 3
floats: 5
floats: 1
floats: 1
floats: 1
floats: 1
floats: 16
floats: 4
floats: 4
floats: 14
floats: 2
floats: 1
floats: 1
floats: 1
floats: 1
floats: 2
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 3
floats: 2
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
floats: 5
floats: 7
floats: 5
floats: 1
floats: 1
floats: 1
floats: 1
floats: 1
}
}
node {
input: "path_length1_output0"
output: "path_length1_Y0"
name: "path_length1_LabelEncoder"
op_type: "LabelEncoder"
domain: "ai.onnx.ml"
attribute {
name: "keys_int64s"
type: INTS
ints: 2
ints: 5
ints: 9
ints: 10
ints: 12
ints: 13
ints: 15
ints: 17
ints: 18
ints: 22
ints: 23
ints: 26
ints: 27
ints: 29
ints: 30
ints: 32
ints: 34
ints: 36
ints: 37
ints: 39
ints: 45
ints: 46
ints: 48
ints: 49
ints: 52
ints: 53
ints: 55
ints: 56
ints: 60
ints: 61
ints: 62
ints: 65
ints: 66
ints: 68
ints: 69
ints: 72
ints: 73
ints: 77
ints: 78
ints: 79
ints: 81
ints: 82
}
attribute {
name: "values_floats"
type: FLOATS
floats: 3
floats: 5
floats: 8
floats: 8
floats: 8
floats: 8
floats: 7
floats: 8
floats: 8
floats: 7
floats: 7
floats: 8
floats: 8
floats: 8
floats: 8
floats: 6
floats: 7
floats: 8
floats: 8
floats: 3
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 8
floats: 7
floats: 8
floats: 8
floats: 8
floats: 8
floats: 6
floats: 6
floats: 8
floats: 8
floats: 7
floats: 7
floats: 7
}
}
node {
input: "path_length2_output0"
output: "path_length2_Y0"
name: "path_length2_LabelEncoder"
op_type: "LabelEncoder"
domain: "ai.onnx.ml"
attribute {
name: "keys_int64s"
type: INTS
ints: 7
ints: 8
ints: 10
ints: 11
ints: 14
ints: 15
ints: 17
ints: 18
ints: 22
ints: 23
ints: 25
ints: 26
ints: 29
ints: 30
ints: 31
ints: 36
ints: 37
ints: 38
ints: 39
ints: 40
ints: 43
ints: 44
ints: 47
ints: 48
ints: 50
ints: 53
ints: 54
ints: 56
ints: 57
ints: 62
ints: 63
ints: 65
ints: 68
ints: 69
ints: 71
ints: 72
ints: 74
ints: 76
ints: 77
ints: 79
ints: 80
}
attribute {
name: "values_floats"
type: FLOATS
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: 8
floats: 8
floats: 7
floats: 6
floats: 5
floats: 5
floats: 5
floats: 6
floats: 6
floats: 6
floats: 8
floats: 8
floats: 8
floats: 8
floats: 6
floats: 6
floats: 6
floats: 8
floats: 8
floats: 8
floats: 8
floats: 5
floats: 6
floats: 6
floats: 4
floats: 4
}
}
node {
input: "node_sample0_Y02"
input: "path_length0_Reshapecst"
output: "node_sample0_reshaped0"
name: "node_sample0_Reshape"
op_type: "Reshape"
domain: ""
attribute {
name: "allowzero"
type: INT
i: 0
}
}
node {
input: "path_length0_Y0"
input: "path_length0_Reshapecst"
output: "path_length0_reshaped0"
name: "path_length0_Reshape"
op_type: "Reshape"
domain: ""
attribute {
name: "allowzero"
type: INT
i: 0
}
}
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"
domain: ""
attribute {
name: "allowzero"
type: INT
i: 0
}
}
node {
input: "node_sample2_Y02"
input: "path_length0_Reshapecst"
output: "node_sample2_reshaped0"
name: "node_sample2_Reshape"
op_type: "Reshape"
domain: ""
attribute {
name: "allowzero"
type: INT
i: 0
}
}
node {
input: "path_length1_Y0"
input: "path_length0_Reshapecst"
output: "path_length1_reshaped0"
name: "path_length1_Reshape"
op_type: "Reshape"
domain: ""
attribute {
name: "allowzero"
type: INT
i: 0
}
}
node {
input: "path_length2_Y0"
input: "path_length0_Reshapecst"
output: "path_length2_reshaped0"
name: "path_length2_Reshape"
op_type: "Reshape"
domain: ""
attribute {
name: "allowzero"
type: INT
i: 0
}
}
node {
input: "eq2_0_C0"
output: "eq2_0_output0"
name: "eq2_0_Cast"
op_type: "Cast"
domain: ""
attribute {
name: "to"
type: INT
i: 1
}
}
node {
input: "plus2_0_C0"
output: "plus2_0_output0"
name: "plus2_0_Cast"
op_type: "Cast"
domain: ""
attribute {
name: "to"
type: INT
i: 1
}
}
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"
domain: ""
attribute {
name: "to"
type: INT
i: 1
}
}
node {
input: "eq2_2_C0"
output: "eq2_2_output0"
name: "eq2_2_Cast"
op_type: "Cast"
domain: ""
attribute {
name: "to"
type: INT
i: 1
}
}
node {
input: "plus2_1_C0"
output: "plus2_1_output0"
name: "plus2_1_Cast"
op_type: "Cast"
domain: ""
attribute {
name: "to"
type: INT
i: 1
}
}
node {
input: "plus2_2_C0"
output: "plus2_2_output0"
name: "plus2_2_Cast"
op_type: "Cast"
domain: ""
attribute {
name: "to"
type: INT
i: 1
}
}
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"
domain: ""
attribute {
name: "to"
type: INT
i: 7
}
}
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
}
}
}
}
}
}
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 --> {'': 7, 'ai.onnx.ml': 2} 91
target: 8 --> {'': 8, 'ai.onnx.ml': 2} 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 --> {'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 --> {'': 20, 'ai.onnx.ml': 2} 91
target: 21 --> {'ai.onnx.ml': 2, '': 21} 91
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1516: 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}.")
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 --> {'': 13, 'ai.onnx.ml': 2} 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 --> {'': 14, 'ai.onnx.ml': 2} 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 --> {'': 15, 'ai.onnx.ml': 3} 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 --> {'': 17, 'ai.onnx.ml': 3} 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 --> {'': 18, 'ai.onnx.ml': 3} 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 --> {'': 19, 'ai.onnx.ml': 3} 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 --> {'': 20, 'ai.onnx.ml': 2} 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 --> {'': 21, 'ai.onnx.ml': 3} 91
try target_opset: {'': 22, 'ai.onnx.ml': 1}
/home/xadupre/github/sklearn-onnx/skl2onnx/common/_topology.py:1516: 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:1516: 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}.")
Total running time of the script: (0 minutes 1.416 seconds)