I. Τα είδη της μηχανικής μάθησης

Οι χειρόγραφοι αριθμοί αποτελούν κλασική περίπτωση που χρησιμοποιείται συχνά όταν εξετάζουμε γιατί χρησιμοποιούμε τη μηχανική μάθηση, και ούτε εμείς θα ξεφύγουμε από αυτή την πρακτική.

Μπορείτε να δείτε παρακάτω παραδείγματα χειρόγραφων εικόνων από το ευρέως χρησιμοποιούμενο σύνολο δεδομένων MNIST.

σύνολο δεδομένων MNIST

Η ορθή ετικέτα (ποιον αριθμό ήθελε να γράψει ο γράφων) φαίνεται πάνω από κάθε εικόνα. Επισημαίνεται ότι ορισμένες από τις «ορθές» ετικέτες κλάσεων είναι αμφισβητήσιμες: δείτε για παράδειγμα τη δεύτερη εικόνα από αριστερά: είναι πράγματι 7, ή μήπως είναι 4;

Σημείωση

MNIST – Τι είναι;

Κάθε σπουδαστής της μηχανικής μάθησης γνωρίζει το σύνολο δεδομένων MNIST. Λιγότεροι ωστόσο γνωρίζουν σε τι αντιστοιχεί το ακρωνύμιο. Κι εμείς χρειάστηκε να το κοιτάξουμε για να σας πούμε ότι το Μ σημαίνει «τροποποιημένος» (Modified) και ότι το NIST σημαίνει «Εθνικό Ινστιτούτο Προτύπων και Τεχνολογίας» (National Institute of Standards and Technology). Τώρα γνωρίζετε κάτι που ένας μέσος ειδικός στη μηχανική μάθηση πιθανότατα δεν γνωρίζει!

Στα συνηθέστερα προβλήματα μηχανικής μάθησης, ακριβώς μια ετικέτα κλάσης είναι ορθή σε μια δεδομένη στιγμή. Αυτό ισχύει επίσης στην περίπτωση του MNIST, αν και, όπως είπαμε, συχνά μπορεί να είναι δύσκολο να πει κανείς ποια είναι η ορθή απάντηση. Σε αυτό το είδος προβλήματος, δεν είναι δυνατό ένα στιγμιότυπο να ανήκει ταυτόχρονα σε πολλαπλές κλάσεις (ή σε καμία). Αυτό που θέλουμε να επιτύχουμε είναι μια μέθοδος ΤΝ στην οποία μπορεί να δίνεται μια εικόνα όπως οι παραπάνω και αυτή να δίνει αυτόματα την ορθή ετικέτα (έναν αριθμό μεταξύ 0 και 9).

Σημείωση

Πώς να μην λύσετε το πρόβλημα

Μια αυτόματη μηχανή αναγνώρισης αριθμών θα μπορούσε θεωρητικά να δημιουργηθεί χειρωνακτικά, γράφοντας κανόνες όπως οι εξής:

  • εάν τα μαύρα εικονοστοιχεία έχουν κυρίως τη μορφή ενός μόνο κύκλου, τότε η ετικέτα είναι 0
  • εάν τα μαύρα εικονοστοιχεία έχουν τη μορφή δύο τεμνόμενων κύκλων, τότε η ετικέτα είναι 8
  • εάν τα μαύρα εικονοστοιχεία έχουν κυρίως τη μορφή ευθείας κατακόρυφης γραμμής στη μέση του σχήματος, τότε η ετικέτα είναι 1
και ούτω καθεξής...

Με αυτό τον τρόπο αναπτύχθηκαν ως επί το πλείστον οι μέθοδοι ΤΝ τη δεκαετία του 1980 (τα λεγόμενα «έμπειρα συστήματα»). Ωστόσο, ακόμη και για μια τόσο απλή εργασία όπως η αναγνώριση αριθμών, η εργασία της γραφής τέτοιων κανόνων είναι πολύ κοπιαστική. Πράγματι, οι κανόνες του παραπάνω παραδείγματος δεν θα ήταν αρκετά συγκεκριμένοι ώστε να υλοποιηθούν μέσω προγραμματισμού – θα έπρεπε να καθορίσουμε με ακρίβεια τι εννοούμε με τις λέξεις «κυρίως», «κύκλος», «γραμμή», «μέση» κ.λπ.

Ακόμα και αν κάναμε όλη αυτή την εργασία, το αποτέλεσμα θα ήταν πιθανότατα μια κακή μέθοδος ΤΝ διότι, όπως μπορείτε να δείτε, οι χειρόγραφοι αριθμοί βρίσκονται συχνά κάπου ανάμεσα, οπότε για κάθε κανόνα θα απαιτούνταν δεκάδες εξαιρέσεις.

Τρία είδη μηχανικής μάθησης

Οι ρίζες της μηχανικής μάθησης βρίσκονται στη στατιστική, η οποία μπορεί επίσης να θεωρηθεί ως η τέχνη της εξαγωγής γνώσεων από δεδομένα. Ιδίως μέθοδοι όπως η γραμμική παλινδρόμηση και η στατιστική του Μπέυζ, οι οποίες έχουν αμφότερες ηλικία άνω των δύο αιώνων (!), βρίσκονται ακόμη και σήμερα στο επίκεντρο της μηχανικής μάθησης. Για περισσότερα παραδείγματα και μια σύντομη ιστορική αναδρομή, δείτε το ιστορικό της μηχανικής μάθησης (Wikipedia).

Ο τομέας της μηχανικής μάθησης συχνά υποδιαιρείται σε υποτομείς ανάλογα με τα είδη των προβλημάτων που αντιμετωπίζονται. Μια πρόχειρη κατηγοριοποίηση είναι η εξής:

Επιβλεπόμενη μάθηση: Μας δίνεται μια είσοδος, για παράδειγμα μια φωτογραφία με μια πινακίδα οδικής σήμανσης και η εργασία είναι να προβλέψουμε την ορθή έξοδο ή ετικέτα, για παράδειγμα ποια πινακίδα οδικής σήμανσης αναπαριστάται στην εικόνα (όριο ταχύτητας, σήμα στοπ κ.λπ.). Στις απλούστερες περιπτώσεις, οι απαντήσεις έχουν τη μορφή ναι/όχι (οι περιπτώσεις αυτές ονομάζονται δυαδικά προβλήματα ταξινόμησης).

Μη επιβλεπόμενη μάθηση: Δεν υπάρχουν ετικέτες ούτε ορθές έξοδοι. Η εργασία συνίσταται στην ανακάλυψη της δομής των δεδομένων: για παράδειγμα, με την ομαδοποίηση παρόμοιων στοιχείων για τον σχηματισμό «συστάδων» ή τη μείωση των δεδομένων σε έναν μικρό αριθμό σημαντικών «διαστάσεων». Η οπτικοποίηση δεδομένων μπορεί επίσης να θεωρηθεί μη επιβλεπόμενη μάθηση.

Ενισχυτική μάθηση: Χρησιμοποιείται συνήθως σε καταστάσεις όπου ένα σύστημα ΤΝ, όπως ένα αυτοοδηγούμενο αυτοκίνητο, πρέπει να λειτουργήσει σε ένα περιβάλλον και όπου η ανατροφοδότηση σχετικά με καλές ή κακές επιλογές είναι διαθέσιμη με κάποια καθυστέρηση. Χρησιμοποιείται επίσης σε παιχνίδια στα οποία το αποτέλεσμα μπορεί να αποφασιστεί μόνο στο τέλος του παιχνιδιού.

Οι κατηγορίες επικαλύπτονται και είναι σχετικά ασαφείς, οπότε ενίοτε είναι δύσκολο μια συγκεκριμένη μέθοδος να ενταχθεί σε μία κατηγορία. Για παράδειγμα, όπως υποδηλώνει η ονομασία της, η λεγόμενη ημιεπιβλεπόμενη μάθηση είναι εν μέρει επιβλεπόμενη και εν μέρει μη επιβλεπόμενη.

Σημείωση

Ταξινόμηση

Όσον αφορά τη μηχανική μάθηση, θα εστιάσουμε κυρίως στην επιβλεπόμενη μάθηση και, ειδικότερα, στις εργασίες ταξινόμησης. Στην ταξινόμηση, παρατηρούμε μια είσοδο, όπως τη φωτογραφία μιας πινακίδας οδικής σήμανσης, και προσπαθούμε να βρούμε την «κλάση» της, όπως το είδος της πινακίδας (όριο ταχύτητας 80 χλμ/ώρα, διάβαση πεζών, σήμα στοπ κ.λπ.). Άλλα παραδείγματα εργασιών ταξινόμησης είναι τα εξής: εντοπισμός ψεύτικων λογαριασμών στο Twitter (στις εισόδους περιλαμβάνονται ο κατάλογος των ακολουθούντων και ο ρυθμός με τον οποίο άρχισαν να ακολουθούν τον λογαριασμό, και η κλάση είναι 'πραγματικός' ή 'ψεύτικος' λογαριασμός) και αναγνώριση χειρόγραφων αριθμών (η είσοδος είναι μια εικόνα, η κλάση είναι 0,.....,9).

ένας άνθρωπος που διδάσκει ένα ρομπότ

Άνθρωποι διδάσκουν μηχανές: επιβλεπόμενη μάθηση

Αντί να γράφουμε με το χέρι ακριβείς κανόνες για την εκτέλεση της ταξινόμησης, το νόημα της επιβλεπόμενης μάθησης είναι ότι παίρνουμε διάφορα παραδείγματα, δίνουμε στο καθένα την ορθή ετικέτα και τα χρησιμοποιούμε για να «εκπαιδεύσουμε» μια μέθοδο ΤΝ να αναγνωρίζει αυτομάτως την ορθή ετικέτα για τα παραδείγματα εκπαίδευσης καθώς και (ευελπιστούμε) οποιεσδήποτε άλλες εικόνες. Αυτό προϋποθέτει ασφαλώς την παροχή των ορθών ετικετών, γι’ αυτό μιλάμε για επιβλεπόμενη μάθηση. Ο χρήστης που παρέχει τις ορθές ετικέτες είναι ο επιβλέπων ο οποίος καθοδηγεί τον αλγόριθμο μάθησης προς ορθές απαντήσεις ώστε, τελικά, ο αλγόριθμος να μπορεί να τις παράγει ανεξάρτητα.

Πέραν της εκμάθησης τρόπων πρόβλεψης της ορθής ετικέτας σε ένα πρόβλημα ταξινόμησης, η επιβλεπόμενη μάθηση μπορεί επίσης να χρησιμοποιείται σε καταστάσεις στις οποίες το προβλεπόμενο αποτέλεσμα είναι ένας αριθμός. Παραδείγματα αποτελούν η πρόβλεψη του αριθμού των ατόμων που θα κάνουν κλικ σε μια διαφήμιση της Google βάσει του περιεχομένου της διαφήμισης και δεδομένων σχετικά με την προηγούμενη διαδικτυακή συμπεριφορά του χρήστη, η πρόβλεψη του αριθμού των τροχαίων ατυχημάτων βάσει των οδικών συνθηκών και του ορίου ταχύτητας, ή η πρόβλεψη της τιμής πώλησης ακινήτων βάσει της τοποθεσίας, του μεγέθους και της κατάστασής τους. Τα προβλήματα αυτά ονομάζονται παλινδρόμηση. Θα αναγνωρίζετε ίσως τον όρο γραμμική παλινδρόμηση, που είναι μια κλασική, δημοφιλής μέχρι σήμερα, τεχνική παλινδρόμησης.

Σημείωση

Παράδειγμα

Ας υποθέσουμε ότι έχουμε ένα σύνολο δεδομένων που αποτελείται από δεδομένα πωλήσεων διαμερισμάτων. Για κάθε αγορά έχουμε προφανώς την τιμή που καταβλήθηκε, μαζί με το μέγεθος του διαμερίσματος σε τετραγωνικά μέτρα (ή τετραγωνικά πόδια, αν προτιμάτε), και τον αριθμό των υπνοδωματίων, το έτος κατασκευής, την κατάσταση (σε κλίμακα από «ερείπιο» έως «νεόδμητο»). Θα μπορούσαμε στη συνέχεια να χρησιμοποιήσουμε τη μηχανική μάθηση για να εκπαιδεύσουμε ένα μοντέλο παλινδρόμησης το οποίο προβλέπει την τιμή πώλησης βάσει αυτών των χαρακτηριστικών. Δείτε ένα πραγματικό παράδειγμα εδώ.

τρία διαφορετικά σπίτια

Προειδοποίηση: προσοχή με τον συγκεκριμένο αλγόριθμο μηχανικής μάθησης

Υπάρχουν ορισμένα πιθανά σφάλματα για τα οποία θέλουμε να σας ενημερώσουμε. Συνδέονται με το γεγονός ότι αν δεν είστε προσεκτικοί όσον αφορά τον τρόπο με τον οποίο εφαρμόζετε τις μεθόδους μηχανικής μάθησης, μπορεί να αποκτήσετε υπέρμετρη σιγουριά σχετικά με την ακρίβεια των προβλέψεών σας και να νιώθετε μεγάλη απογοήτευση όταν η ακρίβεια αποδεικνύεται χειρότερη από το αναμενόμενο.

Το πρώτο που πρέπει να έχετε υπόψη ώστε να αποφεύγετε σοβαρά σφάλματα είναι να χωρίζετε το σύνολο δεδομένων σας σε δύο μέρη: τα δεδομένα εκπαίδευσης και τα δεδομένα ελέγχου. Πρώτα εκπαιδεύουμε τον αλγόριθμο χρησιμοποιώντας μόνο τα δεδομένα εκπαίδευσης. Με τον τρόπο αυτό δημιουργούμε ένα μοντέλο ή έναν κανόνα που προβλέπει την έξοδο βάσει των μεταβλητών εισόδου.

Για να αξιολογήσουμε πόσο καλά μπορούμε στην πραγματικότητα να προβλέψουμε τις εξόδους, δεν μπορούμε να βασιζόμαστε στα δεδομένα εκπαίδευσης. Παρότι ένα μοντέλο μπορεί να αποτελεί πολύ καλό προβλέπτη για τα δεδομένα εκπαίδευσης, δεν αποδεικνύεται ότι μπορεί να γενικευθεί σε οποιαδήποτε άλλα δεδομένα. Σε αυτό χρησιμεύουν τα δεδομένα ελέγχου: μπορούμε να εφαρμόσουμε το εκπαιδευμένο μοντέλο για την πρόβλεψη των εξόδων για τα δεδομένα ελέγχου και να συγκρίνουμε τις προβλέψεις με τις πραγματικές εξόδους (για παράδειγμα, μελλοντικές τιμές πώλησης διαμερισμάτων).

Σημείωση

Πολύ προσαρμοσμένο για να είναι αληθινό! Προειδοποίηση υπερπροσαρμογής

Είναι πολύ σημαντικό να έχετε υπόψη ότι η ακρίβεια ενός προβλέπτη που αποκτάται μέσω μηχανικής μάθησης μπορεί να διαφέρει αρκετά στα δεδομένα εκπαίδευσης και στα διαφορετικά δεδομένα ελέγχου. Αυτό είναι το λεγόμενο φαινόμενο της υπερπροσαρμογής και η έρευνα σχετικά με τη μηχανική μάθηση επικεντρώνεται σε μεγάλο βαθμό στην αποτροπή του φαινόμενου αυτού με τον έναν ή τον άλλον τρόπο. Διαισθητικά, υπερπροσαρμογή σημαίνει ότι προσπαθούμε να είμαστε πολύ έξυπνοι. Όταν προβλέπετε την επιτυχία ενός νέου τραγουδιού γνωστού καλλιτέχνη, μπορεί να εξετάσετε το ιστορικό προηγούμενων τραγουδιών του καλλιτέχνη και να διατυπώσετε έναν κανόνα του τύπου «εάν το τραγούδι είναι ερωτικό και περιλαμβάνει πιασάρικο ρεφρέν, θα βρεθεί στα 20 καλύτερα τραγούδια». Ωστόσο, μπορεί να υπάρχουν δύο ερωτικά τραγούδια με πιασάρικα ρεφρέν τα οποία δεν βρέθηκαν στα 20 καλύτερα τραγούδια, οπότε αποφασίζετε να συνεχίσετε τον κανόνα προσθέτοντας τη φράση «... εκτός εάν αναφέρονται η Σουηδία ή η γιόγκα», προκειμένου να τον βελτιώσετε. Με τον τρόπο αυτό ο κανόνας σας προσαρμόζεται τέλεια στα παρελθόντα δεδομένα, αλλά στην πραγματικότητα μπορεί να λειτουργεί χειρότερα σε μελλοντικά δεδομένα ελέγχου.

Οι μέθοδοι μηχανικής μάθησης είναι ιδιαίτερα επιρρεπείς στην υπερπροσαρμογή, διότι μπορεί να δοκιμάζουν έναν τεράστιο αριθμό διαφορετικών «κανόνων» έως ότου βρεθεί αυτός που προσαρμόζεται τέλεια στα δεδομένα εκπαίδευσης. Ιδιαίτερα μέθοδοι οι οποίες είναι πολύ ευέλικτες και μπορούν να προσαρμόζονται σε σχεδόν κάθε πρότυπο στα δεδομένα μπορεί να εμφανίσουν υπερπροσαρμογή εκτός εάν ο όγκος των δεδομένων είναι τεράστιος. Για παράδειγμα, σε σύγκριση με τα αρκετά περιορισμένα γραμμικά μοντέλα που προκύπτουν από τη γραμμική παλινδρόμηση, τα νευρωνικά δίκτυα μπορεί να απαιτήσουν τεράστιους όγκους δεδομένων προτού παραγάγουν αξιόπιστες προβλέψεις.

Μία από τις βασικότερες δεξιότητες ενός επιστήμονα δεδομένων είναι η αποφυγή της υπερπροσαρμογής και η επιλογή μοντέλων που δεν είναι ούτε υπερβολικά περιορισμένα ούτε υπερβολικά ευέλικτα.

Μάθηση χωρίς δάσκαλο: μη επιβλεπόμενη μάθηση

Εξετάσαμε ανωτέρω την επιβλεπόμενη μάθηση στο πλαίσιο της οποίας οι ορθές απαντήσεις είναι διαθέσιμες και η εργασία του αλγορίθμου μηχανικής μάθησης συνίσταται στην εξεύρεση ενός μοντέλου που προβλέπει τις απαντήσεις βάσει των δεδομένων εισόδου.

Στη μη επιβλεπόμενη μάθηση, οι ορθές απαντήσεις δεν παρέχονται. Αυτό καθιστά την κατάσταση αρκετά διαφορετική καθώς δεν μπορούμε να δημιουργήσουμε ένα μοντέλο βάζοντάς το να προσαρμόσει τις ορθές απαντήσεις στα δεδομένα εκπαίδευσης. Καθιστά επίσης περιπλοκότερη την αξιολόγηση των επιδόσεων, δεδομένου ότι δεν μπορούμε να ελέγξουμε αν το μοντέλο βάσει μάθησης λειτουργεί καλά ή όχι.

Οι συνήθεις μέθοδοι μη επιβλεπόμενης μάθησης προσπαθούν να μάθουν ένα είδος «δομής» που διέπει τα δεδομένα. Αυτό μπορεί να σημαίνει, για παράδειγμα, οπτικοποίηση στο πλαίσιο της οποίας παρόμοια αντικείμενα τοποθετούνται κοντά το ένα στο άλλο, ενώ ανόμοια αντικείμενα τοποθετούνται μακριά το ένα από το άλλο. Μπορεί να σημαίνει επίσης συσταδοποίηση, στο πλαίσιο της οποίας χρησιμοποιούμε τα δεδομένα για τον προσδιορισμό ομάδων ή «συστάδων» στοιχείων που είναι παρόμοια μεταξύ τους αλλά ανόμοια από δεδομένα σε άλλες συστάδες.

Σημείωση

Παράδειγμα

Απτό παράδειγμα αποτελούν οι αλυσίδες καταστημάτων τροφίμων που συλλέγουν δεδομένα σχετικά με την αγοραστική συμπεριφορά των πελατών τους (σε αυτό χρησιμεύουν όλες αυτές οι κάρτες για πιστούς πελάτες). Για να κατανοήσει καλύτερα τους πελάτες του, το κατάστημα μπορεί είτε να οπτικοποιήσει τα δεδομένα με χρήση γράφου στον οποίο κάθε πελάτης αναπαριστάται με μια κουκκίδα και οι πελάτες που τείνουν να αγοράζουν τα ίδια προϊόντα τοποθετούνται πιο κοντά μεταξύ τους σε σχέση με πελάτες που αγοράζουν διαφορετικά προϊόντα. Ή το κατάστημα θα μπορούσε να εφαρμόσει συσταδοποίηση ώστε να λάβει ένα σύνολο ομάδων πελατών όπως «λάτρεις της υγιεινής διατροφής χαμηλού προϋπολογισμού», «λάτρεις των ακριβών ψαριών», «αναψυκτικά και πίτσα 6 ημέρες την εβδομάδα» και ούτω καθεξής. Επισημαίνεται ότι η μέθοδος μηχανικής μάθησης θα ομαδοποιούσε απλώς τους πελάτες σε συστάδες, αλλά δεν θα παρήγαγε αυτομάτως τις ετικέτες των συστάδων («λάτρεις των ψαριών» και ούτω καθεξής). Την εργασία αυτή θα την εκτελούσε ο χρήστης.

Άλλο ένα παράδειγμα μη επιβλεπόμενης μάθησης μπορεί να ονομαστεί γενετική μοντελοποίηση. Τα τελευταία χρόνια η προσέγγιση αυτή κατέχει εξέχουσα θέση, καθώς μια τεχνική βαθιάς μάθησης που ονομάζεται «παραγωγικά αντιπαραθετικά δίκτυα» (ΠΑΔ) έχει οδηγήσει σε σημαντικά επιτεύγματα. Με τη λήψη ορισμένων δεδομένων, για παράδειγμα, φωτογραφιών προσώπων, ένα παραγωγικό μοντέλο μπορεί να παραγάγει περισσότερα από τα ίδια: περισσότερο αληθοφανείς εικόνες τεχνητών προσώπων.

Θα επανέλθουμε στα ΠΑΔ και στις συνέπειες της δυνατότητας παραγωγής συνθετικών εικόνων υψηλής ποιότητας λίγο αργότερα στο μάθημα. Πρώτα όμως θα εξετάσουμε προσεκτικότερα την επιβλεπόμενη μάθηση, ενώ παράλληλα θα εξετάσουμε αναλυτικότερα ορισμένες ειδικές μεθόδους.