© tan,steinbach, kumar introduction to data mining 4/18/2004 1 data mining: association analysis...

34
© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for Chapter 6/7 of Introduction to Data Mining by Tan, Steinbach, Kumar, and slides from Jiawei Han for the book of Data Mining – Concepts and Techniqies by Jiawei Han and Micheline Kamber. © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1

Upload: oswin-johnson

Post on 13-Dec-2015

226 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1

Data Mining: Association Analysis

This lecture node is modified based on Lecture Notes for Chapter 6/7 of Introduction to Data Mining by Tan, Steinbach, Kumar, and slides from Jiawei Han for the book of Data Mining – Concepts and Techniqies by Jiawei Han and Micheline Kamber.

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1

Page 2: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 2

Association Rule Mining

Given a set of transactions, find rules that will predict the occurrence of an item based on the occurrences of other items in the transaction.

Market-Basket transactions

TID Items

1 Bread, Milk

2 Bread, Diaper, Beer, Eggs

3 Milk, Diaper, Beer, Coke

4 Bread, Milk, Diaper, Beer

5 Bread, Milk, Diaper, Coke

Example of Association Rules

{Diaper} {Beer},{Milk, Bread} {Eggs,Coke},{Beer, Bread} {Milk},

Page 3: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 3

Definition: Frequent Itemset

Itemset– A collection of one or more items

Example: {Milk, Bread, Diaper}

– k-itemset An itemset that contains k items

Support count ()– Frequency of occurrence of an itemset

– E.g. ({Milk, Bread,Diaper}) = 2

Support– Fraction of transactions that contain an

itemset

– E.g. s({Milk, Bread, Diaper}) = 2/5

Frequent Itemset– An itemset whose support is greater

than or equal to a minsup threshold

TID Items

1 Bread, Milk

2 Bread, Diaper, Beer, Eggs

3 Milk, Diaper, Beer, Coke

4 Bread, Milk, Diaper, Beer

5 Bread, Milk, Diaper, Coke

Page 4: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 4

Definition: Association Rule

Example:Beer}Diaper,Milk{

4.052

|T|)BeerDiaper,,Milk(

s

67.032

)Diaper,Milk()BeerDiaper,Milk,(

c

Association Rule– An implication expression of the form

X Y, where X and Y are itemsets

– Example: {Milk, Diaper} {Beer}

Rule Evaluation Metrics– Support (s)

Fraction of transactions that contain both X and Y

– Confidence (c) Measures how often items in Y

appear in transactions thatcontain X

TID Items

1 Bread, Milk

2 Bread, Diaper, Beer, Eggs

3 Milk, Diaper, Beer, Coke

4 Bread, Milk, Diaper, Beer

5 Bread, Milk, Diaper, Coke

Page 5: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 5

Association Rule Mining Task

Given a set of transactions T, the goal of association rule mining is to find all rules having – support ≥ minsup threshold

– confidence ≥ minconf threshold

Brute-force approach:– List all possible association rules

– Compute the support and confidence for each rule

– Prune rules that fail the minsup and minconf thresholds

Computationally prohibitive!

Page 6: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 6

Mining Association Rules

Example of Rules:

{Milk,Diaper} {Beer} (s=0.4, c=0.67){Milk,Beer} {Diaper} (s=0.4, c=1.0){Diaper,Beer} {Milk} (s=0.4, c=0.67){Beer} {Milk,Diaper} (s=0.4, c=0.67) {Diaper} {Milk,Beer} (s=0.4, c=0.5) {Milk} {Diaper,Beer} (s=0.4, c=0.5)

TID Items

1 Bread, Milk

2 Bread, Diaper, Beer, Eggs

3 Milk, Diaper, Beer, Coke

4 Bread, Milk, Diaper, Beer

5 Bread, Milk, Diaper, Coke

Observations:

• All the above rules are binary partitions of the same itemset: {Milk, Diaper, Beer}

• Rules originating from the same itemset have identical support but can have different confidence

• Thus, we may decouple the support and confidence requirements

Page 7: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 7

Mining Association Rules

Two-step approach: 1. Frequent Itemset Generation

– Generate all itemsets whose support minsup

2. Rule Generation– Generate high confidence rules from each frequent itemset,

where each rule is a binary partitioning of a frequent itemset

Frequent itemset generation is still computationally expensive

Page 8: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 8

Frequent Itemset Generation

null

AB AC AD AE BC BD BE CD CE DE

A B C D E

ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE

ABCD ABCE ABDE ACDE BCDE

ABCDE

Given d items, there are 2d possible candidate itemsets

Page 9: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 9

Frequent Itemset Generation

Brute-force approach: – Each itemset in the lattice is a candidate frequent itemset

– Count the support of each candidate by scanning the database

– Match each transaction against every candidate

– Complexity ~ O(NMw) => Expensive since M = 2d !!!

TID Items 1 Bread, Milk 2 Bread, Diaper, Beer, Eggs 3 Milk, Diaper, Beer, Coke 4 Bread, Milk, Diaper, Beer 5 Bread, Milk, Diaper, Coke

N

Transactions List ofCandidates

M

w

Page 10: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 10

Reducing Number of Candidates

Apriori principle:– If an itemset is frequent, then all of its subsets must also

be frequent

Apriori principle holds due to the following property of the support measure:

– Support of an itemset never exceeds the support of its subsets

– This is known as the anti-monotone property of support

)()()(:, YsXsYXYX

Page 11: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 11

Found to be Infrequent

null

AB AC AD AE BC BD BE CD CE DE

A B C D E

ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE

ABCD ABCE ABDE ACDE BCDE

ABCDE

Illustrating Apriori Principle

null

AB AC AD AE BC BD BE CD CE DE

A B C D E

ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE

ABCD ABCE ABDE ACDE BCDE

ABCDEPruned supersets

Page 12: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 12

Illustrating Apriori Principle

Item CountBread 4Coke 2Milk 4Beer 3Diaper 4Eggs 1

Itemset Count{Bread,Milk} 3{Bread,Beer} 2{Bread,Diaper} 3{Milk,Beer} 2{Milk,Diaper} 3{Beer,Diaper} 3

Itemset Count {Bread,Milk,Diaper} 3

Items (1-itemsets)

Pairs (2-itemsets)

(No need to generatecandidates involving Cokeor Eggs)

Triplets (3-itemsets)Minimum Support = 3

If every subset is considered, 6C1 + 6C2 + 6C3 = 41

With support-based pruning,6 + 6 + 1 = 13

Page 13: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 13

Apriori Algorithm

Let k=1 Generate frequent itemsets of length 1 Repeat until no new frequent itemsets are identified

– Generate length (k+1) candidate itemsets from length k frequent itemsets Let two k-itemsets be (X,Y) and (X, Z), where X is (k-1)-items, and Y and Z are 1-item. The new (k+1)-itemset will be (X, Y, Z).

– Prune candidate itemsets containing subsets of length k that are infrequent

– Count the support of each candidate by scanning the DB– Eliminate candidates that are infrequent, leaving only those

that are frequent

Page 14: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 14

The Apriori Algorithm — Example

TID Items100 1 3 4200 2 3 5300 1 2 3 5400 2 5

Database D itemset sup.{1} 2{2} 3{3} 3{4} 1{5} 3

itemset sup.{1} 2{2} 3{3} 3{5} 3

Scan D

C1L1

itemset{1 2}{1 3}{1 5}{2 3}{2 5}{3 5}

itemset sup{1 2} 1{1 3} 2{1 5} 1{2 3} 2{2 5} 3{3 5} 2

itemset sup{1 3} 2{2 3} 2{2 5} 3{3 5} 2

L2

C2 C2Scan D

C3 L3itemset{2 3 5}

Scan D itemset sup{2 3 5} 2

Page 15: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 15

Maximal Frequent Itemset

null

AB AC AD AE BC BD BE CD CE DE

A B C D E

ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE

ABCD ABCE ABDE ACDE BCDE

ABCDE

Border

Infrequent Itemsets

Maximal Itemsets

An itemset is maximal frequent if none of its immediate supersets is frequent

Page 16: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 16

Closed Itemset

An itemset is closed if none of its immediate supersets has the same support as the itemset.

TID Items1 {A,B}2 {B,C,D}3 {A,B,C,D}4 {A,B,D}5 {A,B,C,D}

Itemset Support{A} 4{B} 5{C} 3{D} 4

{A,B} 4{A,C} 2{A,D} 3{B,C} 3{B,D} 4{C,D} 3

Itemset Support{A,B,C} 2{A,B,D} 3{A,C,D} 2{B,C,D} 3

{A,B,C,D} 2

Page 17: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 17

Maximal vs Closed Itemsets

TID Items

1 ABC

2 ABCD

3 BCE

4 ACDE

5 DE

null

AB AC AD AE BC BD BE CD CE DE

A B C D E

ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE

ABCD ABCE ABDE ACDE BCDE

ABCDE

124 123 1234 245 345

12 124 24 4 123 2 3 24 34 45

12 2 24 4 4 2 3 4

2 4

Transaction Ids!

Not supported by any transactions

Page 18: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 18

Maximal vs Closed Frequent Itemsets

null

AB AC AD AE BC BD BE CD CE DE

A B C D E

ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE

ABCD ABCE ABDE ACDE BCDE

ABCDE

124 123 1234 245 345

12 124 24 4 123 2 3 24 34 45

12 2 24 4 4 2 3 4

2 4

Minimum support = 2

# Closed = 9

# Maximal = 4

Closed and maximal

Closed but not maximal

TID Items

1 ABC

2 ABCD

3 BCE

4 ACDE

5 DE

Page 19: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 19

Maximal vs Closed Itemsets

FrequentItemsets

ClosedFrequentItemsets

MaximalFrequentItemsets

Page 20: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 20

Rule Generation

Given a frequent itemset L, find all non-empty subsets f L such that f L – f satisfies the minimum confidence requirement– If {A,B,C,D} is a frequent itemset, candidate rules:

ABC D, ABD C, ACD B, BCD A, A BCD, B ACD, C ABD, D ABCAB CD, AC BD, AD BC, BC AD, BD AC, CD AB,

If |L| = k, then there are 2k – 2 candidate association rules (ignoring L and L)

Page 21: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 21

Rule Generation

How to efficiently generate rules from frequent itemsets?– In general, confidence does not have an anti-monotone

propertyc(ABC D) can be larger or smaller than c(AB

D)

– But confidence of rules generated from the same itemset has an anti-monotone property

– e.g., L = {A,B,C,D}:

c(ABC D) c(AB CD) c(A BCD) Confidence is anti-monotone w.r.t. number of items on the RHS of the rule

Page 22: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 22

Rule Generation for Apriori Algorithm

ABCD=>{ }

BCD=>A ACD=>B ABD=>C ABC=>D

BC=>ADBD=>ACCD=>AB AD=>BC AC=>BD AB=>CD

D=>ABC C=>ABD B=>ACD A=>BCD

Lattice of rulesABCD=>{ }

BCD=>A ACD=>B ABD=>C ABC=>D

BC=>ADBD=>ACCD=>AB AD=>BC AC=>BD AB=>CD

D=>ABC C=>ABD B=>ACD A=>BCD

Pruned Rules

Low Confidence Rule

Page 23: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 23

Effect of Support Distribution

Many real data sets have skewed support distribution

Support distribution of a retail data set

Page 24: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 24

Effect of Support Distribution

How to set the appropriate minsup threshold?

– If minsup is set too high, we could miss itemsets involving interesting rare items (e.g., expensive products)

– If minsup is set too low, it is computationally expensive and the number of itemsets is very large

Using a single minimum support threshold may not be effective

Page 25: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 25

Criticism to Support and Confidence

Example:– Among 5000 students

3000 play basketball 3750 eat cereal 2000 both play basket ball and eat cereal

– play basketball eat cereal [40%, 66.7%] is misleading because the overall percentage of students eating cereal is 75% which is higher than 66.7%.

– play basketball not eat cereal [20%, 33.3%] is far more accurate, although with lower support and confidence

basketball not basketball sum(row)cereal 2000 1750 3750not cereal 1000 250 1250sum(col.) 3000 2000 5000

2000/5000 2000/3000

Page 26: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 26

Criticism to Support and Confidence (Cont.)

Example 2:– X and Y: positively correlated,

– X and Z, negatively related

– support and confidence of

X=>Z dominates

We need a measure of dependent or correlated events

P(B|A)/P(B) is also called the lift of rule A => B

X 1 1 1 1 0 0 0 0Y 1 1 0 0 0 0 0 0Z 0 1 1 1 1 1 1 1

Rule Support ConfidenceX=>Y 25% 50%X=>Z 37.50% 75%

)()(

)(, BPAP

BAPcorr BA

Page 27: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 27

Other Interestingness Measures: Interest

Interest (correlation, lift)

– taking both P(A) and P(B) in consideration

– P(A^B)=P(B)*P(A), if A and B are independent events

– A and B negatively correlated, if the value is less than 1; otherwise A

and B positively correlated

)()(

)(

BPAP

BAP

X 1 1 1 1 0 0 0 0Y 1 1 0 0 0 0 0 0Z 0 1 1 1 1 1 1 1

Itemset Support InterestX,Y 25% 2X,Z 37.50% 0.9Y,Z 12.50% 0.57

Page 28: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 28

Infrequent Patterns

Example-1:– The sale of DVDs and VCRs together is low, because

people don’t buy both at the same time.

– They are negative-correlated, and they are competing items.

Example-2:– If {Fire = Yes} is frequent but {Fire = Yes, Alarm = No}

is infrequent, then the latter is an important infrequent pattern because it indicates faulty alarm systems.

Page 29: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 29

Negative Patterns

Let I = {i1, i2, …} be a set of items. A negative item denote the absence of item ik from a given transaction.

– For example, is a negative item whose value is 1 if a transaction does not contain coffee.

A negative itemset X is an itemset that has the following properties:

where A is a set of positive items, is a set of negative items, s(X) ≥ minsup.

BAX

ki

B

coffee

1|| B

Page 30: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 30

Negative Patterns

A negative association rule is an association rule that has the following properties– The rule is extracted from a negative itemset.

– The support of the rule is greater than or equal to minsup.

– The confidence of the rule is greater than or equal to minconf.

An example coffeetea

Page 31: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 31

Negatively Correlated Patterns

Let X = {x1, x2, ...., xk} be a k-itemsets and P(X) be the probability that a transaction contains X.

The probability is itemset support s(X). Negatively correlated itemset: An itemset X is negatively

correlated if

An association rule X -> Y is negatively correlated if

where X and Y are disjoint itemsets.

)()()( YsXsYXs

k

jkj xsxsxsxsXs

121 )(...)()()()(

Page 32: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 32

Negatively Correlated Patterns

( ) ( ) ( )

( ) [ ( ) ( )][ ( ) ( )]

( )[1 ( ) ( ) ( )] ( ) ( )

( ) ( ) ( ) ( )

s X Y s X s Y

s X Y s X Y s X Y s X Y s X Y

s X Y s X Y s X Y s X Y s X Y s X Y

s X Y s X Y s X Y s X Y

)()()()( YXsYXsYXsYXs

Because

The condition for negative correlation can be stated below.

Page 33: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 33

Comparisons

Comparisons among infrequent patterns, negative patterns, and negatively correlated patterns.

Many infrequent patterns have corresponding negative patterns.

Many negatively correlated patterns also have corresponding negative patterns.

The lower the support s(X U Y), the more negatively support the pattern is.

Negatively correlated patterns that are infrequent tend to be more interesting than negatively correlated patterns that are frequent.

Page 34: © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 1 Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for

© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 34

Comparisons