ai.onnx.ml - TreeEnsembleClassifier#
TreeEnsembleClassifier - 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 classifier. Returns the top class for each of N inputs.
The attributes named ‘nodes_X’ form a sequence of tuples, associated by index into the sequences, which must all be of equal length. These tuples define the nodes.
Similarly, all fields prefixed with ‘class_’ are tuples of votes at the leaves. A leaf may have multiple votes, where each vote is weighted by the associated class_weights index.
One and only one of classlabels_strings or classlabels_int64s will be defined. The class_ids are indices into this list. 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.
Attributes
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)
class_ids: The index of the class list that each weight is for.
class_nodeids: node id that this weight is for.
class_treeids: The id of the tree that this node is in.
class_weights: The weight for the class in class_id.
class_weights_as_tensor: The weight for the class in class_id.
classlabels_int64s: Class labels if using integer labels.<br>One and only one of the ‘classlabels_*’ attributes must be defined.
classlabels_strings: Class labels if using string labels.<br>One and only one of the ‘classlabels_*’ attributes must be defined.
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 missing value: if a value is missing (NaN), use the ‘true’ or ‘false’ 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. Ids may restart at zero for each tree, but it not required to.
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.’
Inputs
X (heterogeneous) - T1: Input of shape [N,F]
Outputs
Y (heterogeneous) - T2: N, Top class for each point
Z (heterogeneous) - tensor(float): The class score for each class, for each point, a tensor of shape [N,E].
Type Constraints
T1 in ( tensor(double), tensor(float), tensor(int32), tensor(int64) ): The input type must be a tensor of a numeric type.
T2 in ( tensor(int64), tensor(string) ): The output type will be a tensor of strings or integers, depending on which of the classlabels_* attributes is used.
Examples
TreeEnsembleClassifier - 1 (ai.onnx.ml)#
Version
domain: ai.onnx.ml
since_version: 1
function: False
support_level: SupportType.COMMON
shape inference: True
This version of the operator has been available since version 1 of domain ai.onnx.ml.
Summary
Tree Ensemble classifier. Returns the top class for each of N inputs.
The attributes named ‘nodes_X’ form a sequence of tuples, associated by index into the sequences, which must all be of equal length. These tuples define the nodes.
Similarly, all fields prefixed with ‘class_’ are tuples of votes at the leaves. A leaf may have multiple votes, where each vote is weighted by the associated class_weights index.
One and only one of classlabels_strings or classlabels_int64s will be defined. The class_ids are indices into this list.
Attributes
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)
class_ids: The index of the class list that each weight is for.
class_nodeids: node id that this weight is for.
class_treeids: The id of the tree that this node is in.
class_weights: The weight for the class in class_id.
classlabels_int64s: Class labels if using integer labels.<br>One and only one of the ‘classlabels_*’ attributes must be defined.
classlabels_strings: Class labels if using string labels.<br>One and only one of the ‘classlabels_*’ attributes must be defined.
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 missing value: if a value is missing (NaN), use the ‘true’ or ‘false’ 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. Ids may restart at zero for each tree, but it not required to.
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.’
Inputs
X (heterogeneous) - T1: Input of shape [N,F]
Outputs
Y (heterogeneous) - T2: N, Top class for each point
Z (heterogeneous) - tensor(float): The class score for each class, for each point, a tensor of shape [N,E].
Type Constraints
T1 in ( tensor(double), tensor(float), tensor(int32), tensor(int64) ): The input type must be a tensor of a numeric type.
T2 in ( tensor(int64), tensor(string) ): The output type will be a tensor of strings or integers, depending on which of the classlabels_* attributes is used.