你的一小步,我的一大步 Jen-Wei Huang 黃仁暐 National Taiwan University.

Slides:



Advertisements
Similar presentations
Online Mining of Frequent Query Trees over XML Data Streams Hua-Fu Li*, Man-Kwan Shan and Suh-Yin Lee Department of Computer Science.
Advertisements

Recap: Mining association rules from large datasets
Frequent Closed Pattern Search By Row and Feature Enumeration
LOGO Association Rule Lecturer: Dr. Bo Yuan
1 Department of Information & Computer Education, NTNU SmartMiner: A Depth First Algorithm Guided by Tail Information for Mining Maximal Frequent Itemsets.
FP (FREQUENT PATTERN)-GROWTH ALGORITHM ERTAN LJAJIĆ, 3392/2013 Elektrotehnički fakultet Univerziteta u Beogradu.
Data Mining Association Analysis: Basic Concepts and Algorithms Lecture Notes for Chapter 6 Introduction to Data Mining by Tan, Steinbach, Kumar © Tan,Steinbach,
Data Mining Association Analysis: Basic Concepts and Algorithms Lecture Notes for Chapter 6 Introduction to Data Mining by Tan, Steinbach, Kumar © Tan,Steinbach,
Data Mining Association Analysis: Basic Concepts and Algorithms
Mining Sequential Patterns Dimitrios Gunopulos, UCR.
Mining Time-Series Databases Mohamed G. Elfeky. Introduction A Time-Series Database is a database that contains data for each point in time. Examples:
4/3/01CS632 - Data Mining1 Data Mining Presented By: Kevin Seng.
Association Analysis: Basic Concepts and Algorithms.
Mining Sequential Patterns Rakesh Agrawal Ramakrishnan Srikant Proc. of the Int’l Conference on Data Engineering (ICDE) March 1995 Presenter: Phil Schlosser.
Data Mining Association Analysis: Basic Concepts and Algorithms
Is Sampling Useful in Data Mining? A Case in the Maintenance of Discovered Association Rules S.D. Lee, D. W. Cheung, B. Kao Department of Computer Science.
Intelligent Information Directory System for Clinical Documents Qinghua Zou 6/3/2005 Dr. Wesley W. Chu (Advisor)
Efficient Data Mining for Path Traversal Patterns CS401 Paper Presentation Chaoqiang chen Guang Xu.
2/8/00CSE 711 data mining: Apriori Algorithm by S. Cha 1 CSE 711 Seminar on Data Mining: Apriori Algorithm By Sung-Hyuk Cha.
Fast Algorithms for Association Rule Mining
Mining Association Rules
© Vipin Kumar CSci 8980 Fall CSci 8980: Data Mining (Fall 2002) Vipin Kumar Army High Performance Computing Research Center Department of Computer.
Mining Sequential Patterns: Generalizations and Performance Improvements R. Srikant R. Agrawal IBM Almaden Research Center Advisor: Dr. Hsu Presented by:
What Is Sequential Pattern Mining?
USpan: An Efficient Algorithm for Mining High Utility Sequential Patterns Authors: Junfu Yin, Zhigang Zheng, Longbing Cao In: Proceedings of the 18th ACM.
October 2, 2015 Data Mining: Concepts and Techniques 1 Data Mining: Concepts and Techniques — Chapter 8 — 8.3 Mining sequence patterns in transactional.
Sequential PAttern Mining using A Bitmap Representation
Data Mining Association Analysis: Basic Concepts and Algorithms Lecture Notes for Chapter 6 Introduction to Data Mining By Tan, Steinbach, Kumar Lecture.
Modul 7: Association Analysis. 2 Association Rule Mining  Given a set of transactions, find rules that will predict the occurrence of an item based on.
Data Mining Association Analysis: Basic Concepts and Algorithms Lecture Notes for Chapter 6 Introduction to Data Mining by Tan, Steinbach, Kumar © Tan,Steinbach,
Association Rules. CS583, Bing Liu, UIC 2 Association rule mining Proposed by Agrawal et al in Initially used for Market Basket Analysis to find.
Efficient Data Mining for Calling Path Patterns in GSM Networks Information Systems, accepted 5 December 2002 SPEAKER: YAO-TE WANG ( 王耀德 )
Mining Sequential Patterns Rakesh Agrawal Ramakrishnan Srikant Proc. of the Int ’ l Conference on Data Engineering (ICDE) March 1995 Presenter: Sam Brown.
Mining High Utility Itemset in Big Data
Data & Text Mining1 Introduction to Association Analysis Zhangxi Lin ISQS 3358 Texas Tech University.
Pattern-Growth Methods for Sequential Pattern Mining Iris Zhang
Mining Frequent Patterns without Candidate Generation : A Frequent-Pattern Tree Approach 指導教授:廖述賢博士 報 告 人:朱 佩 慧 班 級:管科所博一.
Jian Pei Jiawei Han Behzad Mortazavi-Asl Helen Pinto ICDE’01
Counting CSC-2259 Discrete Structures Konstantin Busch - LSU1.
Generalized Sequential Pattern Mining with Item Intervals Yu Hirate Hayato Yamana PAKDD2006.
CSE4334/5334 DATA MINING CSE4334/5334 Data Mining, Fall 2014 Department of Computer Science and Engineering, University of Texas at Arlington Chengkai.
1 Efficient Algorithms for Incremental Update of Frequent Sequences Minghua ZHANG Dec. 7, 2001.
1 Inverted Matrix: Efficient Discovery of Frequent Items in Large Datasets in the Context of Interactive Mining -SIGKDD’03 Mohammad El-Hajj, Osmar R. Zaïane.
© Tan,Steinbach, Kumar Introduction to Data Mining 4/18/ Data Mining: Association Analysis This lecture node is modified based on Lecture Notes for.
Course on Data Mining: Seminar Meetings Page 1/30 Course on Data Mining ( ): Seminar Meetings Ass. Rules EpisodesEpisodes Text Mining
Mining Sequential Patterns © Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 Slides are adapted from Introduction to Data Mining by Tan, Steinbach,
Data Mining Association Analysis: Basic Concepts and Algorithms Lecture Notes for Chapter 6 Introduction to Data Mining by Tan, Steinbach, Kumar © Tan,Steinbach,
Data Mining Association Rules Mining Frequent Itemset Mining Support and Confidence Apriori Approach.
Using category-Based Adherence to Cluster Market-Basket Data Author : Ching-Huang Yun, Kun-Ta Chuang, Ming-Syan Chen Graduate : Chien-Ming Hsiao.
Indexing and Mining Free Trees Yun Chi, Yirong Yang, Richard R. Muntz Department of Computer Science University of California, Los Angeles, CA {
1 Data Mining Lecture 6: Association Analysis. 2 Association Rule Mining l Given a set of transactions, find rules that will predict the occurrence of.
1 Mining the Smallest Association Rule Set for Predictions Jiuyong Li, Hong Shen, and Rodney Topor Proceedings of the 2001 IEEE International Conference.
Reducing Number of Candidates
CSC-2259 Discrete Structures
Data Mining Association Analysis: Basic Concepts and Algorithms
Sequential Pattern Mining Using A Bitmap Representation
Data Mining: Concepts and Techniques
Data Mining: Concepts and Techniques
Association rule mining
Frequent Pattern Mining
Data Mining Association Analysis: Basic Concepts and Algorithms
Data Mining Association Analysis: Basic Concepts and Algorithms
Data Mining Association Analysis: Basic Concepts and Algorithms
Amer Zaheer PC Mohammad Ali Jinnah University, Islamabad
Data Warehousing Mining & BI
Mining Sequential Patterns
Frequent-Pattern Tree
Finding Frequent Itemsets by Transaction Mapping
Association Analysis: Basic Concepts
Presentation transcript:

你的一小步,我的一大步 Jen-Wei Huang 黃仁暐 National Taiwan University

2015/10/7Jen-Wei Huang2

2015/10/7Jen-Wei Huang3 *

2015/10/7Jen-Wei Huang4 *

2015/10/7Jen-Wei Huang5

2015/10/7Jen-Wei Huang6

2015/10/7Jen-Wei Huang7 *

2015/10/7Jen-Wei Huang8 *

2015/10/7Jen-Wei Huang9 *

2015/10/7Jen-Wei Huang10 * * *

2015/10/7Jen-Wei Huang11

2015/10/7Jen-Wei Huang12 *

2015/10/7Jen-Wei Huang13 *

2015/10/7Jen-Wei Huang14 *

A General Model for Sequential Pattern Mining with a Progressive Database Jen-Wei Huang, Chi-Yao Tseng, Jian-Chih Ou and Ming-Syan Chen National Taiwan University * IEEE Trans. on Knowledge and Data Engineering, Vol. 20, No. 6, June 2008

2015/10/7Jen-Wei Huang16 Outlines Introduction Preliminaries Algorithm Pisa Experiments Conclusions Q & A 16

2015/10/7Jen-Wei Huang17 Introduction to SPM “Mining of frequently occurring patterns related to time or other sequences.” J. Han, Data Mining – Concepts and Techniques “Given a set of sequences, find the complete set of frequent subsequences” J. Pei, PrefixSpan Ex) What items one will buy if he/she has bought some certain items 17

2015/10/7Jen-Wei Huang18 Time-related data Customers’ buying behavior Natural phenomena Sensor network data Web access patterns Stock price changes DNA sequence applications 18

2015/10/7Jen-Wei Huang19 Definition Let I = {x 1, x 2,..., x n } be a set of different items. An element e, denoted by (x i x j...), is a subset of items ⊆ I of which items appear in a sequence at the same time. A sequence s, denoted by, is an ordered list of elements. A sequence database Db contains a set of sequences and |Db| represents the number of sequences in Db. 19

2015/10/7Jen-Wei Huang20 Definition A sequence α = is a subsequence of another sequence β = if there exists a set of integers, 1 ≤ i1 < i2 <... < in ≤ m, such that a 1 ⊆ b i1, a 2 ⊆ b i2,..., and a n ⊆ b in. 20

2015/10/7Jen-Wei Huang21 Definition The sequential pattern mining can be defined as "Given a sequence database, Db, and a user- defined minimum support, min_sup, find the complete set of subsequences whose occurrence frequencies ≥ min_sup ∗ |Db|." 21

2015/10/7Jen-Wei Huang22 Three Categories Depending on the management of the corresponding database, sequential pattern mining can be divided into three categories, namely sequential pattern mining with a static database. an incremental database. a progressive database. 22

How To Do Sequential Pattern Mining on a Static Database An Overview

2006/03/24jwhuang National Taiwan University24 How? Apriori-like algorithms AprioriAll – by Agrawal et al GSP – by R. Srikant et al Partition-based algorithms FreeSpan – by J. Han et al PrefixSpan – by J. Pei et al Vertical format algorithms SPADE – by Zaki et al SPAM – by Ayres et al

2006/03/24jwhuang National Taiwan University25 Apriori-like Algorithms 1.Sort phase Sort the database Customer id as the primary key and time as the second key 2.Litemset phase Count the frequency of each itemset The fraction of customers who bought the itemset

2006/03/24jwhuang National Taiwan University26 Apriori-like Algorithms 3.Transformation phase Transform each tx to all litemsets in the form of C01: C02: C03: C04: C05:

2015/10/7Jen-Wei Huang27 CIDItems CIDItems {40 70} 2 {10 20} 30 { } 90 3 { } {40 70} Itemset# {10 20} 1 {40 60} 1 {40 70} 3 {60 70} 1 { } 1 {30 50} 1 {30 70} 1 {50 70} 1 { } 1

2015/10/7Jen-Wei Huang28 Itemset#New {40 70} 37 CIDItems {4, 5, 7} 2 {1, 2} 3 {4, 5, 7} 6 3 {3, 5} {4, 5, 7}

2006/03/24jwhuang National Taiwan University29 Apriori-like Algorithms 4.Mining phase Apriori-like algorithm 5.Maximal phase Find the maximum patterns

2015/10/7Jen-Wei Huang30 CIDItems {4, 5, 7} 2 {1, 2} 3 {4, 5, 7} 6 3 {3, 5} {4, 5, 7} Itemset# Itemset# Itemset#

2015/10/7Jen-Wei Huang31 CIDItems {4, 5, 7} 2 {1, 2} 3 {4, 5, 7} 6 3 {3, 5} {4, 5, 7} Itemset# Therefore, frequent sequential patterns are: Itemset# {40 70} 37 According to mappings, original frequent sequential patterns are:

2015/10/7Jen-Wei Huang32 According to mappings, original frequent sequential patterns are: Because and are contained by and are contained by, final maximal sequential patterns are:

2015/10/7Jen-Wei Huang33 Related Works Static database AprioriAll – by Agrawal et al GSP – by R. Srikant et al SPADE – by Zaki et al FreeSpan – by J. Han et al PrefixSpan – by J. Pei et al SPAM – by Ayres et al 33

2015/10/7Jen-Wei Huang34 Related Works Incremental database ISM – by Parthasarathy et al IncSP – by Lin et al ISE – by Masseglia et al IncSpan – by Cheng et al MILE – by Chen et al 34

2015/10/7Jen-Wei Huang35 Motivation The assumption of having a static database may not hold in practice. The data in real world change on the fly. Finding sequential patterns in an incremental database may lack of interest to the users. It is noted that users are usually more interested in the recent data than the old ones. 35

2015/10/7Jen-Wei Huang36 Motivation If a certain sequence does not have any newly arriving elements, this sequence will still stay in the database and undesirably contribute to |Db|. New sequential patterns which appear frequently in the recent sequences may not be considered as frequent sequential patterns. 36

2015/10/7Jen-Wei Huang37 Definition -- Period of Interest Period of Interest (abbreviated as POI) is a sliding window whose length is a user-specified time interval, continuously advancing as the time goes by. The sequences having elements whose timestamps fall into this period, POI, contribute to the |Db| for current sequential patterns. 37

time A CAD t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 … BB ADB BCDC CDBDA A A BC AA C S01 S02 S03 S04 S05 S06 AC BD C D D Db 1,5 Db 2,6 Db 3,7 Db 4,8 Db 5,9 Db 6,10 SID POI=5, min_supp=0.5 38

2015/10/7Jen-Wei Huang39 Outlines Introduction Preliminaries Algorithm Pisa Experiments Conclusions Q & A 39

2015/10/7Jen-Wei Huang40 Progressive Sequential Pattern Progressive sequential pattern mining problem is defined as follows "Given a progressive sequence database, a user-specified period of interest, and a user- defined minimum support threshold, find the complete set of frequent subsequences whose occurrence frequencies are greater than or equal to the minimum support times the number of sequences in every period of interest of the database." 40

2015/10/7Jen-Wei Huang41 Naïve Algorithm Use conventional static sequential pattern mining algorithms to mine sequential patterns separately from all combination of POIs e.g., Db 1,5, Db 2,6, Db 3,7, Db 4,8, Db 5,9, etc. For the sequence database which has the elements appearing in the interval of n timestamps, the total number of POIs in this interval is equal to (n − POI +1). 41

2015/10/7Jen-Wei Huang42 Prior Work The only prior work on progressive database is GSP+ and MFS+ proposed by Zhang based on static algorithms GSP and MFS (also derived by the same authors). However, these algorithms still have to re-mine each sub-database using the static algorithms GSP and MFS. Nevertheless, the performance improvement of GSP+ and MFS+ over GSP and MFS is only within 15% as reported by their authors. 42

2015/10/7Jen-Wei Huang43 Algorithm DirApp Stands for Direct Append. Consists of two procedures Progressively Updating abbreviated as PrUp Immediately Filtering abbreviated as ImFi 43

2015/10/7Jen-Wei Huang44 Procedure PrUp When progressively reading newly incoming elements, Procedure PrUp can update each sequence in the sequence database generate candidate sequential patterns calculate occurrence frequencies of all candidate equential patterns in the current POI. 44

2015/10/7Jen-Wei Huang45 Procedure ImFi DirApp uses Procedure ImFi to filter out obsolete data from the existing sequence database prune away obsolete candidate sequential patterns from the candidate set. report the most up-to-date frequent sequential patterns to the user in every POI 45

A B C AD B time A CAD t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 … BB ADB BCDC CDBDA A A BC AA C S01 S02 S03 S04 S05 S06 AC BD C D D SID time t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 … S01 46

2015/10/7Jen-Wei Huang47 Example time A B C AD B t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 … 47

Db 1,1 A1A1 Db 1,4 A1A1 B2B2 AB 1 C4C4 AC 1 BC 2 ABC 1 Db 1,2 A1A1 B2B2 AB 1 Db 1,3 A1A1 B2B2 AB 1 (1)(4) (2) (3) A B C AD B t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 … 48

Db 1,4 A1A1 B2B2 AB 1 C4C4 AC 1 BC 2 ABC 1 (4) A B C AD B t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 … Db 1,5 A5A5 B(AD) 2 B2B2 ABD 1 AB 1 AB(AD) 1 C4C4 CA 4 AC 1 CD 4 BC 2 C(AD) 4 ABC 1 ACD 1 D5D5 AC(AD) 1 (AD) 5 BCA 2 AD 1 BCD 2 A(AD) 1 BC(AD) 2 BA 2 ABCD 1 BD 2 ABC(AD) 1 (5) 49

A B C AD B t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 … Db 1,5 A5A5 B(AD) 2 B2B2 ABD 1 AB 1 AB(AD) 1 C4C4 CA 4 AC 1 CD 4 BC 2 C(AD) 4 ABC 1 ACD 1 D5D5 AC(AD) 1 (AD) 5 BCA 2 AD 1 BCD 2 A(AD) 1 BC(AD) 2 BA 2 ABCD 1 BD 2 ABC(AD) 1 (5) Db 2,6 A5A5 B2B2 C4C4 BC 2 D5D5 (AD) 5 BA 2 BD 2 B(AD) 2 CA 4 CD 4 C(AD) 4 BCA 2 BCD 2 BC(AD) 2 (6) 50

A B C AD B t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 … Db 2,6 A5A5 B2B2 C4C4 BC 2 D5D5 (AD) 5 BA 2 BD 2 B(AD) 2 CA 4 CD 4 C(AD) 4 BCA 2 BCD 2 BC(AD) 2 (6) Db 3,7 A5A5 C4C4 D5D5 (AD) 5 CA 4 CD 4 C(AD) 4 B7B7 AB 5 CB 4 DB 5 (AD)B 5 CAB 4 CDB 4 C(AD)B 4 (7) … 51

Db 1,1 A1A1 Db 1,5 A5A5 B(AD) 2 B2B2 ABD 1 AB 1 AB(AD) 1 C4C4 CA 4 AC 1 CD 4 BC 2 C(AD) 4 ABC 1 ACD 1 D5D5 AC(AD) 1 (AD) 5 BCA 2 AD 1 BCD 2 A(AD) 1 BC(AD) 2 BA 2 ABCD 1 BD 2 ABC(AD) 1 Db 1,4 A1A1 B2B2 AB 1 C4C4 AC 1 BC 2 ABC 1 Db 1,2 A1A1 B2B2 AB 1 Db 2,6 A5A5 B2B2 C4C4 BC 2 D5D5 (AD) 5 BA 2 BD 2 B(AD) 2 CA 4 CD 4 C(AD) 4 BCA 2 BCD 2 BC(AD) 2 Db 1,3 A1A1 B2B2 AB 1 Db 3,7 A5A5 C4C4 D5D5 (AD) 5 CA 4 CD 4 C(AD) 4 B7B7 AB 5 CB 4 DB 5 (AD)B 5 CAB 4 CDB 4 C(AD)B 4 (1)(4)(5)(6) (7) (2) (3) 52

Db 1,2 A1A1 B2B2 AB 1 S01 time A CAD t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 … BB ADB BCDC CDBDA A A BC AA C S01 S02 S03 S04 S05 S06 AC BD C D D SID Db 1,2 A1A1 AB 1 D1D1 DB 1 (AD) 1 (AD)B 1 B2B2 S02S03 Db 1,2 A1A1 AB 1 B2B2 AC 1 C2C2 A(BC) 1 (BC) 2 Db 1,2 (4) AB 1 3 A(BC) 1 1 AC 1 1 (AD)B 1 1 DB 1 1 AB 1 (3) Db 1,2 D2D2 S04 53

Db 1,2 (4) AB 1 3 A(BC) 1 1 AC 1 1 (AD)B 1 1 DB 1 1 Db 1,3 (5) AB 1 3 A(BC) 1 1 AC 1 1 (AD)B 1 1 DB 1 1 A(BC)B 1 1 ACB 1 1 (BC)B 2 1 CB 2 1 DC 2 1 AB 1 (3) DA 3 (3)BA 4 (3) (2)(3) (4)(5) Db 1,4 (5) AB 1 3A(BC)BC 1 1 A(BC) 1 1A(BC)C 1 1 AC 1 2(AD)A 1 1 (AD)B 1 1(AD)BA 1 1 DB 3 2BA 2 1 A(BC)B 1 1BC 3 2 ACB 1 1(BC)BC 2 1 (BC)B 2 1(BC)C 2 1 CB 2 1DA 1 1 DC 2 1DBA 1 1 ABC 1 2 Db 1,5 (5) AB 1 3ABC 1 2DBA 3 2BCA 2 1 A(BC) 1 1A(BC)BC 1 1A(AD) 1 1BC(AD) 2 1 AC 1 2A(BC)C 1 1AB(AD) 1 1BCD 2 1 (AD)B 1 1(AD)A 1 1ABC(AD) 1 1BD 2 1 DB 3 2(AD)BA 1 1ABCD 1 1CA 4 2 A(BC)B 1 1BA 4 3ABD 1 1C(AD) 4 1 ACB 1 1BC 3 2AC(AD) 1 1CD 4 1 (BC)B 2 1(BC)BC 2 1ACD 1 1DCA 2 1 CB 2 1(BC)C 2 1AD 1 1 DC 2 1DA 3 3B(AD)

Db 2,6 (5) DB 3 1BC(AD) 2 1 (BC)B 2 1BCD 2 1 CB 2 1BD 2 1 DC 2 1CA 4 3 BA 4 4C(AD) 4 1 BC 3 2CD 4 1 (BC)BC 2 1DCA 2 1 (BC)C 2 1(BC)A 2 1 DA 3 2(BC)BA 2 1 DBA 3 1(BC)BCA 2 1 B(AD) 2 1(BC)CA 2 1 BCA 3 2CBA 2 1 BA 4 (4)CA 4 (3) (6) Db 3,7 (5) DB 5 2(AD)B 5 1 BA 4 2BAC 4 1 BC 4 2CAB 4 2 DA 3 1CA(BC) 3 1 DBA 3 1C(AD)B 4 1 BCA 3 1CB 4 2 CA 4 3C(BC) 3 1 C(AD) 4 1CDB 4 1 CD 4 1DAC 3 1 AB 5 2DBAC 3 1 A(BC) 5 1DBC 3 1 AC 5 2DC 3 1 (7) Db 4,8 (6) DB 5 1BAC 4 1 BA 4 1CAB 4 1 BC 7 2C(AD)B 4 1 CA 4 2CB 4 1 C(AD) 4 1CDB 4 1 CD 4 1ABC 5 1 AB 5 2(AD)BC 5 1 A(BC) 5 1(AD)C 5 1 AC 6 4DBC 5 1 (AD)B 5 1DC 5 1 (8) Db 5,9 (5) DB 5 1 BC 7 1 AB 5 2 A(BC) 5 1 AC 8 5 (AD)B 5 1 ABC 5 1 (AD)BC 5 1 (AD)C 5 1 DBC 5 1 DC 5 1 ACD 6 2 AD 6 2 CD 8 2 AC 6 (4) (9) CA 4 (3) AC 8 (5) 55

2015/10/7Jen-Wei Huang56 The Advantages of DirApp DirApp needs only one scan of newly arriving elements and the candidate set at each timestamp rather than quadratic scans by conventional algorithms. DirApp can maintain latest data sequences find the complete set of up-to-date sequential patterns delete obsolete data and patterns rapidly 56

2015/10/7Jen-Wei Huang57 The Disadvantages of DirApp DirApp needs lots of working space to store the candidate sets for all sequences. Scanning all candidate sets induces huge computation in execution time. DirApp needs another data structure to calculate the occurrence frequencies of all candidate sequential patterns. 57

2015/10/7Jen-Wei Huang58 Outlines Introduction Preliminaries Algorithm Pisa Experiments Conclusions Q & A 58

2015/10/7Jen-Wei Huang59 Algorithm Pisa Pisa stands for Progressive mIning of Sequential pAtterns Pisa utilizes a Progressive Sequential tree (abbreviated as PS-tree) to maintain the information of all sequences in each POI to update each sequence find up-to-date sequential patterns 59

2015/10/7Jen-Wei Huang60 PS-tree The nodes in PS-tree can be divided into two different types Root node Common nodes Each common node stores two information Node label = element in a sequence Sequence list sequence IDs containing this element marked by corresponding timestamps Root Sequence ID Timestamp Label 60

2015/10/7Jen-Wei Huang61 PS-tree Whenever there are a series of elements appearing in the same sequence, there will be a series of nodes labeled by each element with the same sequence IDs in their sequence lists. The first node will be connected to the Root node representing the first element. The other nodes will be connected to the first node analogously. 61

2015/10/7Jen-Wei Huang62 PS-tree Root A C AD t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 … BB ADB BCDC CDBDA A A BC AA C S01 S02 S03 S04 S05 S06 AC BD C D D SID Root Sequence ID Timestamp Label 01 1 A 1 B 1 C 62

2015/10/7Jen-Wei Huang63 PS-tree The path from Root node to any other node represents the candidate sequential pattern appearing in this sequence. The appearing timestamp for each candidate sequential pattern will be marked in the node labeled by the last element. 63

2015/10/7Jen-Wei Huang64 PS-tree Root A C AD t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 … BB ADB BCDC CDBDA A A BC AA C S01 S02 S03 S04 S05 S06 AC BD C D D SID Root Sequence ID Timestamp Label 01 1 A 2 B 4 C 1 B 1 C 2 C 1 C 64

2015/10/7Jen-Wei Huang65 Algorithm Pisa When receiving elements at timestamp t+1, Pisa traverses the PS-tree in post-order to delete the obsolete elements from update current sequences in insert newly arriving elements into the PS-tree of timestamp t and transforms it into PS-tree of timestamp t+1. 65

2015/10/7Jen-Wei Huang66 For a common node Pisa deletes the obsolete sequences in the sequence list of this node If there is no sequence ID left in the sequence list, Pisa prunes this node away from its parent Pisa checks the sequence IDs left in the sequence list to see if there is newly arriving element of the sequences If there is no newly arriving element, Pisa goes to the next node 66

2015/10/7Jen-Wei Huang67 For a common node Otherwise, Pisa generates all combination of candidate elements from the arriving element Ex) ABC -> A, B, C, AB, AC, BC, ABC For each candidate element that does not exist on the path from Root to the current node : If there is a child of the same label, Pisa updates the timestamp of this sequence to the timestamp of the same sequence in parent’s sequence list. Otherwise, Pisa creates a new child of this element with the sequence ID and the timestamp of the same sequence in parent’s sequence list. 67

2015/10/7Jen-Wei Huang68 For Root node Instead of checking the sequence list, Pisa examines all sequences that have newly arriving elements. After Pisa generates all combination of candidate element, for each of them : If there is a child of the same label, Pisa updates the timestamp of this sequence to t+1. Otherwise, Pisa creates a new child of this element with sequence ID and timestamp t+1. 68

2015/10/7Jen-Wei Huang69 Algorithm Pisa After Pisa processes a common node, if the number of sequence IDs in the sequence list is larger than the min_supp*|Db p,q |, the path from Root to this node will be outputted as a frequent sequential pattern. 69

2015/10/7Jen-Wei Huang70 PS-tree Root A C AD t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 … BB ADB BCDC CDBDA A A BC AA C S01 S02 S03 S04 S05 S06 AC BD C D D SID Root Sequence ID Timestamp Label 01 1 A 2 B 4 C 1 B 1 C 2 C 1 C 70

Root A C AD t1t1 t2t2 t3t3 t4t4 t5t5 t6t6 t7t7 t8t8 t9t9 t 10 … BB ADB BCDC CDBDA A A BC AA C S01 S02 S03 S04 S05 S06 AC BD C D D SID Sequence ID Timestamp Label POI=5, min_supp=0.5 71

Db 1,1 (3) A 02 1 D 1 AD A t1t1 A S01 S02 S03 S04 S05 S06 SID Sequence ID Timestamp Label 72

Db 1,2 (4) A D B 03 1 C 1 BC 02 1 B 1 B 1 AD 03 2 C 2 BC B AB 1 (3) B B D BC t2t2 S01 S02 S03 S04 S05 S06 SID Sequence ID Timestamp Label Db 1,1 (3) A 02 1 D 1 AD 73

Db 1,3 (5) A B 03 1 C 1 BC 02 1 B 1 B 1 AD 03 2 BC B 03 1 B 1 B 04 2 C D C 2 B AB 1 (3) 03 2 B t3t3 S01 S02 S03 S04 S05 S06 SID Sequence ID Timestamp Label C D B 74

Db 1,4 (5) A B 03 1 BC 02 1 B 1 AD 03 2 BC 03 1 B 1 B 04 2 C D 03 2 B C C 03 1 C 02 1 A 03 1 C 02 1 A B 1 A 1 A C 02 2 A B C 2 C C AB 1 (3) 03 2 B t4t4 S01 S02 S03 S04 S05 S06 SID Sequence ID Timestamp Label C B A C 75

Db 1,5 (5) B 03 1 BC 02 1 B 03 2 BC 03 1 B 1 B 04 2 C 03 2 B C C 03 1 C 1 C B 1 A 1 A C B C 2 C C AB 1 (3) 01 1 D 1 AD 01 1 D 1 AD 01 1 D 1 AD 01 1 D 1 AD A 04 2 A A D AD 01 2 D 2 AD 01 2 A 2 D 2 AD A 4 D 4 AD A BA 4 (3) A DA 3 (3) 03 2 B Sequence ID Timestamp Label 76

Db 2,6 (5) 03 2 BC 04 2 C 03 2 B C B C 2 C C CA 4 (3) 04 2 A A 01 2 D 2 AD 01 2 D 2 AD 01 4 D 4 AD BA 4 (4) 05 3 B 3 A D 5 AD A A A 03 2 A 2 A 2 A 2 A A B 2 A t6t6 S01 S02 S03 S04 S05 S06 SID Sequence ID Timestamp Label A 77

Db 3,7 (5) B 05 4 CA 4 (3) 01 4 D 4 AD 05 3 A 01 5 AD A 04 5 BC C 05 3 C 3 C A 05 3 A 3 C D 03 3 A 3 C 05 4 C 04 3 BC 04 3 BC B 5 B B 4 B 4 B B C BC A B 05 3 C t7t7 S01 S02 S03 S04 S05 S06 SID Sequence ID Timestamp Label B BC C 78

Db 4,8 (6) AC 6 (3) 01 4 D 4 AD 01 5 AD 04 5 BC 01 5 C D 05 4 C 01 4 B 5 B 4 B 4 B C BC 01 5 C 5 C 5 C C 05 4 A B 4 B A 7 C A B 5 C 5 B t8t8 S01 S02 S03 S04 S05 S06 SID Sequence ID Timestamp Label C C A 79

Db 5,9 (5) AC 8 (4) 01 5 AD 04 5 BC 01 5 B 5 B C BC 01 5 C 5 C 5 C 7 C D D C D B D B 5 C A t9t9 S01 S02 S03 S04 S05 S06 SID Sequence ID Timestamp Label D C D 80

Db 6,10 (5) CD 8 (4) BD C BC 01 7 C B C 6 D 6 D A 01 7 BD 01 7 D D BD 01 8 B D D 7 D 01 7 BD t 10 S01 S02 S03 S04 S05 S06 SID Sequence ID Timestamp Label BD D 81

2015/10/7Jen-Wei Huang82 The Advantages of Pisa Pisa needs only one scan of newly arriving elements and the PS-tree at each timestamp rather than quadratic scans by conventional algorithms. Pisa can maintain latest data sequences find the complete set of up-to-date sequential patterns delete obsolete data and patterns rapidly 82

2015/10/7Jen-Wei Huang83 The Advantages of Pisa Each path from Root to any other node on PS-tree forms a unique candidate sequential pattern. Thus Pisa combines the same candidate patterns together and all patterns do not have to store their prefix elements. PS-tree consumes smaller space. Dealing with the same sequential patterns together is also very efficient in execution time. Fast Pisa with approximation results. 83

2015/10/7Jen-Wei Huang84 Outlines Introduction Preliminaries Algorithm Pisa Experiments Conclusions Q & A 84

2015/10/7Jen-Wei Huang85 Experiments Comparative algorithms GSP+ -- re-mining version of GSP SPAM+ -- re-mining version of SPAM DirApp Environment Pentium 4 — 3GHz CPU and 2GB RAM Coded in C++ 85

2015/10/7Jen-Wei Huang86 Experiments The synthetic datasets are generated in the way similar to the IBM data generator designed for testing sequential pattern mining algorithms. 86

2015/10/7Jen-Wei Huang87 Experiments We divide the target dataset into n timestamps. According to the POI, the first m timestamps (m = POI and m < n) are viewed as the original database and the rest of transactions in the dataset are received by the system incrementally. 87

2015/10/7Jen-Wei Huang88 Experiments The first run of the experiments mines the first POI from the beginning m timestamps of the dataset. After that, we shift the POI forward t (t<<m) timestamps forward for the following runs. 88

2015/10/7Jen-Wei Huang89 Experiments The real data sets are from KDDCUP’07. We randomly choose successive 120 days for the performance evaluation. A timestamp is set as 3 days in order to obtain sufficient frequent sequential patterns. Therefore, there are total 40 timestamps and POI is set as 10. The new datasets contain more than 5000 sequences and 2000 different items. 89

2015/10/7Jen-Wei Huang90 Cumulative Execution Time 90

2015/10/7Jen-Wei Huang91 Minimum Support 91

2015/10/7Jen-Wei Huang92 Length of POI 92

2015/10/7Jen-Wei Huang93 Number of Sequences 93

2015/10/7Jen-Wei Huang94 Scalability of Pisa 94

2015/10/7Jen-Wei Huang95 Real Data Set 95

2015/10/7Jen-Wei Huang96 Improvement of FastPisa 96

2015/10/7Jen-Wei Huang97 Information Lose of FastPisa 97

2015/10/7Jen-Wei Huang98 Outlines Introduction Preliminaries Algorithm Pisa Experiments Conclusions Q & A 98

2015/10/7Jen-Wei Huang99 Conclusions We proposed a progressive algorithm Pisa to handle the progressive sequential pattern mining problem without re-mining all sub- databases at each timestamp. Pisa needs only one scan of newly arriving elements and the PS-tree at each timestamp rather than quadratic scans by conventional algorithms. 99

2015/10/7Jen-Wei Huang100 Conclusions Pisa can maintain the latest information of sequences find the complete set of up-to-date sequential patterns delete obsolete data and patterns rapidly Pisa also consumes less space has high efficiency possesses great scalability 100

2015/10/7Jen-Wei Huang101 References R. Srikant and R.Agrawal, “Mining Sequential Patterns: Generalizations and Performance Improvements.” Proc. of ICDE, 1995 J. Ayres, J. Gehrke, T. Yiu, and J. Flannick. “Sequential pattern mining using a bitmap representation.” Proc. of ACM SIGKDD, M. Zhang, B. Kao, D. W.-L. Cheung, and C. L. Yip. “Efficient algorithms for incremental update of frequent sequences.” Proc. of PAKDD,

2015/10/7Jen-Wei Huang102 Thank You ! Q & A 102