TreeEnsembleClassifier - 1 vs 5

Next section compares an older to a newer version of the same operator after both definition are converted into markdown text. Green means an addition to the newer version, red means a deletion. Anything else is unchanged.

TreeEnsembleClassifier1 → TreeEnsembleClassifier5 RENAMED
@@ -1 +1 @@
1
+ This operator is DEPRECATED. Please use TreeEnsemble with provides similar functionality.
2
+ In order to determine the top class, the ArgMax node can be applied to the output of TreeEnsemble.
3
+ To encode class labels, use a LabelEncoder operator.
1
- Tree Ensemble classifier. Returns the top class for each of N inputs.<br>
4
+ Tree Ensemble classifier. Returns the top class for each of N inputs.<br>
2
5
  The attributes named 'nodes_X' form a sequence of tuples, associated by
3
6
  index into the sequences, which must all be of equal length. These tuples
4
7
  define the nodes.<br>
5
8
  Similarly, all fields prefixed with 'class_' are tuples of votes at the leaves.
6
9
  A leaf may have multiple votes, where each vote is weighted by
7
10
  the associated class_weights index.<br>
8
11
  One and only one of classlabels_strings or classlabels_int64s
9
12
  will be defined. The class_ids are indices into this list.
13
+ All fields ending with <i>_as_tensor</i> can be used instead of the
14
+ same parameter without the suffix if the element type is double and not float.
10
15
  ### Attributes
11
16
  * **base_values - FLOATS** :
17
+
18
+ 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)
19
+
20
+ * **base_values_as_tensor - TENSOR** :
12
21
  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)
13
22
  * **class_ids - INTS** :
14
23
  The index of the class list that each weight is for.
15
24
  * **class_nodeids - INTS** :
16
25
  node id that this weight is for.
17
26
  * **class_treeids - INTS** :
18
27
  The id of the tree that this node is in.
19
28
  * **class_weights - FLOATS** :
29
+
30
+ The weight for the class in class_id.
31
+
32
+ * **class_weights_as_tensor - TENSOR** :
20
33
  The weight for the class in class_id.
21
34
  * **classlabels_int64s - INTS** :
22
35
  Class labels if using integer labels.<br>One and only one of the 'classlabels_*' attributes must be defined.
23
36
  * **classlabels_strings - STRINGS** :
24
37
  Class labels if using string labels.<br>One and only one of the 'classlabels_*' attributes must be defined.
25
38
  * **nodes_falsenodeids - INTS** :
26
39
  Child node if expression is false.
27
40
  * **nodes_featureids - INTS** :
28
41
  Feature id for each node.
29
42
  * **nodes_hitrates - FLOATS** :
43
+
44
+ Popularity of each node, used for performance and may be omitted.
45
+
46
+ * **nodes_hitrates_as_tensor - TENSOR** :
30
47
  Popularity of each node, used for performance and may be omitted.
31
48
  * **nodes_missing_value_tracks_true - INTS** :
32
49
  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 default value is false (0) for all nodes.
33
50
  * **nodes_modes - STRINGS** :
34
51
  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'
35
52
  * **nodes_nodeids - INTS** :
36
53
  Node id for each node. Ids may restart at zero for each tree, but it not required to.
37
54
  * **nodes_treeids - INTS** :
38
55
  Tree id for each node.
39
56
  * **nodes_truenodeids - INTS** :
40
57
  Child node if expression is true.
41
58
  * **nodes_values - FLOATS** :
59
+
60
+ Thresholds to do the splitting on for each node.
61
+
62
+ * **nodes_values_as_tensor - TENSOR** :
42
63
  Thresholds to do the splitting on for each node.
43
64
  * **post_transform - STRING** (default is 'NONE'):
44
65
  Indicates the transform to apply to the score. <br> One of 'NONE,' 'SOFTMAX,' 'LOGISTIC,' 'SOFTMAX_ZERO,' or 'PROBIT.'
45
66
  ### Inputs
46
67
  - **X** (heterogeneous) - **T1**:
47
68
  Input of shape [N,F]
48
69
  ### Outputs
49
70
  - **Y** (heterogeneous) - **T2**:
50
71
  N, Top class for each point
51
72
  - **Z** (heterogeneous) - **tensor(float)**:
52
73
  The class score for each class, for each point, a tensor of shape [N,E].
53
74
  ### Type Constraints
54
75
  * **T1** in ( tensor(double), tensor(float), tensor(int32), tensor(int64) ):
55
76
  The input type must be a tensor of a numeric type.
56
77
  * **T2** in ( tensor(int64), tensor(string) ):
57
78
  The output type will be a tensor of strings or integers, depending on which of the classlabels_* attributes is used.