1. Prof. Neeraj Bhargava
Vishal Dutt
Department of Computer Science, School of
Engineering & System Sciences
MDS University, Ajmer
2. 2
Attribute Selection Measure: Information
Gain (ID3/C4.5)
S contains si tuples of class Ci for i = {1, …, m}
information measures info (entropy) required to classify
any arbitrary tuple
Assume a set of training examples, S. If we make attribute
A, with v values, the root of the current tree, this will
partition S into v subsets. The expected information
needed to complete the tree after making A the root is:
s
s
log
s
s
),...,s,ssI(
i
m
i
i
m21 2
1
)s,...,s(I
s
s...s
E(A) mjj
v
j
mjj
1
1
1
3. Information gain
information gained by branching on
attribute A
We will choose the attribute with the
highest information gain to branch the
current tree.
E(A))s,...,s,I(sGain(A) m 21
3
4. Attribute Selection by info gain
Class P: buys_computer = “yes”
Class N: buys_computer = “no”
I(p, n) = I(9, 5) =0.940
Compute the entropy for age:
means “age <=30” has 5
out of 14 samples, with 2
yes’es and 3 no’s. Hence
Similarly,
4
age pi ni I(pi, ni)
<=30 2 3 0.971
30…40 4 0 0
>40 3 2 0.971
694.0)2,3(
14
5
)0,4(
14
4
)3,2(
14
5
)(
I
IIageE
048.0)_(
151.0)(
029.0)(
ratingcreditGain
studentGain
incomeGain
246.0)(),()( ageEnpIageGain
age income student credit_rating buys_computer
<=30 high no fair no
<=30 high no excellent no
31…40 high no fair yes
>40 medium no fair yes
>40 low yes fair yes
>40 low yes excellent no
31…40 low yes excellent yes
<=30 medium no fair no
<=30 low yes fair yes
>40 medium yes fair yes
<=30 medium yes excellent yes
31…40 medium no excellent yes
31…40 high yes fair yes
>40 medium no excellent no
)3,2(
14
5
I
5. We build the following tree
5
age?
overcast
student? credit rating?
no yes fairexcellent
<=30 >40
no noyes yes
yes
30..40
6. Extracting Classification Rules from Trees
Represent the knowledge in the form of IF-THEN rules
One rule is created for each path from the root to a leaf
Each attribute-value pair along a path forms a conjunction.
The leaf node holds the class prediction
Rules are easier for humans to understand
Example
IF age = “<=30” AND student = “no” THEN buys_computer = “no”
IF age = “<=30” AND student = “yes” THEN buys_computer = “yes”
IF age = “31…40” THEN buys_computer = “yes”
IF age = “>40” AND credit_rating = “excellent” THEN buys_computer =
“yes”
IF age = “<=30” AND credit_rating = “fair” THEN buys_computer = “no”
6
7. Avoid Overfitting in Classification
Overfitting: An tree may overfit the training data
Good accuracy on training data but poor on test exmples
Too many branches, some may reflect anomalies due to
noise or outliers
Two approaches to avoid overfitting
Prepruning: Halt tree construction early
Difficult to decide
Postpruning: Remove branches from a “fully grown”
tree—get a sequence of progressively pruned trees.
This method is commonly used (based on validation set or
statistical estimate or MDL)
7
8. Enhancements to basic decision
tree induction
Allow for continuous-valued attributes
Dynamically define new discrete-valued attributes that
partition the continuous attribute value into a discrete set
of intervals
Handle missing attribute values
Assign the most common value of the attribute
Assign probability to each of the possible values
Attribute construction
Create new attributes based on existing ones that are
sparsely represented.
This reduces fragmentation, repetition, and replication 8