Download presentation
Presentation is loading. Please wait.
1
FP-Tree/FP-Growth Practice
2
FP-tree construction null B:1 A:1 After reading TID=1: After reading TID=2: null B:2 A:1 C:1 D:1
3
FP-Tree Construction Transaction Database Header table B:8 A:5 null C:3 D:1 A:2 C:1 D:1 E:1 D:1 E:1C:3 D:1 E:1 Chain pointers help in quickly finding all the paths of the tree containing some given item. There is a pointer chain for each item. I have shown pointer chains only for E and D. B8 A7 C7 D5 E3
4
Transactions containing E B:1 null C:1 A:2 C:1 D:1 E:1 D:1 E:1 B:8 A:5 null C:3 D:1 A:2 C:1 D:1 E:1 D:1 E:1C:3 D:1 E:1
5
Suffix E We continue recursively. Base of recursion: When the tree has a single path only. FI: E The set of paths ending in E. Insert each path (after truncating E) into a new tree. (New) Header table C:1 null Conditional FP-Tree for suffix E A2 C2 D2 B:1 null C:1 A:2 C:1 D:1 E:1 D:1 E:1 A:2 C:1 D:1 B doesn’t survive because it has support 1, which is lower than min support of 2.
6
Suffix DE We have reached the base of recursion. FI: DE, ADE The set of paths, from the E- conditional FP-Tree, ending in D. Insert each path (after truncating D) into a new tree. (New) Header table null A:2 The conditional FP-Tree for suffix DE A2 null A:2 C:1 D:1
7
Suffix CE We have reached the base of recursion. FI: CE The set of paths, from the E- conditional FP-Tree, ending in C. Insert each path (after truncating C) into a new tree. (New) Header table null The conditional FP-Tree for suffix CE C:1 null A:1 C:1 D:1
8
Suffix AE We have reached the base of recursion. FI: AE The set of paths, from the E- conditional FP-Tree, ending in A. Insert each path (after truncating A) into a new tree. (New) Header table null The conditional FP-Tree for suffix AE null A:2
9
Suffix D We continue recursively. Base of recursion: When the tree has a single path only. FI: D The set of paths containing D. Insert each path (after truncating D) into a new tree. (New) Header table A:4 null B:2 B:1 C:1 Conditional FP-Tree for suffix D A4 B3 C3 B:3 A:2 null C:1 D:1 A:2 C:1 D:1 C:1 D:1 C:1
10
Suffix CD We continue recursively. Base of recursion: When the tree has a single path only. FI: CD The set of paths, from the D-conditional FP-Tree, ending in C. Insert each path (after truncating C) into a new tree. (New) Header table A:4 null B:2 C:1 Conditional FP-Tree for suffix CD A2 B2 C:1 B:1 C:1 A:2 null B:1
11
Suffix BCD We have reached the base of recursion. FI: CDB The set of paths from the CD-conditional FP-Tree, ending in B. Insert each path (after truncating B) into a new tree. (New) Header table Conditional FP-Tree for suffix CDB null A:2 null B:1
12
Suffix ACD We have reached the base of recursion. FI: CDA The set of paths from the CD-conditional FP-Tree, ending in A. Insert each path (after truncating B) into a new tree. (New) Header table Conditional FP-Tree for suffix CDA null
13
Suffix C We continue recursively. Base of recursion: When the tree has a single path only. FI: C The set of paths ending in C. Insert each path (after truncating C) into a new tree. (New) Header table Conditional FP-Tree for suffix C B6 A4 B:6 A:3 null C:3 A:1 C:1 C:3B:6 A:3 null A:1
14
Suffix AC We have reached the base of recursion. FI: AC, BAC The set of paths from the C-conditional FP-Tree, ending in A. Insert each path (after truncating A) into a new tree. (New) Header table Conditional FP-Tree for suffix AC B3 B:3 null B:6 A:3 null A:1
15
Suffix BC We have reached the base of recursion. FI: BC The set of paths from the C-conditional FP-Tree, ending in B. Insert each path (after truncating B) into a new tree. (New) Header table Conditional FP-Tree for suffix BC B3 null B:6 null
16
Suffix A We have reached the base of recursion. FI: A, BA The set of paths ending in A. Insert each path (after truncating A) into a new tree. (New) Header table Conditional FP-Tree for suffix A B5 B:5 null B:5 A:5 null A:2
17
Suffix B We have reached the base of recursion. FI: B The set of paths ending in B. Insert each path (after truncating B) into a new tree. (New) Header table Conditional FP-Tree for suffix B null B:8 null
18
Array Technique
19
FP-Tree Construction Transaction Database Header table B8 A7 C7 D5 E3 First pass on DB: Determine the header. Then sort it. Second pass on DB: Build the FP-Tree. Also build the array.
20
FP-Tree Construction – Reading 1 Transaction Database Header table B:1 A:1 null B8 A7 C7 D5 E3 A1 C D E BACD
21
FP-Tree Construction – Reading 2 Transaction Database Header table B8 A7 C7 D5 E3 A1 C1 D11 E BACD B:2 A:1 null C:1 D:1
22
FP-Tree Construction – Reading 3 Transaction Database Header table B8 A7 C7 D5 E3 A1 C11 D112 E111 BACD B:2 A:1C:1 D:1 null A:1 C:1 D:1 E:1
23
FP-Tree Construction – Reading 4 Transaction Database Header table B8 A7 C7 D5 E3 A1 C11 D122 E212 BACD B:2 A:1C:1 D:1 null A:2 C:1 D:1 E:1 D:1 E:1
24
FP-Tree Construction – Reading 5 Transaction Database Header table B8 A7 C7 D5 E3 A2 C22 D122 E212 BACD B:3 A:2C:1 D:1 null A:2 C:1 D:1 E:1 D:1 E:1C:1
25
FP-Tree Construction – Reading 6 Transaction Database Header table B8 A7 C7 D5 E3 A3 C33 D233 E212 BACD B:4 A:3C:1 D:1 null A:2 C:1 D:1 E:1 D:1 E:1C:2 D:1
26
FP-Tree Construction – Reading 7 Transaction Database Header table B8 A7 C7 D5 E3 A3 C43 D233 E212 BACD B:5 A:3C:2 D:1 null A:2 C:1 D:1 E:1 D:1 E:1C:2 D:1
27
FP-Tree Construction – Reading 8 Transaction Database Header table B8 A7 C7 D5 E3 A4 C54 D233 E212 BACD B:6 A:4C:2 D:1 null A:2 C:1 D:1 E:1 D:1 E:1C:3 D:1
28
FP-Tree Construction – Reading 9 Transaction Database Header table B8 A7 C7 D5 E3 A5 C54 D343 E212 BACD B:7 A:5C:2 D:1 null A:2 C:1 D:1 E:1 D:1 E:1C:3 D:1
29
FP-Tree Construction – Reading 10 Transaction Database Header table B8 A7 C7 D5 E3 A5 C64 D343 E1222 BACD B:8 A:5C:3 D:1 null A:2 C:1 D:1 E:1 D:1 E:1C:3 D:1 E:1
30
Why have the array? Constructing conditional FP-Trees. Without array Traverse the base FP-Tree to determine the new item counts. Construct a new header. Traverse again the base FP-Tree and construct the conditional FP-Tree. With array Construct a new header helped by the array. Traverse the base FP-Tree and construct the conditional FP- Tree. Saving One tree traversal. Important because experimentally it’s shown that 80% of time is spent on tree traversals.
31
Suffix E The set of paths ending in E. Insert each path (after truncating E) into a new tree. (New) Header table Conditional FP-Tree for suffix E B:8 C:3 null A:2 C:1 D:1 E:1 D:1 E:1 A5 C64 D343 E1222 BACD C D AC A2 C2 D2
32
Suffix E (inserting BCE) The set of paths ending in E. Insert each path (after truncating E) into a new tree. (New) Header table C:1 null Conditional FP-Tree for suffix E B:8 C:3 null A:2 C:1 D:1 E:1 D:1 E:1 C D AC A2 C2 D2
33
Suffix E (inserting ACDE) The set of paths ending in E. Insert each path (after truncating E) into a new tree. (New) Header table C:1 null Conditional FP-Tree for suffix E A:1 C:1 D:1 B:8 C:3 null A:2 C:1 D:1 E:1 D:1 E:1 C1 D11 AC A2 C2 D2
34
Suffix E (inserting ADE) The set of paths ending in E. Insert each path (after truncating E) into a new tree. (New) Header table C:1 null Conditional FP-Tree for suffix E A2 C2 D2 A:2 C:1 D:1 B:8 C:3 null A:2 C:1 D:1 E:1 D:1 E:1 C1 D21 AC
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.