Association Analysis Basic Concepts Introduction To Data Mining, 2 Edition by Tan, Steinbach, Karpatne, Kumar

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 102

Data Mining

Chapter 5
Association Analysis: Basic Concepts

Introduction to Data Mining, 2nd Edition


by
Tan, Steinbach, Karpatne, Kumar

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 1


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
Example of Association Rules
TID Items
{Diaper}  {Beer},
1 Bread, Milk {Milk, Bread}  {Eggs,Coke},
2 Bread, Diaper, Beer, Eggs {Beer, Bread}  {Milk},
3 Milk, Diaper, Beer, Coke
4 Bread, Milk, Diaper, Beer Implication means co-occurrence,
5 Bread, Milk, Diaper, Coke not causality!

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 2


Definition: Frequent Itemset
 Itemset
– A collection of one or more items
 Example: {Milk, Bread, Diaper}
– k-itemset TID Items
 An itemset that contains k items 1 Bread, Milk
 Support count () 2 Bread, Diaper, Beer, Eggs
3 Milk, Diaper, Beer, Coke
– Frequency of occurrence of an itemset
4 Bread, Milk, Diaper, Beer
– E.g. ({Milk, Bread,Diaper}) = 2
5 Bread, Milk, Diaper, Coke
 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

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 3


Definition: Association Rule
 Association Rule
TID Items
– An implication expression of the form
1 Bread, Milk
X  Y, where X and Y are itemsets
2 Bread, Diaper, Beer, Eggs
– Example:
{Milk, Diaper}  {Beer} 3 Milk, Diaper, Beer, Coke
4 Bread, Milk, Diaper, Beer
5 Bread, Milk, Diaper, Coke
 Rule Evaluation Metrics
– Support (s)
 Fraction of transactions that contain Example:
both X and Y {Milk , Diaper}  {Beer}
– Confidence (c)
 Measures how often items in Y  (Milk , Diaper, Beer ) 2
appear in transactions that s   0 .4
contain X
|T| 5
 (Milk, Diaper, Beer ) 2
c   0.67
 (Milk , Diaper ) 3

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 4


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!
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 5
Computational Complexity
 Given d unique items:
– Total number of itemsets = 2d
– Total number of possible association rules:

 d   d  k 
R        
d 1 d k

 k   j 
k 1 j 1

 3  2 1d d 1

If d=6, R = 602 rules

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 6


Mining Association Rules

TID Items Example of Rules:


1 Bread, Milk {Milk,Diaper}  {Beer} (s=0.4, c=0.67)
2 Bread, Diaper, Beer, Eggs {Milk,Beer}  {Diaper} (s=0.4, c=1.0)
3 Milk, Diaper, Beer, Coke {Diaper,Beer}  {Milk} (s=0.4, c=0.67)
4 Bread, Milk, Diaper, Beer {Beer}  {Milk,Diaper} (s=0.4, c=0.67)
5 Bread, Milk, Diaper, Coke {Diaper}  {Milk,Beer} (s=0.4, c=0.5)
{Milk}  {Diaper,Beer} (s=0.4, c=0.5)

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
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 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

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 8


Frequent Itemset Generation
null

A B C D E

AB AC AD AE BC BD BE CD CE DE

ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE

ABCD ABCE ABDE ACDE BCDE


Given d items, there
are 2d possible
ABCDE candidate itemsets
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 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
Transactions List of
Candidates
TID Items
1 Bread, Milk
2 Bread, Diaper, Beer, Eggs
N 3 Milk, Diaper, Beer, Coke M
4 Bread, Milk, Diaper, Beer
5 Bread, Milk, Diaper, Coke
w

– Match each transaction against every candidate


02/14/2018 Introduction to Data Mining, 2 Edition
nd
3/28/21 12:17 PM 10
– Complexity ~ O(NMw) => Expensive since M = 2d !!!
Frequent Itemset Generation Strategies
 Reduce the number of candidates (M)
– Complete search: M=2d
– Use pruning techniques to reduce M

 Reduce the number of transactions (N)


– Reduce size of N as the size of itemset increases
– Used by DHP and vertical-based mining algorithms

 Reduce the number of comparisons (NM)


– Use efficient data structures to store the candidates or
transactions
– No need to match every candidate against every
transaction
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 11
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:
X , Y : ( X  Y )  s( X )  s(Y )

– Support of an itemset never exceeds the support of its


subsets
– This is known as the anti-monotone property of support
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 12
Illustrating Apriori Principle

null

A B C D E

AB AC AD AE BC BD BE CD CE DE

Found to be
Infrequent
ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE

ABCD ABCE ABDE ACDE BCDE

Pruned
ABCDE
supersets
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 13
Illustrating Apriori Principle

TID Items
Items (1-itemsets)
1 Bread, Milk
Item Count
2 Beer, Bread, Diaper, Eggs
Bread 4
3 Beer, Coke, Diaper, Milk Coke 2
4 Beer, Bread, Diaper, Milk Milk 4
Beer 3
5 Bread, Coke, Diaper, Milk Diaper 4
Eggs 1

Minimum Support = 3

If every subset is considered,


6
C1 + 6C2 + 6C3
6 + 15 + 20 = 41
With support-based pruning,
6 + 6 + 4 = 16

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 14


Illustrating Apriori Principle

TID Items
Items (1-itemsets)
1 Bread, Milk
2 Beer, Bread, Diaper, Eggs Item Count
Bread 4
3 Beer, Coke, Diaper, Milk
Coke 2
4 Beer, Bread, Diaper, Milk Milk 4
5 Bread, Coke, Diaper, Milk Beer 3
Diaper 4
Eggs 1

Minimum Support = 3

If every subset is considered,


6
C1 + 6C2 + 6C3
6 + 15 + 20 = 41
With support-based pruning,
6 + 6 + 4 = 16

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 15


Illustrating Apriori Principle

Item Count Items (1-itemsets)


Bread 4
Coke 2
Milk 4 Itemset Pairs (2-itemsets)
Beer 3 {Bread,Milk}
Diaper 4 {Bread, Beer } (No need to generate
Eggs 1 {Bread,Diaper}
{Beer, Milk}
candidates involving Coke
{Diaper, Milk} or Eggs)
{Beer,Diaper}

Minimum Support = 3

If every subset is considered,


6
C1 + 6C2 + 6C3
6 + 15 + 20 = 41
With support-based pruning,
6 + 6 + 4 = 16

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 16


Illustrating Apriori Principle

Item Count Items (1-itemsets)


Bread 4
Coke 2
Milk 4 Itemset Count Pairs (2-itemsets)
Beer 3 {Bread,Milk} 3
Diaper 4 {Beer, Bread} 2 (No need to generate
Eggs 1 {Bread,Diaper} 3 candidates involving Coke
{Beer,Milk} 2
{Diaper,Milk} 3 or Eggs)
{Beer,Diaper} 3
Minimum Support = 3

If every subset is considered,


6
C1 + 6C2 + 6C3
6 + 15 + 20 = 41
With support-based pruning,
6 + 6 + 4 = 16

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 17


Illustrating Apriori Principle

Item Count Items (1-itemsets)


Bread 4
Coke 2
Milk 4 Itemset Count Pairs (2-itemsets)
Beer 3 {Bread,Milk} 3
Diaper 4 {Bread,Beer} 2 (No need to generate
Eggs 1
{Bread,Diaper} 3 candidates involving Coke
{Milk,Beer} 2 or Eggs)
{Milk,Diaper} 3
{Beer,Diaper} 3
Minimum Support = 3
Triplets (3-itemsets)
If every subset is considered,
Itemset
6
C1 + 6C2 + 6C3 { Beer, Diaper, Milk}
6 + 15 + 20 = 41 { Beer,Bread,Diaper}
With support-based pruning, {Bread, Diaper, Milk}
6 + 6 + 4 = 16 { Beer, Bread, Milk}

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 18


Illustrating Apriori Principle

Item Count Items (1-itemsets)


Bread 4
Coke 2
Milk 4 Itemset Count Pairs (2-itemsets)
Beer 3 {Bread,Milk} 3
Diaper 4 {Bread,Beer} 2 (No need to generate
Eggs 1
{Bread,Diaper} 3 candidates involving Coke
{Milk,Beer} 2 or Eggs)
{Milk,Diaper} 3
{Beer,Diaper} 3
Minimum Support = 3
Triplets (3-itemsets)
If every subset is considered, Itemset Count
6
C1 + 6C2 + 6C3 { Beer, Diaper, Milk} 2
6 + 15 + 20 = 41 { Beer,Bread, Diaper} 2
With support-based pruning, {Bread, Diaper, Milk} 2
{Beer, Bread, Milk} 1
6 + 6 + 4 = 16
6 + 6 + 1 = 13

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 19


Apriori Algorithm

– Fk: frequent k-itemsets


– Lk: candidate k-itemsets

 Algorithm
– Let k=1
– Generate F1 = {frequent 1-itemsets}
– Repeat until Fk is empty
 Candidate Generation: Generate Lk+1 from Fk
 Candidate Pruning: Prune candidate itemsets in Lk+1
containing subsets of length k that are infrequent
 Support Counting: Count the support of each candidate in
Lk+1 by scanning the DB
 Candidate Elimination: Eliminate candidates in Lk+1 that are
infrequent, leaving only those that are frequent => Fk+1
02/14/2018 Introduction to Data Mining, 2
nd
Edition 3/28/21 12:17 PM 20
Candidate Generation: Brute-force method

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 21


Candidate Generation: Merge Fk-1 and F1 itemsets

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 22


Candidate Generation: Fk-1 x Fk-1 Method

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 23


Candidate Generation: Fk-1 x Fk-1 Method

 Merge two frequent (k-1)-itemsets if their first (k-2) items


are identical

 F3 = {ABC,ABD,ABE,ACD,BCD,BDE,CDE}
– Merge(ABC, ABD) = ABCD
– Merge(ABC, ABE) = ABCE
– Merge(ABD, ABE) = ABDE

– Do not merge(ABD,ACD) because they share only


prefix of length 1 instead of length 2

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 24


Candidate Pruning

 Let F3 = {ABC,ABD,ABE,ACD,BCD,BDE,CDE} be
the set of frequent 3-itemsets

 L4 = {ABCD,ABCE,ABDE} is the set of candidate


4-itemsets generated (from previous slide)

 Candidate pruning
– Prune ABCE because ACE and BCE are infrequent
– Prune ABDE because ADE is infrequent

 After candidate
02/14/2018
pruning: L4 2= Edition
Introduction to Data Mining,
nd
{ABCD} 3/28/21 12:17 PM 25
Alternate Fk-1 x Fk-1 Method

 Merge two frequent (k-1)-itemsets if the last (k-2) items of


the first one is identical to the first (k-2) items of the
second.

 F3 = {ABC,ABD,ABE,ACD,BCD,BDE,CDE}
– Merge(ABC, BCD) = ABCD
– Merge(ABD, BDE) = ABDE
– Merge(ACD, CDE) = ACDE
– Merge(BCD, CDE) = BCDE

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 26


Candidate Pruning for Alternate Fk-1 x Fk-1 Method

 Let F3 = {ABC,ABD,ABE,ACD,BCD,BDE,CDE} be
the set of frequent 3-itemsets

 L4 = {ABCD,ABDE,ACDE,BCDE} is the set of


candidate 4-itemsets generated (from previous
slide)
 Candidate pruning
– Prune ABDE because ADE is infrequent
– Prune ACDE because ACE and ADE are infrequent
– Prune BCDE because BCE
 After candidate pruning: L4 = {ABCD}
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 27
Illustrating Apriori Principle

Item Count Items (1-itemsets)


Bread 4
Coke 2
Milk 4 Itemset Count Pairs (2-itemsets)
Beer 3 {Bread,Milk} 3
Diaper 4 {Bread,Beer} 2 (No need to generate
Eggs 1
{Bread,Diaper} 3 candidates involving Coke
{Milk,Beer} 2 or Eggs)
{Milk,Diaper} 3
{Beer,Diaper} 3
Minimum Support = 3
Triplets (3-itemsets)
If every subset is considered, Itemset Count
6
C1 + 6C2 + 6C3
{Bread, Diaper, Milk} 2
6 + 15 + 20 = 41
With support-based pruning,
6 + 6 + 1 = 13 Use of Fk-1xFk-1 method for candidate generation results in
only one 3-itemset. This is eliminated after the support
counting step.

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 28


Support Counting of Candidate Itemsets

 Scan the database of transactions to determine the


support of each candidate itemset
– Must match every candidate itemset against every transaction,
which is an expensive operation

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

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 29


Support Counting of Candidate Itemsets

 To reduce number of comparisons, store the candidate


itemsets in a hash structure
– Instead of matching each transaction against every candidate,
match it against candidates contained in the hashed buckets

Transactions Hash Structure


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

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 30


Support Counting: An Example
Suppose you have 15 candidate itemsets of length 3:
{1 4 5}, {1 2 4}, {4 5 7}, {1 2 5}, {4 5 8}, {1 5 9}, {1 3 6}, {2 3 4}, {5 6 7}, {3 4 5},
{3 5 6}, {3 5 7}, {6 8 9}, {3 6 7}, {3 6 8}

How many of these itemsets are supported by transaction (1,2,3,5,6)?

Transaction, t
1 2 3 5 6

Level 1
1 2 3 5 6 2 3 5 6 3 5 6

Level 2

12 3 5 6 13 5 6 15 6 23 5 6 25 6 35 6

123
135 235
125 156 256 356
136 236
126

Level 3 Subsets of 3 items


02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 31
Support Counting Using a Hash Tree
Suppose you have 15 candidate itemsets of length 3:
{1 4 5}, {1 2 4}, {4 5 7}, {1 2 5}, {4 5 8}, {1 5 9}, {1 3 6}, {2 3 4}, {5 6 7}, {3 4 5},
{3 5 6}, {3 5 7}, {6 8 9}, {3 6 7}, {3 6 8}
You need:
 Hash function
 Max leaf size: max number of itemsets stored in a leaf node (if number
of candidate itemsets exceeds max leaf size, split the node)

Hash function 234


3,6,9 567
1,4,7 145 345 356 367
136 368
2,5,8 357
124 689
457 125 159
458
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 32
Support Counting Using a Hash Tree

Hash Function Candidate Hash Tree

1,4,7 3,6,9

2,5,8

234
567

145 136
345 356 367
Hash on
357 368
1, 4 or 7
124 159 689
125
457 458

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 33


Support Counting Using a Hash Tree

Hash Function Candidate Hash Tree

1,4,7 3,6,9

2,5,8

234
567

145 136
345 356 367
Hash on
357 368
2, 5 or 8
124 159 689
125
457 458

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 34


Support Counting Using a Hash Tree

Hash Function Candidate Hash Tree

1,4,7 3,6,9

2,5,8

234
567

145 136
345 356 367
Hash on
357 368
3, 6 or 9
124 159 689
125
457 458

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 35


Support Counting Using a Hash Tree

Hash Function
1 2 3 5 6 transaction

1+ 2356
2+ 356 1,4,7 3,6,9

2,5,8
3+ 56

234
567

145 136
345 356 367
357 368
124 159 689
125
457 458

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 36


Support Counting Using a Hash Tree

Hash Function
1 2 3 5 6 transaction

1+ 2356
2+ 356 1,4,7 3,6,9
12+ 356 2,5,8
3+ 56
13+ 56
234
15+ 6 567

145 136
345 356 367
357 368
124 159 689
125
457 458

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 37


Support Counting Using a Hash Tree

Hash Function
1 2 3 5 6 transaction

1+ 2356
2+ 356 1,4,7 3,6,9
12+ 356 2,5,8
3+ 56
13+ 56
234
15+ 6 567

145 136
345 356 367
357 368
124 159 689
125
457 458
Match transaction against 11 out of 15 candidates
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 38
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 ABC
AB 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)

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 39


Rule Generation

 In general, confidence does not have an anti-


monotone property
c(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., Suppose {A,B,C,D} is a frequent 4-itemset:

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
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 40
Rule Generation for Apriori Algorithm

Lattice of rules
ABCD=>{ }
Low
Confidence
Rule
BCD=>A ACD=>B ABD=>C ABC=>D

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

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


Pruned
Rules

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 41


Association Analysis: Basic Concepts
and Algorithms

Algorithms and Complexity

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 42


Factors Affecting Complexity of Apriori
 Choice of minimum support threshold
– lowering support threshold results in more frequent itemsets
– this may increase number of candidates and max length of
frequent itemsets
 Dimensionality (number of items) of the data set
– more space is needed to store support count of each item
– if number of frequent items also increases, both computation and
I/O costs may also increase
 Size of database
– since Apriori makes multiple passes, run time of algorithm may
increase with number of transactions
 Average transaction width
– transaction width increases with denser data sets
– This may increase max length of frequent itemsets and traversals
of hash tree (number of subsets in a transaction increases with its
width)

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 43


Factors Affecting Complexity of Apriori

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 44


Compact Representation of Frequent Itemsets

 Some itemsets are redundant because they have identical


support as their supersets
TID A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 B1 B2 B3 B4 B5 B6 B7 B8 B9 B10 C1 C2 C3 C4 C5 C6 C7 C8 C9 C10
1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
2 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
4 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
5 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
6 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
7 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
8 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
9 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
10 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1

10 
Number of frequent itemsets  3    
10


k
k 1

 Need a compact representation


02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 45
Maximal Frequent Itemset
An itemset is maximal frequent if it is frequent and none of its
immediate supersets is frequent null

Maximal A B C D E
Itemsets

AB AC AD AE BC BD BE CD CE DE

ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE

ABCD ABCE ABDE ACDE BCDE

Infrequent
Itemsets Border
ABCD
E

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 46


What are the Maximal Frequent Itemsets in this Data?

TID A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 B1 B2 B3 B4 B5 B6 B7 B8 B9 B10 C1 C2 C3 C4 C5 C6 C7 C8 C9 C10


1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
2 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
4 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
5 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
6 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
7 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
8 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
9 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
10 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1

Minimum support threshold = 5

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 47


An illustrative example

Items
A B C D E F G H I J Support threshold (by count) : 5
Frequent itemsets: ?
1
2
3
Transactions

4
5
6
7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 48


An illustrative example

Items
A B C D E F G H I J Support threshold (by count) : 5
Frequent itemsets: {F}
1
2
3
Transactions

4
5
6
7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 49


An illustrative example

Items
A B C D E F G H I J
Support threshold (by count) : 5
1 Frequent itemsets: {F}

2
Support threshold (by count): 4
3 Frequent itemsets: ?
Transactions

4
5
6
7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 50


An illustrative example

Items
A B C D E F G H I J Support threshold (by count) : 5
Frequent itemsets: {F}
1
2 Support threshold (by count): 4
Frequent itemsets: {E}, {F}, {E,F}, {J}
3
Transactions

4
5
6
7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 51


An illustrative example

Items
A B C D E F G H I J Support threshold (by count) : 5
Frequent itemsets: {F}
1
2 Support threshold (by count): 4
Frequent itemsets: {E}, {F}, {E,F}, {J}
3
Transactions

4 Support threshold (by count): 3


Frequent itemsets: ?
5
6
7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 52


An illustrative example

Items
A B C D E F G H I J Support threshold (by count) : 5
Frequent itemsets: {F}
1
2 Support threshold (by count): 4
Frequent itemsets: {E}, {F}, {E,F}, {J}
3
Transactions

4 Support threshold (by count): 3


Frequent itemsets:
5 All subsets of {C,D,E,F} + {J}

6
7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 53


An illustrative example

Items
A B C D E F G H I J Support threshold (by count) : 5
Frequent itemsets: {F}
1 Maximal itemsets: ?

2 Support threshold (by count): 4


Frequent itemsets: {E}, {F}, {E,F}, {J}
3 Maximal itemsets: ?
Transactions

4 Support threshold (by count): 3


Frequent itemsets:
5 All subsets of {C,D,E,F} + {J}
Maximal itemsets: ?
6
7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 54


An illustrative example

Items
A B C D E F G H I J Support threshold (by count) : 5
Frequent itemsets: {F}
1 Maximal itemsets: {F}

2 Support threshold (by count): 4


Frequent itemsets: {E}, {F}, {E,F}, {J}
3 Maximal itemsets: ?
Transactions

4 Support threshold (by count): 3


Frequent itemsets:
5 All subsets of {C,D,E,F} + {J}
Maximal itemsets: ?
6
7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 55


An illustrative example

Items
A B C D E F G H I J Support threshold (by count) : 5
Frequent itemsets: {F}
1 Maximal itemsets: {F}

2 Support threshold (by count): 4


Frequent itemsets: {E}, {F}, {E,F}, {J}
3 Maximal itemsets: {E,F}, {J}
Transactions

4 Support threshold (by count): 3


Frequent itemsets:
5 All subsets of {C,D,E,F} + {J}
Maximal itemsets: ?
6
7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 56


An illustrative example

Items
A B C D E F G H I J Support threshold (by count) : 5
Frequent itemsets: {F}
1 Maximal itemsets: {F}

2 Support threshold (by count): 4


Frequent itemsets: {E}, {F}, {E,F}, {J}
3 Maximal itemsets: {E,F}, {J}
Transactions

4 Support threshold (by count): 3


Frequent itemsets:
5 All subsets of {C,D,E,F} + {J}
Maximal itemsets:
6 {C,D,E,F}, {J}

7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 57


Another illustrative example

Items
A B C D E F G H I J Support threshold (by count) : 5
Maximal itemsets: {A}, {B}, {C}
1
Support threshold (by count): 4
2 Maximal itemsets: {A,B}, {A,C},{B,C}

3 Support threshold (by count): 3


Maximal itemsets: {A,B,C}
Transactions

4
5
6
7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 58


Closed Itemset

 An itemset X is closed if none of its immediate supersets


has the same support as the itemset X.
 X is not closed if at least one of its immediate supersets
has support count as X.
Itemset Support
{A} 4
TID Items {B} 5 Itemset Support
1 {A,B} {C} 3 {A,B,C} 2
2 {B,C,D} {D} 4 {A,B,D} 3
3 {A,B,C,D} {A,B} 4 {A,C,D} 2
4 {A,B,D} {A,C} 2 {B,C,D} 2
5 {A,B,C,D} {A,D} 3 {A,B,C,D} 2
{B,C} 3
{B,D} 4
{C,D} 3
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 59
Maximal vs Closed Itemsets
null
Transaction Ids
TID Items
1 ABC 124 123 1234 245 345
A B C D E
2 ABCD
3 BCE
4 ACDE 12 124 24 4 123 2 3 24 34 45
AB AC AD AE BC BD BE CD CE DE
5 DE

12 2 24 4 4 2 3 4
ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE

2 4
ABCD ABCE ABDE ACDE BCDE

Not supported by
any transactions ABCDE

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 60


Maximal vs Closed Frequent Itemsets
Minimum support = 2 null Closed but
not
maximal
124 123 1234 245 345
A B C D E
Closed and
maximal

12 124 24 4 123 2 3 24 34 45
AB AC AD AE BC BD BE CD CE DE

12 2 24 4 4 2 3 4
ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE

2 4
ABCD ABCE ABDE ACDE BCDE # Closed = 9
# Maximal = 4

ABCDE

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 61


What are the Closed Itemsets in this Data?

TID A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 B1 B2 B3 B4 B5 B6 B7 B8 B9 B10 C1 C2 C3 C4 C5 C6 C7 C8 C9 C10


1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
2 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
3 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
4 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
5 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
6 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
7 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
8 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
9 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
10 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
11 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 62


Example 1

Items
A B C D E F G H I J Itemsets Support Closed
(counts) itemsets
1
{C} 3
2
{D} 2
3
{C,D} 2
Transactions

4
5
6
7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 63


Example 1

Items
A B C D E F G H I J Itemsets Support Closed
(counts) itemsets
1
{C} 3 
2
{D} 2
3
{C,D} 2 
Transactions

4
5
6
7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 64


Example 2

Items
A B C D E F G H I J Itemsets Support Closed
(counts) itemsets
1
{C} 3
2
{D} 2
3
{E} 2
Transactions

4
{C,D} 2
5
{C,E} 2
6
{D,E} 2
7
{C,D,E} 2
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 65


Example 2

Items
A B C D E F G H I J Itemsets Support Closed
(counts) itemsets
1
{C} 3 
2
{D} 2
3
{E} 2
Transactions

4
{C,D} 2
5
{C,E} 2
6
{D,E} 2
7
{C,D,E} 2 
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 66


Example 3

Items
A B C D E F G H I J Closed itemsets: {C,D,E,F}, {C,F}
1
2
3
Transactions

4
5
6
7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 67


Example 4

Items
A B C D E F G H I J Closed itemsets: {C,D,E,F}, {C}, {F}
1
2
3
Transactions

4
5
6
7
8
9
10

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 68


Maximal vs Closed Itemsets

Frequent
Itemsets

Closed
Frequent
Itemsets

Maximal
Frequent
Itemsets

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 69


Example question
 Given the following transaction data sets (dark cells indicate presence of an item in a
transaction) and a support threshold of 20%, answer the following questions

a. What is the number of frequent itemsets for each dataset? Which dataset will produce the
most number of frequent itemsets?
b. Which dataset will produce the longest frequent itemset?
c. Which dataset will produce frequent itemsets with highest maximum support?
d. Which dataset will produce frequent itemsets containing items with widely varying support
levels (i.e., itemsets containing items with mixed support, ranging from 20% to more than
70%)?
e. What is the number of maximal frequent itemsets for each dataset? Which dataset will
produce the most number of maximal frequent itemsets?
f. What is the number of closed frequent itemsets for each dataset? Which dataset will produce
the most number of closed frequent itemsets?

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 70


Pattern Evaluation

 Association rule algorithms can produce large


number of rules

 Interestingness measures can be used to


prune/rank the patterns
– In the original formulation, support & confidence are
the only measures used

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 71


Computing Interestingness Measure

 Given X  Y or {X,Y}, information needed to compute


interestingness can be obtained from a contingency table
Contingency table
Y Y f11: support of X and Y
X f11 f10 f1+ f10: support of X and Y
X f01 f00 fo+ f01: support of X and Y
f+1 f+0 N f00: support of X and Y

Used to define various measures


 support, confidence, Gini,
entropy, etc.

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 72


Drawback of Confidence
Custo Tea Coffee …
mers
Coffee Coffee
C1 0 1 …
Tea 15 5 20
C2 1 0 …
Tea 75 5 80
C3 1 1 …
90 10 100
C4 1 0 …

Association Rule: Tea  Coffee

Confidence  P(Coffee|Tea) = 15/20 = 0.75


Confidence > 50%, meaning people who drink tea are more
likely to drink coffee than not drink coffee
So rule seems reasonable
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 73
Drawback of Confidence

Coffee Coffee
Tea 15 5 20
Tea 75 5 80
90 10 100

Association Rule: Tea  Coffee

Confidence= P(Coffee|Tea) = 15/20 = 0.75

but P(Coffee) = 0.9, which means knowing that a person drinks


tea reduces the probability that the person drinks coffee!
Þ Note that P(Coffee|Tea) = 75/80 = 0.9375

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 74


Measure for Association Rules

 So, what kind of rules do we really want?


– Confidence(X  Y) should be sufficiently high
 To ensure that people who buy X will more likely buy Y than not
buy Y

– Confidence(X  Y) > support(Y)


 Otherwise, rule will be misleading because having item X
actually reduces the chance of having item Y in the same
transaction
 Is there any measure that capture this constraint?
– Answer: Yes. There are many of them.

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 75


Statistical Independence

 The criterion
confidence(X  Y) = support(Y)

is equivalent to:
– P(Y|X) = P(Y)
– P(X,Y) = P(X)  P(Y)

If P(X,Y) > P(X)  P(Y) : X & Y are positively correlated

If P(X,Y) < P(X)  P(Y) : X & Y are negatively correlated

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 76


Measures that take into account statistical dependence

P (Y | X )
Lift 
P (Y ) lift is used for rules while
interest is used for itemsets
P( X , Y )
Interest 
P ( X ) P (Y )
PS  P( X , Y )  P ( X ) P(Y )
P ( X , Y )  P ( X ) P (Y )
  coefficien t 
P( X )[1  P( X )] P(Y )[1  P(Y )]

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 77


Example: Lift/Interest

Coffee Coffee
Tea 15 5 20
Tea 75 5 80
90 10 100

Association Rule: Tea  Coffee

Confidence= P(Coffee|Tea) = 0.75


but P(Coffee) = 0.9
Þ Lift = 0.75/0.9= 0.8333 (< 1, therefore is negatively associated)
So, is it enough to use confidence/lift for pruning?

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 78


Lift or Interest

Y Y Y Y
X 10 0 10 X 90 0 90
X 0 90 90 X 0 10 10
10 90 100 90 10 100

0.1 0.9
Lift   10 Lift   1.11
(0.1)(0.1) (0.9)(0.9)

Statistical independence:
If P(X,Y)=P(X)P(Y) => Lift = 1

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 79


There are lots of
measures proposed
in the literature

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 80


Comparing Different Measures
Exam ple f11 f10 f01 f00
10 examples of E1 8123 83 424 1370
contingency tables: E2
E3
8330
9481
2
94
622
127
1046
298
E4 3954 3080 5 2961
E5 2886 1363 1320 4431
E6 1500 2000 500 6000
E7 4000 2000 1000 3000
E8 4000 2000 2000 2000
Rankings of contingency tables E9 1720 7121 5 1154
using various measures: E10 61 2483 4 7452

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 81


Property under Variable Permutation

B B A A
A p q B p r
A r s B q s

Does M(A,B) = M(B,A)?

Symmetric measures:
 support, lift, collective strength, cosine, Jaccard, etc
Asymmetric measures:
 confidence, conviction, Laplace, J-measure, etc

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 82


Property under Row/Column Scaling

Grade-Gender Example (Mosteller, 1968):

Female Male Female Male


High 2 3 5 High 4 30 34
Low 1 4 5 Low 2 40 42
3 7 10 6 70 76

2x 10x
Mosteller:
Underlying association should be independent of
the relative number of male and female students
in the samples

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 83


Property under Inversion Operation

A B C D E F

.
Transaction 1
1 0 0 1 0 0
0 0 1 1 1 0
. 0 0 1 1 1 0

. 0 0 1 1 1 0

. 0
0
1
0
1
1
0
1
1
1
1
0
. 0
0
0
0
1
1
1
1
1
1
0
0
0 0 1 1 1 0
Transaction N 1 0 0 1 0 0

(a) (b) (c)

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 84


Example: -Coefficient

 -coefficient is analogous to correlation coefficient


for continuous variables
Y Y Y Y
X 60 10 70 X 20 10 30
X 10 20 30 X 10 60 70
70 30 100 30 70 100

0.6  0.7  0.7 0.2  0.3  0.3


 
0.7  0.3  0.7  0.3 0.7  0.3  0.7  0.3
 0.5238  0.5238
 Coefficient is the same for both tables
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 85
Property under Null Addition

B B B B
A p q A p q
A r s A r s+k

Invariant measures:
 support, cosine, Jaccard, etc
Non-invariant measures:
 correlation, Gini, mutual information, odds ratio, etc

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 86


Different Measures have Different Properties

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 87


Simpson’s Paradox

c({HDTV  Yes}  {Exercise Machine  Yes} )  99 / 180  55%


c({HDTV  No}  {Exercise Machine  Yes} )  54 / 120  45%

=> Customers who buy HDTV are more likely to buy exercise machines

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 88


Simpson’s Paradox

College students:
c({HDTV  Yes}  {Exercise Machine  Yes} )  1 / 10  10%
c({HDTV  No}  {Exercise Machine  Yes} )  4 / 34  11 .8%

Working adults:
c({HDTV  Yes}  {Exercise Machine  Yes} )  98 / 170  57.7%
c({HDTV  No}  {Exercise Machine  Yes} )  50 / 86  58.1%

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 89


Simpson’s Paradox

 Observed relationship in data may be influenced


by the presence of other confounding factors
(hidden variables)
– Hidden variables may cause the observed relationship
to disappear or reverse its direction!

 Proper stratification is needed to avoid generating


spurious patterns

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 90


Effect of Support Distribution on Association Mining

 Many real data sets have skewed support


distribution
Few items
with high
support

Many items
Support with low
distribution of support
a retail data set

Rank of item (in log scale)

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 91


Effect of Support Distribution

 Difficult to set the appropriate minsup threshold


– If minsup is too high, we could miss itemsets involving
interesting rare items (e.g., {caviar, vodka})

– If minsup is too low, it is computationally expensive


and the number of itemsets is very large

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 92


Cross-Support Patterns

A cross-support pattern involves


items with varying degree of
support
 Example: {caviar,milk}

How to avoid such patterns?

caviar milk

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 93


A Measure of Cross Support


 Given
  an itemset,, with items, we can define a measure
of cross support,r, for the itemset

 
𝐦𝐢𝐧 {𝑠 ( 𝑥 1) , 𝑠 ( 𝑥2 ) ,… , 𝑠( 𝑥 𝑑 ) }
𝑟 ( 𝑋 )=
𝐦𝐚𝐱 {𝑠 (𝑥 1 ), 𝑠( 𝑥 2) , … , 𝑠 ( 𝑥 𝑑 )}

where ) is the support of item

– Can use to prune cross support patterns, but not to


avoid them

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 94


Confidence and Cross-Support Patterns

Observation:
conf(caviarmilk) is very high
but
conf(milkcaviar) is very low

Therefore,
min( conf(caviarmilk),
conf(milkcaviar) )

is also very low

caviar milk

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 95


H-Confidence

 To

  avoid patterns whose items have very different
support, define a new evaluation measure for itemsets
– Known as h-confidence or all-confidence

 Specifically, given an itemset


– h-confidence is the minimum confidence of any association
rule formed from itemset

– hconf( ) = min( conf(1→ 2) ),

where , ,

For example:

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 96


H-Confidence …

 But,
  given an itemset
– What is the lowest confidence rule you can obtain
from ?
– Recall conf(→) = s() / support()
 The numerator is fixed: s() = s(X )
 Thus, to find the lowest confidence rule, we need to find the
X1 with highest support
 Consider only rules where is a single item, i.e.,
{}  – {}, {}  – {}, …, or {}  – {}

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 97


Cross Support and H-confidence

 By
  the anti-montone property of support

 Therefore, we can derive a relationship between


the h-confidence and cross support of an itemset

Thus,

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 98


Cross Support and H-confidence …

 Since,
  we can eliminate cross support patterns by
finding patterns with
h-confidence < hc, a user set threshold
 Notice that

 Any itemset satisfying a given h-confidence


threshold, hc, is called a hyperclique
 H-confidence can be used instead of or in
conjunction with support
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM 99
Properties of Hypercliques

 Hypercliques
  are itemsets, but not necessarily
frequent itemsets
– Good for finding low support patterns

 H-confidence is anti-monotone

 Can define closed and maximal hypercliques in


terms of h-confidence
– A hyperclique X is closed if none of its immediate
supersets has the same h-confidence as X
– A hyperclique X is maximal if and none of its
immediate supersets, Y, have

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM


100
Properties of Hypercliques …

 Hypercliques
  have the high-affinity property
– Think of the individual items as sparse binary vectors
– h-confidence gives us information about their pairwise
Jaccard and cosine similarity
 Assume and are any two items in an itemset X
 f(X)/2
 f(X)
– Hypercliques that have a high h-confidence consist of
very similar items as measured by Jaccard and cosine
 The items in a hyperclique cannot have widely
different support
– Allows for more efficient pruning

02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM


101
Example Applications of Hypercliques

 Hypercliques are used to


find strongly coherent
groups of items
– Words that occur together
in documents
– Proteins in a protein
interaction network

In the figure at the right, a gene


ontology hierarchy for biological
process shows that the identified
proteins in the hyperclique (PRE2, …,
SCL1) perform the same function and
are involved in the same biological
process
02/14/2018 Introduction to Data Mining, 2nd Edition 3/28/21 12:17 PM
102

You might also like