Μάθημα : Τεχνητή Νοημοσύνη

Κωδικός : 0501506401

0501506401 - ΒΑΣΙΛΙΚΗ ΣΕΡΒΟΥ

Ενότητες μαθήματος

Μηχανική Μάθηση

Εισαγωγή στη Μηχανική Μάθηση


Μέχρι τώρα γνωρίζουμε πώς να χρησιμοποιήσουμε την υπολογιστική σκέψη για να σχεδιάσουμε και να δημιουργήσουμε αλγόριθμους που θα επέτρεπαν σε έναν υπολογιστή να ολοκληρώσει μια συγκεκριμένη εργασία. Για πολύ μεγάλο χρονικό διάστημα (μέχρι τις αρχές της δεκαετίας του 2010 περίπου) αυτός ήταν ο κύριος τρόπος με τον οποίο προσπαθούσαμε να προγραμματίσουμε τους υπολογιστές. Αλλά αρχίσαμε να αντιμετωπίζουμε ορισμένα δύσκολα προβλήματα - αυτοί οι αλγόριθμοι ήταν άκαμπτοι και καλοί μόνο για την επίλυση πολύ συγκεκριμένων προβλημάτων. Σίγουρα, μπορείτε να γράψετε 1000 δηλώσεις if->then και να λύσετε τα περισσότερα πράγματα, αλλά αυτό χρειάζεται πολύ χρόνο για να γίνει, και αν το πρόβλημα ή το περιβάλλον αλλάξει έστω και ελαφρώς, μπορεί να ρίξει ολόκληρο το θέμα. Επιπλέον, τι κάνετε όταν η εργασία είναι πολύ περίπλοκη για έναν άνθρωπο προγραμματιστή για να γράψει απλές οδηγίες;
Τότε οι άνθρωποι άρχισαν να πειραματίζονται με κάτι που ονομάζεται μηχανική μάθηση, όπου αντί να γράφουμε έναν αλγόριθμο που λέει στον υπολογιστή πώς ακριβώς να λύσει ένα πρόβλημα, αρχίσαμε να δημιουργούμε αλγόριθμους που έλεγαν στον υπολογιστή να δει παραδείγματα σωστών και λάθος απαντήσεων και μετά να μάθει. για τον εαυτό του πώς να το λύσει. Αυτό επιτρέπει στον υπολογιστή να προσαρμοστεί σε πολλά διαφορετικά προβλήματα. Είναι ενδιαφέρον ότι είχαμε εφεύρει τους αλγόριθμους για το πώς να το κάνουμε αυτό μέχρι τη δεκαετία του 1960/70, αλλά δεν είχαμε τα δεδομένα και την απαραίτητη υπολογιστική ισχύ για να τους εκτελέσουμε. Με την άνοδο του Διαδικτύου τη δεκαετία του 2000 αρχίσαμε να δημιουργούμε δεδομένα σε ποσότητες που δεν είχαμε δει ποτέ πριν, επιτρέποντάς μας τελικά να δημιουργήσουμε αρκετά δεδομένα για να εκπαιδεύσουμε τους αλγόριθμους. Όσον αφορά το πρόβλημα της υπολογιστικής ισχύος, μπορείτε να ευχαριστήσετε τη βιομηχανία βιντεοπαιχνιδιών για τη δημιουργία πιο ισχυρού υλικού για την εκτέλεση παιχνιδιών, και αργότερα συνειδητοποιήσαμε ότι αυτό το υλικό ταίριαζε εξαιρετικά με τις εργασίες μηχανικής εκμάθησης.

https://learning.edx.org/course/course-v1:UBCx+AI+1T2022a/block-v1:UBCx+AI+1T2022a+type@sequential+block@0717cd8603ae4d8982fc955fb95bea58/block-v1:UBCx+AI+1T2022a+type@vertical+block@82fc1a5892ed41b3a507ada41f77dd58

 

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

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

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

Εκπαίδευση έναντι χρήσης μοντέλου

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

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

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

Όταν χρησιμοποιούμε το μοντέλο μας, χρειαζόμαστε μόνο τις στήλες δεδομένων που δέχεται το μοντέλο ως είσοδο. Αυτές οι στήλες ονομάζονται χαρακτηριστικά.

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

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

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

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

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

https://learn.microsoft.com/el-gr/training/modules/introduction-to-machine-learning/1-introduction

Μπότες που ταιριάζουν

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

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

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

 

Στόχοι μάθησης

Σε αυτήν την ενότητα, θα:

Εξερευνήστε πώς διαφέρει η μηχανική εκμάθηση από το παραδοσιακό λογισμικό.
Δημιουργήστε και δοκιμάστε ένα μοντέλο μηχανικής μάθησης.
Φορτώστε ένα μοντέλο και χρησιμοποιήστε το με νέα δεδομένα.

Προαπαιτούμενα

Κανένα