0% found this document useful (0 votes)
13 views

UNIT 2 Class Basic

Unit 2 of the course focuses on the basic concepts of classification, including decision tree induction, attribute selection measures, and various classification algorithms. It differentiates between supervised and unsupervised learning, outlines the classification process, and discusses model construction and usage. Additionally, it covers evaluation metrics, overfitting issues, and scalability concerns in decision tree algorithms.

Uploaded by

Priti Rishi
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views

UNIT 2 Class Basic

Unit 2 of the course focuses on the basic concepts of classification, including decision tree induction, attribute selection measures, and various classification algorithms. It differentiates between supervised and unsupervised learning, outlines the classification process, and discusses model construction and usage. Additionally, it covers evaluation metrics, overfitting issues, and scalability concerns in decision tree algorithms.

Uploaded by

Priti Rishi
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 69

Unit 2

CLASSIFICATION: BASIC CONCEPTS

Course Code : 21ECE274T


Class: II ECE-DS
Course Instructor: Dr. Priti Rishi
Associate Professor, ECE
Unit 2 Syllabus
 Classification:
Basic Concepts
 General Approach to Classification

 Decision Tree Induction


 Algorithm for Decision Tree Induction
 Numerical examples of Decision Tree Induction
 Attribute Selection Measure
 Tree Pruning
 Scalability and Decision Tree Induction
 Bayes Theorem

 Naïve Bayesian Classification


Unit 2 Syllabus
If-Then rule for Classification
Rule Extraction from a decision tree
Metrics for evaluating classifier performance
Cross Validation

Bootstrap

Ensemble Methods: Introduction


Bagging and Boosting
Random Forests: Introduction
3
Supervised vs. Unsupervised Learning

 Supervised learning (classification)


◦ Supervision: The training data (observations,
measurements, etc.) are accompanied by
labels indicating the class of the observations
◦ New data is classified based on the training set
 Unsupervised learning (clustering)
◦ The class labels of training data is unknown
◦ Given a set of measurements, observations,
etc. with the aim of establishing the existence
of classes or clusters in the data
4
5
Prediction Problems: Classification vs.
Numeric Prediction
 Classification
◦ predicts categorical class labels (discrete or
nominal)
◦ classifies data (constructs a model) based on the
training set and the values (class labels) in a
classifying attribute and uses it in classifying new
data
 Numeric Prediction
◦ models continuous-valued functions, i.e., predicts
unknown or missing values
 Typical applications
◦ Credit/loan approval:
◦ Medical diagnosis: if a tumor is cancerous or
benign
◦ Fraud detection: if a transaction is fraudulent
◦ Web page categorization: which category it is 6
Classification—A Two-Step Process
1. Model construction: describing a set of predetermined classes
◦ Each tuple/sample is assumed to belong to a predefined class, as
determined by the class label attribute
◦ The set of tuples used for model construction is training set
◦ The model is represented as classification rules, decision trees, or
mathematical formulae
2. Model usage: for classifying future or unknown objects
◦ Estimate accuracy of the model
 The known label of test sample is compared with the classified
result from the model
 Accuracy rate is the percentage of test set samples that are
correctly classified by the model
 Test set is independent of training set (otherwise overfitting)
◦ If the accuracy is acceptable, use the model to classify new data
 Note: If the test set is used to select models, it is called validation
(test) set
7
Process (1): Model Construction

Classification
Algorithms
Training
Data

NAME RANK YEARS TENURED Classifier


Mike Assistant Prof 3 no (Model)
Mary Assistant Prof 7 yes
Bill Professor 2 yes
Jim Associate Prof 7 yes IF rank = ‘professor’
Dave Assistant Prof 6 no
OR years > 6
Anne Associate Prof 3 no
THEN tenured = ‘yes’
8
Process (2): Using the Model in Prediction

Classifier

Testing
Data Unseen Data

(Jeff, Professor, 4)
NAME RANK YEARS TENURED
Tom Assistant Prof 2 no Tenured?
Merlisa Associate Prof 7 no
George Professor 5 yes
Joseph Assistant Prof 7 yes
9
Decision Tree Induction

10
Decision Tree Induction
 Many algorithms are there for Decision Tree
(a) ID3 (Iterative Dichotomiser)
(b) C4.5- Successor of ID3
(c) CART –Classification and Regression Trees
 ID3, C4.5 and CART adopt a greedy approach
(i.e. Nonbacktracking) approach in which
decision trees are constructed in a top-down
recursive divide-and-conquer manner
 The training set is recursively partitioned
into smaller subsets as the tree is being built

11
12
Decision Tree Induction: An Example
age income student credit_rating buys_computer
<=30 high no fair no
 Training data set: Buys_computer <=30 high no excellent no
 The data set follows an example of 31…40 high no fair yes
>40 medium no fair yes
Quinlan’s ID3 (Playing Tennis) >40 low yes fair yes
 Resulting tree: >40 low yes excellent no
31…40 low yes excellent yes
age? <=30 medium no fair no
<=30 low yes fair yes
>40 medium yes fair yes
<=30 medium yes excellent yes
<=30 overcast
31..40 >40 31…40 medium no excellent yes
31…40 high yes fair yes
>40 medium no excellent no

student? yes credit rating?

no yes excellent fair

no yes no yes
13
Algorithm for Decision Tree Induction
 Basic algorithm (a greedy algorithm)
◦ Tree is constructed in a top-down recursive divide-
and-conquer manner
◦ At start, all the training examples are at the root
◦ Attributes are categorical (if continuous-valued,
they are discretized in advance)
◦ Examples are partitioned recursively based on
selected attributes
◦ Test attributes are selected on the basis of a
heuristic or statistical measure (e.g., information
gain)
 Conditions for stopping partitioning
◦ All samples for a given node belong to the same
class
◦ There are no remaining attributes for further
14
15
Attribute Selection Measure:
Information Gain (ID3/C4.5)
 Select the attribute with the highest information gain
 Let pi be the probability that an arbitrary tuple in D belongs to
class Ci, estimated by |Ci, D|/|D|
 Expected information (entropy) needed to classify a tuple in D:
m
Info( D )   pi log 2 ( pi )
1
 Information needed (after using A to split Di into v partitions) to
classify D: v | D |
Info A ( D ) 
j
Info( D j )
j 1 |D|
 Information gained by branching on attribute A

Gain(A) Info(D)  Info A(D)


16
Attribute Selection: Information Gain
g Class P: buys_computer = 5 4
Infoage ( D )  I (2,3)  I (4,0)
“yes” 14 14
g Class N: buys_computer = 5
9 9 5 5
Info( D)“no”
I (9,5)  log 2 ( )  log 2 ( ) 0.940  I (3,2) 0.694
14 14 14 14 14
age pi ni I(p i, n i) 5
I (2,3) means “age <=30” has
<=30 2 3 0.971 14
5 out of 14 samples, with 2
31…40 4 0 0
>40 3 2 0.971 yes’es and 3 no’s. Hence
age
<=30
income student credit_rating
high no fair
buys_computer
no
Gain(age) Info( D )  Infoage ( D ) 0.246
<=30 high no excellent no
31…40 high no fair yes Similarly,
>40 medium no fair yes
>40 low yes fair yes
>40 low yes excellent no
31…40 low yes excellent yes Gain(income) 0.029
<=30 medium no fair no
<=30
>40
low
medium
yes
yes
fair
fair
yes
yes
Gain( student ) 0.151
<=30
31…40
medium
medium
yes
no
excellent
excellent
yes
yes Gain(credit _ rating ) 0.048
31…40 high yes fair yes
>40 medium no excellent no 17
Computing Information-Gain for
Continuous-Valued Attributes
 Let attribute A be a continuous-valued attribute
 Must determine the best split point for A
◦ Sort the value A in increasing order
◦ Typically, the midpoint between each pair of
adjacent values is considered as a possible split
point
 (ai+ai+1)/2 is the midpoint between the values of ai and ai+1

◦ The point with the minimum expected information


requirement for A is selected as the split-point for
A
 Split:

◦ D1 is the set of tuples in D satisfying A ≤ split-18


Gain Ratio for Attribute Selection (C4.5)
 Information gain measure is biased towards
attributes with a large number of values
 C4.5 (a successor of ID3) uses gain ratio to
overcome the problem (normalization to
information gain) v |D | | Dj |
SplitInfo A ( D)  
j
log 2 ( )
j 1 |D| |D|

◦ GainRatio(A) = Gain(A)/SplitInfo(A)
 Ex.

◦ gain_ratio(income) = 0.029/1.557 = 0.019


 The attribute with the maximum gain ratio is
selected as the splitting attribute 19
Gini Index
(CART, IBM IntelligentMiner)

 If a data set D contains examples from n classes, Gini index,


Gini(D) is defined as n
gini( D) 1  p 2j
j 1
where pj is the relative frequency of class j in D
 If a data set D is split on A into two subsets D1 and D2, the
gini index gini(D) is defined as
|D1| |D2 |
gini A ( D )  gini ( D1)  gini( D 2)
|D| |D|
 Reduction in Impurity:
gini( A) gini( D)  giniA ( D)

 The attribute provides the smallest ginisplit(D) (or the largest


reduction in impurity) is chosen to split the node (need to
enumerate all the possible splitting points for each attribute) 20
Computation of Gini Index
 Ex. D has 9 tuples in buys_computer = “yes” and 5 in “no”
2 2
 9  5
gini ( D) 1       0.459
 14   14 
 Suppose the attribute income partitions D into 10 in D1: {low,
medium} and 4 ingini
Dincome  10   4
2 {low, medium} ( D )   Gini ( D1 )    Gini( D2 )
 14   14 

Gini{low,high} is 0.458; Gini{medium,high} is 0.450. Thus, split on the


{low,medium} (and {high}) since it has the lowest Gini index
 All attributes are assumed continuous-valued
 May need other tools, e.g., clustering, to get the possible split
values
 Can be modified for categorical attributes 21
Comparing Attribute Selection Measures

 The three measures, in general, return good results


but
◦ Information gain:
 biased towards multivalued attributes
◦ Gain ratio:
 tends to prefer unbalanced splits in which one
partition is much smaller than the others
◦ Gini index:
 biased to multivalued attributes
 has difficulty when # of classes is large
 tends to favor tests that result in equal-sized
partitions and purity in both partitions 22
Other Attribute Selection Measures
 CHAID: a popular decision tree algorithm, measure based on χ2 test
for independence
 C-SEP: performs better than info. gain and gini index in certain cases
 G-statistic: has a close approximation to χ2 distribution
 MDL (Minimal Description Length) principle (i.e., the simplest
solution is preferred):
◦ The best tree as the one that requires the fewest # of bits to both
(1) encode the tree, and (2) encode the exceptions to the tree
 Multivariate splits (partition based on combination of attributes)
◦ CART: finds multivariate splits based on a linear comb. of
attributes.
 Which attribute selection measure is the best?
◦ Most give good results, none is significantly superior than others
23
Overfitting and Tree Pruning
 Overfitting: An induced tree may overfit the training
data
◦ Too many branches, some may reflect anomalies due
to noise or outliers
◦ Poor accuracy for unseen samples
 Two approaches to tree pruning (avoid overfitting)

◦ Prepruning: Halt tree construction early ̵ do not split a


node if this would result in the goodness measure
falling below a threshold
 Difficult to choose an appropriate threshold
◦ Postpruning: Remove branches from a “fully grown”
tree—get a sequence of progressively pruned trees
 Use a set of data different from the training data to
decide which is the “best pruned tree” 24
25
Scalability and Decision Tree Induction

 The efficiency of existing decision tree


algorithms, such as ID3, C4.5 and CART has been
well established for relatively small data sets.
 Efficiency becomes an issue of concern when
these algorithms are applied to the mining of
very large real-world databases.
 The decision tree algorithm has the restriction
that the training tuples should reside in memory.
 In DM applications training set are having millions
of tuples so it can not fit in memory.
 Repeated swapping of data in and out of memory
cache makes the algorithm inefficient.

26
Scalability and Decision Tree
Induction
 Several scalable Decision tree induction
methods have been introduced eg.
 Rainforest-adapts to the amount of main
memory available and applies to any
decision tree algorithm
 BOAT (Bootstrap Optimistic Algorithm for
tree construction)- it uses a statistical
technique known as ‘Bootstraping” to
create smaller samples of training data
each of which fits into memory.

27
Classification in Large Databases
 Classification—a classical problem extensively studied
by statisticians and machine learning researchers
 Scalability: Classifying data sets with millions of
examples and hundreds of attributes with reasonable
speed
 Why is decision tree induction popular?
◦ relatively faster learning speed (than other
classification methods)
◦ convertible to simple and easy to understand
classification rules
◦ can use SQL queries for accessing databases
◦ comparable classification accuracy with other
methods

 RainForest (VLDB’98 — Gehrke, Ramakrishnan &


Ganti)
◦ Builds an AVC-list (attribute, value, class label) 28
Scalability Framework for RainForest

 Separates the scalability aspects from the criteria that


determine the quality of the tree
 Builds an AVC-list: AVC (Attribute, Value, Class_label)
 AVC-set (of an attribute X )
◦ Projection of training dataset onto the attribute X and
class label where counts of individual class label are
aggregated
 AVC-group (of a node n )
◦ Set of AVC-sets of all predictor attributes at the node n

29
Rainforest: Training Set and Its AVC Sets

Training Examples AVC-set on Age AVC-set on income


age income studentcredit_rating
buys_computerAge Buy_Computer income Buy_Computer

<=30 high no fair no yes no


yes no
<=30 high no excellent no
high 2 2
31…40 high no fair yes <=30 2 3
31..40 4 0 medium 4 2
>40 medium no fair yes
>40 low yes fair yes >40 3 2 low 3 1

>40 low yes excellent no


31…40 low yes excellent yes
AVC-set on
<=30 medium no fair no AVC-set on Student
credit_rating
<=30 low yes fair yes
student Buy_Computer
>40 medium yes fair yes Buy_Computer

<=30 medium yes excellent yes yes no Credit


rating yes no
31…40 medium no excellent yes yes 6 1
fair 6 2
31…40 high yes fair yes no 3 4
excellent 3 3
>40 medium no excellent no
30
BOAT (Bootstrapped Optimistic Algorithm for
Tree Construction)

 Use a statistical technique called bootstrapping to create


several smaller samples (subsets), each fits in memory
 Each subset is used to create a tree, resulting in several
trees
 These trees are examined and used to construct a new
tree T’
◦ It turns out that T’ is very close to the tree that would be
generated using the whole data set together
 Adv: requires only two scans of DB, an incremental alg.

31
Bayesian Classification: Why?
 A statistical classifier: performs probabilistic prediction, i.e.,
predicts class membership probabilities such as the
probability that a given tuple belongs to a particular class.
 Foundation: Based on Bayes’ Theorem.
 Performance: A simple Bayesian classifier, Naïve Bayesian
classifier, has comparable performance with decision tree
and selected neural network classifiers
 Incremental: Each training example can incrementally
increase/decrease the probability that a hypothesis is correct
— prior knowledge can be combined with observed data
 Standard: Even when Bayesian methods are computationally
intractable, they can provide a standard of optimal decision
making against which other methods can be measured

32
Bayes’ Theorem: Basics
 Total probability Theorem: P(B)  M
 P( B | A ) P( A )
i i
i 1
 Bayes’ Theorem:
P( H | X) P(X | H ) P( H ) P(X | H )P( H ) / P(X)
P(X)
◦ Let X be a data sample (“evidence”): class label is unknown
◦ Let H be a hypothesis that X belongs to class C
◦ Classification is to determine P(H|X), (i.e., posteriori probability):
the probability that the hypothesis holds given the observed
data sample X
◦ P(H) (prior probability): the initial probability
 E.g., X will buy computer, regardless of age, income, …
◦ P(X): probability that sample data is observed
◦ P(X|H) (likelihood): the probability of observing the sample X,
given that the hypothesis holds
 E.g., Given that X will buy computer, the prob. that X is 31..40,
medium income 33
Prediction Based on Bayes’ Theorem

 Giventraining data X, posteriori probability of a


hypothesis H, P(H|X), follows the Bayes’ theorem

P(H | X) P(X | H ) P( H ) P(X | H )P( H ) / P(X)


P(X)
 Informally, this can be viewed as
posteriori = likelihood x prior/evidence
 Predicts X belongs to Ci iff the probability P(Ci|X) is
the highest among all the P(Ck|X) for all the k
classes
 Practical
difficulty: It requires initial knowledge of
many probabilities, involving significant 34
Classification Is to Derive the Maximum Posteriori

 Let D be a training set of tuples and their


associated class labels, and each tuple is
represented by an n-D attribute vector X = (x1, x2,
…, xn)
 Suppose there are m classes C1, C2, …, Cm.
 Classification is to derive the maximum posteriori,
i.e., the maximal P(Ci|X)
P(X | C )P(C )
i
(C | X)  theorem
 This can be derived from PBayes’ i
i P(X)

P(C | X) P(X | C )P(C )


 Since P(X) is constant for i all classes,
i only
i

needs to be maximized 35
Naïve Bayes Classifier
A simplified assumption: attributes are
conditionally independent (i.e., no dependence
relation between attributes):
P( X | ) 
n
P ( | ) P ( | ) P ( | ) ...P ( | )
Ci  x k Ci x 1 Ci x 2 Ci x n Ci
k 1
 This greatly reduces the computation cost: Only
counts the class distribution
 If A is categorical, P(x |C ) is the # of tuples in C
k k i i
having value xk for Ak divided by |Ci, D| (# of tuples
of Ci in D)
 If A is continous-valued, P(xk|Ci) ( x  is usually
k ) 2

computed based on Gaussian 1


distribution

with a
g ( x,  ,  ) 
2
e 2
mean μ and standard deviation σ 2 
P ( X | C i )  g ( xk ,  Ci ,  Ci )
and P(xk|Ci) is
36
Naïve Bayes Classifier: Training Dataset

age income studentcredit_rating


buys_computer
Class: <=30 high no fair no
<=30 high no excellent no
C1:buys_computer = ‘yes’
31…40 high no fair yes
C2:buys_computer = ‘no’>40 medium no fair yes
>40 low yes fair yes
>40 low yes excellent no
Data to be classified: 31…40 low yes excellent yes
X = (age <=30, <=30 medium no fair no
Income = medium, <=30 low yes fair yes
>40 medium yes fair yes
Student = yes <=30 medium yes excellent yes
Credit_rating = Fair) 31…40 medium no excellent yes
31…40 high yes fair yes
>40 medium no excellent no

37
Naïve Bayes Classifier: An Example age income studentcredit_rating
buys_comp
<=30 high no fair no
<=30 high no excellent no
31…40 high no fair yes
 P(Ci):P(buys_computer = “yes”) = 9/14 = 0.643 >40 medium no fair yes
>40 low yes fair yes
>40 low yes excellent no
P(buys_computer = “no”) = 5/14= 0.357 31…40
<=30
low
medium
yes excellent
no fair
yes
no
 Compute P(X|C ) for each class <=30
>40
low yes fair
medium yes fair
yes
yes
i
<=30 medium yes excellent yes
P(age = “<=30” | buys_computer = “yes”) = 2/9 = 0.22231…40
31…40
medium
high
no excellent
yes fair
yes
yes

P(age = “<= 30” | buys_computer = “no”) = 3/5 = 0.6 >40 medium no excellent no

P(income = “medium” | buys_computer = “yes”) = 4/9 = 0.444


P(income = “medium” | buys_computer = “no”) = 2/5 = 0.4
P(student = “yes” | buys_computer = “yes) = 6/9 = 0.667
P(student = “yes” | buys_computer = “no”) = 1/5 = 0.2
P(credit_rating = “fair” | buys_computer = “yes”) = 6/9 = 0.667
P(credit_rating = “fair” | buys_computer = “no”) = 2/5 = 0.4
 X = (age <= 30 , income = medium, student = yes, credit_rating =
fair)
P(X|Ci) : P(X|buys_computer = “yes”) = 0.222 x 0.444 x 0.667 x 0.667 =
0.044
P(X|buys_computer = “no”) = 0.6 x 0.4 x 0.2 x 0.4 = 0.019
P(X|Ci)*P(Ci) : P(X|buys_computer = “yes”) * P(buys_computer = “yes”) =
0.028
P(X|buys_computer = “no”) * P(buys_computer = “no”) =
0.007 38
Avoiding the Zero-Probability Problem
 Naïve Bayesian prediction requires each conditional
prob. be non-zero. Otherwise, the predicted prob.
will be zero n
P( X | C i)   P( x k | C i)
k 1

 Ex. Suppose a dataset with 1000 tuples, income=low


(0), income= medium (990), and income = high (10)
 Use Laplacian correction (or Laplacian estimator)
◦ Adding 1 to each case
Prob(income = low) = 1/1003
Prob(income = medium) = 991/1003
Prob(income = high) = 11/1003
◦ The “corrected” prob. estimates are close to their
“uncorrected” counterparts 39
Naïve Bayes Classifier: Comments
 Advantages
◦ Easy to implement
◦ Good results obtained in most of the cases
 Disadvantages
◦ Assumption: class conditional independence,
therefore loss of accuracy
◦ Practically, dependencies exist among variables
 E.g., hospitals: patients: Profile: age, family
history, etc.
Symptoms: fever, cough etc., Disease: lung
cancer, diabetes, etc.
 Dependencies among these cannot be modeled
by Naïve Bayes Classifier
 How to deal with these dependencies? Bayesian
Belief Networks (Chapter 9)
40
Using IF-THEN Rules for Classification
 Represent the knowledge in the form of IF-THEN rules
R: IF age = youth AND student = yes THEN buys_computer = yes
◦ Rule antecedent/precondition vs. rule consequent
 Assessment of a rule: coverage and accuracy
◦ ncovers = # of tuples covered by R
◦ ncorrect = # of tuples correctly classified by R
coverage(R) = ncovers /|D| /* D: training data set */
accuracy(R) = ncorrect / ncovers
 If more than one rule are triggered, need conflict resolution
◦ Size ordering: assign the highest priority to the triggering rules that
has the “toughest” requirement (i.e., with the most attribute tests)
◦ Class-based ordering: decreasing order of prevalence or
misclassification cost per class
◦ Rule-based ordering (decision list): rules are organized into one
long priority list, according to some measure of rule quality or by
experts
41
Rule Extraction from a Decision Tree
 Rules are easier to understand than large
trees age?
 One rule is created for each path from the <=30 31..40 >40
root to a leaf
student? credit rating?
yes
 Each attribute-value pair along a path forms a
excellent fair
conjunction: the leaf holds the class no yes

no yes
prediction no yes

 Rules are mutually exclusive and exhaustive


 Example: Rule extraction from our buys_computer decision-
tree
IF age = young AND student = no THEN buys_computer = no
IF age = young AND student = yes THEN buys_computer = yes
IF age = mid-age THEN buys_computer = yes
IF age = old AND credit_rating = excellent THEN buys_computer = no
IF age = old AND credit_rating = fair THEN buys_computer = yes 42
Model Evaluation and Selection
 Evaluation metrics: How can we measure accuracy?
Other metrics to consider?
 Use validation test set of class-labeled tuples
instead of training set when assessing accuracy
 Methods for estimating a classifier’s accuracy:
◦ Holdout method
◦ Random subsampling
◦ Cross-validation
◦ Bootstrap
 Comparing classifiers:
◦ Confidence intervals
◦ Cost-benefit analysis and ROC Curves
43
Classifier Evaluation Metrics: Confusion
Matrix
Confusion Matrix:
Actual class\Predicted class C1 ¬ C1
C1 True Positives (TP) False Negatives (FN)
¬ C1 False Positives (FP) True Negatives (TN)

Example of Confusion Matrix:


Actual class\Predicted buy_computer buy_computer Total
class = yes = no
buy_computer = yes 6954 46 7000
buy_computer = no 412 2588 3000
Total 7366 2634 10000

 Given m classes, an entry, CMi,j in a confusion matrix


indicates # of tuples in class i that were labeled by the
classifier as class j
 May have extra rows/columns to provide totals
44
Classifier Evaluation Metrics:
Accuracy, Error Rate, Sensitivity
and Specificity
A\P C ¬C
Class Imbalance Problem:

C TP FN P  One class may be rare, e.g.
¬C FP TN N
fraud, or HIV-positive
P’ N’ All
 Significant majority of the

 Classifier Accuracy, or negative class and minority of


recognition rate: the positive class
 Sensitivity: True Positive
percentage of test set
tuples that are correctly recognition rate
classified 
Sensitivity = TP/P
Accuracy = (TP +  Specificity: True Negative

TN)/All recognition rate


 Error rate: 1 – accuracy, 
Specificity = TN/N
or
45
Classifier Evaluation Metrics:
Precision and Recall, and F-measures
 Precision: exactness – what % of tuples that the
classifier labeled as positive are actually positive

 Recall: completeness – what % of positive tuples


did the classifier label as positive?
 Perfect score is 1.0
 Inverse relationship between precision & recall
 F measure (F or F-score): harmonic mean of
1
precision and recall,

F : weighted measure of precision and recall


ß
◦ assigns ß times as much weight to recall as to
precision

46
Classifier Evaluation Metrics: Example

Actual Class\Predicted class cancer = yes cancer = no Total Recognition(%)


cancer = yes 90 210 300 30.00 (sensitivity
cancer = no 140 9560 9700 98.56 (specificity)
Total 230 9770 10000 96.40 (accuracy)
◦ Precision = 90/230 = 39.13% Recall = 90/300 = 30.00%

47
Evaluating Classifier Accuracy:
Holdout & Cross-Validation

Methods
Holdout method
◦ Given data is randomly partitioned into two independent
sets
 Training set (e.g., 2/3) for model construction
 Test set (e.g., 1/3) for accuracy estimation
◦ Random sampling: a variation of holdout
 Repeat holdout k times, accuracy = avg. of the
accuracies obtained
 Cross-validation (k-fold, where k = 10 is most popular)
◦ Randomly partition the data into k mutually exclusive
subsets, each approximately equal size
◦ At i-th iteration, use Di as test set and others as training
set
◦ Leave-one-out: k folds where k = # of tuples, for small
sized data
◦ *Stratified cross-validation*: folds are stratified so that
class dist. in each fold is approx. the same as that in the
initial data 48
Evaluating Classifier Accuracy: Bootstrap
 Bootstrap
◦ Works well with small data sets
◦ Samples the given training tuples uniformly with
replacement
 i.e., each time a tuple is selected, it is equally likely to be
selected again and re-added to the training set
 Several bootstrap methods, and a common one is .632
bootstrap
◦ A data set with d tuples is sampled d times, with
replacement, resulting in a training set of d samples. The
data tuples that did not make it into the training set end up
forming the test set. About 63.2% of the original data end
up in the bootstrap, and the remaining 36.8% form the test
set (since (1 – 1/d)d ≈ e-1 = 0.368)
◦ Repeat the sampling procedure k times, overall accuracy of
the model: 49
Estimating Confidence Intervals:
Classifier Models M1 vs. M2

 Suppose we have 2 classifiers, M1 and M2, which one is


better?
 Use 10-fold cross-validation to obtain and
 These mean error rates are just estimates of error on
the true population of future data cases
 What if the difference between the 2 error rates is just
attributed to chance?
◦ Use a test of statistical significance

◦ Obtain confidence limits for our error estimates


50
Estimating Confidence Intervals:
Null Hypothesis

 Perform 10-fold cross-validation


 Assume samples follow a t distribution
with k–1 degrees of freedom (here, k=10)
 Use t-test (or Student’s t-test)
 Null Hypothesis: M1 & M2 are the same
 If we can reject null hypothesis, then
◦ we conclude that the difference between
M1 & M2 is statistically significant
◦ Chose model with lower error rate
51
Estimating Confidence Intervals: t-test
Ifonly 1 test set available: pairwise
comparison
◦ For ith round of 10-fold cross-validation, the same cross
partitioning is used to obtain err(M1)i and err(M2)i
an
◦ Average over 10 rounds to get
d
◦ t-test computes t-statistic with k-1 degrees
of freedom: where

Iftwo test sets available: use non-paired


wher
t-test e
where k1 & k2 are # of cross-validation samples used for M1 & M2, resp.
52
Estimating Confidence Intervals:
Table for t-distribution

 Symmetric
 Significance
level, e.g., sig
= 0.05 or 5%
means M1 & M2
are significantly
different for
95% of
population
 Confidence
limit, z = sig/2
53
Estimating Confidence Intervals:
Statistical Significance
 Are M1 & M2 significantly different?
◦ Compute t. Select significance level (e.g. sig = 5%)
◦ Consult table for t-distribution: Find t value
corresponding to k-1 degrees of freedom (here, 9)
◦ t-distribution is symmetric: typically upper % points
of distribution shown → look up value for
confidence limit z=sig/2 (here, 0.025)
◦ If t > z or t < -z, then t value lies in rejection
region:
 Reject null hypothesis that mean error rates of
M1 & M2 are same
 Conclude: statistically significant difference
between M1 & M2
◦ Otherwise, conclude that any difference is chance

54
Model Selection: ROC Curves
 ROC (Receiver Operating
Characteristics) curves: for visual
comparison of classification models
 Originated from signal detection
theory
 Shows the trade-off between the true
positive rate and the false positive
rate  Vertical axis
 The area under the ROC curve is a represents the true
measure of the accuracy of the positive rate
model  Horizontal axis rep.
 Rank the test tuples in decreasing the false positive rate
order: the one that is most likely to  The plot also shows a
belong to the positive class appears diagonal line
at the top of the list

 A model with perfect
The closer to the diagonal line (i.e., accuracy will have an
the closer the area is to 0.5), the less
accurate is the model
area of 1.0
55
Issues Affecting Model Selection
 Accuracy

◦ classifier accuracy: predicting class label


 Speed

◦ time to construct the model (training time)


◦ time to use the model (classification/prediction
time)
 Robustness: handling noise and missing values
 Scalability: efficiency in disk-resident databases
 Interpretability

◦ understanding and insight provided by the


model
 Other measures, e.g., goodness of rules, such as 56
Ensemble Methods: Increasing the Accuracy

 Ensemble methods
◦ Use a combination of models to increase accuracy
◦ Combine a series of k learned models, M1, M2, …, Mk,
with the aim of creating an improved model M*
 Popular ensemble methods

◦ Bagging: averaging the prediction over a collection of


classifiers
◦ Boosting: weighted vote with a collection of classifiers
◦ Ensemble: combining a set of heterogeneous
classifiers
57
Bagging: Boostrap Aggregation
 Analogy: Diagnosis based on multiple doctors’ majority vote
 Training
◦ Given a set D of d tuples, at each iteration i, a training set Di of
d tuples is sampled with replacement from D (i.e., bootstrap)
◦ A classifier model Mi is learned for each training set Di
 Classification: classify an unknown sample X
◦ Each classifier Mi returns its class prediction
◦ The bagged classifier M* counts the votes and assigns the class
with the most votes to X
 Prediction: can be applied to the prediction of continuous values
by taking the average value of each prediction for a given test
tuple
 Accuracy
◦ Often significantly better than a single classifier derived from D
◦ For noise data: not considerably worse, more robust
◦ Proved improved accuracy in prediction 58
Boosting
 Analogy: Consult several doctors, based on a combination of
weighted diagnoses—weight assigned based on the
previous diagnosis accuracy
 How boosting works?
◦ Weights are assigned to each training tuple
◦ A series of k classifiers is iteratively learned
◦ After a classifier Mi is learned, the weights are updated to
allow the subsequent classifier, Mi+1, to pay more
attention to the training tuples that were
misclassified by Mi
◦ The final M* combines the votes of each individual
classifier, where the weight of each classifier's vote is a
function of its accuracy
 Boosting algorithm can be extended for numeric prediction
 Comparing with bagging: Boosting tends to have greater
accuracy, but it also risks overfitting the model to
misclassified data 59
Adaboost (Freund and Schapire, 1997)
 Given a set of d class-labeled tuples, (X1, y1), …, (Xd, yd)
 Initially, all the weights of tuples are set the same (1/d)
 Generate k classifiers in k rounds. At round i,
◦ Tuples from D are sampled (with replacement) to form a
training set Di of the same size
◦ Each tuple’s chance of being selected is based on its weight
◦ A classification model Mi is derived from Di
◦ Its error rate is calculated using Di as a test set
◦ If a tuple is misclassified, its weight is increased, o.w. it is
decreased
 Error rate: err(Xj) is the misclassification error of tuple Xj.
Classifier Mi error rate is the sum of the weights of the
misclassified tuples:d
error ( M i )  w j err ( X j )
j
1  error ( M i )
 The weight of classifier Mi’s vote is log
error ( M i )
60
61
Random Forest (Breiman
 2001)
Random Forest:
◦ Each classifier in the ensemble is a decision tree classifier and is
generated using a random selection of attributes at each node
to determine the split
◦ During classification, each tree votes and the most popular class
is returned
 Two Methods to construct Random Forest:
◦ Forest-RI (random input selection): Randomly select, at each
node, F attributes as candidates for the split at the node. The
CART methodology is used to grow the trees to maximum size
◦ Forest-RC (random linear combinations): Creates new attributes
(or features) that are a linear combination of the existing
attributes (reduces the correlation between individual classifiers)
 Comparable in accuracy to Adaboost, but more robust to errors
and outliers
 Insensitive to the number of attributes selected for consideration
at each split, and faster than bagging or boosting
62
Classification of Class-Imbalanced Data Sets
 Class-imbalance problem: Rare positive example but
numerous negative ones, e.g., medical diagnosis, fraud, oil-
spill, fault, etc.
 Traditional methods assume a balanced distribution of
classes and equal error costs: not suitable for class-
imbalanced data
 Typical methods for imbalance data in 2-class classification:
◦ Oversampling: re-sampling of data from positive class
◦ Under-sampling: randomly eliminate tuples from
negative class
◦ Threshold-moving: moves the decision threshold, t, so
that the rare class tuples are easier to classify, and hence,
less chance of costly false negative errors
◦ Ensemble techniques: Ensemble multiple classifiers
introduced above
 Still difficult for class imbalance problem on multiclass tasks

63
Summary (I)

 Classification
is a form of data analysis that extracts models
describing important data classes.
 Effective and scalable methods have been developed for
decision tree induction, Naive Bayesian classification, rule-
based classification, and many other classification methods.
 Evaluation metrics include: accuracy, sensitivity, specificity,
precision, recall, F measure, and Fß measure.
 Stratifiedk-fold cross-validation is recommended for accuracy
estimation. Bagging and boosting can be used to increase
overall accuracy by learning and combining a series of
individual models.

64
Summary (II)

 Significance tests and ROC curves are useful for model


selection.
 There have been numerous comparisons of the different
classification methods; the matter remains a research
topic
 No single method has been found to be superior over all
others for all data sets
 Issues such as accuracy, training time, robustness,
scalability, and interpretability must be considered and
can involve trade-offs, further complicating the quest
for an overall superior method
65
Issues: Evaluating Classification Methods

 Accuracy
◦ classifier accuracy: predicting class label
◦ predictor accuracy: guessing value of predicted
attributes
 Speed
◦ time to construct the model (training time)
◦ time to use the model (classification/prediction
time)
 Robustness: handling noise and missing values
 Scalability: efficiency in disk-resident databases
 Interpretability
◦ understanding and insight provided by the
model
 Other measures, e.g., goodness of rules, such as
66
Predictor Error Measures

 Measure predictor accuracy: measure how far off the predicted


value is from the actual known value
 Loss function: measures the error betw. y i and the predicted value
yi’
◦ Absolute error: | yi – yi’|
◦ Squared error: (yi – yd i’)2
d
 | yerror):
 Test error (generalization  y '|
i 1
the average loss over 
i i
the  y ' ) set
( y test i i
2

i 1
◦ Mean absolute error: d Mean squared error: d
d
d

| y
i 1
i  yi ' |  ( yi  yi ' ) 2
i 1
d
d
◦ Relative absolute error: | yi  y| Relative squared error: ( y  y ) 2
i 1  i i 1

The mean squared-error exaggerates the presence of outliers


Popularly use (square) root mean-square error, similarly, root
relative squared error
67
Scalable Decision Tree Induction Methods

 SLIQ (EDBT’96 — Mehta et al.)


◦ Builds an index for each attribute and only class list
and the current attribute list reside in memory
 SPRINT (VLDB’96 — J. Shafer et al.)
◦ Constructs an attribute list data structure
 PUBLIC (VLDB’98 — Rastogi & Shim)
◦ Integrates tree splitting and tree pruning: stop growing
the tree earlier
 RainForest (VLDB’98 — Gehrke, Ramakrishnan & Ganti)
◦ Builds an AVC-list (attribute, value, class label)
 BOAT (PODS’99 — Gehrke, Ganti, Ramakrishnan & Loh)
◦ Uses bootstrapping to create several small samples

68
Data Cube-Based Decision-Tree Induction

 Integration of generalization with decision-tree


induction (Kamber et al.’97)
 Classification at primitive concept levels
◦ E.g., precise temperature, humidity, outlook, etc.
◦ Low-level concepts, scattered classes, bushy
classification-trees
◦ Semantic interpretation problems
 Cube-based multi-level classification
◦ Relevance analysis at multi-levels
◦ Information-gain analysis with dimension + level
69

You might also like