chapter 9 – classification and regression trees dm for business intelligence

36
Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Upload: ambrose-goodwin

Post on 31-Dec-2015

227 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Chapter 9 – Classification and Regression Trees

DM for Business Intelligence

Page 2: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Trees and RulesGoal: Classify or predict an outcome

based on a set of predictorsThe output is a set of rulesExample: Goal: classify a record as “will accept credit

card offer” or “will not accept”Rule might be “IF (Income > 92.5) AND

(Education < 1.5) AND (Family <= 2.5) THEN Class = 0 (nonacceptor)

Also called CART, Decision Trees, or just TreesRules are represented by tree diagrams

Page 3: Chapter 9 – Classification and Regression Trees DM for Business Intelligence
Page 4: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Key Ideas

Recursive partitioning: Repeatedly split the records into two parts so as to achieve maximum homogeneity within the new parts

Pruning the tree: Simplify the tree by pruning peripheral branches to avoid overfitting

Page 5: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Recursive Partitioning

Page 6: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Recursive Partitioning Steps

Pick one of the predictor variables, xi

Pick a value of xi, say si, that divides the training data into two (not necessarily equal) portions

Measure how “pure” or homogeneous each of the resulting portions are “Pure” = containing records of mostly one class

Algorithm tries different values of xi, and si to maximize purity in initial split

After you get a “maximum purity” split, repeat the process for a second split, and so on

Page 7: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Example: Riding Mowers

Goal: Classify 24 households as owning or not owning riding mowers

Predictors = Income, Lot Size

Page 8: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Income Lot_Size Ownership60.0 18.4 owner85.5 16.8 owner64.8 21.6 owner61.5 20.8 owner87.0 23.6 owner110.1 19.2 owner108.0 17.6 owner82.8 22.4 owner69.0 20.0 owner93.0 20.8 owner51.0 22.0 owner81.0 20.0 owner75.0 19.6 non-owner52.8 20.8 non-owner64.8 17.2 non-owner43.2 20.4 non-owner84.0 17.6 non-owner49.2 17.6 non-owner59.4 16.0 non-owner66.0 18.4 non-owner47.4 16.4 non-owner33.0 18.8 non-owner51.0 14.0 non-owner63.0 14.8 non-owner

Page 9: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

How to split

Order records according to one variable, say lot size

Find midpoints between successive valuesE.g. first midpoint is 14.4 (halfway between 14.0 and 14.8)

Divide records into those with lotsize > 14.4 and those < 14.4

After evaluating that split, try the next one, which is 15.4 (halfway between 14.8 and 16.0)

Page 10: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Recursive Partitioning with Riding Mower Data

Lot_Size Ownership14.0 non-owner14.8 non-owner16.0 non-owner16.4 non-owner16.8 owner17.2 non-owner17.6 owner17.6 non-owner17.6 non-owner18.4 owner18.4 non-owner18.8 non-owner19.2 owner19.6 non-owner20.0 owner20.0 owner20.4 non-owner20.8 owner20.8 owner20.8 non-owner21.6 owner22.0 owner22.4 owner23.6 owner

Splitting at 14.4 yields: 1 non-owner : 0 owners in top set . . .

11 non-owners : 12 owners in bottom set

1st split point = 14.4

Splitting at 14.4 does not yield “pure” (i.e., homogeneous) sets, so we try next split point:

14.8 + 16.0 / 2 = 15.4

2nd split point = 15.4

Page 11: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Note: Categorical VariablesExamine all possible ways in which the

categories can be split.

E.g., categories A, B, C can be split 3 ways{A} and {B, C}{B} and {A, C}{C} and {A, B}

With many categories, # of splits becomes hugeXLMiner supports only binary categorical

variables

Page 12: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

The first split: Lot Size = 19,000

9 owners to 12 records total

9 non-owners to 12 records total

Page 13: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Second Split: Income = $84,000

This set is “Pure” . . .2:0 owner to non-owner ratio

Page 14: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

After All Splits

All sets are now “Pure”

Page 15: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Measuring Impurity

Page 16: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Gini Index(Named for Italian Statistician, Corrado Gini)

Gini Index for rectangle A containing m records

p = proportion of cases in rectangle A that belong to class k

I(A) = 0 when all cases belong to same classMax value when all classes are equally represented

(=0.50, or no majority in a particular rectangle )

Note: XLMiner uses a variant called “delta splitting rule”

I(A) = 1 -

Page 17: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Entropy

p = proportion of cases (out of m) in rectangle A that belong to class k

Entropy ranges between 0 (most pure) and log2(m) (equal representation of classes)

Page 18: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Impurity and Recursive Partitioning

Obtain overall impurity measure (weighted avg. of individual rectangles)

At each successive stage, compare this measure across all possible splits in all variables

Choose the split that reduces impurity the most

Chosen split points become nodes on the tree

Page 19: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

First Split – The Tree

Page 20: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Tree after three splits

Page 21: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Tree Structure

Split points become nodes on tree (circles with split value in center)

Rectangles represent “leaves” (terminal points, no further splits, classification value noted)

Numbers on lines between nodes indicate # cases

Read down tree to derive ruleE.g., If lot size < 19, and if income > 84.75, then class = “owner”

Page 22: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Determining Leaf Node Label

Each leaf node label is determined by “voting” of the records within it, and by the cutoff value

Records within each leaf node are from the training data

Default cutoff=0.5 means that the leaf node’s label is the majority class.

Cutoff = 0.75: requires majority of 75% or more “1” records in the leaf to label it a “1” node

Page 23: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Tree after all splitsMost “pure”

splits

Least “pure”splits

Page 24: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

The Overfitting Problem

Page 25: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Stopping Tree Growth

Natural end of process is 100% purity in each leaf

This overfits the data, which end up fitting noise in the data

Overfitting leads to low predictive accuracy of new data

Past a certain point, the error rate for the validation data starts to increase

Page 26: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Full Tree Error Rate

Too few splits =not enough to recognize pattern

Too many splits =pattern fits training data SO well that newdata are misclassified

(i.e., new Test Data)

Page 27: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Pruning

CART lets tree grow to full extent, then prunes it back

Idea is to find that point at which the validation error begins to rise

Generate successively smaller trees by pruning leaves

At each pruning stage, multiple trees are possible

Use cost complexity to choose the best tree at that stage

Page 28: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Cost Complexity

CC(T) = cost complexity of a treeErr(T) = proportion of misclassified records = penalty factor attached to tree size

(set by user)

Among trees of given size, choose the one with lowest CC

Do this for each size of tree

CC(T) = Err(T) + L(T)

Page 29: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Using Validation Error to Prune

Pruning process yields a set of trees of different sizes and associated error rates

Two trees of interest:Minimum error tree

Has lowest error rate on validation data

Best pruned treeSmallest tree within one std. error of min. errorThis adds a bonus for simplicity/parsimony

(smallest error with least amount of pruning)

Page 30: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Error rates on pruned trees

Might be overfitting model to Training Data

Page 31: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Regression Trees

Page 32: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Regression Trees for Prediction

Used with continuous outcome variableProcedure similar to classification treeMany splits attempted, choose the one that

minimizes impurity

Page 33: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Differences from CT

Prediction is computed as the average of numerical target variable in the rectangle (in CT it is majority vote)

Impurity measured by sum of squared deviations from leaf mean

Performance measured by RMSE (root mean squared error)

Page 34: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

Advantages of trees

Easy to use, understandProduce rules that are easy to interpret &

implementVariable selection & reduction is automaticDo not require the assumptions of

statistical modelsCan work without extensive handling of

missing data

Page 35: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

DisadvantagesMay not perform well where there is

structure in the data that is not well captured by horizontal or vertical splits

Since the process deals with one variable at a time, no way to capture interactions between variables

Page 36: Chapter 9 – Classification and Regression Trees DM for Business Intelligence

SummaryClassification and Regression Trees are an

easily understandable and transparent method for predicting or classifying new records

A tree is a graphical representation of a set of rules

Trees must be pruned to avoid over-fitting of the training data

As trees do not make any assumptions about the data structure, they usually require large samples