overview classification and predictionredwood.cs.ttu.edu/.../datamining/7-classification... ·...

28
1 CS 5331 by Rattikorn Hewett Texas Tech University 1 Classification and Prediction 2 Outline Overview Tasks Evaluation Issues Classification techniques Decision Tree Bayesian-based Neural network Others Prediction techniques Summary 3 Tasks Classification & Prediction describe data with respect to a target class/output create, from a data set, a model that describes a target class in terms of features (or attributes or variables) of the class or system generating the data use the model to classify an unknown target class predict an unknown output Example Applications credit approval medical diagnosis treatment effectiveness analysis What about image recognition or customer profiling? 4 Classification vs. Prediction Comparisons: Classification Prediction Data labeled (by known target class) labeled (by known output) Model classifier/classification model predictive model Use of the model classify unknown label predict unknown output Typical unknown values categorical continuous/ordered Labeled Data Algorithm Model Data with unknown class label or output class label or predicted output

Upload: others

Post on 03-Jul-2020

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

1

CS 5331 by Rattikorn Hewett Texas Tech University 1

Classification and Prediction

2

Outline

n  Overview ¨ Tasks ¨ Evaluation ¨  Issues

n  Classification techniques ¨ Decision Tree ¨ Bayesian-based ¨ Neural network ¨ Others

n  Prediction techniques n  Summary

3

Tasks

n  Classification & Prediction ¨  describe data with respect to a target class/output ¨  create, from a data set, a model that

n  describes a target class in terms of features (or attributes or variables) of the class or system generating the data

¨  use the model to n  classify an unknown target class n  predict an unknown output

n  Example Applications ¨  credit approval ¨  medical diagnosis ¨  treatment effectiveness analysis

What about image recognition or customer profiling?

4

Classification vs. Prediction

n  Comparisons: Classification Prediction Data labeled (by known target class) labeled (by known output) Model classifier/classification model predictive model Use of the model classify unknown label predict unknown output Typical unknown values categorical continuous/ordered

Labeled Data Algorithm Model

Data with unknown class label or output

class label or predicted output

Page 2: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

2

5

Three-step process

n  Model Construction (Training/Learning) ¨  Build a model that describes training data labeled with known

classes/outputs ¨  A model could be of various forms: rules, decision trees, formulae

n  Model Evaluation (Testing) ¨  Use a labeled testing data set to estimate model accuracy

n  The known label of test sample is compared with the classified result from the model

n  Accuracy = % test cases correctly classified by the model

n  Model Usage (Classification) ¨  Use the model with acceptable accuracy to classify or predict

unknown

6

Example inst Credit

history Debt Collateral Income Risk

1 Bad H None L H 2 U H None M H 3 U L None M M 4 U L None L H 5 U L None H L 6 U L Ok H L 7 Bad L None L H 8 Bad L Ok H M 9 Good L None H L

10 Good H Ok H L 11 Good H None L H 12 Good H None M M 13 Good H None H L 14 Bad H None M H

Classification Algorithm

Classifier (Model): 1. If income = L then Risk = H 2. If income = H and Credit History = U then Risk = L …….

inst Credit history Debt Collateral Income Risk

1 Bad H Ok L H 2 Good L None M H 3 U L None M M 4 U M None L H 5 U L None H L

inst Credit history Debt Collateral Income Risk

1 U H Ok L ? 2 Bad L None M ?

Model Construction

Model Evaluation Accuracy = ? Model Usage

7

Machine learning context

Training Data Algorithm Model

Data with unknown class label or output

class label or predicted output

Testing Data

Labeled Data

Is the model sufficiently accurate?

no

yes

Model: • classifier • predictive model

Training Testing

Input Data Output Model

8

Supervised vs. Unsupervised

n  Supervised learning ¨  Class labels and # classes are known ¨  Labeled data: the training data (observations, measurements,

features etc.) are accompanied by labels indicating the class of the observations

¨  Goal is to describe class/concept in terms of features/observations à classification/prediction

n  Unsupervised learning ¨  Class labels are unknown and # classes may not be known ¨  Unlabeled data: the training data does not have class labels ¨  Goal is to establish the existence of classes or concepts or clusters

in the data à clustering

Page 3: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

3

9

Terms

n  Machine learning aims to abstract regularities from a given data set ¨  Mining ~ learning ~ induction (reasoning from specifics to general)

n  A training set consists of training instances ¨  The terms instances, tuples (or rows), examples, samples, and

objects are used synonymously

n  A testing set is independent of a training set ¨  If a training set is used for testing during learning process, the

resulting model will overfit the training data à the model could incorporate anomalies in the training data that are not present in the overall sample population à model that may not represent the population (poor generalization)

10

Outline

n  Overview ¨ Tasks ¨ Evaluation ¨  Issues

n  Classification techniques ¨ Decision Tree ¨ Bayesian-based ¨ Neural network ¨ Others

n  Prediction techniques n  Summary

11

Evaluation

n  A resulting model (classifier) is tested against a testing data set to measure its ¨ Accuracy or ¨ Error rate = # misclassified test cases/#test cases in %

n  Experimental methods ¨  Holdout method ¨  Random subsampling ¨  Cross validation ¨  Bootstrapping

12

Holdout method

n  Randomly partition a data set into two independent sets: a training set and a test set (typically 2/3 and1/3) ¨  The training set is used to derive a classifier, whose accuracy is

estimated using the test set

n  Use with data set that has large number of samples

Classifier (Model) Estimate

Accuracy

Data

Training Data

Testing Data

Page 4: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

4

13

Random sub-sampling

n  Repeat holdout method k times n  Overall accuracy = average of the accuracies in each

iteration Training

Data

Classifier (Model) Estimate

Accuracy

Testing Data

Data

Training Data

Classifier (Model) Estimate

Accuracy

Testing Data

Data

Average accuracy

•••

•••

What happens when the data requires supervised discretization (e.g., Fayad&Irani’’s alg.)?

14

Cross validation

n  k-fold cross validation ¨  Divide a data set into k approximately equal subsets of samples ¨  Use k-1 subsets for training set and the rest for testing set ¨  Obtain a classifier/accuracy from each pair of training and testing

sets (k possibilities)

Train Data

Classifier (Model)

Estimate Accuracy

Test Data

Data

Train Data

Classifier (Model)

Estimate Accuracy

Test Data

Average accuracy

•••

•••

•••

15

Cross validation & Bootstrapping

n  Stratified cross validation – the folds are stratified so that the class distribution of the samples in each fold is approximately the same as that in the initial data

n  Stratified 10-fold Cross-validation is recommended when a sample set is of medium size

n  When sample set size is very small à Bootstrapping ¨ Leave-one-out sample training set with replacement

16

Improving Accuracy

n Use a committee of classifiers and combine the results of each classifier

n Two basic techniques: ¨ Bagging ¨ Boosting

Page 5: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

5

17

Bagging

n  Generate independent training sets by random sampling with replacement from the original sample set

n  Construct a classifier for each training set using the same classification algorithm

n  To classify an unknown sample x, each classifier returns its class prediction, which counts as one vote

n  The Bagged Classifier C* counts the votes and assigns x to the class with the “most” votes

18

Bagging

Training Data Set

Classifier 1

Classifier 2

Classifier n

Aggregated Classifier, C*

by Majority of the votes

Test Data Set

Resulting classes

Training Sample 1

Training Sample 2

Training Sample n

19

Boosting n  Assign weight to each training sample n  A series of classifiers is learned. After classifier Ct is learned

¨  Calculate the error and re-weight the examples based on the error.

¨  The weights are updated to allow the subsequent classifier Ct+1 to “pay more attention” to the misclassification errors made by Ct

n  The final boosted classifier C* combines the votes of each classifier,

where the weight of each classifier’s vote is a function of its accuracy on the training set

20

Boosting

Weighted Training Data Set

Classifier 1

Classifier 2

Classifier n

Aggregated Classifier, C*

by weighted

votes

Test Data Set

Resulting classes

Weighted Training Data Set

Weighted Training Data Set

Classifier 3

Weighted Training Data Set

Classifier n-1

Weighted are based on resulting accuracy

Page 6: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

6

21

Outline

n  Overview ¨ Tasks ¨ Evaluation ¨  Issues

n  Classification techniques ¨ Decision Tree ¨ Bayesian-based ¨ Neural network ¨ Others

n  Prediction techniques n  Summary

22

Issues on classification/prediction

n  How do we compare different techniques? ¨  No single method works well for all data sets

n  Some evaluation criteria: ¨  Accuracy – indicates generalization power ¨  Speed – time to train/learn a model and time to use the model ¨  Robustness – tolerant to noise and incorrect data ¨  Scalability – acceptable run time to learn as data size and complexity grow ¨  Interpretability – comprehensibility and insight from the resulting model

23

Issues on classification/prediction

n  Any alternatives to the accuracy measure? ¨  Sensitivity = t-pos/pos ¨  Specificity = t-neg/neg ¨  Accuracy = sensitivity (pos/(pos+neg)) + specificity (neg/(pos+neg)

= (t-pos + t-neg)/(pos+neg)

pos = # positive samples neg = # negative samples t-pos = # of true positives t-neg = # of true negatives f-pos = # of false positives f-neg = # of false negatives

Classified

Actual

cancer ~ cancer

cancer

~ cancer

t-pos f-pos pos f-neg t-neg neg

24

Outline

n  Overview ¨ Tasks ¨ Evaluation ¨  Issues

n  Classification techniques ¨ Decision Tree ¨ Bayesian-based ¨ Neural network ¨ Others

n  Prediction techniques n  Summary

Page 7: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

7

25

Input/Output

inst Credit history Debt Collateral Income Risk

1 Bad H None L H 2 U H None M H 3 U L None M M 4 U L None L H 5 U L None H L 6 U L Ok H L 7 Bad L None L H 8 Bad L Ok H M 9 Good L None H L

10 Good H Ok H L 11 Good H None L H 12 Good H None M M 13 Good H None H L 14 Bad H None M H

Income

Credit history

debt

Credit history H Risk

H Risk M Risk

L Risk

M Risk

L Risk

M Risk H Risk

L M H

U Bad Good U Bad Good

H L

Training data set Decision Tree Model

Does the tree and the data set cover the same information? 26

Decision Tree (DT) Classification

n  Typically has two phases: ¨  Tree construction ¨  Tree pruning

n  Tree construction (Induction) ¨  Initially, all the training examples are at the root ¨  Recursively partition examples based on selected attributes

n  Tree pruning ¨  Remove branches that may reflect noise/outliers in the data ¨  Give faster or more accurate classification

27

Decision Tree Induction

Basic Algorithm n  Data are categorical n  Tree starts a single node representing all data n  Recursively,

¨  select a split-attribute node that best separates sample classes ¨  If all samples for a given node belong to the same class

à the node becomes a leaf labeled with class label ¨  If no remaining attributes on which samples may be partitioned

Or there are no samples for the attribute value branch à a leaf is labeled with majority class label in samples

28

Example Income

{2,3,12,14} {5,6,8,9,10,13}

H Risk

L M H

{1,4,7,11}

inst Credit history Debt Collateral Income Risk

1 Bad H None L H 2 U H None M H 3 U L None M M 4 U L None L H 5 U L None H L 6 U L Ok H L 7 Bad L None L H 8 Bad L Ok H M 9 Good L None H L

10 Good H Ok H L 11 Good H None L H 12 Good H None M M 13 Good H None H L 14 Bad H None M H

{1,2,....,14}

Page 8: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

8

29

Example Income

{2,3,12,14} {5,6,8,9,10,13}

H Risk

L M H

{1,4,7,11}

inst Credit history Debt Collateral Income Risk

1 Bad H None L H 2 U H None M H 3 U L None M M 4 U L None L H 5 U L None H L 6 U L Ok H L 7 Bad L None L H 8 Bad L Ok H M 9 Good L None H L

10 Good H Ok H L 11 Good H None L H 12 Good H None M M 13 Good H None H L 14 Bad H None M H

Credit history

L Risk

M Risk

L Risk {5,6}

U Bad Good

{8}

{9,10,13}

{1,2,....,14}

30

Example Income

{2,3,12,14} {5,6,8,9,10,13}

H Risk

L M H

{1,4,7,11}

inst Credit history Debt Collateral Income Risk

1 Bad H None L H 2 U H None M H 3 U L None M M 4 U L None L H 5 U L None H L 6 U L Ok H L 7 Bad L None L H 8 Bad L Ok H M 9 Good L None H L

10 Good H Ok H L 11 Good H None L H 12 Good H None M M 13 Good H None H L 14 Bad H None M H

Credit history

L Risk

M Risk

L Risk {5,6}

U Bad Good

{8}

{9,10,13}

Credit history

H Risk M Risk

U Bad Good

{2,3} {14} {12}

{1,2,....,14}

31

Example Income

{2,3,12,14} {5,6,8,9,10,13}

H Risk

L M H

{1,4,7,11}

inst Credit history Debt Collateral Income Risk

1 Bad H None L H 2 U H None M H 3 U L None M M 4 U L None L H 5 U L None H L 6 U L Ok H L 7 Bad L None L H 8 Bad L Ok H M 9 Good L None H L

10 Good H Ok H L 11 Good H None L H 12 Good H None M M 13 Good H None H L 14 Bad H None M H

Credit history

L Risk

M Risk

L Risk {5,6}

U Bad Good

{8}

{9,10,13}

Credit history

debt H Risk M Risk

U Bad Good

{2,3} {14} {12}

M Risk H Risk

H L

{2} {3}

{1,2,....,14}

32

Selecting split-attribute

n  Based on a measure called Goodness function n  Different algorithms use different goodness functions:

¨  Information gain (e.g. in ID3/C4.5 [Quinlan, 94]) n  Assume categorical attribute values - modifiable to continuous-valued

attributes n  Choose attribute with highest information gain

¨ Gini Index(e.g., in CART, IBM IntelligentMiner) n  Assume continuous-valued attributes – modifiable to categorical

attributes n  Assume several possible split values for each attribute – may need

clustering to find possible split values n  Choose attribute with smallest gini index

¨ Others e.g., gain ratio, distance-based measure, etc.

Page 9: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

9

33

Information gain

n  Choose attribute with highest information gain to be the test attribute for current node

n  Highest information gain = greatest entropy reduction

à least randomness in sample partitions à min information needed to classify the sample partitions

34

Information gain

n  Let S be a set of labeled samples, then the information needed to classify a given sample is

n  Expected information needed to classify a sample if it is partitioned into subsets by A.

n  Information gain: Gain(A) = Ent(S) – I(A)

iCi

i ppSEnt 2log)( ∑∈

−= where pi is a probability that a sample from S is in class i. Here pi = |Ci|/|S|, where Ci = a sample set from S whose class label is i

∑∈

=)(

)()(Adomi

ii

SEntSS

AI where Si is a partition of a sample set whose A attribute value is i, and dom(A) = all possible values of A

Probability that a sample from S whose A attribute value is i∈ dom(A)

35

Example Goal - to find attribute A with highest gain(A) on S S = {1, 2, 3, …, 14} - each number represent a sample row C = {H Risk, M Risk, L Risk} {1,2,4,7,11,14} {3,8,12} {5,6,9,10,13} Ent(S) = - p(H Risk)log2(p(H Risk)) - p(M Risk)log2(p(M Risk)) - p(L Risk)log2(p(L Risk)) = - 6/14log2(6/14) - 3/14log2(3/14) - 5/14log2(5/14) = 1.531 To find Gain(Income) on S, Dom(Income) = {H Income, M Income, L Income}

{5,6,8,9,10,13} {2,3,12,14} {1,4,7,11} I(Income) = p(H income)Ent(H income) + p(M income)Ent(M income) + p(L income) Ent(L income) 6/14 4/14 4/14 H Risk M Risk L Risk

Ent(H income) = Ent({5,6,8,9,10,13}) = - 0log2(0)- 1/6log2(1/6)- 5/6log2(5/6) = .65 Ent(M income) = Ent({2,3,12,14}) = - 2/4log2(2/4)- 2/4log2(2/4)- 0log2(0) = 1 Ent(L income) = Ent({1,4,7,11}) = - 4/4log2(4/4)- 0log2(0)- 0log2(0) = 0

I(income) = 6/14(0.65) + 4/14(1) + 4/14(0) = 0.564

Gain(income) = Ent({1,..14}) – I(income) = 1.531 – 0.564 = 0.967

inst Credit history Debt Collateral Income Risk

1 Bad H None L H 2 U H None M H 3 U L None M M 4 U L None L H 5 U L None H L 6 U L Ok H L 7 Bad L None L H 8 Bad L Ok H M 9 Good L None H L

10 Good H Ok H L 11 Good H None L H 12 Good H None M M 13 Good H None H L 14 Bad H None M H

36

Example Goal - to find attribute A with highest gain(A) on S S = {1, 2, 3, …, 14} - each number represent a sample row C = {H Risk, M Risk, L Risk} {1,2,4,7,11,14} {3,8,12} {5,6,9,10,13} Gain(income) = Ent(S) – I(income) = 1.531 – 0.564 = 0.967 Similarly, Gain(credit history) = 0.266 Gain(debt) = 0.581 Gain(collateral) = 0.756

à Select income as a root

inst Credit history Debt Collateral Income Risk

1 Bad H None L H 2 U H None M H 3 U L None M M 4 U L None L H 5 U L None H L 6 U L Ok H L 7 Bad L None L H 8 Bad L Ok H M 9 Good L None H L

10 Good H Ok H L 11 Good H None L H 12 Good H None M M 13 Good H None H L 14 Bad H None M H

Credit history

Recursive process on S = {2,3,12,14} To pick next attribute

{5,6,8,9,10,13}

Income

{2,3,12,14}

H Risk

L M H

{1,4,7,11}

S = {1, 2, 3, …, 14}

Credit history

Recursive process on S = {5,6,8,9,10,13} To pick next attribute

Page 10: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

10

37

Gini Index n  For a data set T containing examples from n classes, define

n  If a data set T is split into two subsets T1 and T2, the gini index of the split data contains examples from n classes is defined as

n  The attribute provides the smallest ginisplit(T) is chosen to split the node (need to enumerate all possible splitting points for each attribute).

∑=

−=n

jpTgini j

11)( 2

)(||)(||)( 22

11 Tgini

NT

TginiNTTginisplit +=

where pj is the relative frequency of class j in T

38

DT induction algorithm

Characteristics: n  Greedy search algorithm

¨ Make optimal choice at each step – select the “best” split-attribute for each tree node

n  Top-down recursive divide-and-conquer manner ¨ From root to leaf ¨ Split node to several branches and each branch,

recursively run algorithm to build a subtree

39

DT Construction Algorithm

Primary Issues: n  Spilt criterion – for selecting split-attribute

¨  Different algorithms use different goodness functions: information gain, gini index etc.

n  Branching scheme – how many sample partitions ¨  Binary branches (gini index) vs. multiple branches (information gain)

n  Stopping condition – when to stop further splitting ¨  Fully-grown vs. stopping early

n  Labeling class ¨  Node is labeled with the most common class

40

From Trees to Rules

n  Represent the knowledge in the form of IF-THEN rules

n  Create one rule 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

n  Rules are easier for humans to understand

Income

Credit history

debt

Credit history H Risk

H Risk M Risk

L Risk

M Risk

L Risk

M Risk H Risk

L M H

U Bad Good U Bad Good

H L

Example: IF income = “M” AND credit-history = “U” AND debt = “H” THEN risk = “H” IF income = “M” AND credit-history = “Good” THEN risk = “M”

Page 11: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

11

41

Overfitting & Tree Pruning n  A tree constructed may overfit the training examples due to noise or

too small a set of training data à Poor accuracy for unseen samples

n  Approaches to avoid overfitting ¨  Prepruning: Stop growing the tree early—do not split a node if

this would result in the goodness measure falling below a threshold

n  Difficult to choose an appropriate threshold ¨  Postpruning: Remove branches from a “fully grown” tree—get a

sequence of progressively pruned trees then decide which is the “best pruned tree”

¨  Combined n  Postpruning is more expensive than prepruning but more effective

42

Postpruning

n  Merge a subtree into a leaf node ¨  If accuracy without splitting > accuracy with splitting, then don’t spilt

⇒ replace the subtree with a leaf node, label it with a majority class

n  Techniques: ¨ Cost complexity pruning – based on expected error rates

n  For each non-leaf node in the tree, compute expected error rate if the subtree was and was not pruned – combined error rates from each branch using weights on sample frequency ratios

n  Requires an independent test sample to estimate the accuracy of each of the progressively pruned trees

¨ Min description length pruning – based on # of tree encoding bits n  The “best pruned tree” minimizes the # of encoding bits n  No test sample set is required

43

Postpruning (cont)

The correct tree size can be determined by:

n Using a separate test set to evaluate the pruning E.g., CART

n Using all the data for training but ¨  applying a statistical test (e.g., chi-square) to

evaluate the pruning E.g., C4.5

n Using minimum description length (MDL) principle ¨  halting growth of the tree when the encoding is minimized E.g., SLIQ, SPRINT

44

Tree induction Enhancement

n  Allow for continuous-valued attributes ¨  Dynamically define a discrete value that partitions the continuous values

into a discrete set of intervals n  sort continuous attribute values, identify adjacent values with

different target classes, generate candidate thresholds midway, and select the one with max gain

n  Handle missing attribute values ¨  Assign the most common value OR probability to each possible values

n  Reduce tree fragmentation, testing repetition , and subtree replication

¨  Attribute construction - create new attributes based on existing ones that are sparsely represented

Page 12: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

12

45

Classification in Large Databases n  Classification: a classical problem extensively studied by statisticians

and machine learning researchers n  Goal: classifying data sets with millions of examples and hundreds of

attributes with reasonable speed n  Decision tree induction seems to be a good candidate

¨  relatively faster learning speed (than other classification methods) ¨  convertible to simple and easy to understand classification rules ¨  can be used to generate SQL queries for accessing databases ¨  has comparable classification accuracy with other methods

n  Primary issue: scalability ¨  most algorithms assume data can fit in memory – need to swap

data in/out of main and cache memories 46

Scaling up decision tree methods

n  Incremental tree construction [Quinlan, 86] ¨  Using partial data to build a tree ¨  Testing of additional examples and examples that are

misclassified are used to rebuild the tree interactively

n  Data reduction [Cattlet, 91] – still a main memory algorithm ¨  Reducing data size by sampling and discretization

n  Data partition and merge [Chan and Stolfo, 91] ¨  Building trees for each partition of the data ¨  Merging trees into one tree ¨  But … resulting accuracy is reported to be reduced

47

Recent efforts in Data Mining Studies

n  SLIQ (EDBT’96 — Mehta et al.) & SPRINT (VLDB’96 — J. Shafer et al.) ¨  presort disk-resident data sets (that are too large to fit in main memory) ¨  handle continuous-valued attributes ¨  define a new data structure to facilitate tree construction

n  PUBLIC (VLDB’98 — Rastogi & Shim) ¨  integrates tree splitting and tree pruning

n  RainForest (VLDB’98 — Gehrke, Ramakrishnan & Ganti) ¨  A framework for scaling decision tree induction that separates

scalability from quality criteria

48

SLIQ

n  Tree building uses a data structure: attribute lists, a class list n  Each attribute has an associated attribute list,

indexed by record ID n  Each tuple is a linkage from each attribute list to a class list

entry and to a leaf node of the decision tree

RID credit-rate age buy-car? 1 good 30 yes 2 fair 28 no

RID buy-car? node 1 yes 2 no

age RID 28 2 30 1

credit-rate RID good 1 fair 2

Attribute lists Class list

Page 13: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

13

49

SLIQ

Efficiency is contributed by the fact that: n  Only class list and current attribute list are memory-resident

¨  Class list is dynamically modified during tree construction

n  Attribute lists are disk-resident, presorted (reduce cost to evaluate splitting) and indexed (eliminate resorting data)

n  Use fast subsetting algorithm to determine split-attributes ¨  If number of possible subsets exceeds threshold, use greedy search

n  Use inexpensive MDL-based tree pruning

50

SPRINT

n  Proposes a new data structure: attribute list eliminating SLIQ’s requirement on memory-resident class list

n  Outperforms SLIQ when the class list is too large to fit

main memory ¨  but needs a hash tree to connect different joins which could be

costly with a large training set

n  Designed to ease parallelization

RID credit-rate age buy-car? 1 good 30 yes 2 fair 28 no

age buy-car? RID 28 no 2 30 yes 1

credit-rate buy-car? RID good yes 1 fair no 2

Attribute 1 class Attribute 2 class

51

PUBLIC

n  Integrates splitting and pruning n  Observation & idea:

¨  a large portion of the tree ends up being pruned ¨  Can we use a top-down approach to predetermine this and stop

growing it earlier?

n  How? ¨  Before expanding a node, compute a lower bound estimation on

the cost subtree rooted at the node ¨  If a node is predicted to be pruned (based on the cost estimation),

return it as a leaf, otherwise go on splitting it

52

RainForest

n  A generic framework that ¨  separates the scalability aspects from the criteria that determine

the quality of the tree ¨  Applies to any decision tree induction algorithm ¨  Maintains an AVC-set (attribute, value, class label)

n  Reports a speedup over SPRINT

Page 14: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

14

53

Data Cube-Based DT Induction

n  Integration of generalization with DT induction – once the tree is derived, use a concept hierarchy to generalize

¨  Generalization at low-level concepts à large, bushy trees ¨  Generalization at high-level concepts à lost interestingness

n  Cube-based multi-level classification ¨  Relevance analysis at multi-levels

54

Visualization in Classification

DBMiner - Presentation of classification rules

55

Visualization in Classification

SGI/MineSet 3.0 Decision tree visualization

56

Visualization in Classification

Interactive Visual Mining by Perception-Based Classification (PBC)

Page 15: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

15

57

Outline

n  Overview ¨ Tasks ¨ Evaluation ¨  Issues

n  Classification techniques ¨ Decision Tree ¨ Bayesian-based ¨ Neural network ¨ Others

n  Prediction techniques n  Summary

58

Bayesian classification

Basic features/advantages: n  Probabilistic classification

¨  Gives explicit probability that a given example belongs to a certain class

¨  Predict multiple hypotheses, weighted by their probabilities n  Probabilistic learning

¨  each training example can incrementally increase or decrease the probability of the hypothesis

n  Probabilities are theoretical-supported ¨  Provide standard measures to facilitate decision-making and

comparison with other methods

59

Bayesian-based approaches

n  Basic approaches ¨ Naïve Bayes Classification ¨ Bayesian network learning

n  Both are based on Bayes Theorem

60

Bayes Theorem

n  X - an observed training example n  H - a hypothesis that X belongs to a class C n  Goal of classification: determine P(H|X), the probability

that H holds given X n  Bayes Theorem:

n  Informally, this can be written as posterior = likelihood x prior / evidence (RHS can be estimated)

n  Practical issues: ¨  require initial knowledge of many probabilities ¨  significant computational cost

)()()|()|( XP

HPHXPXHP =

Posterior probability of H conditioned on X Prior Probabilities

Page 16: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

16

61

Naïve Bayes Classifier n  a data example X, is an n-dimensional vector à n attributes n  Naïve assumption of class conditional independence

¨  For a given class label, attribute values are conditionally independent of one another

¨  No dependence relationships between attributes

n  The assumption reduces the computation cost, only count the class distribution.

n  Once the probability P(X|Ci) is known, assign X to the class with maximum P(X|Ci)P(Ci) – Why? and How?

∏=

=n

kCixkPCiXP

1)|()|( where Ci is a class label

62

Naïve Bayes Classifier

Once the probability P(X|Ci) is known, assign X to the class with maximum P(X|Ci)P(Ci) – Why?

The classifier predicts class of X to be the one that gives

maximum P(Ci| X) for all possible classes Ci’s

By Bayes theorem,

Since P(X) is the same for all classes, only P(X|Ci)P(Ci) needs to be maximized

)()()|()|(

XPCPCXPXCP ii

i =

63

Example X = (age = <30, income =medium, student=yes, credit_rating=fair) Compute P(X|Ci) for each class P(X|Ci) : P(X|buys_car=“yes”) = P(age=“<30” | buys_car=“yes”)

P(income=“medium” | buys_car=“yes”) P(student=“yes” | buys_car=“yes”) P(credit_rating=“fair” | buys_car=“yes”)

= 2/9 x 4/9 x 6/9 x 6/9 = 0.0444 P(X|buys_car=“no”) = 3/5 x 2/5 x 1/5 x 2/5 = 0.019

P(X|Ci)*P(Ci ) : P(X|buys_car=“yes”) * P(buys_car=“yes”) = 0.0444*9/14 = 0.028 P(X|buys_car=“no”) * P(buys_car=“no”) = 0.019*5/14 = 0.007

X belongs to class “buys_car=yes”

age income student credit_rate buys_car <=30 high no fair no <=30 high no excellent no

30…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

64

Naïve Bayesian Classifiers

n  P(xk|Ci) for a continuous-valued attribute, Ak can be estimated from a normal density function

n  Advantages : ¨  Easy to implement & good results obtained in most of the cases

n  Disadvantages ¨  Loss of accuracy when the class conditional independence

assumption is violated ¨  In practice, dependencies exist among variables, e.g.,

n  hospitals: patients: Profile: age, family history etc ; symptoms etc. n  Dependencies among these cannot be modeled by Naïve Bayesian

Classifier

n  How to deal with these dependencies? à Bayesian Belief Networks

Page 17: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

17

65

Bayesian Networks

n  Bayesian belief network (Bayes net, Bayesian network) allows class conditional dependencies to be represented

n  A graphical model of dependency among the variables ¨  Gives a specification of joint probability distribution ¨  Two components: DAG (Directed Acyclic Graph)

CPT (Conditional Probability Table) representing P(X | parents(X)) for each node

X

X Y

Z P

q  Nodes: random variables q  Links: dependency q  X,Y are the parents of Z

Y is the parent of P q  No dependency between Z and P q  Has no loops or cycles

66

An Example Family History

LungCancer

PositiveXRay

Smoker

Emphysema

Dyspnea

LC

~LC

(FH,S) (FH,~S) (~FH,S) (~FH,~S)

Bayesian Belief Networks

The joint probability of a tuple (z1, ..,zn) corresponding to variables Z1,..,Zn is

P(z1,...,zn ) = P( iz | iParents(Z ))i =1

n∏

0.8 0.5 0.7 0.1

0.2 0.5 0.3 0.9

CPT of Lung Cancer (LC)

P(LC=yes|FH=yes and S = no) = 0.5

67

Classification with Bayes Nets

n  The classification process can return a probability distribution for the class attribute instead of a single class label

n  Learning Bayes Nets ¨  Causal learning/discovery is not the same as Causal Reasoning ¨  Output: A Bayes Net representing regularities in an input data set ¨  Network structures may be known or unknown:

n  structure known + all variables observable: training to learn CPTs n  structure known + some hidden variables:

use gradient descent - analogous to neural network learning n  structure unknown + all variables observable:

Search through the model space to reconstruct structure n  structure unknown + all hidden variables: No good algorithms known

¨  Two basic approaches: Bayesian learning and constraint-based learning

68

Outline

n  Overview ¨ Tasks ¨ Evaluation ¨  Issues

n  Classification techniques ¨ Decision Tree ¨ Bayesian-based ¨ Neural network ¨ Others

n  Prediction techniques n  Summary

Page 18: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

18

69

Classification & function approximation

n  Classification: predicts categorical class labels n  Typical Applications:

{credit history, salary} à Credit approval (Yes/No) {Temp, Humidity} àRain (Yes/No) Mathematically,

We want to estimate function h

)(:

}1,0{,}1,0{

xhyYXh

YyXx n

=

=∈=∈

70

Linear Classification

n  Binary Classification problem ¨  The data above the line belongs to

class ‘x’ ¨  The data below line belongs to

class ‘o’ n  Discriminative Classifiers, e.g.,

¨  SVM (support vector machine) ¨  Perceptron (Neural net approach)

x

x x

x

x x

x

x

x

x o o o

o o

o

o

o

o o

o o

o

71

Discriminative Classifiers n  Advantages

¨  prediction accuracy is generally high as compared to Bayesian methods – in general

¨  robust, works when training examples contain errors ¨  fast evaluation of the learned target function

Bayesian networks are normally slow n  Criticism

¨  long training time ¨  difficult to understand the learned function (weights)

Bayesian networks can be used easily for pattern discovery ¨  not easy to incorporate domain knowledge

easy in the form of priors on the data or distributions

72

Neural Networks

n  Analogy to Biological Systems

n  Massive Parallelism allowing for computational efficiency

n  The first learning algorithm came in 1959 (Rosenblatt) who suggested that if a target output value is provided for a single neuron with fixed inputs, one can incrementally change weights to learn to produce these outputs using the perceptron learning rule

Page 19: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

19

73

A Neuron

n  The n-dimensional input vector x is mapped into variable y by means of the scalar product and a nonlinear function mapping, e.g.,

-

f

weighted sum

Input vector x

output y

Activation (Sigmoid) function

weight vector w

w0

w1

wn

x0

x1

xn

θk

bias: acts as a threshold to vary the activity

)sign(n

0ikii xwy θ+= ∑

=74

Multilayer Neural Networks

1 2 3

4 5

6

Input vector

Input nodes

Hidden nodes

Output nodes

Output vector

w15

w46 w56

w35

w34 w14

x1 x3 x2 Three-layer neural network •  Feed-forward – no feedback •  Fully connected

Multilayer feed-forward networks of linear threshold functions with enough hidden units can closely approximate any function

75

Defining a network structure

Before training, … n  Determine # units in input layer, hidden layer(s), and

output layer ¨  No clear rules on the “best” number of hidden layer units

n  Normalize input values to speedup learning ¨  Continuous values à range between 0 and 1 ¨  Discrete values à Boolean values

n  Accuracy depends on both network topology and initial weights

76

Training Neural Networks n  Goal

¨  Find a set of weights that makes almost all the tuples in the training data classified correctly (or acceptable error rates)

n  Steps ¨  Initialize weights with random values ¨  Feed the input tuples into the network one by one ¨  For each unit

n  Compute the net input to the unit as a linear combination of all the inputs to the unit

n  Compute the output value using the activation function n  Compute the error n  Update the weights and the bias

¨  Repeat until terminal condition is satisfied

Page 20: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

20

77

Backpropagation

n  Learning ~ searching using a gradient descent method n  Searches for a set of weights

¨  that minimizes the mean squared distance between the network’s class prediction and the actual class label of the samples

n  A learning rate helps avoid local minimum problem ¨  If the rate is too low à learning at a slow pace ¨  If the rate is too high à oscillation between solutions ¨  Rules of thumb: set it to 1/t where t = # iterations through the training

set so far

78

Backpropagation n  Initialization

¨  Weights & biases: small random numbers (e.g., from -1 to 1)

For each training example x

n  Propagate the input forward

1 2 3

4 5

6

w15

w46 w56

w35

w34 w14

x1 x3 x2

∑ +=i

jiijj OwI θ

w14 w15 w24 w25 w34 w35 θ4 θ5 θ6

=(x1, x2 , x3)=(1, 0, 1)

I4 = w14O1 + w24O2 + w34O3 + θ4

where I1 = x1 =1 I5 similarly Compute O4 , O5 I6 = w46O4 + w56O5 + θ6 Then, compute O6

θ5 θ4

θ6

jIje

O −+

=11

Sigmoid activation function

79

Backpropagation n  Backpropagate the error

n  Update weights & biases

1 2 3

4 5

6

w15

w46 w56

w35

w34 w14

x1 x3 x2

Err6 = O6 (1- O6) (T6 – O6), where T6 is a given target class label = 1

θ5 θ4

θ6

))(1( jjjjj OTOOErr −−=

jkk

kjjj wErrOOErr ∑−= )1(

Err5 = O5 (1- O5) (Err6w56) Err4 = O4 (1- O4) (Err6w46)

ijijij OErrlww )(+=

jjj Errl)(+=θθ

80

Backpropagation n  Update weights & biases

¨ Case updating – for each training example

¨ Epoch updating – for each epoch (an iteration through a training set)

1 2 3

4 5

6

w15

w46 w56

w35

w34 w14

x1 x3 x2

θ5 θ4

θ6

ijijij OErrlww )(+=

jjj Errl)(+=θθ

Page 21: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

21

81

Backpropagation

n  Repeat the training process (i.e., propagation forward etc.)

n  Until ¨  All the changes of wij in the previous epoch is below some

specified threshold, or ¨  % samples misclassified in the previous epoch is below a

threshold, or ¨  A pre-specified number of epochs has expired

82

Pruning and Rule Extraction n  A major drawback of Neural Net learning is its model is hard to interpret

n  Fully connected network is hard to articulate à network pruning ¨  Remove weighted links that do not decrease classification

accuracy of the network

n  Extracting rules from a trained pruned network ¨  Discretize activation values; replace individual activation value by the

cluster average maintaining the network accuracy ¨  Derive rules relating activation value and output using the

discretized activation values to enumerate the output ¨  Similarly, find the rule relating the input and activation value ¨  Combine the above two to have rules relating the output to input

83

Outline

n  Overview ¨ Tasks ¨ Evaluation ¨  Issues

n  Classification techniques ¨ Decision Tree ¨ Bayesian-based ¨ Neural network ¨ Others

n  Prediction techniques n  Summary

84

Other Classification Methods

n  Support vector machine n  Classification-based association n  K-nearest neighbor classifier n  Case-based reasoning n  Soft computing approach

¨ Genetic algorithm ¨ Rough set approach ¨ Fuzzy set approaches

Page 22: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

22

85

Support vector machine(SVM).

n  Basic idea ¨  find the best boundary between classes ¨ build classifier on top of them

n  Boundary points are called support vectors n  Two basic types:

¨  Linear SVM ¨  Non-linear SVM

86

SVM

Support Vectors

Small Margin Large Margin

87

Optimal Hyper plane: separable case

n  Class 1 and class 2 are separable. n  Crossed points are support vectors

– points that maximize the margin between the two classes

n  Given a training set of N pairs of xi with label yi

n  Goal is to maximize C subject to a constraint:

unit vector bias

00 =+ ββTx

C

X

X

X

X

NiCxy Tii ,...,1,)( 0 =>+ ββ

Hyper plane:

88

Non-separable case

n  When the data set is non-separable ¨  assign weight to each support vector

changing the constraint to be 00 =+ ββTx

X

X

X

X

C

ξ* 0( ), (1 ),T

i i iy x Cβ β ξ+ > −

1, 0, .

N

i ii

i constξ ξ=

∀ > <∑where

Page 23: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

23

89

General SVM

n  No good optimal linear classifier n  Can we do better?

à A non-linear boundary (circled points are support vectors)

n  Idea: ¨  Map original problem space into

a larger space so that the boundary in the new space is linearly separable

¨  Use Kernel (do not always exist) to compute distances in the new space (could be infinite-dimensional)

90

Example

n  When the data is not linearly separable ¨  Project the data to high dimensional space where it is linearly

separable and then we can use linear SVM

(1,0) (0,0)

(0,1) +

+ - -1 0 +1

+ + -

91

Performance of SVM

n  For general support vector machine

E[(# of support vectors)/ (# training samples)]

n  SVM has been very successful in lots of applications

≤)]([ errorPE

92

SVM vs. Neural Network

n  SVM ¨  Relatively new concept

¨  Nice Generalization properties

¨  Hard to learn – learned in batch mode using quadratic programming techniques

¨  Using kernels can learn very complex functions

n  Neural Network ¨  Quite Old

¨  Generalizes well but doesn’t have strong mathematical foundation

¨  Can easily be learned in incremental fashion

¨  To learn complex functions – use multilayer perceptron (non-trivial)

Page 24: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

24

93

Open problems of SVM

n  How to choose appropriate Kernel function ¨  Different Kernel gives different results, although generally

better than hyper planes

n  For very large training set, support vectors might be of large size. Speed thus becomes a bottleneck

n  An optimal design for multi-class SVM classifier

94

SVM Related Links

n  http://svm.dcs.rhbnc.ac.uk/ n  http://www.kernel-machines.org/

n  C. J. C. Burges. A Tutorial on Support Vector Machines for Pattern Recognition. Knowledge Discovery and Data Mining, 2(2), 1998.

n  SVMlight – Software (in C) http://ais.gmd.de/~thorsten/svm_light

95

Other Classification Methods

n  Support vector machine n  Classification-based association n  K-nearest neighbor classifier n  Case-based reasoning n  Soft computing approach

¨ Genetic algorithm ¨ Rough set approach ¨ Fuzzy set approaches

96

Association-Based Classification

n  Several methods ¨ ARCS: Quantitative association mining and clustering

of association rules (Lent et al’97) n  It beats C4.5 in (mainly) scalability and also accuracy

¨ Associative classification: (Liu et al’98) n  It mines high support and high confidence rules in the form of “cond_set => y”, where y is a class label

¨ CAEP (Classification by aggregating emerging patterns) (Dong et al’99)

n  Emerging patterns (EPs): the itemsets whose support increases significantly from one class to another

n  Mine EPs based on minimum support and growth rate

Page 25: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

25

97

Instance-Based Methods

n  Instance-based learning: ¨  Delay generalization until new instance must be classified model

(“lazy evaluation” or “lazy learning”) ¨  Note: “eager learning” (e.g., decision tree) constructs generalization

model before classifying a new sample n  Thus, lazy learning gives fast training but slow classification

n  Examples of lazy learning: ¨  k-nearest neighbor approach ¨  Locally weighted regression ¨  Case-based reasoning

n  Requires efficient indexing techniques

98

k-nearest neighbor classifiers

n  A training sample = point in n-dimensional space n  When an unknown sample x is given for classification

¨  Search for k training samples (k “nearest neighbors”) that are closest to x E.g., “closeness” ~ Euclidean distance

¨  For discrete value class, x is assigned to the most common class among its k “nearest neighbors”

¨  For continuous-valued class (e.g., in prediction), x is assigned to the average value of the continuous-valued class associated with the k nearest neighbors

n  Potentially expensive when number of k-nearest neighbors is large

99

k-nearest neighbor classifiers (cont)

n  Distance-weighted nearest neighbor algorithm ¨  Weight the contribution of each of the k neighbors according to

their distance to the query point xq - e.g., n  giving greater weight to closer neighbors

¨  Similarly, for real-valued target functions

n  Robust to noisy data by averaging k-nearest neighbors n  Curse of dimensionality: distance between neighbors could be

dominated by irrelevant attributes. ¨  To overcome it, axes stretch or elimination of the least relevant

attributes.

wd xq xi

≡ 12( , )

100

Case-Based Reasoning (CBR) n  Similar to k-nearest neighbor

¨  Instance-based learner (lazy learner) & Analyze similar samples But …A sample is a “case” (complex symbolic description) not a point in Euclidean space

n  Idea: given a new case to classify ¨  CBR searches a training case that is identical

à gives the stored solution ¨  Otherwise find cases with similar components

à modify stored solutions to be a solution for a new case n  Requires background knowledge, tight coupling between case

retrieval, knowledge-based reasoning and problem solving n  Challenges:

¨  Similarity metrics ¨  Efficient techniques for indexing training cases and combining solutions

Page 26: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

26

101

Genetic Algorithms (GA)

n  Based on ideas of natural evolution ¨  Create an initial population consisting of randomly generated rules

- represented by bit strings ¨  Generate rule offsprings by applying genetic operators

n  Crossover - swap substrings from pairs of rules n  Mutation - randomly selected bits are inverted

¨  Form a new population containing the fittest rules n  The fitness of a rule is measured by its classification accuracy on a set

of training examples ¨  Repeat process until the population is “evolved” to satisfy fitness

threshold n  GA facilitates parallelization and popular for solving

optimization problems

102

Rough Set Approach

n  Rough sets are used for “roughly” define equivalent classes in the training data set

n  A rough set for a given class C is approximated by ¨  a lower approximation (samples certain to be in C) ¨  an upper approximation (samples indescribable as not be in C)

n  Rough sets can also be used for relevance analysis ¨  Finding the minimal subsets of attributes is NP-hard

Rectangles ~ equivalent classes

103

Fuzzy Set

n  Fuzzy logic ¨  uses truth values between 0.0 and 1.0 to represent the degree of

membership (such as using fuzzy membership graph) n  Fuzzy logic allows classification of high level abstraction

¨  Attribute values are converted to fuzzy values e.g., income is mapped into the discrete categories {low, medium, high} with fuzzy values calculated

¨  For a given new sample, more than one fuzzy value may apply ¨  Each applicable rule contributes a vote for membership in the

categories ¨  Typically, the truth values for each predicted category are

summed/combined

104

Outline

n  Overview ¨ Tasks ¨ Evaluation ¨  Issues

n  Classification techniques ¨ Decision Tree ¨ Bayesian-based ¨ Neural network ¨ Others

n  Prediction techniques n  Summary

Page 27: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

27

105

What Is Prediction?

n  Prediction is similar to classification ¨ First, construct a model then use it to predict unknown

value ¨ Most deal with modeling of continuous-valued

functions ¨ Major method for prediction is regression

n  Linear and multiple regression n  Non-linear regression

106

Regression Models

n  Linear regression: Data are modeled using a straight line e.g., ¨  Y = α + β X, where Y = response variable, X = predictor variable ¨  Assume variance of Y to be constant ¨  α and β are regression coefficients are to be estimated ¨  using the least squares method (errors between actual data and estimated

line are minimized)

n  Multiple regression: Extended linear model to more than one predictor value, i.e., Y = b0 + b1 X1 + b2 X2

n  Nonlinear regression: many can be transformed into linear

n  Log-linear models: approximate discrete probability distributions

107

Summary

n  Classification is an extensively studied problem (mainly in statistics, machine learning & neural networks)

n  Classification is probably one of the most widely used data mining techniques with a lot of extensions

n  Scalability is still an important issue for database applications: thus combining classification with database techniques should be a promising topic

n  Research directions: classification of non-relational data, e.g., text, spatial, multimedia, etc..

108

References n  C. Apte and S. Weiss. Data mining with decision trees and decision rules. Future Generation

Computer Systems, 13, 1997.

n  L. Breiman, J. Friedman, R. Olshen, and C. Stone. Classification and Regression Trees. Wadsworth International Group, 1984.

n  C. J. C. Burges. A Tutorial on Support Vector Machines for Pattern Recognition. Data Mining and Knowledge Discovery, 2(2): 121-168, 1998.

n  P. K. Chan and S. J. Stolfo. Learning arbiter and combiner trees from partitioned data for scaling machine learning. In Proc. 1st Int. Conf. Knowledge Discovery and Data Mining (KDD'95), pages 39-44, Montreal, Canada, August 1995.

n  U. M. Fayyad. Branching on attribute values in decision tree generation. In Proc. 1994 AAAI Conf., pages 601-606, AAAI Press, 1994.

n  J. Gehrke, R. Ramakrishnan, and V. Ganti. Rainforest: A framework for fast decision tree construction of large datasets. In Proc. 1998 Int. Conf. Very Large Data Bases, pages 416-427, New York, NY, August 1998.

n  J. Gehrke, V. Gant, R. Ramakrishnan, and W.-Y. Loh, BOAT -- Optimistic Decision Tree Construction . In SIGMOD'99 , Philadelphia, Pennsylvania, 1999

Page 28: Overview Classification and Predictionredwood.cs.ttu.edu/.../datamining/7-Classification... · Prediction techniques ! Summary 3 Tasks ! Classification & Prediction" Algorithm describe

28

109

References (cont) n  M. Kamber, L. Winstone, W. Gong, S. Cheng, and J. Han. Generalization and decision tree

induction: Efficient classification in data mining. In Proc. 1997 Int. Workshop Research Issues on Data Engineering (RIDE'97), Birmingham, England, April 1997.

n  B. Liu, W. Hsu, and Y. Ma. Integrating Classification and Association Rule Mining. Proc. 1998 Int. Conf. Knowledge Discovery and Data Mining (KDD'98) New York, NY, Aug. 1998.

n  W. Li, J. Han, and J. Pei, CMAR: Accurate and Efficient Classification Based on Multiple Class-Association Rules, , Proc. 2001 Int. Conf. on Data Mining (ICDM'01), San Jose, CA, Nov. 2001.

n  J. Magidson. The Chaid approach to segmentation modeling: Chi-squared automatic interaction detection. In R. P. Bagozzi, editor, Advanced Methods of Marketing Research, pages 118-159. Blackwell Business, Cambridge Massechusetts, 1994.

n  M. Mehta, R. Agrawal, and J. Rissanen. SLIQ : A fast scalable classifier for data mining. (EDBT'96), Avignon, France, March 1996.

110

References (cont) n  T. M. Mitchell. Machine Learning. McGraw Hill, 1997. n  S. K. Murthy, Automatic Construction of Decision Trees from Data: A Multi-Diciplinary Survey,

Data Mining and Knowledge Discovery 2(4): 345-389, 1998 n  J. R. Quinlan. Induction of decision trees. Machine Learning, 1:81-106, 1986. n  J. R. Quinlan. Bagging, boosting, and c4.5. In Proc. 13th Natl. Conf. on Artificial Intelligence

(AAAI'96), 725-730, Portland, OR, Aug. 1996. n  R. Rastogi and K. Shim. Public: A decision tree classifer that integrates building and pruning. In

Proc. 1998 Int. Conf. Very Large Data Bases, 404-415, New York, NY, August 1998. n  J. Shafer, R. Agrawal, and M. Mehta. SPRINT : A scalable parallel classifier for data mining. In

Proc. 1996 Int. Conf. Very Large Data Bases, 544-555, Bombay, India, Sept. 1996. n  S. M. Weiss and C. A. Kulikowski. Computer Systems that Learn: Classification and Prediction

Methods from Statistics, Neural Nets, Machine Learning, and Expert Systems. Morgan Kaufman, 1991.

n  S. M. Weiss and N. Indurkhya. Predictive Data Mining. Morgan Kaufmann, 1997.