Γράφει ο Νίκος Γιάνναρος*
Η ιστορία της τεχνητής νοημοσύνης σαν κάτι επιτεύξιμο, ταυτίζεται με την ιστορία της ανάπτυξης των υπολογιστών. Ήδη από το 1950 εμφανίστηκαν οι πρώτες θεωρίες οι οποίες υπαγόρευαν την ανάπτυξη συστημάτων με ικανότητες τεχνητής νοημοσύνης. Ικανότητες τις οποίες κατέχει μόνο ο άνθρωπος, ο οποίος θα μπορούσε να εκπαιδεύσει ένα υπολογιστικό σύστημα ώστε να λαμβάνει αυτόνομες αποφάσεις και να δρα ως ένα ον με νοημοσύνη.
Η αρχικώς θεωρητική προσέγγιση της τεχνητής νοημοσύνης, έστρεψε τις προσπάθειές της στην δημιουργία των κατάλληλων εργαλείων με τα οποία ένας υπολογιστής θα μπορούσε να δρα όπως ο ανθρώπινος νους.
Τα εργαλεία αυτά βασίστηκαν στην λογική και την σημασιολογία, τα οποία αποτελούν τα κυρίαρχα εργαλεία με τα οποία ο άνθρωπος σκέφτεται και δρα ανάλογα με τα ερεθίσματα που δέχεται. Στο πλαίσιο αυτό, έγιναν προσπάθειες τυποποίησης λογικών κανόνων και σχέσεων, οι οποίες οδήγησαν στην δημιουργία εργαλείων όπως ο Λογικός Προγραμματισμός.
Η βάση του λογικού προγραμματισμού αποτελεί την τροφοδότηση ενός υπολογιστικού συστήματος με βασικές οντότητες και τις μεταξύ τους σχέσεις, ώστε με την εφαρμογή μιας διαδικασίας παραγωγής λογικών συμπερασμάτων το σύστημα να μπορεί να λαμβάνει αποφάσεις μιμούμενος την αντίστοιχη διαδικασία που ακολουθεί και ο ανθρώπινος νους.
Η προσέγγιση αυτή ακολουθεί την λογική «από πάνω προς τα κάτω». Το σύστημα εφοδιάζεται με το σύνολο της απαιτούμενης γνώσης και η προσπάθεια εστιάζεται στον τρόπο με τον οποίο θα διαχειριστεί και θα συνδυάσει κατάλληλα τη γνώση αυτή.
Σύντομα έγινε φανερό ότι τέτοιου τύπου προσεγγίσεις μπορούν να προσφέρουν περιορισμένες πρακτικές λύσεις και εφαρμογές διότι δεν εναρμονίζονται με τις βασικές αρχές λειτουργίας ενός υπολογιστή. Ο υπολογιστής στον πυρήνα του αποτελεί μια μηχανή η οποία μπορεί να εκτελεί με μεγάλη ταχύτητα μαθηματικές πράξεις και συγκρίσεις. Έπρεπε να βρεθεί μια προσέγγιση η οποία λειτουργεί με τον ακριβώς αντίθετο τρόπο λοιπόν. Η προσέγγιση «από κάτω προς τα πάνω».
Η προσέγγιση αυτή εστιάζεται στην προσπάθεια μοντελοποίησης ενός προβλήματος – φαινομενικά – λογικής σε καθαρά μαθηματικό πρόβλημα. Ένα μαθηματικό πρόβλημα μπορεί να επιλυθεί χρησιμοποιώντας συγκεκριμένες διαδικασίες με σαφώς καθορισμένα βήματα, κάτι στο οποίο ο υπολογιστής είναι ιδιαίτερα αποδοτικός. Το παραγόμενο αποτέλεσμα επίσης είναι εύκολο να ταξινομηθεί, να κατηγοριοποιηθεί και να ερμηνευθεί από τον υπολογιστή.
Αυτή η διαπίστωση οδήγησε από την δεκαετία του 1980 και έπειτα στην ανάπτυξη της Υπολογιστικής Νοημοσύνης ή όπως έχει πλέον καθιερωθεί, της Μηχανικής Μάθησης (Machine Learning). Η συγκεκριμένη προσέγγιση έχει ως στόχο την μαθηματική μοντελοποίηση διαφόρων εργασιών που εκτελεί ο άνθρωπος ώστε να μπορεί ένας υπολογιστής να οδηγηθεί στο ίδιο αποτέλεσμα.
Αυτά τα προβλήματα τυπικά είναι η αναγνώριση φωνής και εικόνας, η επεξεργασία φυσικής γλώσσας σε γραπτή μορφή, η ρομποτική, οι προβλέψεις σε διάφορα φαινόμενα κ.λπ. Η Μηχανική Μάθηση χρησιμοποιεί την μεγάλη δύναμη των υπολογιστών, την απαράμιλλη υπολογιστική τους δυνατότητα, ώστε να μπορούν να αξιοποιούν μεγάλους όγκους πληροφορίας για την επιτυχή τους εκπαίδευση, ώστε να μαθαίνουν να παίρνουν αποφάσεις ανάλογες με αυτές ενός ανθρώπου.
Τα μαθηματικά μοντέλα που χρησιμοποιούνται βασίζονται στον τρόπο λειτουργίας τόσο του ανθρώπινου οργανισμού (νευρωνικά δίκτυα, γενετικοί αλγόριθμοι) όσο και άλλων έμβιων οργανισμών (particle swarm optimisation, ant colony optimisation, bees algorithm), από εφαρμογές της θεωρίας πιθανοτήτων και από πολλούς ακόμα κλάδους των μαθηματικών.
Ο πλούτος των προσεγγίσεων οι οποίες καταλήγουν σε απτούς αλγορίθμους οι οποίοι μπορούν να εκτελεστούν από έναν υπολογιστή ο οποίος δεν απαιτείται να έχει κάποια ιδιαίτερη δομή ή σχεδιασμό έφερε και την επανάσταση στον τομέα της Μηχανικής Μάθησης.
Η μηχανική μάθηση χωρίζεται σε 3 βασικούς κλάδους. Την επιβλεπόμενη μάθηση (Supervised Learning), τη μη-επιβλεπόμενη μάθηση (Unsupervised Learning) και την ενισχυτική μάθηση (Reinforcement Learning) η οποία αποτελεί κατά βάση συνδυασμό των άλλων δυο.
Η έννοια της επιβλεπόμενης μάθησης είναι η απλούστερη από τις τρεις για να μπορέσει κάποιος να κατανοήσει. Ο υπολογιστής εφοδιάζεται με ένα κατάλληλο σετ δεδομένων εκπαίδευσης (training set) ώστε να εκπαιδευτεί στην εργασία που θέλουμε να του αναθέσουμε.
Το πιο απλό παράδειγμα, αποτελεί η τροφοδοσία του υπολογιστή με φωτογραφίες αντρών και γυναικών, στις οποίες υπάρχει επισήμανση αν η φωτογραφία ανήκει σε άντρα η γυναίκα (tags). Μετά την επιτυχή εκπαίδευση, ο υπολογιστής μπορεί να αναγνωρίσει το φύλο του εικονιζόμενου ατόμου σε οποιαδήποτε φωτογραφία ανθρώπου επειδή έχει εκπαιδευτεί στην ικανότητα κατηγοριοποίησης της πληροφορίας που λαμβάνει.
Για να το επιτύχει αυτό ο υπολογιστής, τροφοδοτείται με ένα πλήθος χαρακτηριστικών για κάθε φύλο (features) οπότε ανάλογα με τις τιμές που λαμβάνουν τα χαρακτηριστικά σε κάθε φωτογραφία, μπορεί με αξιοθαύμαστη ακρίβεια να αποφανθεί για το φύλο του εικονιζόμενου ατόμου. Η διαδικασία αυτή προϋποθέτει ότι ο καθορισμός και η τυποποίηση των συγκεκριμένων χαρακτηριστικών έχει γίνει από έναν ειδικευμένο άνθρωπο, πριν ξεκινήσει η διαδικασία εκπαίδευσης.
Η διαδικασία εξαγωγής και επιλογής χαρακτηριστικών (feature extraction and selection) αποτελεί θεμέλιο λίθο της αποτελεσματικής εφαρμογής της επιβλεπόμενης μάθησης και έχει φτάσει να αποτελεί ουσιαστικά έναν ολόκληρο αυτόνομο κλάδο.
Η επιβλεπόμενη μάθηση έχει ξεφύγει εδώ και πολλά χρόνια από το πειραματικό και θεωρητικό στάδιο και αξιοποιείται κατά κόρον σε εμπορικές εφαρμογές αναγνώρισης φωνής, προσώπου και γραφής καθώς και σε πιο ειδικευμένες εφαρμογές αναλόγως τομέα, όπως κατηγοριοποίηση και κατάτμηση πελατειακής βάσης (customer segmentation), συστήματα προτάσεων πωλήσεων (recommender systems/collaborative filtering), πρόβλεψη τιμών μετοχών (stock market prediction), προληπτική συντήρηση (preventive maintenance) κ.λπ.
Επίσης, με την εμφάνιση της βαθιάς μάθησης, η οποία αποτελεί πεδίο της επιβλεπόμενης μάθησης, η διαδικασία εξαγωγής και επιλογής χαρακτηριστικών μπορεί να γίνει πλέον από τον ίδιο τον υπολογιστή, μειώνοντας ακόμα περισσότερο την ανθρώπινη παρέμβαση στη διαδικασία. Στο παράδειγμα κατηγοριοποίησης των φωτογραφιών, ο υπολογιστής θα μπορούσε έπειτα από επεξεργασία των φωτογραφιών που χρησιμοποιεί ως σετ εκπαίδευσης, να αποφανθεί ότι το σχήμα στα χείλη είναι πιο ζωτικό χαρακτηριστικό για τον διαχωρισμό από το σχήμα των ματιών και συνεπώς να δίνει μεγαλύτερη βαρύτητα σε αυτό το χαρακτηριστικό.
Η μη επιβλεπόμενη μάθηση αποτελεί την εφαρμογή μεθόδων κατά την οποία ο υπολογιστής δεν περνά πρώτα από το στάδιο εκπαίδευσης με χρήση δεδομένων με καθορισμένα χαρακτηριστικά στα οποία το επιδιωκόμενο αποτέλεσμα είναι γνωστό, αλλά εκπαιδεύεται μόνος του με βάση άγνωστα δεδομένα τα οποία μπορεί να επεξεργαστει.
Όπως είναι φανερό, η δυνατότητα του υπολογιστή να εργαστεί χωρίς προηγουμένως να έχει τροφοδοτηθεί με έτοιμη γνώση κάνει την μη επιβλεπόμενη μάθηση να φαντάζει ιδιαίτερα εξωτική και βγαλμένη από το μακρινό μέλλον.
Η αλήθεια είναι ότι και σε αυτή την περίπτωση, τα εφαρμοζόμενα μαθηματικά μοντέλα αξιοποιούν την βασική ικανότητα του υπολογιστή να συγκρίνει πράγματα και να αποφαίνεται το μέτρο της ομοιότητας που υπάρχει ανάμεσά τους, αξιοποιώντας πλήθος μαθηματικές μεθόδους εύρεσης του μέτρου της συνάφειας ανάμεσα σε διαφορετικές οντότητες.
Η ουσιαστική ειδοποιός διαφορά με την επιβλεπόμενη μάθηση είναι ότι ο υπολογιστής δεν «γνωρίζει» την ποιοτική μετάφραση του αποτελέσματος που παράγει. Σε αντιπαραβολή με το παράδειγμα της επιβλεπόμενης μάθησης, ένας αλγόριθμος μη επιβλεπόμενης μάθησης ο οποίος μπορεί να κατηγοριοποιεί φωτογραφίες ανθρώπων με βάση το φύλο τους, μπορεί να το κάνει εξίσου επιτυχώς αλλά δεν γνωρίζει ποια κατηγορία ανήκει στην οντότητα άντρας και ποια στην οντότητα γυναίκα.
Η μη επιβλεπόμενη μάθηση έχει επίσης πολλές εμπορικές εφαρμογές, συχνά σε τομείς αντίστοιχους με την επιβλεπόμενη μάθηση αλλά με την ραγδαία ανάπτυξη της ισχύος των υπολογιστικών συστημάτων, η δυνατότητα ενός συστήματος να εκπαιδεύεται μόνο του θα αντικαταστήσει την κοπιώδη ανθρώπινη προεργασία με μια ακόμα αυτόματη διαδικασία. Ένα χαρακτηριστικό παράδειγμα μη επιβλεπόμενης μάθησης είναι η δυνατότητα του υπολογιστή να διαχωρίζει λαχανικά και φρούτα σε διαφορετικές ομάδες ανάλογα με το σχήμα, το μέγεθος και το χρώμα τους, χωρίς προηγουμένως να έχει εκπαιδευτεί να τα διαχωρίζει.
Τέλος, η ενισχυτική μάθηση, ή μάθηση με επιβράβευση, αποτελεί συνδυασμό των άλλων δύο μεθόδων και αξιοποιείται κυρίως σε εφαρμογές ρομποτικής. Το ρομπότ προσπαθεί να εκτελέσει με βέλτιστο τρόπο τις οδηγίες με τις οποίες έχει εκπαιδευτεί αλλά παράλληλα του δίνεται και μια σχετική ελευθερία να αποφασίσει να παρεκκλίνει από τις οδηγίες αυτές με σκοπό την παραγωγή ενός ακόμα καλύτερου αποτελέσματος από αυτό που έχει ήδη επιτύχει.
Εφαρμογές της ενισχυμένης μάθησης, όπως η αυτόνομη οδήγηση βρίσκονται στον προθάλαμο της εμπορικής εφαρμογής, ενώ τα διάφορα ρομπότ τα οποία χρησιμοποιούνται ως ανθρώπινοι βοηθοί, εφαρμόζουν με επιτυχία το μοντέλο της ενισχυτικής μάθησης καθώς η συμπεριφορά τους εξελίσσεται με βάση τα διαφορετικά ερεθίσματα που λαμβάνουν από διαφορετικούς ανθρώπους με τους οποίους συνδιαλέγονται.
Όπως είναι φανερό, η Μηχανική Μάθηση είναι εδώ. Αποτελεί μια πραγματικότητα και μέρος της καθημερινότητάς μας και όχι σενάριο επιστημονικής φαντασίας. Διάφορες εργασίες οι οποίες μας φαίνονται προφανείς πλέον, όπως η αναγνώριση της πινακίδας του αυτοκινήτου μας στο Parking του Αεροδρομίου, οι ψηφιακοί βοηθοί εξυπηρέτησης στην τηλεφωνική εξυπηρέτηση των τραπεζών οι οποίοι αναγνωρίζουν τις φωνητικές μας εντολές, οι εφαρμογές αναγνώρισης του μουσικού κομματιού που ακούμε (όπως το Shazam), οι διαφημίσεις καθώς και οι προτεινόμενες δημοσιεύσεις σε εφαρμογές κοινωνικής δικτύωσης (όπως για παράδειγμα το Facebook το οποίο συνδυάζει τις δημοσιεύσεις τις οποίες ανοίγουμε με το ιστορικό της μηχανής αναζήτησης που χρησιμοποιούμε για να εμφανίσει συναφείς διαφημίσεις), οι εφαρμογές ασφαλείας οι οποίες ενεργοποιούν την καταγραφή βίντεο όταν πλησιάσει στην εξώπορτα ενός καταστήματος άνθρωπος εκτός ωραρίου λειτουργίας, αποτελούν πραγματικότητα χάρη στην μηχανική μάθηση.
Το γεγονός ότι ένας άνθρωπος είναι αδύνατον να εκτελέσει τις αντίστοιχες εργασίες σε αντίστοιχο χρονικό διάστημα, δικαιώνει απόλυτα τον τίτλο της τεχνητής νοημοσύνης που αποδίδονται σε τέτοιες εφαρμογές.
Από την άλλη, το γεγονός ότι οι υπολογιστές εκτελούν αυτές τις εργασίες μηχανικά, χωρίς το παραγόμενο αποτέλεσμα να έχει κάποιο σημασιολογικό αποτέλεσμα για τους ίδιους και χωρίς να παρεκκλίνουν από τον τρόπο με τον οποίο εκτελούν μια εργασία αν συνεχίσουν να δέχονται το ίδιο ερέθισμα, σημαίνει ότι η μηχανική μάθηση απέχει προς το παρόν πολλά και εν πολλοίς άγνωστα βήματα από την μετατροπή της σε πραγματική τεχνητή νοημοσύνη.
Οι υπολογιστές εκτελούν την εργασία που τους έχει ανατεθεί χωρίς κρίση και χωρίς συναίσθημα, χωρίς την παραμικρή πιθανότητα να παρεκκλίνουν από αυτό για το οποίο έχουν σχεδιαστεί να κάνουν. Μπορεί να εκτελούν ολοένα και καλύτερα τις ανατιθέμενες εργασίες, αλλά δεν έχουν την δυνατότητα να «επαναστατήσουν» και να αλλάξουν τον τρόπο λειτουργία τους. Ένα μέλλον όπου άνθρωποι και μηχανές θα είναι ισότιμοι, απέχει σίγουρα πολύ. Η πραγματικότητα της μηχανικής μάθησης όμως, είναι ήδη εδώ.
*Ο Νίκος Γιάνναρος είναι Ηλεκτρολόγος Μηχανικός και Μηχανικός Υπολογιστών. Εξειδικεύεται στην Τεχνητή Νοημοσύνη και το Machine Learning. Ενδιαφέρεται ιδιαίτερα για τις κοινωνικοπολιτικές επιδράσεις της τεχνολογίας.