Υλοποίηση τεχνικών απόκρυψης κανόνων συσχέτισης (Association Rule Hiding) στην Python
Abstract
Η εξόρυξη δεδομένων είναι ο επιστημονικός κλάδος που επιτρέπει την εξαγωγή γνώσης μέσω της επεξεργασίας του τεράστιου όγκου ακατέργαστης πληροφορίας που βρίσκεται αποθηκευμένη μέσα σε αποθετήρια δεδομένων. Μια πολύ συνηθισμένη μορφή αναπαράστασης αυτής της γνώσης είναι μέσω της εύρεσης κανόνων συσχέτισης ή επαναλαμβανόμενων συνόλων δεδομένων. Ωστόσο, μέσα από αυτή τη διαδικασία ανακάλυψης γνώσης είναι δυνατό να παραβιαστεί η ιδιωτικότητα ή να αποκαλυφθούν ευαίσθητα δεδομένα ατόμων ή οργανισμών. Για την αποτροπή αυτής της ανεπιθύμητης κατάστασης, θα πρέπει κάποιοι κανόνες συσχέτισης, ή συχνά στοιχειοσύνολα, να μην γίνονται φανερά αλλά να αποκρύπτονται, κάτι το οποίο είναι κύριο μέλημα ενός νέου, σχετικά, ερευνητικού πεδίου, της Απόκρυψης Κανόνων Συσχέτισης (Α.Κ.Σ). Ένα βασικό ερευνητικό ερώτημα της Α.Κ.Σ. είναι η ανάπτυξη ενός εργαλείου που θα παρέχει την δυνατότητα εύκολης διασύνδεσης και ανάπτυξης νέων τεχνικών και συγκριτικής μελέτης αυτών σε σχέση με άλλες ήδη υπάρχουσες τεχνικές, μέσω ενός ολοκληρωμένου περιβάλλοντος. Σκοπός της παρούσης διατριβής, είναι η δημιουργία με χρήση της Python, ενός ολοκληρωμένου περιβάλλοντος πειραματισμού και αξιολόγησης ορισμένων αλγορίθμων που έχουν προταθεί για την επίλυση του προβλήματος της απόκρυψης των κανόνων συσχέτισης, και το οποίο θα δίνει την δυνατότητα στον χρήστη της συγκριτικής μελέτης των χαρακτηριστικών διαφόρων μεθόδων–αλγορίθμων Απόκρυψης Κανόνων Συσχέτισης. Μέσω του ολοκληρωμένου περιβάλλοντος θα είναι εφικτή η εύκολη δοκιμή των αλγορίθμων με χρήση διαφορετικών παραμέτρων, η συγκριτική μελέτη της απόδοσης διαφορετικών τεχνικών για δυναμικά ορισμένα σύνολα δεδομένων εισόδου και ελέγχου απόδοσης, και η δημιουργία οπτικοποίησης των αποτελεσμάτων σύγκρισης των ποιοτικών και ποσοτικών χαρακτηριστικών των αλγορίθμων αυτών. Για την πραγματοποίηση του παραπάνω στόχου μελετήθηκαν αρκετοί αλγόριθμοι και τεχνικές Απόκρυψης και τελικά επιλέχθηκαν τρεις από αυτούς οι οποίοι υλοποιήθηκαν στη γλώσσα προγραμματισμού Python και ενσωματώθηκαν στο περιβάλλον που αναπτύχθηκε. Οι αλγόριθμοι δοκιμάσθηκαν, μέσω του εργαλείου που δημιουργήθηκε στο πλαίσιο της παρούσης διατριβής, σε πραγματικά σύνολα συναλλαγών, ώστε να παραχθούν όσο το δυνατόν πιο αξιόπιστα αποτελέσματα – συμπεράσματα.