Αλγόριθμος Ομαδοποίησης Εμπειρίες από τη μελέτη αναλλοίωτων χαρακτηριστικών και ταξινομητών για συστήματα OCR Μορφονιός Κωνσταντίνος Αθήνα, Ιανουάριος 2002
Γενικά Ένα σύστημα OCR χρησιμοποιείται για την αυτόματη αναγνώριση χαρακτήρων Το κείμενο μπορεί να είναι τυπωμένο ή χειρόγραφο Πώς γίνεται η αναγνώριση; Μηχανική Μάθηση!
Δύο προβλήματα Επιλογή χαρακτηριστικών για την περιγραφή ενός χαρακτήρα Επιλογή μεθόδου ταξινόμησης
Αναλλοίωτα Περιγραφείς Fourier Περιγραφείς Granlund Ελλειπτικοί Περιγραφείς Περιγραφείς Shridhar - Badreldin Συντελεστές Wavelet Συνδυασμός των παραπάνω (με ή χωρίς βάρη) Μορφολογικά χαρακτηριστικά...
Ταξινομητές k-κοντινότερων γειτόνων (πόσο είναι το κ; Χρειάζονται και βάρη;) Νευρωνικά δίκτυα (αρχιτεκτονική; Συντελεστές;) Bayesian ταξινομητής (πιθανότητες;)...
Ποιος συνδυασμός είναι ο καλύτερος; Πειράματα! Βάση NIST (National Institute of Standards and Technology) Benchmarking
Τι σημαίνει καλύτερος συνδυασμός; Καλά ποσοστά σωστής ταξινόμησης Όσο γίνεται πιο γρήγορα Εύκολη υλοποίηση
Νέο πρόβλημα! Η βάση του NIST περιέχει για εκπαίδευση: 61.094 αριθμούς 24.420 κεφαλαία 24.205 πεζά και για έλεγχο: 60.089 αριθμούς 12.092 κεφαλαία 11.578 πεζά
Και όλα αυτά με MATLAB Καλό για πολλαπλασιασμούς πινάκων Άριστο για θέματα επεξεργασίας σήματος αρκεί να μη χρησιμοποιούνται for, while, if Ταξινομητής χωρίς τέτοιες εντολές δεν προγραμματίζεται
Αποτέλεσμα; Ένα πείραμα την ημέρα, το διήμερο, την εβδομάδα, Ακόμα και τη Μεγάλη Εβδομάδα! Έλλειψη υπολογιστικών πόρων... Χρειάζεται και debugging... Κόπηκε και το ρεύμα Άλλαξε και ο μήνας Αααααχ, αυτός ο Murphy!
Λύση; Ο αλγόριθμος ομαδοποίησης Προϋπήρχε σα μέθοδος για «unsupervised» ταξινόμηση Εντοπίζει ομάδες «κοντινών» αντικειμένων Στην αρχική του έκδοση δε γνωρίζει το είδος τον αντικειμένων και δε δημιουργεί απαραίτητα ομογενείς ομάδες
Παραλλαγή Αν καταφέρουμε να «συμπιέσουμε» το σύνολο εκπαίδευσης χωρίς μεγάλη απώλεια πληροφορίας, οι χρόνοι θα βελτιωθούν Επομένως, φάνηκε χρήσιμο να εφαρμόσουμε «ομαδοποίηση» στο σύνολο εκπαίδευσης με «supervised» τρόπο
Η ιδέα Στα 61.000 δείγματα, σίγουρα θα υπάρχουν και κάποια «κοντινά» Είναι πολύ πιθανό να υπάρχουν «περιοχές» όμοιων χαρακτήρων Διαφορετικά, έτσι κι αλλιώς το αναλλοίωτο είναι λάθος επιλεγμένο Μένει ο εντοπισμός τον περιοχών αυτών και η περιγραφή τους μέσο ενός αντιπροσώπου για κάθε μία
Πλεονεκτήματα Αν τα δεδομένα ομαδοποιούνται, μπορούμε να τα «πετάξουμε» και να τα αντικαταστήσουμε από τους αντιπροσώπους τους Οι αντιπρόσωποι αναμένονται να είναι κατά τάξη μεγέθους λιγότεροι Λίγες ομάδες αποτελούν ένδειξη καλού χαρακτηριστικού
Ο αλγόριθμος
Σχόλια Ο αλγόριθμος επιστρέφει τους «αντιπροσώπους» των ομάδων Δε χρειάζεται πλέον k-nn Ποιο είναι όμως το «Θ»;
Ευριστικό Εύρεση διαστήματος [Θ min, Θ max ] Θ min > 0 Θ min < απόσταση μεταξύ των πιο απομακρυσμένων Θ min = 0 τόσες ομάδες όσα και τα αρχικά σημεία Θ max = d max τόσες ομάδες όσες κλάσεις υπάρχουν Η λύση κάπου ενδιάμεσα
Ευριστικό Χωρισμός του σε n ίσα υποδιαστήματα Εκτέλεση φάσης αρχικοποίησης για κάθε υποδιάστημα και προσδιορισμός του αριθμού m των ομάδων Γραφική παράσταση του m ως προς Θ Εύρεση μεγαλύτερου «πλατώματος» και επιλογή του κέντρου του
Βελτιώσεις Έχει σημασία η σειρά με την οποία εμφανίζονται τα σημεία. Όσο πιο «ανακατεμένα» τόσο καλύτερα Αφαίρεση ομάδων με μικρή συμμετοχή (κυρίως 1 και 2). Μάλλον πρόκειται για θόρυβο
Αποτελέσματα Δραματική μείωση χρόνου (μέχρι και 400 φορές!!!) Καλά ποσοστά αναγνώρισης παρατηρήθηκαν στα χαρακτηριστικά που δημιουργούσαν τις λιγότερες ομάδες Τα ποσοστά αναγνώρισης μειώθηκαν ελάχιστα (< 1%), παρά τη συμπίεση και την απώλεια πληροφορίας
Συμπέρασμα Λιγότερος χρόνος περισσότερα πειράματα και με μικρότερη πιθανότητα κάτι να πάει στραβά Άρα καλύτερη έρευνα και με λιγότερους πόρους
Ευχαριστώ