ai.onnx.ml - TreeEnsembleRegressor#
TreeEnsembleRegressor - 3 (ai.onnx.ml)#
Version
domain: ai.onnx.ml
since_version: 3
function: False
support_level: SupportType.COMMON
shape inference: True
This version of the operator has been available since version 3 of domain ai.onnx.ml.
Summary
Tree Ensemble regressor. Returns the regressed values for each input in N.
All args with nodes_ are fields of a tuple of tree nodes, and it is assumed they are the same length, and an index i will decode the tuple across these inputs. Each node id can appear only once for each tree id.
All fields prefixed with target_ are tuples of votes at the leaves.
A leaf may have multiple votes, where each vote is weighted by the associated target_weights index.
All fields ending with <i>_as_tensor</i> can be used instead of the same parameter without the suffix if the element type is double and not float. All trees must have their node ids start at 0 and increment by 1.
Mode enum is BRANCH_LEQ, BRANCH_LT, BRANCH_GTE, BRANCH_GT, BRANCH_EQ, BRANCH_NEQ, LEAF
Attributes
aggregate_function: Defines how to aggregate leaf values within a target. <br>One of ‘AVERAGE,’ ‘SUM,’ ‘MIN,’ ‘MAX.’ Default value is
'SUM'
.base_values: Base values for classification, added to final class score; the size must be the same as the classes or can be left unassigned (assumed 0)
base_values_as_tensor: Base values for classification, added to final class score; the size must be the same as the classes or can be left unassigned (assumed 0)
n_targets: The total number of targets.
nodes_falsenodeids: Child node if expression is false
nodes_featureids: Feature id for each node.
nodes_hitrates: Popularity of each node, used for performance and may be omitted.
nodes_hitrates_as_tensor: Popularity of each node, used for performance and may be omitted.
nodes_missing_value_tracks_true: For each node, define what to do in the presence of a NaN: use the ‘true’ (if the attribute value is 1) or ‘false’ (if the attribute value is 0) branch based on the value in this array.<br>This attribute may be left undefined and the defalt value is false (0) for all nodes.
nodes_modes: The node kind, that is, the comparison to make at the node. There is no comparison to make at a leaf node.<br>One of ‘BRANCH_LEQ’, ‘BRANCH_LT’, ‘BRANCH_GTE’, ‘BRANCH_GT’, ‘BRANCH_EQ’, ‘BRANCH_NEQ’, ‘LEAF’
nodes_nodeids: Node id for each node. Node ids must restart at zero for each tree and increase sequentially.
nodes_treeids: Tree id for each node.
nodes_truenodeids: Child node if expression is true
nodes_values: Thresholds to do the splitting on for each node.
nodes_values_as_tensor: Thresholds to do the splitting on for each node.
post_transform: Indicates the transform to apply to the score. <br>One of ‘NONE,’ ‘SOFTMAX,’ ‘LOGISTIC,’ ‘SOFTMAX_ZERO,’ or ‘PROBIT’ Default value is
'NONE'
.target_ids: The index of the target that each weight is for
target_nodeids: The node id of each weight
target_treeids: The id of the tree that each node is in.
target_weights: The weight for each target
target_weights_as_tensor: The weight for each target
Inputs
X (heterogeneous) - T: Input of shape [N,F]
Outputs
Y (heterogeneous) - tensor(float): N classes
Type Constraints
T in ( tensor(double), tensor(float), tensor(int32), tensor(int64) ): The input type must be a tensor of a numeric type.
Examples
Differences
0 | 0 | Tree Ensemble regressor. Returns the regressed values for each input in N. | Tree Ensemble regressor. Returns the regressed values for each input in N. |
1 | 1 |
|
|
2 | 2 | All args with nodes_ are fields of a tuple of tree nodes, and | All args with nodes_ are fields of a tuple of tree nodes, and |
3 | 3 | it is assumed they are the same length, and an index i will decode the | it is assumed they are the same length, and an index i will decode the |
4 | 4 | tuple across these inputs. Each node id can appear only once | tuple across these inputs. Each node id can appear only once |
5 | 5 | for each tree id. | for each tree id. |
6 | 6 |
|
|
7 | 7 | All fields prefixed with target_ are tuples of votes at the leaves. | All fields prefixed with target_ are tuples of votes at the leaves. |
8 | 8 |
|
|
9 | 9 | A leaf may have multiple votes, where each vote is weighted by | A leaf may have multiple votes, where each vote is weighted by |
10 | 10 | the associated target_weights index. | the associated target_weights index. |
11 | 11 |
|
|
12 | All fields ending with _as_tensor can be used instead of the | ||
13 | same parameter without the suffix if the element type is double and not float. | ||
12 | 14 | All trees must have their node ids start at 0 and increment by 1. | All trees must have their node ids start at 0 and increment by 1. |
13 | 15 |
|
|
14 | 16 | Mode enum is BRANCH_LEQ, BRANCH_LT, BRANCH_GTE, BRANCH_GT, BRANCH_EQ, BRANCH_NEQ, LEAF | Mode enum is BRANCH_LEQ, BRANCH_LT, BRANCH_GTE, BRANCH_GT, BRANCH_EQ, BRANCH_NEQ, LEAF |
15 | 17 |
|
|
16 | 18 | **Attributes** | **Attributes** |
17 | 19 |
|
|
18 | 20 | * **aggregate_function**: | * **aggregate_function**: |
19 | 21 | Defines how to aggregate leaf values within a target. | Defines how to aggregate leaf values within a target. |
20 | 22 | 'AVERAGE,' 'SUM,' 'MIN,' 'MAX.' Default value is 'SUM'. | 'AVERAGE,' 'SUM,' 'MIN,' 'MAX.' Default value is 'SUM'. |
21 | 23 | * **base_values**: | * **base_values**: |
22 | 24 | Base values for classification, added to final class score; the size | Base values for classification, added to final class score; the size |
23 | 25 | must be the same as the classes or can be left unassigned (assumed | must be the same as the classes or can be left unassigned (assumed |
24 | 26 | 0) | 0) |
27 | * **base_values_as_tensor**: | ||
28 | Base values for classification, added to final class score; the size | ||
29 | must be the same as the classes or can be left unassigned (assumed | ||
30 | 0) | ||
25 | 31 | * **n_targets**: | * **n_targets**: |
26 | 32 | The total number of targets. | The total number of targets. |
27 | 33 | * **nodes_falsenodeids**: | * **nodes_falsenodeids**: |
28 | 34 | Child node if expression is false | Child node if expression is false |
29 | 35 | * **nodes_featureids**: | * **nodes_featureids**: |
30 | 36 | Feature id for each node. | Feature id for each node. |
31 | 37 | * **nodes_hitrates**: | * **nodes_hitrates**: |
32 | 38 | Popularity of each node, used for performance and may be omitted. | Popularity of each node, used for performance and may be omitted. |
39 | * **nodes_hitrates_as_tensor**: | ||
40 | Popularity of each node, used for performance and may be omitted. | ||
33 | 41 | * **nodes_missing_value_tracks_true**: | * **nodes_missing_value_tracks_true**: |
34 | 42 | For each node, define what to do in the presence of a NaN: use the | For each node, define what to do in the presence of a NaN: use the |
35 | 43 | 'true' (if the attribute value is 1) or 'false' (if the attribute | 'true' (if the attribute value is 1) or 'false' (if the attribute |
36 | 44 | value is 0) branch based on the value in this array. | value is 0) branch based on the value in this array. |
37 | 45 | attribute may be left undefined and the defalt value is false (0) | attribute may be left undefined and the defalt value is false (0) |
38 | 46 | for all nodes. | for all nodes. |
39 | 47 | * **nodes_modes**: | * **nodes_modes**: |
40 | 48 | The node kind, that is, the comparison to make at the node. There is | The node kind, that is, the comparison to make at the node. There is |
41 | 49 | no comparison to make at a leaf node. | no comparison to make at a leaf node. |
42 | 50 | 'BRANCH_LT', 'BRANCH_GTE', 'BRANCH_GT', 'BRANCH_EQ', 'BRANCH_NEQ', | 'BRANCH_LT', 'BRANCH_GTE', 'BRANCH_GT', 'BRANCH_EQ', 'BRANCH_NEQ', |
43 | 51 | 'LEAF' | 'LEAF' |
44 | 52 | * **nodes_nodeids**: | * **nodes_nodeids**: |
45 | 53 | Node id for each node. Node ids must restart at zero for each tree | Node id for each node. Node ids must restart at zero for each tree |
46 | 54 | and increase sequentially. | and increase sequentially. |
47 | 55 | * **nodes_treeids**: | * **nodes_treeids**: |
48 | 56 | Tree id for each node. | Tree id for each node. |
49 | 57 | * **nodes_truenodeids**: | * **nodes_truenodeids**: |
50 | 58 | Child node if expression is true | Child node if expression is true |
51 | 59 | * **nodes_values**: | * **nodes_values**: |
52 | 60 | Thresholds to do the splitting on for each node. | Thresholds to do the splitting on for each node. |
61 | * **nodes_values_as_tensor**: | ||
62 | Thresholds to do the splitting on for each node. | ||
53 | 63 | * **post_transform**: | * **post_transform**: |
54 | 64 | Indicates the transform to apply to the score. | Indicates the transform to apply to the score. |
55 | 65 | 'SOFTMAX,' 'LOGISTIC,' 'SOFTMAX_ZERO,' or 'PROBIT' Default value is 'NONE'. | 'SOFTMAX,' 'LOGISTIC,' 'SOFTMAX_ZERO,' or 'PROBIT' Default value is 'NONE'. |
56 | 66 | * **target_ids**: | * **target_ids**: |
57 | 67 | The index of the target that each weight is for | The index of the target that each weight is for |
58 | 68 | * **target_nodeids**: | * **target_nodeids**: |
59 | 69 | The node id of each weight | The node id of each weight |
60 | 70 | * **target_treeids**: | * **target_treeids**: |
61 | 71 | The id of the tree that each node is in. | The id of the tree that each node is in. |
62 | 72 | * **target_weights**: | * **target_weights**: |
63 | 73 | The weight for each target | The weight for each target |
74 | * **target_weights_as_tensor**: | ||
75 | The weight for each target | ||
64 | 76 |
|
|
65 | 77 | **Inputs** | **Inputs** |
66 | 78 |
|
|
67 | 79 | * **X** (heterogeneous) - **T**: | * **X** (heterogeneous) - **T**: |
68 | 80 | Input of shape [N,F] | Input of shape [N,F] |
69 | 81 |
|
|
70 | 82 | **Outputs** | **Outputs** |
71 | 83 |
|
|
72 | 84 | * **Y** (heterogeneous) - **tensor(float)**: | * **Y** (heterogeneous) - **tensor(float)**: |
73 | 85 | N classes | N classes |
74 | 86 |
|
|
75 | 87 | **Type Constraints** | **Type Constraints** |
76 | 88 |
|
|
77 | 89 | * **T** in ( | * **T** in ( |
78 | 90 | tensor(double), | tensor(double), |
79 | 91 | tensor(float), | tensor(float), |
80 | 92 | tensor(int32), | tensor(int32), |
81 | 93 | tensor(int64) | tensor(int64) |
82 | 94 | ): | ): |
83 | 95 | The input type must be a tensor of a numeric type. | The input type must be a tensor of a numeric type. |
TreeEnsembleRegressor - 1 (ai.onnx.ml)#
Version
domain: ai.onnx.ml
since_version: 1
function: False
support_level: SupportType.COMMON
shape inference: False
This version of the operator has been available since version 1 of domain ai.onnx.ml.
Summary
Tree Ensemble regressor. Returns the regressed values for each input in N.
All args with nodes_ are fields of a tuple of tree nodes, and it is assumed they are the same length, and an index i will decode the tuple across these inputs. Each node id can appear only once for each tree id.
All fields prefixed with target_ are tuples of votes at the leaves.
A leaf may have multiple votes, where each vote is weighted by the associated target_weights index.
All trees must have their node ids start at 0 and increment by 1.
Mode enum is BRANCH_LEQ, BRANCH_LT, BRANCH_GTE, BRANCH_GT, BRANCH_EQ, BRANCH_NEQ, LEAF
Attributes
aggregate_function: Defines how to aggregate leaf values within a target. <br>One of ‘AVERAGE,’ ‘SUM,’ ‘MIN,’ ‘MAX.’ Default value is
'SUM'
.base_values: Base values for classification, added to final class score; the size must be the same as the classes or can be left unassigned (assumed 0)
n_targets: The total number of targets.
nodes_falsenodeids: Child node if expression is false
nodes_featureids: Feature id for each node.
nodes_hitrates: Popularity of each node, used for performance and may be omitted.
nodes_missing_value_tracks_true: For each node, define what to do in the presence of a NaN: use the ‘true’ (if the attribute value is 1) or ‘false’ (if the attribute value is 0) branch based on the value in this array.<br>This attribute may be left undefined and the defalt value is false (0) for all nodes.
nodes_modes: The node kind, that is, the comparison to make at the node. There is no comparison to make at a leaf node.<br>One of ‘BRANCH_LEQ’, ‘BRANCH_LT’, ‘BRANCH_GTE’, ‘BRANCH_GT’, ‘BRANCH_EQ’, ‘BRANCH_NEQ’, ‘LEAF’
nodes_nodeids: Node id for each node. Node ids must restart at zero for each tree and increase sequentially.
nodes_treeids: Tree id for each node.
nodes_truenodeids: Child node if expression is true
nodes_values: Thresholds to do the splitting on for each node.
post_transform: Indicates the transform to apply to the score. <br>One of ‘NONE,’ ‘SOFTMAX,’ ‘LOGISTIC,’ ‘SOFTMAX_ZERO,’ or ‘PROBIT’ Default value is
'NONE'
.target_ids: The index of the target that each weight is for
target_nodeids: The node id of each weight
target_treeids: The id of the tree that each node is in.
target_weights: The weight for each target
Inputs
X (heterogeneous) - T: Input of shape [N,F]
Outputs
Y (heterogeneous) - tensor(float): N classes
Type Constraints
T in ( tensor(double), tensor(float), tensor(int32), tensor(int64) ): The input type must be a tensor of a numeric type.