|
|
4 months ago | |
|---|---|---|
| .. | ||
| README.md | 4 months ago | |
| assignment.md | 7 months ago | |
README.md
Τεχνικές της Μηχανικής Μάθησης
Η διαδικασία δημιουργίας, χρήσης και συντήρησης μοντέλων μηχανικής μάθησης και των δεδομένων που χρησιμοποιούν είναι μια διαδικασία πολύ διαφορετική από πολλές άλλες ροές εργασίας ανάπτυξης. Σε αυτό το μάθημα, θα απομυθοποιήσουμε τη διαδικασία και θα περιγράψουμε τις βασικές τεχνικές που πρέπει να γνωρίζετε. Εσείς θα:
- Κατανοήσετε τις διαδικασίες που στηρίζουν τη μηχανική μάθηση σε υψηλό επίπεδο.
- Εξερευνήσετε βασικές έννοιες όπως 'μοντέλα', 'προβλέψεις' και 'δεδομένα εκπαίδευσης'.
Προ-μάθημα κουίζ
🎥 Κάντε κλικ στην εικόνα παραπάνω για ένα σύντομο βίντεο που αναλύει αυτό το μάθημα.
Εισαγωγή
Σε υψηλό επίπεδο, η τέχνη της δημιουργίας διαδικασιών μηχανικής μάθησης (ML) αποτελείται από μια σειρά βημάτων:
- Αποφασίστε την ερώτηση. Οι περισσότερες διαδικασίες ML ξεκινούν θέτοντας μια ερώτηση που δεν μπορεί να απαντηθεί από ένα απλό προγραμματιστικό όρο ή ένα κανόνισμένο σύστημα βασισμένο σε κανόνες. Αυτές οι ερωτήσεις συχνά περιστρέφονται γύρω από προβλέψεις βάσει μιας συλλογής δεδομένων.
- Συλλογή και προετοιμασία δεδομένων. Για να μπορέσετε να απαντήσετε στην ερώτησή σας, χρειάζεστε δεδομένα. Η ποιότητα και, μερικές φορές, η ποσότητα των δεδομένων σας θα καθορίσει πόσο καλά μπορείτε να απαντήσετε την αρχική σας ερώτηση. Ο οπτικοποίηση των δεδομένων είναι μια σημαντική πτυχή αυτής της φάσης. Αυτή η φάση περιλαμβάνει επίσης το διαχωρισμό των δεδομένων σε ομάδα εκπαίδευσης και δοκιμής για τη δημιουργία ενός μοντέλου.
- Επιλέξτε μια μέθοδο εκπαίδευσης. Ανάλογα με την ερώτησή σας και τη φύση των δεδομένων σας, πρέπει να επιλέξετε πώς θέλετε να εκπαιδεύσετε ένα μοντέλο ώστε να αντανακλά καλύτερα τα δεδομένα σας και να κάνει ακριβείς προβλέψεις σε αυτά. Αυτό είναι το μέρος της διαδικασίας ML που απαιτεί εξειδίκευση και, συχνά, σημαντικό πείραμα.
- Εκπαιδεύστε το μοντέλο. Χρησιμοποιώντας τα δεδομένα εκπαίδευσής σας, θα χρησιμοποιήσετε διάφορους αλγορίθμους για να εκπαιδεύσετε ένα μοντέλο ώστε να αναγνωρίζει μοτίβα στα δεδομένα. Το μοντέλο μπορεί να χρησιμοποιεί εσωτερικά βάρη που μπορούν να προσαρμοστούν για να δώσουν προτεραιότητα σε συγκεκριμένα μέρη των δεδομένων για να δημιουργηθεί καλύτερο μοντέλο.
- Αξιολογήστε το μοντέλο. Χρησιμοποιείτε δεδομένα που δεν έχουν ξαναδει (τα δεδομένα δοκιμής) από το συλλεγμένο σύνολο για να δείτε πώς αποδίδει το μοντέλο.
- Ρύθμιση παραμέτρων. Βάσει της απόδοσης του μοντέλου σας, μπορείτε να επαναλάβετε τη διαδικασία χρησιμοποιώντας διαφορετικές παραμέτρους ή μεταβλητές που ελέγχουν τη συμπεριφορά των αλγορίθμων που χρησιμοποιούνται για την εκπαίδευση του μοντέλου.
- Προβλέψτε. Χρησιμοποιήστε νέα δεδομένα για να ελέγξετε την ακρίβεια του μοντέλου σας.
Ποια ερώτηση να θέσετε
Οι υπολογιστές είναι ιδιαίτερα ικανοί στο να ανακαλύπτουν κρυφά μοτίβα στα δεδομένα. Αυτή η χρησιμότητα είναι πολύτιμη για ερευνητές που έχουν ερωτήματα σχετικά με ένα δεδομένο πεδίο που δεν μπορούν να απαντηθούν εύκολα δημιουργώντας έναν κανόνισμένο κανόνα βασισμένο σε συνθήκες. Για παράδειγμα, σε μια πράξη επαγγέλματος, ένας επιστήμονας δεδομένων μπορεί να κατασκευάσει χειροποίητους κανόνες για τη θνησιμότητα καπνιστών έναντι μη καπνιστών.
Όταν όμως πολλά άλλα μεταβλητά στοιχεία λαμβάνονται υπόψη, ένα μοντέλο ML μπορεί να αποδειχθεί πιο αποτελεσματικό για την πρόβλεψη μελλοντικών ποσοστών θνησιμότητας βάσει παρελθοντικού ιστορικού υγείας. Ένα πιο χαρούμενο παράδειγμα μπορεί να είναι η πρόβλεψη καιρού για τον μήνα Απρίλιο σε μια συγκεκριμένη τοποθεσία βάσει δεδομένων που περιλαμβάνουν γεωγραφικό πλάτος, μήκος, αλλαγή κλίματος, γειτνίαση με τον ωκεανό, μοτίβα του ρεύματος τζετ και άλλα.
✅ Αυτή η παρουσίαση διαφανειών για τα μοντέλα καιρού προσφέρει μια ιστορική προοπτική για τη χρήση ML στην ανάλυση του καιρού.
Προκαταρκτικές εργασίες
Πριν ξεκινήσετε να χτίζετε το μοντέλο σας, υπάρχουν αρκετές εργασίες που πρέπει να ολοκληρώσετε. Για να δοκιμάσετε την ερώτησή σας και να δημιουργήσετε μια υπόθεση βάσει των προβλέψεων του μοντέλου, πρέπει να προσδιορίσετε και να διαμορφώσετε αρκετά στοιχεία.
Δεδομένα
Για να μπορέσετε να απαντήσετε στην ερώτησή σας με κάποια βεβαιότητα, χρειάζεστε ικανοποιητική ποσότητα δεδομένων του σωστού τύπου. Υπάρχουν δύο πράγματα που πρέπει να κάνετε σε αυτό το σημείο:
- Συλλογή δεδομένων. Λαμβάνοντας υπόψη το προηγούμενο μάθημα για τη δικαιοσύνη στην ανάλυση δεδομένων, συλλέξτε τα δεδομένα σας με προσοχή. Να είστε ενήμεροι για τις πηγές των δεδομένων, για τυχόν εγγενείς προκαταλήψεις που μπορεί να έχουν και να καταγράψετε την προέλευσή τους.
- Προετοιμασία δεδομένων. Υπάρχουν πολλά βήματα στη διαδικασία προετοιμασίας δεδομένων. Μπορεί να χρειαστεί να συγκεντρώσετε δεδομένα και να τα κανονικοποιήσετε αν προέρχονται από διάφορες πηγές. Μπορείτε να βελτιώσετε την ποιότητα και την ποσότητα των δεδομένων με διάφορες μεθόδους, όπως η μετατροπή συμβολοσειρών σε αριθμούς (όπως κάνουμε στο Ομαδοποίηση). Μπορεί επίσης να δημιουργήσετε νέα δεδομένα βασισμένα στα αρχικά (όπως κάνουμε στην Κατηγοριοποίηση). Μπορείτε να καθαρίσετε και να επεξεργαστείτε τα δεδομένα (όπως θα κάνουμε πριν από το μάθημα Web App). Τέλος, μπορεί να χρειαστεί να τα τυχαία ανακατέψετε, ανάλογα με τις τεχνικές εκπαίδευσής σας.
✅ Αφού συλλέξετε και επεξεργαστείτε τα δεδομένα σας, κάντε μια παύση για να δείτε αν το σχήμα τους θα σας επιτρέψει να απαντήσετε στην ερώτηση που έχετε θέσει. Μπορεί να συμβεί να μην αποδώσουν καλά τα δεδομένα στην εργασία σας, όπως ανακαλύπτουμε στα μαθήματα Ομαδοποίησης!
Χαρακτηριστικά και στόχος
Ένα χαρακτηριστικό είναι μια μετρήσιμη ιδιότητα των δεδομένων σας. Σε πολλά σύνολα δεδομένων εκφράζεται ως επικεφαλίδα στήλης όπως 'ημερομηνία', 'μέγεθος' ή 'χρώμα'. Η μεταβλητή χαρακτηριστικού, συνήθως αναπαριστώμενη ως X στον κώδικα, αντιπροσωπεύει τη μεταβλητή εισόδου που θα χρησιμοποιηθεί για την εκπαίδευση ενός μοντέλου.
Ένας στόχος είναι κάτι που προσπαθείτε να προβλέψετε. Ο στόχος, συνήθως αναπαριστώμενος ως y στον κώδικα, αντιπροσωπεύει την απάντηση στην ερώτηση που θέτετε στα δεδομένα σας: τον Δεκέμβριο, ποια χρώμα κολοκύθες θα είναι φθηνότερες; στο Σαν Φρανσίσκο, ποια γειτονιά θα έχει την καλύτερη τιμή ακινήτων; Μερικές φορές ο στόχος αναφέρεται επίσης ως ετικέτα.
Επιλογή της μεταβλητής χαρακτηριστικού σας
🎓 Επιλογή Χαρακτηριστικών και Εξαγωγή Χαρακτηριστικών Πώς ξέρετε ποια μεταβλητή να επιλέξετε κατά την κατασκευή ενός μοντέλου; Πιθανώς θα περάσετε από μια διαδικασία επιλογής ή εξαγωγής χαρακτηριστικών για να διαλέξετε τις σωστές μεταβλητές για το πιο αποδοτικό μοντέλο. Δεν είναι το ίδιο όμως: "Η εξαγωγή χαρακτηριστικών δημιουργεί νέα χαρακτηριστικά από συναρτήσεις των αρχικών χαρακτηριστικών, ενώ η επιλογή χαρακτηριστικών επιστρέφει ένα υποσύνολο των χαρακτηριστικών." (πηγή)
Οπτικοποιήστε τα δεδομένα σας
Μια σημαντική πτυχή των εργαλείων του επιστήμονα δεδομένων είναι η δυνατότητα οπτικοποίησης δεδομένων χρησιμοποιώντας αρκετές εξαιρετικές βιβλιοθήκες όπως Seaborn ή MatPlotLib. Η οπτική αναπαράσταση των δεδομένων σας μπορεί να σας επιτρέψει να αποκαλύψετε κρυφές συσχετίσεις που μπορείτε να αξιοποιήσετε. Οι οπτικοποιήσεις σας μπορεί επίσης να σας βοηθήσουν να ανακαλύψετε προκατάληψη ή ανομοιόμορφα κατανεμημένα δεδομένα (όπως ανακαλύπτουμε στην Κατηγοριοποίηση).
Διαχωρίστε το σύνολο δεδομένων σας
Προτού την εκπαίδευση, πρέπει να διαχωρίσετε το σύνολο δεδομένων σας σε δύο ή περισσότερα μέρη άνισου μεγέθους που όμως θα αντιπροσωπεύουν καλά τα δεδομένα.
- Εκπαίδευση. Αυτό το μέρος του συνόλου δεδομένων προσαρμόζεται στο μοντέλο σας για να το εκπαιδεύσει. Αυτό το σύνολο αποτελεί το μεγαλύτερο μέρος του αρχικού συνόλου.
- Δοκιμή. Ένα σύνολο δεδομένων δοκιμής είναι μια ανεξάρτητη ομάδα δεδομένων, συχνά συλλεγμένη από τα πρωτογενή δεδομένα, που χρησιμοποιείτε για να επιβεβαιώσετε την απόδοση του σχηματισμένου μοντέλου.
- Επικύρωση. Ένα σύνολο επικύρωσης είναι μια μικρότερη ανεξάρτητη ομάδα παραδειγμάτων που χρησιμοποιείτε για να ρυθμίσετε τις υπερπαραμέτρους ή την αρχιτεκτονική του μοντέλου, ώστε να βελτιώσετε το μοντέλο. Ανάλογα με το μέγεθος των δεδομένων σας και την ερώτηση που θέτετε, μπορεί να μη χρειαστεί να δημιουργήσετε αυτό το τρίτο σύνολο (όπως σημειώνουμε στην Πρόβλεψη Χρονικής Σειράς).
Δημιουργία μοντέλου
Χρησιμοποιώντας τα δεδομένα εκπαίδευσής σας, σκοπός σας είναι να δημιουργήσετε ένα μοντέλο, ή μια στατιστική αναπαράσταση των δεδομένων σας, χρησιμοποιώντας διάφορους αλγορίθμους για να το εκπαιδεύσετε. Η εκπαίδευση ενός μοντέλου το εκθέτει σε δεδομένα και του επιτρέπει να κάνει υποθέσεις για αντιληπτά μοτίβα που ανακαλύπτει, επαληθεύει και αποδέχεται ή απορρίπτει.
Αποφασίστε για μια μέθοδο εκπαίδευσης
Ανάλογα με την ερώτησή σας και τη φύση των δεδομένων σας, θα επιλέξετε μια μέθοδο για την εκπαίδευση. Περιηγούμενοι στην τεκμηρίωση του Scikit-learn - που χρησιμοποιούμε σε αυτό το μάθημα - μπορείτε να εξερευνήσετε πολλούς τρόπους εκπαίδευσης μοντέλου. Ανάλογα με την εμπειρία σας, ίσως χρειαστεί να δοκιμάσετε αρκετές διαφορετικές μεθόδους για να χτίσετε το καλύτερο μοντέλο. Πιθανόν να περάσετε από μια διαδικασία όπου οι επιστήμονες δεδομένων αξιολογούν τις επιδόσεις ενός μοντέλου παρέχοντάς του αθέατα δεδομένα, ελέγχοντας την ακρίβεια, την προκατάληψη και άλλα ζητήματα που υποβαθμίζουν την ποιότητα, και επιλέγοντας την καταλληλότερη μέθοδο εκπαίδευσης για την εκάστοτε εργασία.
Εκπαιδεύστε το μοντέλο
Οπλισμένοι με τα δεδομένα εκπαίδευσής σας, είστε έτοιμοι να τα 'προσαρμόσετε' για να δημιουργήσετε ένα μοντέλο. Θα παρατηρήσετε ότι σε πολλές βιβλιοθήκες ML υπάρχει η μέθοδος 'model.fit' - είναι η στιγμή που στέλνετε τη μεταβλητή χαρακτηριστικού σας ως πίνακα τιμών (συνήθως 'X') και τη μεταβλητή στόχου (συνήθως 'y').
Αξιολογήστε το μοντέλο
Μόλις ολοκληρωθεί η διαδικασία εκπαίδευσης (μπορεί να χρειαστούν πολλές επαναλήψεις ή 'epochs' για την εκπαίδευση ενός μεγάλου μοντέλου), θα είστε σε θέση να αξιολογήσετε την ποιότητα του μοντέλου χρησιμοποιώντας δεδομένα δοκιμής για να μετρήσετε τις επιδόσεις του. Αυτά τα δεδομένα είναι ένα υποσύνολο των αρχικών που το μοντέλο δεν έχει αναλύσει προηγουμένως. Μπορείτε να εκτυπώσετε έναν πίνακα με στατιστικά για την ποιότητα του μοντέλου σας.
🎓 Προσαρμογή μοντέλου
Στο πλαίσιο της μηχανικής μάθησης, η προσαρμογή μοντέλου αναφέρεται στην ακρίβεια της υποκείμενης συνάρτησης του μοντέλου καθώς επιχειρεί να αναλύσει δεδομένα με τα οποία δεν είναι εξοικειωμένο.
🎓 Τα υποπροσαρμοσμένα και υπερπροσαρμοσμένα μοντέλα είναι συνηθισμένα προβλήματα που υποβαθμίζουν την ποιότητα του μοντέλου, καθώς το μοντέλο προσαρμόζεται είτε όχι αρκετά καλά είτε υπερβολικά καλά. Αυτό προκαλεί στο μοντέλο να κάνει προβλέψεις που είναι είτε πολύ στενά είτε πολύ χαλαρά ευθυγραμμισμένες με τα δεδομένα εκπαίδευσης. Ένα υπερπροσαρμοσμένο μοντέλο προβλέπει πολύ καλά τα δεδομένα εκπαίδευσης επειδή έχει μάθει πολύ καλά τις λεπτομέρειες και τον θόρυβο των δεδομένων. Ένα υποπροσαρμοσμένο μοντέλο δεν είναι ακριβές αφού δεν μπορεί ούτε να αναλύσει με ακρίβεια τα δεδομένα εκπαίδευσης ούτε τα δεδομένα που δεν έχει δει ακόμα.
Γραφικό από την Jen Looper
Ρύθμιση παραμέτρων
Μόλις ολοκληρωθεί η αρχική εκπαίδευση, παρατηρήστε την ποιότητα του μοντέλου και σκεφτείτε να το βελτιώσετε τροποποιώντας τις 'υπερπαραμέτρους' του. Διαβάστε περισσότερα για τη διαδικασία στην τεκμηρίωση.
Πρόβλεψη
Αυτή είναι η στιγμή που μπορείτε να χρησιμοποιήσετε εντελώς νέα δεδομένα για να ελέγξετε την ακρίβεια του μοντέλου σας. Σε ένα 'εφαρμοσμένο' περιβάλλον ML, όπου κατασκευάζετε διαδικτυακά υποστρώματα για να χρησιμοποιήσετε το μοντέλο σε παραγωγή, αυτή η διαδικασία μπορεί να περιλαμβάνει τη συλλογή εισόδου χρήστη (π.χ. πάτημα κουμπιού) για την ορισμό μιας μεταβλητής και την αποστολή της στο μοντέλο για συμπεράσματα ή αξιολόγηση.
Σε αυτά τα μαθήματα θα ανακαλύψετε πώς να χρησιμοποιείτε αυτά τα βήματα για να προετοιμάσετε, δημιουργήσετε, δοκιμάσετε, αξιολογήσετε και προβλέψετε - όλες τις ενέργειες ενός επιστήμονα δεδομένων και πολλά άλλα, καθώς προχωράτε στην πορεία σας για να γίνετε μηχανικός ML «full stack».
🚀Πρόκληση
Σχεδιάστε ένα διάγραμμα ροής που να απεικονίζει τα βήματα ενός επαγγελματία ML. Πού βλέπετε τον εαυτό σας αυτή τη στιγμή στη διαδικασία; Πού προβλέπετε ότι θα βρείτε δυσκολία; Τι σας φαίνεται εύκολο;
Μετά το μάθημα κουίζ
Ανασκόπηση & Αυτοδιδασκαλία
Αναζητήστε στο διαδίκτυο συνεντεύξεις με επιστήμονες δεδομένων που μιλούν για την καθημερινή τους δουλειά. Εδώ είναι μία.
Ανάθεση
Συνεντεύξτε έναν επιστήμονα δεδομένων
Αποποίηση ευθυνών:
Αυτό το έγγραφο έχει μεταφραστεί χρησιμοποιώντας την υπηρεσία αυτόματης μετάφρασης AI Co-op Translator. Παρόλο που προσπαθούμε για ακρίβεια, παρακαλούμε να γνωρίζετε ότι οι αυτόματες μεταφράσεις ενδέχεται να περιέχουν λάθη ή ανακρίβειες. Το αρχικό έγγραφο στη μητρική του γλώσσα πρέπει να θεωρείται η αξιόπιστη πηγή. Για κρίσιμες πληροφορίες, συνιστάται επαγγελματική ανθρώπινη μετάφραση. Δεν φέρουμε ευθύνη για τυχόν παρεξηγήσεις ή εσφαλμένες ερμηνείες που προκύπτουν από τη χρήση αυτής της μετάφρασης.

