Προεπεξεργασία εδοµένων Αποθήκες και Εξόρυξη εδοµένων 2 ο Μάθηµα ιδάσκων: Μαρία Χαλκίδη Η διαδικασίας της ανακάλυψης γνώσης Knowledge Discovery (KDD) Process Εξόρυξη δεδοµένων- πυρήνας της διαδικασίας ανακάλυψης γνώσης Pattern Evaluation Data Mining Task-relevant Data Data Warehouse Selection Data Cleaning Data Integration Databases Αποθήκες και Εξόρυξη εδοµένων 2 1
Γιατί προεξεργασία των δεδοµένων? Τα δεδοµένα που είναι διαθέσιµα και έχουµε να διαχειριστούµε στην καθηµερινή ζωή δεν είναι «καθαρά» ατελή: έλλειψη τιµών κάποιων χαρακτηριστικών, έλλειψη χαρακτηριστικών που µας ενδιαφέρουν, ή περιέχουνµόνο αθροιστικά δεδοµένα θόρυβος: περιέχουν λάθη ή outliers ασυνεπή: διαφορές σε ονόµατα, κωδικούς Μη ποιοτικά δεδοµένα, µη ποιοτικά αποτελέσµατα εξόρυξης δεδοµένων! Ποιοτικές αποφάσεις πρέπει να βασίζονται σε ποιοτικά δεδοµένα Οι αποθήκες δεδοµένων απαιτούν συνεπή ολοκλήρωση ποιοτικών δεδοµένων Αποθήκες και Εξόρυξη εδοµένων 3 Μέτρα Ποιότητας εδοµένων Η ποιότητα των δεδοµένων βασίζεται στα εξής κριτήρια: Ακρίβεια Πληρότητα Συνέπεια Επικαιρότητα Αξιοπιστία Προστιθέµενη αξία Πόσο εύκολα µπορούν να ερµηνευτούν Προσβασιµότητα Αποθήκες και Εξόρυξη εδοµένων 4 2
Οι βασικές εργασίες στην Προεπεξεργασία των εδοµένων Καθαρισµός δεδοµένων (Data cleaning) Συµπλήρωση ελλειπών τιµών, διαχείριση θορύβου, αναγνώριση αποµάκρυνση outliers, και επίλυση των ασυνεπειών Ολοκλήρωση δεδοµένων Ολοκλήρωση πολλαπλών βάσεων δεδοµένων ή αρχείων Μετασχηµατισµός δεδοµένων Κανονικοποίηση και άθροιση Μείωση δεδοµένων Μείωση της αναπαράσταση των δεδοµένων σε όγκο αλλά παράγει τα ίδια ή παρόµοια αναλυτικά αποτελέσµατα Μετατροπή δεδοµένων σε διακριτά (Data discretization) Μείωση µέρους των δεδοµένων αλλά µε ιδιαίτερησηµασία, ειδικά για αριθµητικά Αποθήκες και Εξόρυξη εδοµένων 5 Καθαρισµός εδοµένων Σηµαντικότητα Data cleaning is one of the three biggest problems in data warehousing Ralph Kimball Data cleaning is the number one problem in data warehousing DCI survey Βασικές εργασίες για το καθαρισµό δεδοµένων Συµπλήρωση ελλειπών τιµών Αναγνώριση outliers και εξοµάλυνση δεδοµένων µε θόρυβο ιόρθωση ασυνεπών δεδοµένων Επίλυση του πλεονασµού δεδοµένων µε ολοκλήρωση Αποθήκες και Εξόρυξη εδοµένων 6 3
Ελλειπείς Τιµές Τα δεδοµένα δεν είναι πάντα διαθέσιµα π.χ. Πολλές εγγραφές δεν έχουν τιµές για όλα τα χαρακτηριστικα, όπως εισόδηµα πελάτη σε δεδοµένα πωλήσεων Ελλειπή δεδοµένα µπορεί να οφείλονται Κακή λειτουργία εξοπλισµού Ασυνέπεια σε σχέση µε άλλα δεδοµένα εδοµένα που δεν έχουν εισαχθεί εξαιτίας κακής κατανόησης Συγκεκριµένα δεδοµένα µπορεί να µην έχουν θεωρηθεί σηµαντικά τη στιγµή της εισαγωγής Μη καταγραφή ιστορικών δεδοµένων ή µεταβολές στα δεδοµένα Τα ελλειπή δεδοµένα µπορεί να χρειαστεί να τα συµπεράνουµε από τα υπαρχοντα διαθέσιµα. Αποθήκες και Εξόρυξη εδοµένων 7 Πώς να διαχειριστούµε ελλειπή δεδοµένα? Αγνοούµε τη συγκεκριµένη εγγραφή(tuple): µη αποτελεσµατική όταν το ποσοστο των ελλειπών τιµών ανά χαρακτηριστικό ποικίλει σηµαντικά. Συµπλήρωση των ελλειπών τιµών: επίπονη + δύσκολη στην υλοποίηση? Αυτοµατοποιηµένη συµπλήρωση µε Γενική σταθερά Μέση τιµή χαρακτηριστικού Μέση τιµή χαρακτηριστικού για όλα τα δείγµατα που ανήκουν στην ίδια κατηγορία Ποιό πιθανή τιµή ( µε βάση κάποιο πιθανοτικό µοντέλο Bayesian formula ή decision tree) Αποθήκες και Εξόρυξη εδοµένων 8 4
εδοµένα µε θόρυβο Θόρυβος: τυχαίο λάθος ή διακύµανση στις µετρήσεις µία µεταβλητής Λανθασµένες τιµές χαρακτηριστικών µπορεί να οφείλονται εργαλεία συλλογής δεδοµένων Προβλήµατα στην εισαγωγή δεδοµένων Προβλήµατα στη µετάδοση δεδοµένων Περιορισµούς τεχνολογίας Άλλα προβλήµατα δεδοµένων που απαιτούν καθαρισµό δεδοµένων ιπλοεγγραφές Ατελή δεδοµένα Ασυνεπή δεδοµένα Αποθήκες και Εξόρυξη εδοµένων 9 Πώς µπορουµε να διαχειριστούµε δεδοµένα µε θόρυβο? Binning Ταξινόµηση δεδοµένων και τµηµατοποιήση (ίσης-συχνότητας) οµάδες εξοµάλυνση µε βάσητοµέσο της οµάδας, µε βάση τα όρια κάθε οµάδας,κλπ Παλινδρόµηση (Regression) Ταίριασµα των δεδοµένων σε µία συνάρτηση παλινδρόµησης Συσταδοποίηση (Clustering) Αναγνώριση και αποµάκρυνση outliers Συνδυασµός υπολογιστή και ανθρώπινης παρατήρησης Αναγνώριση σπάνιων τιµών και έλεγχος µε τη βοήθεια των χρηστών ή ειδικών στο πεδίο εφαρµογής Αποθήκες και Εξόρυξη εδοµένων 10 5
Simple Discretization Methods: Binning Equal-width (distance) partitioning Divides the range into N intervals of equal size: uniform grid if A and B are the lowest and highest values of the attribute, the width of intervals will be: W = (B A)/N. The most straightforward, but outliers may dominate presentation Skewed data is not handled well Equal-depth (frequency) partitioning Divides the range into N intervals, each containing approximately same number of samples Good data scaling Managing categorical attributes can be tricky Αποθήκες και Εξόρυξη εδοµένων 11 Binning Methods for Data Smoothing Sorted data for price (in dollars): 4, 8, 9, 15, 21, 21, 24, 25, 26, 28, 29, 34 * Partition into equal-frequency (equi-depth) bins: - Bin 1: 4, 8, 9, 15 - Bin 2: 21, 21, 24, 25 - Bin 3: 26, 28, 29, 34 * Smoothing by bin means: - Bin 1: 9, 9, 9, 9 - Bin 2: 23, 23, 23, 23 - Bin 3: 29, 29, 29, 29 * Smoothing by bin boundaries: - Bin 1: 4, 4, 4, 15 - Bin 2: 21, 21, 25, 25 - Bin 3: 26, 26, 26, 34 Αποθήκες και Εξόρυξη εδοµένων 12 6
Παλινδρόµηση -Regression y Y1 Y1 y = x + 1 X1 x Αποθήκες και Εξόρυξη εδοµένων 13 Ανάλυση συστάδων -Cluster Analysis Αποθήκες και Εξόρυξη εδοµένων 14 7
Ολοκλήρωση δεδοµένων Ολοκλήρωση δεδοµένων: Συνδυάζει δεδοµένα από πολλαπλές πηγές σε µία συµπαγή αποθήκη δεδοµένων Σχήµα ολοκλήρωσης: π.χ., A.cust-id B.cust-# Ολοκλήρωση µεταδεδοµένων απο διαφορετικές πηγές Αναγνώριση και επίλυση σύγκρουσης τιµών δεδοµένων Για την ίδια οντότητα πραγµατικού κόσµου, µπορεί να έχουµε τιµές χαρακτηριστικών από διαφορετικές πηγές Πιθανοί λόγοι: διαφορετικές αναπαραστάσεις, διαφορετικές κλιµακες, π.χ., metric vs. British units Αποθήκες και Εξόρυξη εδοµένων 15 ιαχείριση πλεονασµού σε ολοκληρωση δεδοµένων Πλεονάζοντα δεδοµένα δηµιουργούνται συχνά όταν έχουµε ολοκλήρωση από πολλαπλές βάσεις δεδοµένων Αναγνώριση αντικειµένου: Το ίδιο χαρακτηριστικό ή αντικείµενο µπορεί να έχει διαφορετικά ονόµατα σε διαφορετικές βάσεις δεδοµένων εδοµένα που προκύπτουν από κάποια άλλα: Ένα χαρακτηριστικό σε ένα πίνακα µπορεί σε άλλο πίνακα να προκύπτει από άλλο χαρακτηριστικά Τα πλεονάζοντα χαρακτηριστικά µπορεί να µπορούν να προσδιοριστούν µε τη βοήθεια της ανάλυσης συσχετίσεως Προσεκτική ολοκλήρωση δεδοµένων από πολλαπλές πηγές µπορεί να βοηθήσουν στη µείωση / αποφυγή πλεονασµών και ασυνέπειας Βελτίωση της ποιότητας, ταχύτητα εξόρυξης γνώσης Αποθήκες και Εξόρυξη εδοµένων 16 8
Ανάλυση συσχέτισης Correlation analysis (Numerical Data) Συντελεστής συσχέτισης (ή Pearson s product moment coefficient) r A, B ( A A )( B B ) ( AB ) n A B = = ( n 1) σ A σ B ( n 1) σ A σ B where n is the number of tuples, A and are the respective means of A and B, σ A and σ B are the respective standard deviation of A and B, and Σ(AB) is the sum of the AB cross-product. If r A,B > 0, A and B are positively correlated (A s values increase as B s). The higher, the stronger correlation. r A,B = 0: independent; r A,B < 0: negatively correlated B Αποθήκες και Εξόρυξη εδοµένων 17 Ανάλυση συσχέτισης(categorical Data) Χ 2 (chi-square) test χ = ( Observed Expected Expected 2 2 ) Υψηλές τιµές Χ 2, υψηλή συσχέριση µεταβλητών Τα πεδία που συµβάλουν περισσότερο στήν τιµή τουχ 2 είναι εκείνα που η µέτρηση τους είναι πολύ διαφορετική από την αναµενόµενη Συσχέτιση δεν συνεπάγεται αιτιώδη συνάφεια Αποθήκες και Εξόρυξη εδοµένων 18 9
Chi-Square Calculation: An Example Play chess Not play chess Sum (row) Like science fiction 250(90) 200(360) 450 Not like science fiction 50(210) 1000(840) 1050 Sum(col.) 300 1200 1500 Χ 2 (chi-square) calculation (numbers in parenthesis are expected counts calculated based on the data distribution in the two categories) 2 2 (250 90 ) χ = 90 (50 210 ) + 210 2 (200 360 ) + 360 2 (1000 840 ) + 840 2 = 507.93 It shows that like_science_fiction and play_chess are correlated in the group Αποθήκες και Εξόρυξη εδοµένων 19 Μετασχηµατισµός εδοµένων Εξοµάλυνση: αποµάκρυνση θορύβου από τα δεδοµένα Άθροιση (Aggregation): summarization, κατασκευή κύβου Γενίκευση: εννοιολογική ιεραρχία Κανονικοποίηση: min-max normalization z-score normalization normalization by decimal scaling ηµιουργία χαρακτηριστικών Νέα χαρακτηριστικά κατασκευάζονται από υπάρχοντα Αποθήκες και Εξόρυξη εδοµένων 20 10
Μετασχηµατισµός δεδοµένων: Κανονικοποίηση Min-max normalization: [new_min A, new_max A ] v mina v ' = ( new_ maxa new_ mina) + new_ min maxa mina Ex. Let income range $12,000 to $98,000 normalized to [0.0, 1.0]. Then $73,000 is mapped to Z-score normalization (µ: mean, σ: standard deviation): v ' = v µ A σ A Ex. Let µ = 54,000, σ = 16,000. Then Normalization by decimal scaling 73,600 12,000 (1.0 0) + 0 = 0.716 98,000 12,000 73,600 54,000 = 1.225 16,000 v v'= Where j is the smallest integer such that Max( ν ) < 1 j 10 Αποθήκες και Εξόρυξη εδοµένων 21 A Στρατηγικές µείωσης διαστάσεων Γιατί µείωση διαστάσεων? Μία Β µπορεί να αποθηκεύει terabytes από δεδοµένα Πολύπλοκη ανάλυση/εξόρυξη δεδοµένων µπορεί να πάρει πολύ χρόνο να ολοκληρωθεί σε ένα µεγάλο σύνολο δεδοµένων Μείωση δεδοµένων Λαµβάνουµε περιορισµένηαναπαράστασητου συνόλου δεδοµένων η οποία είναι πολύ µικρότερη σε όγκο αλλά παράγει το ίδιο (ή σχεδόν το ίδια) αναλυτικά αποτελέσµατα Αποθήκες και Εξόρυξη εδοµένων 22 11
Στρατηγικές µείωσης διαστάσεων Άθροιση κύβων δεδοµένων Άθροιση δεδοµένων για µεµονωµένες οντότητες που µας ενδιαφέρουν Επιλογή χαρακτηριστικών/μείωση διαστάσεων Επιλέγουµε τοελάχιστοσύνολοχαρακτηριστικών Η πιθανότητα κατανοµής διαφορετικών κατηγοριών µε βάσητα επιλεγµένα χαρακτηριστικά να είναι όσο το δυνατόν πιο κοντά στην αρχική κατανοµή δεδοµένου των τιµών όλων των χαρακτηριστικών Συµπίεση δεδοµένων Μείωση πληθυσµού ταίριασµα δεδοµένων σε συγκεκριµένα µοντέλα Παλινδόµηση (regression), Συσταδοποίηση (clustering), ειγµατοληψία (sampling) Αναπαράσταση µε διακριτές τιµές (Discretization) και εννοιολογική ιεραρχία Αποθήκες και Εξόρυξη εδοµένων 23 Example of Decision Tree Induction Initial attribute set: {A1, A2, A3, A4, A5, A6} A4? A1? A6? Class 1 Class 2 Class 1 Class 2 > Reduced attribute set: {A1, A4, A6} Αποθήκες και Εξόρυξη εδοµένων 24 12
Σύνοψη Η προεπεξεργασία των δεδοµένων είναι ένα σηµαντικό θέµα για την εξόρυξη δεδοµένων/γνώσης Η προεπεξεργασία των δεδοµένων περιλαµβάνει Καθαρισµό και ολοκλήρωση δεδοµένων Μείωση διαστάσεων και επιλογή χαρακτηριστικών Discretization Αποθήκες και Εξόρυξη εδοµένων 25 13