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.
|
1
|
+
Tree Ensemble classifier. Returns the top class for each of N inputs.
|
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.
|
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.
|
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.
|
12
10
|
**Attributes**
|
13
11
|
* **base_values**:
|
14
|
-
Base values for classification, added to final class score; the size
|
15
|
-
must be the same as the classes or can be left unassigned (assumed
|
16
|
-
0)
|
17
|
-
* **base_values_as_tensor**:
|
18
12
|
Base values for classification, added to final class score; the size
|
19
13
|
must be the same as the classes or can be left unassigned (assumed
|
20
14
|
0)
|
21
15
|
* **class_ids**:
|
22
16
|
The index of the class list that each weight is for.
|
23
17
|
* **class_nodeids**:
|
24
18
|
node id that this weight is for.
|
25
19
|
* **class_treeids**:
|
26
20
|
The id of the tree that this node is in.
|
27
21
|
* **class_weights**:
|
28
|
-
The weight for the class in class_id.
|
29
|
-
* **class_weights_as_tensor**:
|
30
22
|
The weight for the class in class_id.
|
31
23
|
* **classlabels_int64s**:
|
32
24
|
Class labels if using integer labels.<br>One and only one of the
|
33
25
|
'classlabels_*' attributes must be defined.
|
34
26
|
* **classlabels_strings**:
|
35
27
|
Class labels if using string labels.<br>One and only one of the
|
36
28
|
'classlabels_*' attributes must be defined.
|
37
29
|
* **nodes_falsenodeids**:
|
38
30
|
Child node if expression is false.
|
39
31
|
* **nodes_featureids**:
|
40
32
|
Feature id for each node.
|
41
33
|
* **nodes_hitrates**:
|
42
|
-
Popularity of each node, used for performance and may be omitted.
|
43
|
-
* **nodes_hitrates_as_tensor**:
|
44
34
|
Popularity of each node, used for performance and may be omitted.
|
45
35
|
* **nodes_missing_value_tracks_true**:
|
46
36
|
For each node, define what to do in the presence of a missing value:
|
47
37
|
if a value is missing (NaN), use the 'true' or 'false' branch based
|
48
38
|
on the value in this array.<br>This attribute may be left undefined,
|
49
39
|
and the defalt value is false (0) for all nodes.
|
50
40
|
* **nodes_modes**:
|
51
41
|
The node kind, that is, the comparison to make at the node. There is
|
52
42
|
no comparison to make at a leaf node.<br>One of 'BRANCH_LEQ',
|
53
43
|
'BRANCH_LT', 'BRANCH_GTE', 'BRANCH_GT', 'BRANCH_EQ', 'BRANCH_NEQ',
|
54
44
|
'LEAF'
|
55
45
|
* **nodes_nodeids**:
|
56
46
|
Node id for each node. Ids may restart at zero for each tree, but it
|
57
47
|
not required to.
|
58
48
|
* **nodes_treeids**:
|
59
49
|
Tree id for each node.
|
60
50
|
* **nodes_truenodeids**:
|
61
51
|
Child node if expression is true.
|
62
52
|
* **nodes_values**:
|
63
|
-
Thresholds to do the splitting on for each node.
|
64
|
-
* **nodes_values_as_tensor**:
|
65
53
|
Thresholds to do the splitting on for each node.
|
66
54
|
* **post_transform**:
|
67
55
|
Indicates the transform to apply to the score. <br> One of 'NONE,'
|
68
56
|
'SOFTMAX,' 'LOGISTIC,' 'SOFTMAX_ZERO,' or 'PROBIT.'
|
69
57
|
**Inputs**
|
70
58
|
* **X** (heterogeneous) - **T1**:
|
71
59
|
Input of shape [N,F]
|
72
60
|
**Outputs**
|
73
61
|
* **Y** (heterogeneous) - **T2**:
|
74
62
|
N, Top class for each point
|
75
63
|
* **Z** (heterogeneous) - **tensor(float)**:
|
76
64
|
The class score for each class, for each point, a tensor of shape
|
77
65
|
[N,E].
|
78
66
|
**Type Constraints**
|
79
67
|
* **T1** in (
|
80
68
|
tensor(double),
|
81
69
|
tensor(float),
|
82
70
|
tensor(int32),
|
83
71
|
tensor(int64)
|
84
72
|
):
|
85
73
|
The input type must be a tensor of a numeric type.
|
86
74
|
* **T2** in (
|
87
75
|
tensor(int64),
|
88
76
|
tensor(string)
|
89
77
|
):
|
90
78
|
The output type will be a tensor of strings or integers, depending
|
91
79
|
on which of the classlabels_* attributes is used.
|