Προεπεξεργασία Δεδομένων Αποθήκες και Εξόρυξη Δεδομένων Διδάσκουσα: Μαρία Χαλκίδη
Η διαδικασίας της ανακάλυψης γνώσης Knowledge Discovery (KDD) Process Εξόρυξη δεδομένων- πυρήνας της διαδικασίας ανακάλυψης γνώσης Pattern Evaluation Data Mining Task-relevant Data Data Warehouse Selection Data Cleaning Data Integration Databases Αποθήκες και Εξόρυξη Δεδομένων 2
Γιατί προεξεργασία των δεδομένων? Τα δεδομένα που είναι διαθέσιμα και έχουμε να διαχειριστούμε στην καθημερινή ζωή δεν είναι «καθαρά» ατελή: έλλειψη τιμών κάποιων χαρακτηριστικών, έλλειψη χαρακτηριστικών που μας ενδιαφέρουν, ή περιέχουν μόνο αθροιστικά δεδομένα θόρυβος: περιέχουν λάθη ή outliers ασυνεπή: διαφορές σε ονόματα, κωδικούς Μη ποιοτικά δεδομένα, μη ποιοτικά αποτελέσματα εξόρυξης δεδομένων! Ποιοτικές αποφάσεις πρέπει να βασίζονται σε ποιοτικά δεδομένα Οι αποθήκες δεδομένων απαιτούν συνεπή ολοκλήρωση ποιοτικών δεδομένων Αποθήκες και Εξόρυξη Δεδομένων 3
Μέτρα Ποιότητας Δεδομένων Η ποιότητα των δεδομένων βασίζεται στα εξής κριτήρια: Ακρίβεια Πληρότητα Συνέπεια Επικαιρότητα Αξιοπιστία Προστιθέμενη αξία Πόσο εύκολα μπορούν να ερμηνευτούν Προσβασιμότητα Αποθήκες και Εξόρυξη Δεδομένων 4
Οι βασικές εργασίες στην Προεπεξεργασία των Δεδομένων Καθαρισμός δεδομένων (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
Ελλιπείς Τιμές Τα δεδομένα δεν είναι πάντα διαθέσιμα π.χ. Πολλές εγγραφές δεν έχουν τιμές για όλα τα χαρακτηριστικά, όπως εισόδημα πελάτη σε δεδομένα πωλήσεων Ελλιπή δεδομένα μπορεί να οφείλονται Κακή λειτουργία εξοπλισμού Ασυνέπεια σε σχέση με άλλα δεδομένα Δεδομένα που δεν έχουν εισαχθεί εξαιτίας κακής κατανόησης Συγκεκριμένα δεδομένα μπορεί να μην έχουν θεωρηθεί σημαντικά τη στιγμή της εισαγωγής Μη καταγραφή ιστορικών δεδομένων ή μεταβολές στα δεδομένα Τα ελλιπή δεδομένα μπορεί να χρειαστεί να τα συμπεράνουμε από τα υπάρχοντα διαθέσιμα. Αποθήκες και Εξόρυξη Δεδομένων 7
Missing Values? Αγνοούμε τη συγκεκριμένη εγγραφή(tuple): μη αποτελεσματική όταν το ποσοστό των ελλιπών τιμών ανά χαρακτηριστικό ποικίλει σημαντικά. Συμπλήρωση τιμών που λείπουν: επίπονη + δύσκολη στην υλοποίηση? Αυτοματοποιημένη συμπλήρωση με Γενική σταθερά Μέση τιμή χαρακτηριστικού Μέση τιμή χαρακτηριστικού για όλα τα δείγματα που ανήκουν στην ίδια κατηγορία Ποιό πιθανή τιμή ( με βάση κάποιο πιθανοτικό μοντέλο Bayesian formula ή decision tree) Αποθήκες και Εξόρυξη Δεδομένων 8
Δεδομένα με θόρυβο Θόρυβος: τυχαίο λάθος ή διακύμανση στις μετρήσεις μίας μεταβλητής Λανθασμένες τιμές χαρακτηριστικών μπορεί να οφείλονται εργαλεία συλλογής δεδομένων Προβλήματα στην εισαγωγή δεδομένων Προβλήματα στη μετάδοση δεδομένων Περιορισμούς τεχνολογίας Άλλα προβλήματα δεδομένων που απαιτούν καθαρισμό δεδομένων Διπλοεγγραφές Ατελή δεδομένα Ασυνεπή δεδομένα Αποθήκες και Εξόρυξη Δεδομένων 9
Πώς μπορουμε να διαχειριστούμε δεδομένα με θόρυβο? Binning Ταξινόμηση δεδομένων και τμηματοποίηση (ίσης-συχνότητας) ομάδες εξομάλυνση με βάση το μέσο της ομάδας, με βάση τα όρια κάθε ομάδας,κλπ Παλινδρόμηση (Regression) Ταίριασμα των δεδομένων σε μία συνάρτηση παλινδρόμησης Συσταδοποίηση (Clustering) Αναγνώριση και απομάκρυνση outliers Συνδυασμός υπολογιστή και ανθρώπινης παρατήρησης Αναγνώριση σπάνιων τιμών και έλεγχος με τη βοήθεια των χρηστών ή ειδικών στο πεδίο εφαρμογής Αποθήκες και Εξόρυξη Δεδομένων 10
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: 24, 24, 24, 24 - 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
Παλινδρόμηση -Regression y Y1 Y1 y = x + 1 X1 x Αποθήκες και Εξόρυξη Δεδομένων 13
Ανάλυση συστάδων -Cluster Analysis Αποθήκες και Εξόρυξη Δεδομένων 14
Ολοκλήρωση δεδομένων Ολοκλήρωση δεδομένων: Συνδυάζει δεδομένα από πολλαπλές πηγές σε μία συμπαγή αποθήκη δεδομένων Σχήμα ολοκλήρωσης: π.χ., A.cust-id B.cust-# Ολοκλήρωση μεταδεδομένων απο διαφορετικές πηγές Αναγνώριση και επίλυση σύγκρουσης τιμών δεδομένων Για την ίδια οντότητα πραγματικού κόσμου, μπορεί να έχουμε τιμές χαρακτηριστικών από διαφορετικές πηγές Πιθανοί λόγοι: διαφορετικές αναπαραστάσεις, διαφορετικές κλίμακες, π.χ., metric vs. British units Αποθήκες και Εξόρυξη Δεδομένων 15
Διαχείριση πλεονασμού σε ολοκλήρωση δεδομένων Πλεονάζοντα δεδομένα δημιουργούνται συχνά όταν έχουμε ολοκλήρωση από πολλαπλές βάσεις δεδομένων Αναγνώριση αντικειμένου: Το ίδιο χαρακτηριστικό ή αντικείμενο μπορεί να έχει διαφορετικά ονόματα σε διαφορετικές βάσεις δεδομένων. Δεδομένα που προκύπτουν από κάποια άλλα: Ένα χαρακτηριστικό σε ένα πίνακα μπορεί σε άλλο πίνακα να προκύπτει από άλλο χαρακτηριστικά. Τα πλεονάζοντα χαρακτηριστικά μπορεί να μπορούν να προσδιοριστούν με τη βοήθεια της ανάλυσης συσχετίσεως Προσεκτική ολοκλήρωση δεδομένων από πολλαπλές πηγές μπορεί να βοηθήσουν στη μείωση / αποφυγή πλεονασμών και ασυνέπειας Βελτίωση της ποιότητας, ταχύτητα εξόρυξης γνώσης. Αποθήκες και Εξόρυξη Δεδομένων 16
Ανάλυση συσχέτισης Correlation analysis (Numerical Data) Συντελεστής συσχέτισης (ή Pearson s product moment coefficient) r A, B ( A ( n A)( B 1) B) ( AB) ( A B n 1) nab A B where n is the number of tuples, 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 A B Αποθήκες και Εξόρυξη Δεδομένων 17
Στρατηγικές μείωσης διαστάσεων Γιατί μείωση διαστάσεων? Μία ΒΔ μπορεί να αποθηκεύει terabytes από δεδομένα Πολύπλοκη ανάλυση/εξόρυξη δεδομένων μπορεί να πάρει πολύ χρόνο να ολοκληρωθεί σε ένα μεγάλο σύνολο δεδομένων Μείωση δεδομένων Λαμβάνουμε περιορισμένη αναπαράσταση του συνόλου δεδομένων η οποία είναι πολύ μικρότερη σε όγκο αλλά παράγει το ίδιο (ή σχεδόν το ίδια) αναλυτικά αποτελέσματα Αποθήκες και Εξόρυξη Δεδομένων 20
Στρατηγικές μείωσης διαστάσεων Επιλογή χαρακτηριστικών/μείωση διαστάσεων Επιλέγουμε το ελάχιστο σύνολο χαρακτηριστικών Η πιθανότητα κατανομής διαφορετικών κατηγοριών με βάση τα επιλεγμένα χαρακτηριστικά να είναι όσο το δυνατόν πιο κοντά στην αρχική κατανομή δεδομένου των τιμών όλων των χαρακτηριστικών Συμπίεση δεδομένων Μείωση πληθυσμού ταίριασμα δεδομένων σε συγκεκριμένα μοντέλα Παλινδρόμηση (regression), Συσταδοποίηση (clustering), Δειγματοληψία (sampling) Αναπαράσταση με διακριτές τιμές (Discretization) και εννοιολογική ιεραρχία Αποθήκες και Εξόρυξη Δεδομένων 21
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} Αποθήκες και Εξόρυξη Δεδομένων 22
Μετασχηματισμός Δεδομένων Εξομάλυνση: απομάκρυνση θορύβου από τα δεδομένα Άθροιση (Aggregation): summarization, κατασκευή κύβου Γενίκευση: εννοιολογική ιεραρχία Κανονικοποίηση: min-max normalization z-score normalization normalization by decimal scaling Δημιουργία χαρακτηριστικών Νέα χαρακτηριστικά κατασκευάζονται από υπάρχοντα Αποθήκες και Εξόρυξη Δεδομένων 23
Μετασχηματισμός δεδομένων: Κανονικοποίηση Min-max normalization: [new_min A, new_max A ] v' v mina maxa min 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 A ( new _ max A new _ mina) new _ min 73,000 12,000 (1.0 0) 0 0.716 98,000 12,000 73,600 54,000 16,000 1.225 v v' Where j is the smallest integer such that Max( ν ) < 1 j 10 A Αποθήκες και Εξόρυξη Δεδομένων 24
Σύνοψη Η προεπεξεργασία των δεδομένων είναι ένα σημαντικό θέμα για την εξόρυξη δεδομένων/γνώσης Η προεπεξεργασία των δεδομένων περιλαμβάνει Καθαρισμό και ολοκλήρωση δεδομένων Μείωση διαστάσεων και επιλογή χαρακτηριστικών Discretization Αποθήκες και Εξόρυξη Δεδομένων 25