where denotes the ratio of the number of instances belonging to class in instance set to the total set of instances.
We set as the attribute selection criteria in the decision tree classification. The range of
If the conditional attribute has a degree of certainty of 1 for the entire set of instances, indicating that the conditional attribute can definitely divide the instance set. If we have a maximum indefinite partition of the instance set in conditional attribute Therefore, the smaller the value of the better the attributes divide the instance set. In the attribute selection algorithm, the condition attribute which enables to obtain the minimum value, is selected as the branch attribute.
1. Basic idea and description of the algorithm
In the process of constructing the decision tree, branch attribute should be able to cover as many instances as possible, reducing the number of instances to be classified. This effectively reduces the whole branch of the tree and achieves the purpose of simplification. The attributes of min satisfy the above conditions, and the contribution of each partition to the entire set of decision instances is considered more comprehensively by using prok. We select the best attribute from the available set of attributes to create the branch, and the attributes that have been used to branch can no longer be selected.
The basic description of the algorithm is as follows:
(1)For each condition attribute, calculate
(2)Compute the degree of certainty of condition attribute classifying the instance into class and the ratio of the number of instances with decision attribute to the total number of instances;
(3)Compute select the attribute that satisfies min the branch attribute, then divide the instance set as
(4)Determine whether the instances contained in belong to the same category. If so, the corresponding node is a leaf node; otherwise, return to (1) and repeat the first three steps. The attributes that have been used to branch are no longer selected.
The pseudocode is described in Algorithm 3.1.
Algorithm 3.1 Procedure buildTree(TreeNode,U)
2. Algorithm application examples
We use the data in [29] (see Tab. 3.3) to illustrate the flow of the proposed classification attribute selection algorithm. First, the data of the source data table are expressed by dynamic fuzzy mathematics theory. The DFDT is then generated by classifying the training set according to the steps of the algorithm.
The data in Tab. 3.4 are classified according to the algorithm described in Section 3.2.4.1. For convenience, replaces Outlook = Sunny, replaces Temperature = Hot, replaces Humidity = High, replaces Wind = Strong, replaces PlayTennis = Yes, and denotes the instance set in Tab. 3.4. We substitute instances with the numbers in the instance set to simplify the representation (same below). That is, The process is as follows.
First, the attribute set is divided:
The degree of certainty of the classification of each attribute on is then calculated:
Similarly,
We select attribute as the first branch point, that is, the root node.
As the instances in belong to the same class, the branch is ended. Look at the other classes.
Therefore, when the branch attribute is and the instances in are in the same class. Thus, the branch is ended.
Similarly, when
Hence, when the branch attribute is and the instances in are in the same class. Again, the branch is ended.
After constructing the decision tree above, we can see that all leaf nodes corresponding to the instance set belong to the same class. This completes the tree structure. The whole instance set is classified and the constructed decision tree is shown in Fig. 3.4.
A test attribute with multiple attribute values may have two or more branches per internal node. A DFDT with only two branches per internal node is called a Dynamic Fuzzy Binary Decision Tree (DFBDT). There are a number of algorithms that can create binary decision trees. For example, the CRAT algorithm uses entropy to select the best splitting attributes and criteria and produces only two child nodes where each subclass has children [30]. Sun and Zhang [31] described a binary decision tree generation algorithm based on attribute-value information gain optimization and a method of transforming multi-valued attributes into binary attributes.
DFBDT is a special form of DFDT and has a slightly different tree structure. By introducing, the relationship between the corresponding subset of the nodes of the decision tree can be analysed. At the same time, each layer of the decision tree corresponding to the instance set is divided according to a certain relationship. DFBDT is illustrated in Fig. 3.5.
In DFDT, there is a partial ordering relationship between the instance set of upper-level nodes and the directly lower nodes. In DFBDT, the instance set contained in Attribute B = VB and its two sub-nodes is {{1, 4, 5, 6, 7, 8, 9, 10, 11}, {1, 4, 6, 8, 9, 10}, {5,7, 11}}. The elements not only meet the partial order relationship, but also the union of {1, 4, 6, 8, 9, 10} and {5, 7, 11} also equals {1, 4, 5, 6, 7, 8, 9, 10, 11}. This obeys the definition of a semi-lattice. As with DFDT, the branch attribute also divides the entire set of instances. To study the partition of the object domain, a partition lattice has been proposed [32] and was introduced to a decision tree to study the partitioning of the instance set.
A DFDT can be denoted as
where denotes the instance set, is the attribute set, subsets are the condition attribute and decision attribute, respec tively, and denotes the range of attribute.
is a mapping that specifies the attribute values for each object in instance set
Definition 3.2 Given a finite universe U, π = {Xi|1 ≤ i ≤ m} is a division of U if π satisfies the following conditions [33]:
Xi is not empty;
Xi⋂, i ⋂ j;
We can define a partial order relationship to represent the size between partitions. Suppose π1, π2 are two divisions of U. If π1 ≤ π2, any partition of π1 is contained in a certain partition of π2. That is, π1 ≤ π2 if and only if, π1≤ π2 such that Xi ∈ π1 π1 Xj