TreeEnsembleClassifier - 1 vs 3

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