Philippe Fournier-Viger
Description: Philippe Fournier-Viger http:www.philippe-Fournier-viger.com An Introduction to Sequential Pattern Mining 1 Fournier-Viger, P., Lin, J. C.-W., Kiran, R. U., Koh, Y. S., Thomas, R. (2017). A Survey of Sequential Pattern Mining. Data
Related Topics
Download Presentation
"Philippe Fournier-Viger" is the property of its rightful owner. Permission is granted to download and print the materials on this website for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Presentation Transcript
slide1. Philippe Fournier-Vigerhttp://www.philippe-Fournier-viger.com An Introduction to Sequential Pattern Mining 1 Fournier-Viger, P., Lin, J. C.-W., Kiran, R. U., Koh, Y. S., Thomas, R. (2017). A Survey of Sequential Pattern Mining. Data Science and Pattern Recognition (DSPR), vol. 1(1), pp. 54-77. Source code and datasets available in the SPMF library<br>
slide2. Introduction Data Mining: the goal is to discover or extract useful knowledge from data.
Many types of data can be analyzed: graphs, relational databases, time series, sequences, etc.
In this presentation, we focus on analyzing a common type of data called discrete sequences to find interesting patterns in it. 2<br>
slide3. What is a discrete sequence? 3 Computer Monitor Router A sequence is an ordered list of symbols.
Example 1: a sequence can be the items that are purchased by a customer over time:<br>
slide4. What is a discrete sequence? 4 I A sequence is an ordered list of symbols.
Example 2: a sequence can be the list of words in a sentence: go back home<br>
slide5. What is a discrete sequence? 5 A sequence is an ordered list of symbols.
Example 3: a sequence can be the list of locations visited by a car in a city a b f g a b c d e f g h<br>
slide6. Sequential Pattern Mining It is a popular data mining task, introduced in 1994 by Agrawal & Srikant.
The goal is to find all subsequences that appear frequently in a set of discrete sequences.
For example:
find sequences of items purchased by many customers over time,
find sequences of locations frequently visited by tourists in a city,
Find sequences of words that appear frequently in a text. 6<br>
slide7. Definition: Items 7<br>
slide8. Definition: Itemset 8<br>
slide9. Definition: Sequence 9<br>
slide10. 10<br>
slide11. Definition: Sequence database 11 Sequence database<br>
slide12. Definition: Support of a sequence 12 Sequence database<br>
slide13. Definition: Support of a sequence 13 Sequence database<br>
slide14. Definition: Support of a sequence 14 Sequence database<br>
slide15. Definition: Support of a sequence 15 Sequence database<br>
slide16. Definition: Sequential pattern mining 16<br>
slide17. Example 1 17 Sequence database INPUT: OUTPUT:<br>
slide18. Example 1 18 Sequence database INPUT: What will happen if we change the threshold? <br>
slide19. Example 2 19 Sequence database INPUT: OUTPUT: Observation: If we increase the minsup threshold, less patterns may be found<br>
slide20. Example 2 20 Sequence database INPUT: Observation: If we increase the minsup threshold, less patterns may be found<br>
slide21. It is a difficult problem! 21<br>
slide22. Some popular algorithms GSP: R. Agrawal, and R. Srikant, Mining sequential patterns, ICDE 1995, pp. 3–14, 1995.
SPAM: Ayres, J. Flannick, J. Gehrke, and T. Yiu, Sequential pattern mining using a bitmap representation, KDD 2002, pp. 429–435, 2002.
SPADE: M. J. Zaki, SPADE: An efficient algorithm for mining frequent sequences, Machine learning, vol. 42(1-2), pp. 31–60, 2001.
PrefixSpan: J. Pei, et al. Mining sequential patterns by pattern-growth: The prefixspan approach, IEEE Transactions on knowledge and data engineering, vol. 16(11), pp. 1424–1440, 2004.
CM-SPAM and CM-SPADE: P. Fournier-Viger, A. Gomariz, M. Campos, and R. Thomas, Fast Vertical Mining of Sequential Patterns Using Co-occurrence Information, PAKDD 2014, pp. 40–52, 2014. 22 Fast implementations available in the SPMF library They all have the same input and output.
The difference is performance due to optimizations, search strategies and data structures!<br>
slide23. A performance comparison 23 Kosarak Snake BMS Leviathan Four benchmark datasets are used<br>
slide24. The “Apriori” property 24 Example Sequence database<br>
slide2. Introduction Data Mining: the goal is to discover or extract useful knowledge from data.
Many types of data can be analyzed: graphs, relational databases, time series, sequences, etc.
In this presentation, we focus on analyzing a common type of data called discrete sequences to find interesting patterns in it. 2<br>
slide3. What is a discrete sequence? 3 Computer Monitor Router A sequence is an ordered list of symbols.
Example 1: a sequence can be the items that are purchased by a customer over time:<br>
slide4. What is a discrete sequence? 4 I A sequence is an ordered list of symbols.
Example 2: a sequence can be the list of words in a sentence: go back home<br>
slide5. What is a discrete sequence? 5 A sequence is an ordered list of symbols.
Example 3: a sequence can be the list of locations visited by a car in a city a b f g a b c d e f g h<br>
slide6. Sequential Pattern Mining It is a popular data mining task, introduced in 1994 by Agrawal & Srikant.
The goal is to find all subsequences that appear frequently in a set of discrete sequences.
For example:
find sequences of items purchased by many customers over time,
find sequences of locations frequently visited by tourists in a city,
Find sequences of words that appear frequently in a text. 6<br>
slide7. Definition: Items 7<br>
slide8. Definition: Itemset 8<br>
slide9. Definition: Sequence 9<br>
slide10. 10<br>
slide11. Definition: Sequence database 11 Sequence database<br>
slide12. Definition: Support of a sequence 12 Sequence database<br>
slide13. Definition: Support of a sequence 13 Sequence database<br>
slide14. Definition: Support of a sequence 14 Sequence database<br>
slide15. Definition: Support of a sequence 15 Sequence database<br>
slide16. Definition: Sequential pattern mining 16<br>
slide17. Example 1 17 Sequence database INPUT: OUTPUT:<br>
slide18. Example 1 18 Sequence database INPUT: What will happen if we change the threshold? <br>
slide19. Example 2 19 Sequence database INPUT: OUTPUT: Observation: If we increase the minsup threshold, less patterns may be found<br>
slide20. Example 2 20 Sequence database INPUT: Observation: If we increase the minsup threshold, less patterns may be found<br>
slide21. It is a difficult problem! 21<br>
slide22. Some popular algorithms GSP: R. Agrawal, and R. Srikant, Mining sequential patterns, ICDE 1995, pp. 3–14, 1995.
SPAM: Ayres, J. Flannick, J. Gehrke, and T. Yiu, Sequential pattern mining using a bitmap representation, KDD 2002, pp. 429–435, 2002.
SPADE: M. J. Zaki, SPADE: An efficient algorithm for mining frequent sequences, Machine learning, vol. 42(1-2), pp. 31–60, 2001.
PrefixSpan: J. Pei, et al. Mining sequential patterns by pattern-growth: The prefixspan approach, IEEE Transactions on knowledge and data engineering, vol. 16(11), pp. 1424–1440, 2004.
CM-SPAM and CM-SPADE: P. Fournier-Viger, A. Gomariz, M. Campos, and R. Thomas, Fast Vertical Mining of Sequential Patterns Using Co-occurrence Information, PAKDD 2014, pp. 40–52, 2014. 22 Fast implementations available in the SPMF library They all have the same input and output.
The difference is performance due to optimizations, search strategies and data structures!<br>
slide23. A performance comparison 23 Kosarak Snake BMS Leviathan Four benchmark datasets are used<br>
slide24. The “Apriori” property 24 Example Sequence database<br>