Presentation is loading. Please wait.

Presentation is loading. Please wait.

MIS2502: Data Analytics Association Rule Mining Jeremy Shafer

Similar presentations


Presentation on theme: "MIS2502: Data Analytics Association Rule Mining Jeremy Shafer"— Presentation transcript:

1 MIS2502: Data Analytics Association Rule Mining Jeremy Shafer Jeremy.Shafer@temple.edu http://community.mis.temple.edu/jshafer

2 Uses What products are bought together? Amazon’s recommendation engine Telephone calling patterns Association Rule Mining Find out which items predict the occurrence of other items Also known as “affinity analysis” or “market basket” analysis

3 Examples of Association Rule Mining Market basket analysis/affinity analysis – What products are bought together? – Where to place items on grocery store shelves? Amazon’s recommendation engine – “People who bought this product also bought…” Telephone calling patterns – Who do a set of people tend to call most often? Social network analysis – Determine who you “may know”

4 Market-Basket Transactions BasketItems 1 Bread, Milk 2 Bread, Diapers, Beer, Eggs 3 Milk, Diapers, Beer, Coke 4 Bread, Milk, Diapers, Beer 5 Bread, Milk, Diapers, Coke Some Association Rules from these transactions X  Y (antecedent  consequent) {Diapers}  {Beer}, {Milk, Bread}  {Diapers} {Beer, Bread}  {Milk}, {Bread}  {Milk, Diapers}

5 Core idea: The itemset Itemset A group of items of interest {Milk, Beer, Diapers} Association rules express relationships between itemsets X  Y {Milk, Diapers}  {Beer} “when you have milk and diapers, you also have beer” BasketItems 1 Bread, Milk 2 Bread, Diapers, Beer, Eggs 3 Milk, Diapers, Beer, Coke 4 Bread, Milk, Diapers, Beer 5 Bread, Milk, Diapers, Coke

6 Support Support count (  ) –In how many baskets does the itemset appear? –  {Milk, Beer, Diapers} = 2 (i.e., in baskets 3 and 4) Support (s) – Fraction of transactions that contain all items in X  Y – s({Milk, Diapers, Beer}) = 2/5 = 0.4 You can calculate support for both X and Y separately – Support for X = 3/5 = 0.6 – Support for Y = 3/5 = 0.6 BasketItems 1 Bread, Milk 2 Bread, Diapers, Beer, Eggs 3 Milk, Diapers, Beer, Coke 4 Bread, Milk, Diapers, Beer 5 Bread, Milk, Diapers, Coke X Y 2 baskets have milk, beer, and diapers 5 baskets total

7 Confidence Confidence is the strength of the association –Measures how often items in Y appear in transactions that contain X BasketItems 1 Bread, Milk 2 Bread, Diapers, Beer, Eggs 3 Milk, Diapers, Beer, Coke 4 Bread, Milk, Diapers, Beer 5 Bread, Milk, Diapers, Coke This says 67% of the times when you have milk and diapers in the itemset you also have beer! c must be between 0 and 1 1 is a complete association 0 is no association

8 Some sample rules Association RuleSupport (s)Confidence (c) {Milk,Diapers}  {Beer} 2/5 = 0.42/3 = 0.67 {Milk,Beer}  {Diapers} 2/5 = 0.42/2 = 1.0 {Diapers,Beer}  {Milk} 2/5 = 0.42/3 = 0.67 {Beer}  {Milk,Diapers} 2/5 = 0.42/3 = 0.67 {Diapers}  {Milk,Beer} 2/5 = 0.42/4 = 0.5 {Milk}  {Diapers,Beer} 2/5 = 0.42/4 = 0.5 BasketItems 1 Bread, Milk 2 Bread, Diapers, Beer, Eggs 3 Milk, Diapers, Beer, Coke 4 Bread, Milk, Diapers, Beer 5 Bread, Milk, Diapers, Coke All the above rules are binary partitions of the same itemset: {Milk, Diapers, Beer} (That is, we are splitting the set into two parts.)

9 Rule Pairs Association RuleSupport (s) Confidence (c) 1 {Milk,Diapers}  {Beer} 2/5 = 0.42/3 = 0.67 2 {Milk,Beer}  {Diapers} 2/5 = 0.42/2 = 1.0 3 {Diapers,Beer}  {Milk} 2/5 = 0.42/3 = 0.67 4 {Beer}  {Milk,Diapers} 2/5 = 0.42/3 = 0.67 5 {Diapers}  {Milk,Beer} 2/5 = 0.42/4 = 0.5 6 {Milk}  {Diapers,Beer} 2/5 = 0.42/4 = 0.5 A rule pair is a pair of two association rules that represent the two possible combinations of a binary partition. If I have a rule of X  Y then its corresponding rule pair is Y  X. One rule pair is starred above. Can you find the others? A rule pair is a pair of two association rules that represent the two possible combinations of a binary partition. If I have a rule of X  Y then its corresponding rule pair is Y  X. One rule pair is starred above. Can you find the others?

10 Don’t blindly follow the numbers i.e., high confidence suggests a strong association… But this can be deceptive Consider {Bread}  {Diapers} Support for the total itemset is 0.6 (3/5) And confidence is 0.75 (3/4) – pretty high But is this just because both are frequently occurring items (s=0.8)? You’d almost expect them to show up in the same baskets by chance

11 Lift Takes into account how co-occurrence differs from what is expected by chance – i.e., if items were selected independently from one another Support for total itemset X and Y Support for X times support for Y

12 Lift Example What’s the lift for the rule: {Milk, Diapers}  {Beer} So X = {Milk, Diapers} Y = {Beer} s({Milk, Diapers, Beer}) = 2/5 = 0.4 s({Milk, Diapers}) = 3/5 = 0.6 s({Beer}) = 3/5 = 0.6 So BasketItems 1 Bread, Milk 2 Bread, Diapers, Beer, Eggs 3 Milk, Diapers, Beer, Coke 4 Bread, Milk, Diapers, Beer 5 Bread, Milk, Diapers, Coke When Lift > 1, the occurrence of X  Y together is more likely than what you would expect by chance

13 Another example Checking Account Savings Account NoYes No50035004000 Yes100050006000 1500850010000 Are people more inclined to have a checking account if they have a savings account? Support ({Savings}  {Checking}) = 5000/10000 = 0.5 Support ({Savings}) = 6000/10000 = 0.6 Support ({Checking}) = 8500/10000 = 0.85 Answer: No In fact, it’s slightly less than what you’d expect by chance! Answer: No In fact, it’s slightly less than what you’d expect by chance!

14 But this can be overwhelming So where do you start? Thousands of products Many customer types Millions of combinations

15 Selecting the rules We know how to calculate the measures for each rule – Support – Confidence – Lift Then we set up thresholds for the minimum rule strength we want to accept The steps List all possible association rules Compute the support and confidence for each rule Drop rules that don’t make the thresholds Use lift to further check the association

16 Once you are confident in a rule, take action {Milk, Diapers}  {Beer} Possible Marketing Actions Create “New Parent Coping Kits” of beer, milk, and diapers What are some others?

17 Recap In this presentation, we identified four statistics used in Association Rule mining. 1.Support Count 2.Support 3.Confidence 4.Lift

18 Support Count (  ) Support Count answers the question – “How Many?” Specifically, how many occurrences in a data set have a particular combination of items. Support count can be calculated for either a rule or a specific item set. So, if: X = {Milk, Diapers} Y = {Beer} Then:  (X) = 3  (Y) = 3  (X  Y) = 2 BasketItems 1 Bread, Milk 2 Bread, Diapers, Beer, Eggs 3 Milk, Diapers, Beer, Coke 4 Bread, Milk, Diapers, Beer 5 Bread, Milk, Diapers, Coke

19 Support ( s) Support answers the question – “What percent?” Specifically, what percentage of occurrences in a data set have a particular combination of items. Support (s) may be expressed as a percentage or a probability. Support can be calculated for either a rule or a specific item set. So, if: X = {Milk, Diapers} Y = {Beer} Then: s(X) = 3/5 =.6 = 60% s(Y) = 3/5 =.6 = 60% s(X  Y) = 2/5 =.4 = 40% BasketItems 1 Bread, Milk 2 Bread, Diapers, Beer, Eggs 3 Milk, Diapers, Beer, Coke 4 Bread, Milk, Diapers, Beer 5 Bread, Milk, Diapers, Coke

20 Confidence ( c) Confidence answers about the quality (or strength) of a particular association rule. Specifically, if I see itemsset X in my data, how likely am I to see itemset Y as well? Confidence can be expressed as a percentage or a probability. Confidence can only be calculated for an association rule. So, if: X = {Milk, Diapers} Y = {Beer} Then:

21 Lift Lift answers the question – does the support for a association rule in our data appear because of some influence that is more than just dumb luck? Lift can only be calculated for an association rule. A lift > 1 indicates that the association is real. The greater the lift, the stronger the association. A lift = 1 is what we expect to see if there is no connection between the itemsets. A lift < 1 indicates something called a negative association one. That is if we have X we are actually less likely to see Y.

22 Lift If: X = {Milk, Diapers} Y = {Beer} Then: s(X  Y) = 2/5 = 0.4 s(X) = 3/5 = 0.6 s(Y) = 3/5 = 0.6 BasketItems 1 Bread, Milk 2 Bread, Diapers, Beer, Eggs 3 Milk, Diapers, Beer, Coke 4 Bread, Milk, Diapers, Beer 5 Bread, Milk, Diapers, Coke When Lift > 1, the occurrence of X  Y together is more likely than what you would expect by chance

23 What are these numbers good for? MeasurementRemark Support CountA basic measurement, Support Count can be used to get a rough estimate, and is also useful in the computation of support and confidence. SupportGives me a probability (or percentage) of an itemset's occurrence within a body of data. ConfidenceA good, preliminary indication of the strength of an association rule. LiftThe best indicator of the quality or strength of an association rule.


Download ppt "MIS2502: Data Analytics Association Rule Mining Jeremy Shafer"

Similar presentations


Ads by Google