Κατέβασμα παρουσίασης
Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε
1
Εξόρυξη γνώσης 8η διάλεξη
2
1 Κανόνες συσχετίσεων
3
Τι είναι οι κανόνες συσχετίσεων
Εισαγωγή Τι είναι οι κανόνες συσχετίσεων Είναι κανόνες που απαντούν σε ερωτήματα που είναι ως εξής: Ποιο είναι το γεγονός που συμβαίνει πιο συχνά όταν ξέρω ότι συμβαίνει το γεγονός Α Προσπαθώ να εντοπίσω συσχετίσει ανάμεσα σε δεδομένα
4
Παράδειγμα συσχετίσεων
Εντοπισμός των στοιχείων που αγοράζονται συχνά μαζί σε ένα σούπερ μάρκετ. Βούτυρο => Ψωμί Χρήσεις Διαφήμιση Τοποθέτηση Μάρκετινγκ Κουπόνια Σκοπός Αύξηση των κερδών, μείωση του κόστους
5
Δεδομένου ενός συνόλου από στοιχεία:
Ορισμός Δεδομένου ενός συνόλου από στοιχεία: Ι={ Ι 1 , Ι 2 ,…, Ι 𝑚 } και μια βάση δεδομένων από συναλλαγές D={ t 1 , t 2 ,…, t 𝑛 } όπου t 𝑖 ={ 𝐼 𝑖1 , 𝐼 𝑖2 ,…, I 𝑖𝑘 } ένας κανόνας συσχέτισης είναι ένα επαγωγικό συμπέρασμα της μορφής 𝑋⇒𝑌 είναι σύνολα στοιχείων που ονομάζονται στοιχειοσύνολα και 𝑋∪𝑌=∅.
6
Υποστήριξη (support – s)
H υποστήριξη για έναν κανόνα συσχέτισης 𝑋⇒𝑌 είναι το ποσοστό των συναλλαγών που περιέχουν το 𝑋∪𝑌
7
Εμπιστοσύνη ή ισχύς (confidence – α)
H εμπιστοσύνη για έναν κανόνα συσχέτισης 𝑋⇒𝑌 είναι ο αριθμός των συναλλαγών που περιέχουν το 𝑋∪𝑌 προς τον αριθμό συναλλαγών που περιέχουν το X
8
Πρακτικά Δε μας ενδιαφέρουν όλες οι συσχετίσεις παρά μόνο αυτές που έχουν πολύ μεγάλη υποστήριξη και εμπιστοσύνη
9
Πρακτικά Δε μας ενδιαφέρουν όλες οι συσχετίσεις παρά μόνο αυτές που έχουν πολύ μεγάλη υποστήριξη και εμπιστοσύνη
10
Παράδειγμα
11
Παράδειγμα 𝑋⇒𝑌 s (support) α (confidence) Bread => PeanutButter 60%
75% PeanutButter=>Bread 100% Beer=>Bread 20% 50% PeanutButter=>Jellly 33.3% Jelly=>PeanutButter Jelly=>Milk 0%
12
Πρόβλημα των κανόνων συσχέτισης
Δεδομένου ενός συνόλου από στοιχεία: Ι={ Ι 1 , Ι 2 ,…, Ι 𝑚 } και μια βάση δεδομένων από συναλλαγές D={ t 1 , t 2 ,…, t 𝑛 } όπου t 𝑖 ={ 𝐼 𝑖1 , 𝐼 𝑖2 ,…, I 𝑖𝑘 } το πρόβλημα των κανόνων συσχέτισης είναι η εύρεση όλων αυτών των κανόνων X=> Y που έχουν μια ελάχιστη τιμή για την υποστήριξη και την εμπιστοσύνη. Οι τιμές αυτές (s,a) δίνονται σαν είσοδος στο πρόβλημα
13
Απόδοση αλγορίθμων Πόσες φορές χρειάζεται να σαρώσει τη βάση δεδομένων και το μέγιστο αριθμό στοιχειοσυνόλων που πρέπει να μελετηθούν ώστε βρεθούν οι κανόνες συσχέτισης
14
2 Συχνά στοιχειοσύνολα
15
Διάσπαση προβλήματος σε δύο μέρη
Συχνά στοιχειοσύνολα Διάσπαση προβλήματος σε δύο μέρη Εντοπισμός συχνών στοιχειοσυνόλων (itemset) Δημιουργία κανόνων από τα συχνά στοιχειοσύνολα
16
Ορισμός Συχνό στοιχειοσύνολο (itemset) είναι ένα στοιχειοσύνολο του οποίο ο αριθμός των εμφανίσεων είναι πάνω από ένα κατόφλι, s. Χρησιμοποιείται ο συμβολισμός L για να δηλωθεί το σύνολο που αποτελείται από όλα τα συχνά στοιχειοσύνολα και το l για να δηλωθεί ένα στοιχειοσύνολο.
17
Ορισμός …ανάλυση Αφού εντοπίσουμε τα στοιχειοσύνολα βρίσκουμε κανόνες (X=>Y) μέσα σε αυτά που «έχουν ενδιαφέρον»
18
Συμβολισμοί D Βάση συναλλαγών ti Συναλλαγή του D s Υποστήριξη α
Εμπιστοσύνη Χ,Υ,Ζ Στοιχειοσύνολα X=>Y Κανόνας συσχέτισης L Σύνολο από συχνά στοιχειοσύνολα l Συχνό στοιχειοσύνολο στο L C Υποψήφια στοιχειοσύνολα p Αριθμός διαμερίσεων
19
3 Βασικοί αλγόριθμοι
20
Πιο γνωστός αλγόριθμος για εύρεση κανόνων συσχέτισης
Αpriori Πιο γνωστός αλγόριθμος για εύρεση κανόνων συσχέτισης Παραδοχή (ιδιότητα συχνών στοιχειοσυνόλων) Οποιοδήποτε υποσύνολο ενός συχνού στοιχειοσυνόλου πρέπει να είναι συχνό
21
Αpriori «Κλειστό προς τα κάτω» Αν ένα στοιχειοσύνολο ικανοποιεί τις απαιτήσεις της ελάχιστης υποστήριξης το ίδιο ισχύει και για τα υποσύνολα Αντιθετοαντιστροφή Αν ένα στοιχειοσύνολο δεν είναι συχνό τότε κανένα υπερσύνολό του δε θα είναι συχνό
23
Περάσματα στα δεδομένα με βήματα (i)
Αλγόριθμος apriori Περάσματα στα δεδομένα με βήματα (i) Σε κάθε βήμα i φτιάχνονται στοιχειοσύνολα μεγέθους i (Ci) και αποτελούν τους υποψήφιους. Από αυτά μόνο όσα ικανοποιούν τις συνθήκες περιλαμβάνονται στο Li. Για να φτιάξουμε το βήμα i+1 χρησιμοποιούμε μόνο τα στοιχειοσύνολα της Li
24
Παράδειγμα αλγορίθμου s=30%, α=50%
Πέρασμα Υποψήφιοι Συχνά στοιχειοσύνολα 1 {Beer}, {Bread}, {Jelly}, {Milk}, {PeanutButter} 2 {Beer, Bread}, {Beer, Jelly}, {Beer, Milk}, {Beer, PeanutButter}, {Bread, Jelly}, {Bread, Milk}, {Bread, PeanutButter}, {Jellly, Milk}, {Jelly, PeanutButter}, {Milk, PeanutButter} {Bread, PeanutButter}
25
+ Χρησιμοποιεί το σύνολο συχνών στοιχειοσυνόλων
Apriori +/- + Χρησιμοποιεί το σύνολο συχνών στοιχειοσυνόλων + Είναι εύκολα παραλληλοποιήσιμος + Είναι εύκολα υλοποιήσιμος Θεωρεί ότι μπορώ να έχω το σύνολο της βάσης των συναλλαγών στη μνήμη (άμεση προσπέλαση) Πρέπει να περάσει τη βάση δεδομένων όσα και τα περάσματα που κάνει
26
Αλγόριθμος δειγματοληψίας
Σε περιπτώσεις που έχουμε πολύ μεγάλες βάσει δεδομένων Επιλέγουμε ένα δείγμα της ΒΔ των συναλλαγών ώστε να μπορεί να χωρέσει στη μνήμη Στα στοιχεία αυτά εφαρμόζουμε Apriori (ή κάποιον αλγόριθμο)
27
Αλγόριθμος δειγματοληψίας
Τα στοιχειοσύνολα που βρίσκει ο αλγόριθμος ονομάζονται ενδεχομένως συχνά (PL – potentially large) στοιχειοσύνολα και χρησιμοποιούνται ως υποψήφια για μέτρημα χρησιμοποιώντας το σύνολο της ΒΔ. Επιπλέον υποψήφια καθορίζονται εφαρμόζοντας συνάρτηση αρνητικού ορίου (Negative Border – BD) Συνεπώς 𝐶= 𝐵𝐷 − (𝑃𝐿)∪𝑃𝐿
28
Ορισμός 𝐵𝐷 − (𝑃𝐿) Το σύνολο των συνολοστοιχείων τα οποία δεν ανήκουν στο PL αλλά όλα τα υποσύνολα ανήκουν στο PL.
29
Ορισμός 𝐵𝐷 − (𝑃𝐿)
30
+ Χρειάζεται μόνο ένα ή δύο περάσματα στη ΒΔ
Δειγματοληψία +/- + Χρειάζεται μόνο ένα ή δύο περάσματα στη ΒΔ + Έχει πολύ απλή κλιμάκωση Αν χρειαστεί παραπάνω από ένα πέρασμα είναι σχεδόν σίγουρο ότι θα προσθέσει μεγάλο αριθμό υποψηφίων.
31
Χωρίζουμε τη ΒΔ συναλλαγών σε κομμάτια 𝐷= 𝐷 1 , 𝐷 2 ,…, 𝐷 𝑛
Διαμέριση Χωρίζουμε τη ΒΔ συναλλαγών σε κομμάτια 𝐷= 𝐷 1 , 𝐷 2 ,…, 𝐷 𝑛 Εφαρμόζουμε τον αλγόριθμο Apriori σε κάθε ένα κομμάτι (διαμέρισμα) Κάθε συχνό συνολοστοιχείο θα πρέπει να είναι συχνό σε τουλάχιστον ένα διαμέρισμα
32
Χωρίζουμε τη ΒΔ συναλλαγών σε κομμάτια 𝐷= 𝐷 1 , 𝐷 2 ,…, 𝐷 𝑛
Διαμέριση Χωρίζουμε τη ΒΔ συναλλαγών σε κομμάτια 𝐷= 𝐷 1 , 𝐷 2 ,…, 𝐷 𝑛 Εφαρμόζουμε τον αλγόριθμο Apriori σε κάθε ένα κομμάτι (διαμέρισμα) Κάθε συχνό συνολοστοιχείο θα πρέπει να είναι συχνό σε τουλάχιστον ένα διαμέρισμα
33
Divide D into partitions D1,D2,…,Dp; For I = 1 to p do
Αλγόριμος Διαμέρισης Divide D into partitions D1,D2,…,Dp; For I = 1 to p do Li = Apriori(Di); C = L1 … Lp; Count C on D to generate L;
34
+ Εύκολη παραλληλοποίηση + Μέγιστος αριθμός περασμάτων στη ΒΔ: 2
Διαμέριση +/- + Εύκολη παραλληλοποίηση + Μέγιστος αριθμός περασμάτων στη ΒΔ: 2 + Μπορεί να χωρίσει τη ΒΔ σε τμήματα που να χωρούν στη μνήμη Αν χρειαστεί παραπάνω από ένα πέρασμα είναι σχεδόν σίγουρο ότι θα προσθέσει μεγάλο αριθμό υποψηφίων.
35
4 Παραλληλισμός
36
Παραλληλισμός δεδομένων Παραλληλισμός εργασιών
37
Παραλληλισμός δεδομένων
Αλγόριθμος Κατανομής Μετρητών (CDA) Διαχωρισμός της ΒΔ σε p τμήματα (ένα για κάθε επεξεργαστή) Κάθε επεξεργαστής μετράει τους υποψηφίους για τα δεδομένα του και στέλνει τα στοιχεία στους άλλους επεξεργαστές Κάθε επεξεργαστής υπολογίζει υποψηφίους (καθολικούς μετρητές)
38
Παραλληλισμός δεδομένων
39
Παραλληλισμός εργασιών
Αλγόριθμος Κατανομής Δεδομένων (DDA) Κάθε υποψήφιος και η ΒΔ διαμερίζονται στους επεξεργαστές Κάθε επεξεργαστής παράλληλα μετράει τους υποψηφίους που του έχουν αποδοθεί στο τοπικό κομμάτι της ΒΔ Κάθε επεξεργαστής εκπέμπει το τμήμα της ΒΔ στους άλλους Χρησιμοποιώντας το σύνολο των κομματιών κάθε επεξεργαστής εκπέμπει έναν καθολικό μετρητή για τους υποψηφίους Τώρα πλέον μπορούν να υπολογιστούν οι πρώτοι υποψήφιοι που στέλνονται σε όλους τους επεξεργαστές για να ξεκινήσει εκ νέου πέρασμα
40
Παραλληλισμός εργασιών
41
5 Σύγκριση τεχνικών
42
Γιατί να μην επιλέξω κάποιο υποσύνολο αυτού;
Στόχος Δημιουργούμε όλους τους κανόνες που ικανοποιούν μία συγκεκριμένη συνθήκη για τα s και α. Γιατί να μην επιλέξω κάποιο υποσύνολο αυτού;
43
Απλοί κανόνες συσχετίσεων…
Τύπος Απλοί κανόνες συσχετίσεων… …σύνθετοι;
44
Οι κανόνες που εξετάσαμε ασχολήθηκαν με κατηγορικές βάσεις δεδομένων.
Τύπος δεδομένων Οι κανόνες που εξετάσαμε ασχολήθηκαν με κατηγορικές βάσεις δεδομένων. Τι γίνεται για κανόνες που αφορούν άλλους τύπους δεδομένων; Π.χ. κείμενο…
45
Πηγή δεδομένων Τα παραδείγματα που είδαμε είναι άκρως περιοριστικά… μιλήσαμε αποκλειστικά για συναλλαγές προϊόντων!!!
46
Περιοριστήκαμε στην τεχνική εύρεσης συχνών στοιχειοσυνόλων
Τεχνική Περιοριστήκαμε στην τεχνική εύρεσης συχνών στοιχειοσυνόλων
47
Στρατηγική στοιχειοσυνόλων
Τρόπος μέτρησης στοιχειοσυνόλων
48
Στρατηγική συναλλαγών
Στον αλγόριθμο παίζει ρόλο η καταμέτρηση των στοιχείων των συναλλαγών. Η μέτρηση όμως μπορεί να γίνει: Στο σύνολο Σε δείγμα Σε διαμέρισμα
49
Δομή δεδομένων στοιχειοσυνόλων
Αποθήκευση υποψήφιων στοιχειοσυνόλων; Hash tree (δέντρο κατακερματισμού) Πρόκειται για ένα δέντρο αναζήτησης πολλαπλών δρόμων που κάθε κόμβος ορίζει μια συνάρτηση κατακερματισμού για να βοηθήσει να ακολουθήσουμε ένα μονοπάτι
50
Βελτιστοποίηση Τεχνικές για τη βελτίωση της απόδοσης του αλγορίθμου εφόσον έχουμε ανομοιομορφία
51
Τεχνικές για να αυξηθεί η ταχύτητα υπολογισμού του αποτελέσματος
Παραλληλισμός Τεχνικές για να αυξηθεί η ταχύτητα υπολογισμού του αποτελέσματος
52
6 Αυξητικοί κανόνες
53
Τα στοιχεία που είδαμε έως τώρα αφορούν στατικές ΒΔ
Αυξητικοί κανόνες Τα στοιχεία που είδαμε έως τώρα αφορούν στατικές ΒΔ Τι ακριβώς γίνεται με τις δυναμικές βάσεις δεδομένων;
54
Τι ακριβώς θα συμβαίνει όταν έχω το στιγμιότυπο 𝐷∪{ΔD}?
Στόχος Γνωρίζουμε ποια είναι τα συχνά συνολοστοιχεία για τις συναλλαγές στη ΒΔ με στιγμιότυπο D. Τι ακριβώς θα συμβαίνει όταν έχω το στιγμιότυπο 𝐷∪{ΔD}? Κανόνες Apriori Αποθήκευση L και μέτρηση πάνω στο νέο στιγμιότυπο
55
Πέραν από το παράδειγμα που είδαμε υπάρχουν πολλές άλλες εφαρμογές
Σχόλια Πέραν από το παράδειγμα που είδαμε υπάρχουν πολλές άλλες εφαρμογές Recommendation systems Web usage mining Προβλέψεις (system failure) Οι συσχετίσεις δεν είναι μόνο κατηγορικές μπορεί να είναι: Χωρικές Χρονικές Υποθετικές
56
7 Στην πράξη
57
Απόσταση μεταξύ συστάδων
Παρόμοιες παρουσιάσεις
© 2024 SlidePlayer.gr Inc.
All rights reserved.