Decision tree learning is a supervised learning approach used in
statistics
Statistics (from German language, German: ''wikt:Statistik#German, Statistik'', "description of a State (polity), state, a country") is the discipline that concerns the collection, organization, analysis, interpretation, and presentation of ...
,
data mining and
machine learning
Machine learning (ML) is a field of inquiry devoted to understanding and building methods that 'learn', that is, methods that leverage data to improve performance on some set of tasks. It is seen as a part of artificial intelligence.
Machine ...
. In this formalism, a classification or regression
decision tree
A decision tree is a decision support tool that uses a tree-like model of decisions and their possible consequences, including chance event outcomes, resource costs, and utility. It is one way to display an algorithm that only contains condit ...
is used as a
predictive model
Predictive modelling uses statistics to predict outcomes. Most often the event one wants to predict is in the future, but predictive modelling can be applied to any type of unknown event, regardless of when it occurred. For example, predictive mod ...
to draw conclusions about a set of observations.
Tree models where the target variable can take a discrete set of values are called
classification Classification is a process related to categorization, the process in which ideas and objects are recognized, differentiated and understood.
Classification is the grouping of related facts into classes.
It may also refer to:
Business, organizat ...
trees
In botany, a tree is a perennial plant with an elongated stem, or trunk, usually supporting branches and leaves. In some usages, the definition of a tree may be narrower, including only woody plants with secondary growth, plants that are u ...
; in these tree structures,
leaves
A leaf (plural, : leaves) is any of the principal appendages of a vascular plant plant stem, stem, usually borne laterally aboveground and specialized for photosynthesis. Leaves are collectively called foliage, as in "autumn foliage", wh ...
represent class labels and branches represent
conjunction
Conjunction may refer to:
* Conjunction (grammar), a part of speech
* Logical conjunction, a mathematical operator
** Conjunction introduction, a rule of inference of propositional logic
* Conjunction (astronomy), in which two astronomical bodies ...
s of features that lead to those class labels. Decision trees where the target variable can take continuous values (typically
real numbers
In mathematics, a real number is a number that can be used to measure a ''continuous'' one-dimensional quantity such as a distance, duration or temperature. Here, ''continuous'' means that values can have arbitrarily small variations. Every real ...
) are called
regression trees
In botany, a tree is a perennial plant with an elongated stem, or trunk, usually supporting branches and leaves. In some usages, the definition of a tree may be narrower, including only woody plants with secondary growth, plants that are u ...
.
Decision trees are among the most popular machine learning algorithms given their intelligibility and simplicity.
In decision analysis, a decision tree can be used to visually and explicitly represent decisions and
decision making
In psychology, decision-making (also spelled decision making and decisionmaking) is regarded as the cognitive process resulting in the selection of a belief or a course of action among several possible alternative options. It could be either rati ...
. In
data mining, a decision tree describes data (but the resulting classification tree can be an input for
decision making
In psychology, decision-making (also spelled decision making and decisionmaking) is regarded as the cognitive process resulting in the selection of a belief or a course of action among several possible alternative options. It could be either rati ...
).
General
Decision tree learning is a method commonly used in data mining.
The goal is to create a model that predicts the value of a target variable based on several input variables.
A decision tree is a simple representation for classifying examples. For this section, assume that all of the input
feature
Feature may refer to:
Computing
* Feature (CAD), could be a hole, pocket, or notch
* Feature (computer vision), could be an edge, corner or blob
* Feature (software design) is an intentional distinguishing characteristic of a software item ...
s have finite discrete domains, and there is a single target feature called the "classification". Each element of the domain of the classification is called a ''class''.
A decision tree or a classification tree is a tree in which each internal (non-leaf) node is labeled with an input feature. The arcs coming from a node labeled with an input feature are labeled with each of the possible values of the target feature or the arc leads to a subordinate decision node on a different input feature. Each leaf of the tree is labeled with a class or a probability distribution over the classes, signifying that the data set has been classified by the tree into either a specific class, or into a particular probability distribution (which, if the decision tree is well-constructed, is skewed towards certain subsets of classes).
A tree is built by splitting the source
set
Set, The Set, SET or SETS may refer to:
Science, technology, and mathematics Mathematics
*Set (mathematics), a collection of elements
*Category of sets, the category whose objects and morphisms are sets and total functions, respectively
Electro ...
, constituting the root node of the tree, into subsets—which constitute the successor children. The splitting is based on a set of splitting rules based on classification features. This process is repeated on each derived subset in a recursive manner called
recursive partitioning Recursive partitioning is a statistical method for multivariable analysis. Recursive partitioning creates a decision tree that strives to correctly classify members of the population by splitting it into sub-populations based on several dichotomous ...
.
The
recursion
Recursion (adjective: ''recursive'') occurs when a thing is defined in terms of itself or of its type. Recursion is used in a variety of disciplines ranging from linguistics to logic. The most common application of recursion is in mathematics ...
is completed when the subset at a node has all the same values of the target variable, or when splitting no longer adds value to the predictions. This process of ''top-down induction of decision trees'' (TDIDT)
is an example of a
greedy algorithm
A greedy algorithm is any algorithm that follows the problem-solving heuristic of making the locally optimal choice at each stage. In many problems, a greedy strategy does not produce an optimal solution, but a greedy heuristic can yield locally ...
, and it is by far the most common strategy for learning decision trees from data.
In
data mining, decision trees can be described also as the combination of mathematical and computational techniques to aid the description, categorization and generalization of a given set of data.
Data comes in records of the form:
:
The dependent variable,
, is the target variable that we are trying to understand, classify or generalize. The vector
is composed of the features,
etc., that are used for that task.
Decision tree types
Decision trees used in
data mining are of two main types:
*
Classification tree
Classification chart or classification tree is a synopsis of the classification scheme, designed to illustrate the structure of any particular field.
Overview
Classification is the process in which ideas and objects are recognized, differentia ...
analysis is when the predicted outcome is the class (discrete) to which the data belongs.
*Regression tree analysis is when the predicted outcome can be considered a real number (e.g. the price of a house, or a patient's length of stay in a hospital).
The term classification and regression tree (CART) analysis is an
umbrella term
In linguistics, semantics, general semantics, and ontologies, hyponymy () is a semantic relation between a hyponym denoting a subtype and a hypernym or hyperonym (sometimes called umbrella term or blanket term) denoting a supertype. In other wor ...
used to refer to either of the above procedures, first introduced by
Breiman et al. in 1984.
Trees used for regression and trees used for classification have some similarities – but also some differences, such as the procedure used to determine where to split.
*Decision stream avoids the problems of data exhaustion and formation of unrepresentative data samples in decision tree nodes by merging the leaves from the same and/or different levels of predictive model structure. With increasing the number of samples in nodes and reducing the tree width, decision stream preserves statistically representative data and allows extremely deep graph architecture that can consist of hundreds of levels.
Some techniques, often called ''ensemble'' methods, construct more than one decision tree:
*
Boosted trees Incrementally building an ensemble by training each new instance to emphasize the training instances previously mis-modeled. A typical example is
AdaBoost
AdaBoost, short for ''Adaptive Boosting'', is a statistical classification meta-algorithm formulated by Yoav Freund and Robert Schapire in 1995, who won the 2003 Gödel Prize for their work. It can be used in conjunction with many other types of ...
. These can be used for regression-type and classification-type problems.
*
Bootstrap aggregated (or bagged) decision trees, an early ensemble method, builds multiple decision trees by repeatedly
resampling training data with replacement, and voting the trees for a consensus prediction.
**A
random forest
Random forests or random decision forests is an ensemble learning method for classification, regression and other tasks that operates by constructing a multitude of decision trees at training time. For classification tasks, the output of th ...
classifier is a specific type of
bootstrap aggregating
Bootstrap aggregating, also called bagging (from bootstrap aggregating), is a machine learning ensemble meta-algorithm designed to improve the stability and accuracy of machine learning algorithms used in statistical classification and regress ...
*Rotation forest – in which every decision tree is trained by first applying
principal component analysis
Principal component analysis (PCA) is a popular technique for analyzing large datasets containing a high number of dimensions/features per observation, increasing the interpretability of data while preserving the maximum amount of information, and ...
(PCA) on a random subset of the input features.
A special case of a decision tree is a
decision list Decision lists are a representation for Boolean functions which can be easily learnable from examples. Single term decision lists are more expressive than disjunctions and conjunctions; however, 1-term decision lists are less expressive than the ...
, which is a one-sided decision tree, so that every internal node has exactly 1 leaf node and exactly 1 internal node as a child (except for the bottommost node, whose only child is a single leaf node). While less expressive, decision lists are arguably easier to understand than general decision trees due to their added sparsity, permit non-greedy learning methods and monotonic constraints to be imposed.
Notable decision tree algorithms include:
*
ID3
ID3 is a metadata container most often used in conjunction with the MP3 audio file format. It allows information such as the title, artist, album, track number, and other information about the file to be stored in the file itself.
There are two ...
(Iterative Dichotomiser 3)
*
C4.5 (successor of ID3)
*
CART
A cart or dray (Australia and New Zealand) is a vehicle designed for transport, using two wheels and normally pulled by one or a pair of draught animals. A handcart is pulled or pushed by one or more people.
It is different from the flatbed tr ...
(Classification And Regression Tree)
*
Chi-square automatic interaction detection
Chi-square automatic interaction detection (CHAID) is a decision tree technique based on adjusted significance testing ( Bonferroni correction, Holm-Bonferroni testing). The technique was developed in South Africa and was published in 1980 by Gor ...
(CHAID). Performs multi-level splits when computing classification trees.
*
MARS
Mars is the fourth planet from the Sun and the second-smallest planet in the Solar System, only being larger than Mercury (planet), Mercury. In the English language, Mars is named for the Mars (mythology), Roman god of war. Mars is a terr ...
: extends decision trees to handle numerical data better.
* Conditional Inference Trees. Statistics-based approach that uses non-parametric tests as splitting criteria, corrected for multiple testing to avoid overfitting. This approach results in unbiased predictor selection and does not require pruning.
ID3 and CART were invented independently at around the same time (between 1970 and 1980), yet follow a similar approach for learning a decision tree from training tuples.
It has also been proposed to leverage concepts of
fuzzy set theory
In mathematics, fuzzy sets (a.k.a. uncertain sets) are Set (mathematics), sets whose Element (mathematics), elements have degrees of membership. Fuzzy sets were introduced independently by Lotfi Asker Zadeh, Lotfi A. Zadeh in 1965 as an extension o ...
for the definition of a special version of decision tree, known as Fuzzy Decision Tree (FDT).
In this type of fuzzy classification, generally, an input vector
is associated with multiple classes, each with a different confidence value.
Boosted ensembles of FDTs have been recently investigated as well, and they have shown performances comparable to those of other very efficient fuzzy classifiers.
Metrics
Algorithms for constructing decision trees usually work top-down, by choosing a variable at each step that best splits the set of items.
Different algorithms use different metrics for measuring "best". These generally measure the homogeneity of the target variable within the subsets. Some examples are given below. These metrics are applied to each candidate subset, and the resulting values are combined (e.g., averaged) to provide a measure of the quality of the split. Depending on the underlying metric, the performance of various heuristic algorithms for decision tree learning may vary significantly.
Estimate of Positive Correctness
A simple and effective metric can be used to identify the degree to which true positives outweigh true negatives (see
Confusion matrix
In the field of machine learning and specifically the problem of statistical classification, a confusion matrix, also known as an error matrix, is a specific table layout that allows visualization of the performance of an algorithm, typically a su ...
). This metric, "Estimate of Positive Correctness" is defined below:
In this equation, the total false positives (FP) are subtracted from the total true positives (TP). The resulting number gives an estimate on how many positive examples the feature could correctly identify within the data, with higher numbers meaning that the feature could correctly classify more positive samples. Below is an example of how to use the metric when the full confusion matrix of a certain feature is given:
Feature A Confusion Matrix
Here we can see that the TP value would be 8 and the FP value would be 2 (the underlined numbers in the table). When we plug these numbers in the equation we are able to calculate the estimate:
. This means that using the estimate on this feature would have it receive a score of 6.
However, it should be worth noting that this number is only an estimate. For example, if two features both had a FP value of 2 while one of the features had a higher TP value, that feature would be ranked higher than the other because the resulting estimate when using the equation would give a higher value. This could lead to some inaccuracies when using the metric if some features have more positive samples than others. To combat this, one could use a more powerful metric known as
Sensitivity that takes into account the proportions of the values from the confusion matrix to give the actual
true positive rate
''Sensitivity'' and ''specificity'' mathematically describe the accuracy of a test which reports the presence or absence of a condition. Individuals for which the condition is satisfied are considered "positive" and those for which it is not are ...
(TPR). The difference between these metrics is shown in the example below:
In this example, Feature A had an estimate of 6 and a TPR of approximately 0.73 while Feature B had an estimate of 4 and a TPR of 0.75. This shows that although the positive estimate for some feature may be higher, the more accurate TPR value for that feature may be lower when compared to other features that have a lower positive estimate. Depending on the situation and knowledge of the data and decision trees, one may opt to use the positive estimate for a quick and easy solution to their problem. On the other hand, a more experienced user would most likely prefer to use the TPR value to rank the features because it takes into account the proportions of the data and all the samples that should have been classified as positive.
Gini impurity
Gini impurity, Gini's diversity index, or
Gini-Simpson Index in biodiversity research, is used by the CART (classification and regression tree) algorithm for classification trees, Gini impurity (named after Italian mathematician
Corrado Gini
Corrado Gini (23 May 1884 – 13 March 1965) was an Italian statistician, demographer and sociologist who developed the Gini coefficient, a measure of the income inequality in a society. Gini was a proponent of organicism and applied it to natio ...
) is a measure of how often a randomly chosen element from the set would be incorrectly labeled if it was randomly labeled according to the distribution of labels in the subset. The Gini impurity can be computed by summing the probability
of an item with label
being chosen times the probability
of a mistake in categorizing that item. It reaches its minimum (zero) when all cases in the node fall into a single target category.
The Gini impurity is also an information theoretic measure and corresponds to
Tsallis Entropy In physics, the Tsallis entropy is a generalization of the standard Boltzmann–Gibbs entropy.
Overview
The concept was introduced in 1988 by Constantino Tsallis as a basis for generalizing the standard statistical mechanics and is identical in f ...
with deformation coefficient
, which in physics is associated with the lack of information in out-of-equilibrium, non-extensive, dissipative and quantum systems. For the limit
one recovers the usual Boltzmann-Gibbs or Shannon entropy. In this sense, the Gini impurity is nothing but a variation of the usual entropy measure for decision trees.
To compute Gini impurity for a set of items with
classes, suppose
, and let
be the fraction of items labeled with class
in the set.
:
Information gain
Used by the
ID3
ID3 is a metadata container most often used in conjunction with the MP3 audio file format. It allows information such as the title, artist, album, track number, and other information about the file to be stored in the file itself.
There are two ...
,
C4.5 and C5.0 tree-generation algorithms.
Information gain
Information is an abstract concept that refers to that which has the power to inform. At the most fundamental level information pertains to the interpretation of that which may be sensed. Any natural process that is not completely random, ...
is based on the concept of
entropy
Entropy is a scientific concept, as well as a measurable physical property, that is most commonly associated with a state of disorder, randomness, or uncertainty. The term and the concept are used in diverse fields, from classical thermodynam ...
and
information content
In information theory, the information content, self-information, surprisal, or Shannon information is a basic quantity derived from the probability of a particular event occurring from a random variable. It can be thought of as an alternative wa ...
from
information theory
Information theory is the scientific study of the quantification (science), quantification, computer data storage, storage, and telecommunication, communication of information. The field was originally established by the works of Harry Nyquist a ...
.
Entropy is defined as below
:
where
are fractions that add up to 1 and represent the percentage of each class present in the child node that results from a split in the tree.
:
Averaging over the possible values of
,
:
:Where weighted sum of entropies is given by,
:
That is, the expected information gain is the
mutual information
In probability theory and information theory, the mutual information (MI) of two random variables is a measure of the mutual dependence between the two variables. More specifically, it quantifies the " amount of information" (in units such ...
, meaning that on average, the reduction in the entropy of ''T'' is the mutual information.
Information gain is used to decide which feature to split on at each step in building the tree. Simplicity is best, so we want to keep our tree small. To do so, at each step we should choose the split that results in the most consistent child nodes. A commonly used measure of consistency is called
information
Information is an abstract concept that refers to that which has the power to inform. At the most fundamental level information pertains to the interpretation of that which may be sensed. Any natural process that is not completely random ...
which is measured in
bit
The bit is the most basic unit of information in computing and digital communications. The name is a portmanteau of binary digit. The bit represents a logical state with one of two possible values. These values are most commonly represente ...
s. For each node of the tree, the information value "represents the expected amount of information that would be needed to specify whether a new instance should be classified yes or no, given that the example reached that node".
Consider an example data set with four attributes: ''outlook'' (sunny, overcast, rainy), ''temperature'' (hot, mild, cool), ''humidity'' (high, normal), and ''windy'' (true, false), with a binary (yes or no) target variable, ''play'', and 14 data points. To construct a decision tree on this data, we need to compare the information gain of each of four trees, each split on one of the four features. The split with the highest information gain will be taken as the first split and the process will continue until all children nodes each have consistent data, or until the information gain is 0.
To find the information gain of the split using ''windy'', we must first calculate the information in the data before the split. The original data contained nine yes's and five no's.
:
The split using the feature ''windy'' results in two children nodes, one for a ''windy'' value of true and one for a ''windy'' value of false. In this data set, there are six data points with a true ''windy'' value, three of which have a ''play'' (where ''play'' is the target variable) value of yes and three with a ''play'' value of no. The eight remaining data points with a ''windy'' value of false contain two no's and six yes's. The information of the ''windy''=true node is calculated using the entropy equation above. Since there is an equal number of yes's and no's in this node, we have
:
For the node where ''windy''=false there were eight data points, six yes's and two no's. Thus we have
:
To find the information of the split, we take the weighted average of these two numbers based on how many observations fell into which node.
:
Now we can calculate the information gain achieved by splitting on the ''windy'' feature.
:
To build the tree, the information gain of each possible first split would need to be calculated. The best first split is the one that provides the most information gain. This process is repeated for each impure node until the tree is complete. This example is adapted from the example appearing in Witten et al.
Information gain is also known as
Shannon index
A diversity index is a quantitative measure that reflects how many different types (such as species) there are in a dataset (a community), and that can simultaneously take into account the phylogenetic relations among the individuals distributed a ...
in bio diversity research.
Variance reduction
Introduced in CART,
variance reduction is often employed in cases where the target variable is continuous (regression tree), meaning that use of many other metrics would first require discretization before being applied. The variance reduction of a node is defined as the total reduction of the variance of the target variable due to the split at this node:
:
where
,
, and
are the set of presplit sample indices, set of sample indices for which the split test is true, and set of sample indices for which the split test is false, respectively. Each of the above summands are indeed
variance
In probability theory and statistics, variance is the expectation of the squared deviation of a random variable from its population mean or sample mean. Variance is a measure of dispersion, meaning it is a measure of how far a set of numbers ...
estimates, though, written in a form without directly referring to the mean.
Measure of "goodness"
Used by CART in 1984,
the measure of "goodness" is a function that seeks to optimize the balance of a candidate split's capacity to create pure children with its capacity to create equally-sized children. This process is repeated for each impure node until the tree is complete. The function
, where
is a candidate split at node
, is defined as below
:
where
and
are the left and right children of node
using split
, respectively;
and
are the proportions of records in
in
and
, respectively; and
and
are the proportions of class
records in
and
, respectively.
Consider an example data set with three attributes: ''savings''(low, medium, high), ''assets''(low, medium, high), ''income''(numerical value), and a binary target variable ''credit risk''(good, bad) and 8 data points.
The full data is presented in the table below. To start a decision tree, we will calculate the maximum value of
using each feature to find which one will split the root node. This process will continue until all children are pure or all
values are below a set threshold.
To find
of the feature ''savings'', we need to note the quantity of each value. The original data contained three low's, three medium's, and two high's. Out of the low's, one had a good ''credit risk'' while out of the medium's and high's, 4 had a good ''credit risk''. Assume a candidate split
such that records with a low ''savings'' will be put in the left child and all other records will be put into the right child.
:
To build the tree, the "goodness" of all candidate splits for the root node need to be calculated. The candidate with the maximum value will split the root node, and the process will continue for each impure node until the tree is complete.
Compared to other metrics such as information gain, the measure of "goodness" will attempt to create a more balanced tree, leading to more-consistent decision time. However, it sacrifices some priority for creating pure children which can lead to additional splits that are not present with other metrics.
Uses
Advantages
Amongst other data mining methods, decision trees have various advantages:
* Simple to understand and interpret. People are able to understand decision tree models after a brief explanation. Trees can also be displayed graphically in a way that is easy for non-experts to interpret.
* Able to handle both numerical and
categorical data.
Other techniques are usually specialized in analyzing datasets that have only one type of variable. (For example, relation rules can be used only with nominal variables while neural networks can be used only with numerical variables or categoricals converted to 0-1 values.) Early decision trees were only capable of handling categorical variables, but more recent versions, such as C4.5, do not have this limitation.
* Requires little data preparation. Other techniques often require data normalization. Since trees can handle qualitative predictors, there is no need to create
dummy variables.
* Uses a
white box or open-box
model. If a given situation is observable in a model the explanation for the condition is easily explained by boolean logic. By contrast, in a
black box
In science, computing, and engineering, a black box is a system which can be viewed in terms of its inputs and outputs (or transfer characteristics), without any knowledge of its internal workings. Its implementation is "opaque" (black). The te ...
model, the explanation for the results is typically difficult to understand, for example with an
artificial neural network
Artificial neural networks (ANNs), usually simply called neural networks (NNs) or neural nets, are computing systems inspired by the biological neural networks that constitute animal brains.
An ANN is based on a collection of connected unit ...
.
* Possible to validate a model using statistical tests. That makes it possible to account for the reliability of the model.
* Non-parametric approach that makes no assumptions of the training data or prediction residuals; e.g., no distributional, independence, or constant variance assumptions
* Performs well with large datasets. Large amounts of data can be analyzed using standard computing resources in reasonable time.
* Mirrors human decision making more closely than other approaches.
This could be useful when modeling human decisions/behavior.
*Robust against co-linearity, particularly boosting.
*In built
feature selection
In machine learning and statistics, feature selection, also known as variable selection, attribute selection or variable subset selection, is the process of selecting a subset of relevant features (variables, predictors) for use in model construc ...
. Additional irrelevant feature will be less used so that they can be removed on subsequent runs. The hierarchy of attributes in a decision tree reflects the importance of attributes. It means that the features on top are the most informative.
*Decision trees can approximate any
Boolean function
In mathematics, a Boolean function is a function whose arguments and result assume values from a two-element set (usually , or ). Alternative names are switching function, used especially in older computer science literature, and truth function ( ...
e.g.
XOR
Exclusive or or exclusive disjunction is a logical operation that is true if and only if its arguments differ (one is true, the other is false).
It is symbolized by the prefix operator J and by the infix operators XOR ( or ), EOR, EXOR, , ...
.
Limitations
* Trees can be very non-robust. A small change in the
training data
In machine learning, a common task is the study and construction of algorithms that can learn from and make predictions on data. Such algorithms function by making data-driven predictions or decisions, through building a mathematical model from ...
can result in a large change in the tree and consequently the final predictions.
* The problem of learning an optimal decision tree is known to be
NP-complete
In computational complexity theory, a problem is NP-complete when:
# it is a problem for which the correctness of each solution can be verified quickly (namely, in polynomial time) and a brute-force search algorithm can find a solution by tryi ...
under several aspects of optimality and even for simple concepts. Consequently, practical decision-tree learning algorithms are based on heuristics such as the
greedy algorithm
A greedy algorithm is any algorithm that follows the problem-solving heuristic of making the locally optimal choice at each stage. In many problems, a greedy strategy does not produce an optimal solution, but a greedy heuristic can yield locally ...
where locally optimal decisions are made at each node. Such algorithms cannot guarantee to return the globally optimal decision tree. To reduce the greedy effect of local optimality, some methods such as the dual information distance (DID) tree were proposed.
* Decision-tree learners can create over-complex trees that do not generalize well from the training data. (This is known as
overfitting
mathematical modeling, overfitting is "the production of an analysis that corresponds too closely or exactly to a particular set of data, and may therefore fail to fit to additional data or predict future observations reliably". An overfitt ...
.) Mechanisms such as
pruning
Pruning is a horticultural, arboricultural, and silvicultural practice involving the selective removal of certain parts of a plant, such as branches, buds, or roots.
The practice entails the ''targeted'' removal of diseased, damaged, dead, ...
are necessary to avoid this problem (with the exception of some algorithms such as the Conditional Inference approach, that does not require pruning).
* The average depth of the tree that is defined by the number of nodes or tests till classification is not guaranteed to be minimal or small under various splitting criteria.
* For data including categorical variables with different numbers of levels,
information gain in decision trees
In information theory and machine learning, information gain is a synonym for ''Kullback–Leibler divergence''; the amount of information gained about a random variable or signal from observing another random variable. However, in the context of ...
is biased in favor of attributes with more levels. To counter this problem, instead of choosing the attribute with highest
information gain
Information is an abstract concept that refers to that which has the power to inform. At the most fundamental level information pertains to the interpretation of that which may be sensed. Any natural process that is not completely random, ...
, one can choose the attribute with the highest
information gain ratio among the attributes whose information gain is greater than the mean information gain. This biases the decision tree against considering attributes with a large number of distinct values, while not giving an unfair advantage to attributes with very low information gain. Alternatively, the issue of biased predictor selection can be avoided by the Conditional Inference approach,
a two-stage approach, or adaptive leave-one-out feature selection.
Implementations
Many data mining software packages provide implementations of one or more decision tree algorithms.
Examples include
* Salford Systems CART (which licensed the proprietary code of the original CART authors),
*
IBM SPSS Modeler,
*
RapidMiner
RapidMiner is a data science platform designed for enterprises that analyses the collective impact of organizations’ employees, expertise and data. Rapid Miner's data science platform is intended to support many analytics users across a broad AI ...
,
*
SAS Enterprise Miner,
*
Matlab
MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementation ...
,
*
R (an open-source software environment for statistical computing, which includes several CART implementations such as rpart, party and randomForest packages),
*
Weka
The weka, also known as the Māori hen or woodhen (''Gallirallus australis'') is a flightless bird species of the rail family. It is endemic to New Zealand. It is the only extant member of the genus ''Gallirallus''. Four subspecies are recognize ...
(a free and open-source data-mining suite, contains many decision tree algorithms),
*
Orange
Orange most often refers to:
*Orange (fruit), the fruit of the tree species '' Citrus'' × ''sinensis''
** Orange blossom, its fragrant flower
*Orange (colour), from the color of an orange, occurs between red and yellow in the visible spectrum
* ...
,
*
KNIME
KNIME (), the Konstanz Information Miner, is a free and open-source data analytics, reporting and integration platform. KNIME integrates various components for machine learning and data mining through its modular data pipelining "Building Blocks ...
,
*
Microsoft SQL Server
Microsoft SQL Server is a relational database management system developed by Microsoft. As a database server, it is a software product with the primary function of storing and retrieving data as requested by other software applications—which ma ...
br>
and
*
scikit-learn
scikit-learn (formerly scikits.learn and also known as sklearn) is a free software machine learning library for the Python programming language.
It features various classification, regression and clustering algorithms including support-vector m ...
(a free and open-source machine learning library for the
Python
Python may refer to:
Snakes
* Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia
** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia
* Python (mythology), a mythical serpent
Computing
* Python (pro ...
programming language).
Extensions
Decision graphs
In a decision tree, all paths from the root node to the leaf node proceed by way of conjunction, or ''AND''. In a decision graph, it is possible to use disjunctions (ORs) to join two more paths together using
minimum message length
Minimum message length (MML) is a Bayesian information-theoretic method for statistical model comparison and selection. It provides a formal information theory restatement of Occam's Razor: even when models are equal in their measure of fit-accurac ...
(MML). Decision graphs have been further extended to allow for previously unstated new attributes to be learnt dynamically and used at different places within the graph. The more general coding scheme results in better predictive accuracy and log-loss probabilistic scoring. In general, decision graphs infer models with fewer leaves than decision trees.
Alternative search methods
Evolutionary algorithms have been used to avoid local optimal decisions and search the decision tree space with little ''a priori'' bias.
It is also possible for a tree to be sampled using
MCMC.
The tree can be searched for in a bottom-up fashion.
Or several trees can be constructed parallelly to reduce the expected number of tests till classification.
See also
*
Decision tree pruning
Pruning is a data compression technique in machine learning and search algorithms that reduces the size of decision trees by removing sections of the tree that are non-critical and redundant to classify instances. Pruning reduces the complexity of ...
*
Binary decision diagram
In computer science, a binary decision diagram (BDD) or branching program is a data structure that is used to represent a Boolean function. On a more abstract level, BDDs can be considered as a compressed representation of sets or relations. Un ...
*
CHAID
*
CART
A cart or dray (Australia and New Zealand) is a vehicle designed for transport, using two wheels and normally pulled by one or a pair of draught animals. A handcart is pulled or pushed by one or more people.
It is different from the flatbed tr ...
*
ID3 algorithm
In decision tree learning, ID3 (Iterative Dichotomiser 3) is an algorithm invented by Ross QuinlanQuinlan, J. R. 1986. Induction of Decision Trees. Mach. Learn. 1, 1 (Mar. 1986), 81–106 used to generate a decision tree from a dataset. ID3 is the ...
*
C4.5 algorithm
C4.5 is an algorithm used to generate a decision tree developed by Ross Quinlan. C4.5 is an extension of Quinlan's earlier ID3 algorithm. The decision trees generated by C4.5 can be used for classification, and for this reason, C4.5 is often referr ...
*
Decision stump
A decision stump is a machine learning model consisting of a one-level decision tree. That is, it is a decision tree with one internal node (the root) which is immediately connected to the terminal nodes (its leaves). A decision stump makes a predi ...
s, used in e.g.
AdaBoost
AdaBoost, short for ''Adaptive Boosting'', is a statistical classification meta-algorithm formulated by Yoav Freund and Robert Schapire in 1995, who won the 2003 Gödel Prize for their work. It can be used in conjunction with many other types of ...
ing
*
Decision list Decision lists are a representation for Boolean functions which can be easily learnable from examples. Single term decision lists are more expressive than disjunctions and conjunctions; however, 1-term decision lists are less expressive than the ...
*
Incremental decision tree
*
Alternating decision tree An alternating decision tree (ADTree) is a machine learning method for classification. It generalizes decision trees and has connections to boosting.
An ADTree consists of an alternation of decision nodes, which specify a predicate condition, and ...
*
Structured data analysis (statistics)
Structured data analysis is the statistical data analysis of structured data. This can arise either in the form of an ''a priori'' structure such as multiple-choice questionnaires or in situations with the need to search for structure that fits t ...
*
Logistic model tree
In computer science, a logistic model tree (LMT) is a classification model with an associated supervised training algorithm that combines logistic regression (LR) and decision tree learning.
Logistic model trees are based on the earlier idea of a ...
*
Hierarchical clustering
In data mining and statistics, hierarchical clustering (also called hierarchical cluster analysis or HCA) is a method of cluster analysis that seeks to build a hierarchy of clusters. Strategies for hierarchical clustering generally fall into ...
References
Further reading
*{{cite book , first1=Gareth , last1=James , first2=Daniela , last2=Witten , first3=Trevor , last3=Hastie , first4=Robert , last4=Tibshirani , chapter=Tree-Based Methods , title=An Introduction to Statistical Learning: with Applications in R , location=New York , publisher=Springer , year=2017 , isbn=978-1-4614-7137-0 , chapter-url=https://www-bcf.usc.edu/~gareth/ISL/ISLR%20Seventh%20Printing.pdf#page=317 , pages=303–336
External links
Evolutionary Learning of Decision Trees in C++
Decision trees
Classification algorithms