Βασικές αρχές της AI

Τι είναι η Μηχανική Μάθηση;

mm

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

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

Τι είναι η Μηχανική Μάθηση;

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

Τα συστήματα μηχανικής μάθησης έχουν τρία βασικά μέρη:

  • Εισόδους
  • Αλγόριθμους
  • Εξόδους

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

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

Ανεποπτευόμενη vs. Εποπτευόμενη Μάθηση

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

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

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

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

Ας δούμε μια σύντομη ματιά σε μερικούς από τους πιο κοινούς αλγορίθμους που χρησιμοποιούνται και στην ανεποπτευόμενη και στην εποπτευόμενη μάθηση.

Τύποι Εποπτευόμενης Μάθησης

Κοινοί αλγόριθμοι εποπτευόμενης μάθησης περιλαμβάνουν:

  • Αφελής Μπέιζ
  • Υποστηρικτικοί Διανυσματικοί Μηχανισμοί
  • Λογιστική Παλινδρόμηση
  • Τυχαία Δάση
  • Τεχνητά Νευρωνικά Δίκτυα

Υποστηρικτικοί Διανυσματικοί Μηχανισμοί είναι αλγόριθμοι που χωρίζουν το συνόλο δεδομένων σε διαφορετικές κατηγορίες. Τα σημεία δεδομένων ομαδοποιούνται σε клаστέρ με τη διαγραφή γραμμών που χωρίζουν τις κατηγορίες. Τα σημεία που βρίσκονται σε μια πλευρά της γραμμής ανήκουν σε μια κατηγορία, ενώ τα σημεία στην άλλη πλευρά της γραμμής ανήκουν σε μια άλλη κατηγορία. Οι Υποστηρικτικοί Διανυσματικοί Μηχανισμοί στοχεύουν να μεγιστοποιήσουν την απόσταση μεταξύ της γραμμής και των σημείων που βρίσκονται σε κάθε πλευρά της γραμμής, και όσο μεγαλύτερη η απόσταση, τόσο πιο βέβαιος είναι ο ταξινομητής ότι το σημείο ανήκει σε μια κατηγορία και όχι σε μια άλλη κατηγορία.

Λογιστική Παλινδρόμηση είναι ένας αλγόριθμος που χρησιμοποιείται σε εργασίες δυαδικής ταξινόμησης όταν τα σημεία δεδομένων πρέπει να ταξινομηθούν ως ανήκοντα σε μια από δύο κατηγορίες. Η Λογιστική Παλινδρόμηση λειτουργεί με την επισήμανση του σημείου δεδομένων ως 1 ή 0. Αν η ανιχνευθείσα τιμή του σημείου δεδομένων είναι 0,49 ή κάτω από αυτό, ταξινομείται ως 0, ενώ αν είναι 0,5 ή πάνω από αυτό, ταξινομείται ως 1.

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

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

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

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

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

Τύποι Ανεποπτευόμενης Μάθησης

Αλγόριθμοι Ανεποπτευόμενης Μάθησης περιλαμβάνουν:

  • Ομαδοποίηση K-μέσων
  • Αυτοκωδικοποιητές
  • Κύρια Ανάλυση Συστατικών

Η ομαδοποίηση K-μέσων είναι μια τεχνική ανεποπτευόμενης ταξινόμησης, και λειτουργεί με τη διαίρεση των σημείων δεδομένων σε ομάδες ή клаστέρ με βάση τα χαρακτηριστικά τους. Η ομαδοποίηση K-μέσων αναλύει τα χαρακτηριστικά που βρίσκονται στα σημεία δεδομένων και διακρίνει μοτίβα σε αυτά που κάνουν τα σημεία δεδομένων που βρίσκονται σε μια δεδομένη κατηγορία να ομαδοποιούνται περισσότερο από ότι σε άλλες κατηγορίες. Αυτό επιτυγχάνεται με τη τοποθέτηση πιθανών κέντρων για το клаστέρ, ή κεντρώων, σε ένα γράφημα των δεδομένων και επανατοποθετώντας τη θέση του κεντρώου μέχρι να βρεθεί μια θέση που ελαχιστοποιεί την απόσταση μεταξύ του κεντρώου και των σημείων που ανήκουν στην κατηγορία του κεντρώου. Ο ερευνητής μπορεί να καθορίσει τον επιθυμητό αριθμό клаστέρ.

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

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

Blogger και προγραμματιστής με ειδικότητες στα Machine Learning και Deep Learning θέματα. Ο Daniel ελπίζει να βοηθήσει τους άλλους να χρησιμοποιήσουν τη δύναμη του AI για κοινωνικό καλό.