(l-onnx-docai-onnx-ml-TreeEnsembleRegressor)= # ai.onnx.ml - TreeEnsembleRegressor (l-onnx-opai-onnx-ml-treeensembleregressor-5)= ## TreeEnsembleRegressor - 5 (ai.onnx.ml) ### Version - **name**: [TreeEnsembleRegressor (GitHub)](https://github.com/onnx/onnx/blob/main/docs/Operators-ml.md#ai.onnx.ml.TreeEnsembleRegressor) - **domain**: `ai.onnx.ml` - **since_version**: `5` - **function**: `False` - **support_level**: `SupportType.COMMON` - **shape inference**: `False` This version of the operator has been deprecated **since version 5 of domain ai.onnx.ml**. ### Summary This operator is DEPRECATED. Please use TreeEnsemble instead which provides the same functionality.<br> Tree Ensemble regressor. Returns the regressed values for each input in N.<br> 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.<br> All fields prefixed with target_ are tuples of votes at the leaves.<br> A leaf may have multiple votes, where each vote is weighted by the associated target_weights index.<br> 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.<br> Mode enum is BRANCH_LEQ, BRANCH_LT, BRANCH_GTE, BRANCH_GT, BRANCH_EQ, BRANCH_NEQ, LEAF ### Attributes * **aggregate_function - STRING** (default is `SUM`): Defines how to aggregate leaf values within a target. <br>One of 'AVERAGE,' 'SUM,' 'MIN,' 'MAX.' * **base_values - FLOATS** : Base values for regression, added to final prediction after applying aggregate_function; the size must be the same as the classes or can be left unassigned (assumed 0) * **base_values_as_tensor - TENSOR** : Base values for regression, added to final prediction after applying aggregate_function; the size must be the same as the classes or can be left unassigned (assumed 0) * **n_targets - INT** : The total number of targets. * **nodes_falsenodeids - INTS** : Child node if expression is false * **nodes_featureids - INTS** : Feature id for each node. * **nodes_hitrates - FLOATS** : Popularity of each node, used for performance and may be omitted. * **nodes_hitrates_as_tensor - TENSOR** : Popularity of each node, used for performance and may be omitted. * **nodes_missing_value_tracks_true - INTS** : 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 default value is false (0) for all nodes. * **nodes_modes - STRINGS** : 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 - INTS** : Node id for each node. Node ids must restart at zero for each tree and increase sequentially. * **nodes_treeids - INTS** : Tree id for each node. * **nodes_truenodeids - INTS** : Child node if expression is true * **nodes_values - FLOATS** : Thresholds to do the splitting on for each node. * **nodes_values_as_tensor - TENSOR** : Thresholds to do the splitting on for each node. * **post_transform - STRING** (default is `NONE`): Indicates the transform to apply to the score. <br>One of 'NONE,' 'SOFTMAX,' 'LOGISTIC,' 'SOFTMAX_ZERO,' or 'PROBIT' * **target_ids - INTS** : The index of the target that each weight is for * **target_nodeids - INTS** : The node id of each weight * **target_treeids - INTS** : The id of the tree that each node is in. * **target_weights - FLOATS** : The weight for each target * **target_weights_as_tensor - 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. ```{toctree} text_diff_TreeEnsembleRegressor_3_5 ``` (l-onnx-opai-onnx-ml-treeensembleregressor-3)= ## TreeEnsembleRegressor - 3 (ai.onnx.ml) ### Version - **name**: [TreeEnsembleRegressor (GitHub)](https://github.com/onnx/onnx/blob/main/docs/Operators-ml.md#ai.onnx.ml.TreeEnsembleRegressor) - **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.<br> 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.<br> All fields prefixed with target_ are tuples of votes at the leaves.<br> A leaf may have multiple votes, where each vote is weighted by the associated target_weights index.<br> 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.<br> Mode enum is BRANCH_LEQ, BRANCH_LT, BRANCH_GTE, BRANCH_GT, BRANCH_EQ, BRANCH_NEQ, LEAF ### Attributes * **aggregate_function - STRING** (default is `SUM`): Defines how to aggregate leaf values within a target. <br>One of 'AVERAGE,' 'SUM,' 'MIN,' 'MAX.' * **base_values - FLOATS** : Base values for regression, added to final prediction after applying aggregate_function; the size must be the same as the classes or can be left unassigned (assumed 0) * **base_values_as_tensor - TENSOR** : Base values for regression, added to final prediction after applying aggregate_function; the size must be the same as the classes or can be left unassigned (assumed 0) * **n_targets - INT** : The total number of targets. * **nodes_falsenodeids - INTS** : Child node if expression is false * **nodes_featureids - INTS** : Feature id for each node. * **nodes_hitrates - FLOATS** : Popularity of each node, used for performance and may be omitted. * **nodes_hitrates_as_tensor - TENSOR** : Popularity of each node, used for performance and may be omitted. * **nodes_missing_value_tracks_true - INTS** : 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 default value is false (0) for all nodes. * **nodes_modes - STRINGS** : 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 - INTS** : Node id for each node. Node ids must restart at zero for each tree and increase sequentially. * **nodes_treeids - INTS** : Tree id for each node. * **nodes_truenodeids - INTS** : Child node if expression is true * **nodes_values - FLOATS** : Thresholds to do the splitting on for each node. * **nodes_values_as_tensor - TENSOR** : Thresholds to do the splitting on for each node. * **post_transform - STRING** (default is `NONE`): Indicates the transform to apply to the score. <br>One of 'NONE,' 'SOFTMAX,' 'LOGISTIC,' 'SOFTMAX_ZERO,' or 'PROBIT' * **target_ids - INTS** : The index of the target that each weight is for * **target_nodeids - INTS** : The node id of each weight * **target_treeids - INTS** : The id of the tree that each node is in. * **target_weights - FLOATS** : The weight for each target * **target_weights_as_tensor - 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. ```{toctree} text_diff_TreeEnsembleRegressor_1_5 text_diff_TreeEnsembleRegressor_1_3 ``` (l-onnx-opai-onnx-ml-treeensembleregressor-1)= ## TreeEnsembleRegressor - 1 (ai.onnx.ml) ### Version - **name**: [TreeEnsembleRegressor (GitHub)](https://github.com/onnx/onnx/blob/main/docs/Operators-ml.md#ai.onnx.ml.TreeEnsembleRegressor) - **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.<br> 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.<br> All fields prefixed with target_ are tuples of votes at the leaves.<br> A leaf may have multiple votes, where each vote is weighted by the associated target_weights index.<br> All trees must have their node ids start at 0 and increment by 1.<br> Mode enum is BRANCH_LEQ, BRANCH_LT, BRANCH_GTE, BRANCH_GT, BRANCH_EQ, BRANCH_NEQ, LEAF ### Attributes * **aggregate_function - STRING** (default is `SUM`): Defines how to aggregate leaf values within a target. <br>One of 'AVERAGE,' 'SUM,' 'MIN,' 'MAX.' * **base_values - FLOATS** : 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 - INT** : The total number of targets. * **nodes_falsenodeids - INTS** : Child node if expression is false * **nodes_featureids - INTS** : Feature id for each node. * **nodes_hitrates - FLOATS** : Popularity of each node, used for performance and may be omitted. * **nodes_missing_value_tracks_true - INTS** : 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 default value is false (0) for all nodes. * **nodes_modes - STRINGS** : 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 - INTS** : Node id for each node. Node ids must restart at zero for each tree and increase sequentially. * **nodes_treeids - INTS** : Tree id for each node. * **nodes_truenodeids - INTS** : Child node if expression is true * **nodes_values - FLOATS** : Thresholds to do the splitting on for each node. * **post_transform - STRING** (default is `NONE`): Indicates the transform to apply to the score. <br>One of 'NONE,' 'SOFTMAX,' 'LOGISTIC,' 'SOFTMAX_ZERO,' or 'PROBIT' * **target_ids - INTS** : The index of the target that each weight is for * **target_nodeids - INTS** : The node id of each weight * **target_treeids - INTS** : The id of the tree that each node is in. * **target_weights - FLOATS** : 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.