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.