10 εκπληκτικές οπτικοποιήσεις μηχανικής μάθησης που πρέπει να γνωρίζετε το 2023

Yellowbrick for creating machine learning plots with less code

Φωτογραφία Ντέιβιντ Πίσνοι on Unsplash

Η οπτικοποίηση δεδομένων παίζει σημαντικό ρόλο στη μηχανική μάθηση.

Οι περιπτώσεις χρήσης οπτικοποίησης δεδομένων στη μηχανική μάθηση περιλαμβάνουν:

  • Ρύθμιση υπερπαραμέτρων
  • Αξιολόγηση απόδοσης μοντέλου
  • Επικύρωση υποθέσεων του μοντέλου
  • Εύρεση ακραίων τιμών
  • Επιλέγοντας τα πιο σημαντικά χαρακτηριστικά
  • Προσδιορισμός προτύπων και συσχετισμών μεταξύ χαρακτηριστικών

Ονομάζονται οπτικοποιήσεις που σχετίζονται άμεσα με τα παραπάνω βασικά πράγματα στη μηχανική μάθηση οπτικοποιήσεις μηχανικής μάθησης.

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

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

Yellowbrick ML Visualizations
-----------------------------
01. Priniciapal Component Plot
02. Validation Curve
03. Καμπύλη εκμάθησης
04. Elbow Plot
05. Silhouette Plot
06. Class Imbalance Plot
07. Residuals Plot
08. Prediction Error Plot
09. Cook’s Distance Plot
10. Feature Importances Plot

Εγκατάσταση

Η εγκατάσταση του Yellowbrick μπορεί να γίνει εκτελώντας μία από τις παρακάτω εντολές.

  • κουκούτσι πρόγραμμα εγκατάστασης πακέτων:
pip install yellowbrick
  • Conda πρόγραμμα εγκατάστασης πακέτων:
conda install -c districtdatalabs yellowbrick

Χρησιμοποιώντας Yellowbrick

Οι οπτικοποιητές κίτρινου τούβλου έχουν σύνταξη τύπου Scikit-learn. Ο οπτικοποιητής είναι ένα αντικείμενο που μαθαίνει από δεδομένα να παράγει μια οπτικοποίηση. Συχνά χρησιμοποιείται με έναν εκτιμητή Scikit-learn. Για να εκπαιδεύσουμε έναν οπτικοποιητή, καλούμε τη μέθοδο του fit().

Σώζοντας την πλοκή

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

visualizer.show(outpath="name_of_the_plot.png")

Χρήση

Η γραφική παράσταση του κύριου συστατικού απεικονίζει δεδομένα υψηλών διαστάσεων σε μια γραφική παράσταση 2D ή 3D scatter. Επομένως, αυτή η γραφική παράσταση είναι εξαιρετικά χρήσιμη για τον εντοπισμό σημαντικών μοτίβων σε δεδομένα υψηλών διαστάσεων.

Υλοποίηση κίτρινου τούβλου

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

Αντίθετα, μπορούμε να χρησιμοποιήσουμε την κλάση οπτικοποίησης PCA του Yellowbrick για να επιτύχουμε την ίδια λειτουργικότητα. Χρησιμοποιεί τη μέθοδο ανάλυσης του κύριου στοιχείου, μειώνει τη διάσταση του συνόλου δεδομένων και δημιουργεί το διάγραμμα διασποράς με 2 ή 3 γραμμές κώδικα! Το μόνο που χρειάζεται να κάνουμε είναι να καθορίσουμε ορισμένα ορίσματα λέξεων-κλειδιών στην κλάση PCA().

Ας πάρουμε ένα παράδειγμα για να το καταλάβουμε περαιτέρω. Εδώ, χρησιμοποιούμε το καρκίνος του μαστού σύνολο δεδομένων (βλ Παραπομπή στο τέλος) που έχει 30 χαρακτηριστικά και 569 δείγματα δύο κατηγοριών (κακοήθη και Καλή). Λόγω της υψηλής διάστασης (30 χαρακτηριστικά) στα δεδομένα, είναι αδύνατο να σχεδιάσουμε τα αρχικά δεδομένα σε μια γραφική παράσταση 2D ή 3D scatter εκτός και αν εφαρμόσουμε PCA στο σύνολο δεδομένων.

Ο παρακάτω κώδικας εξηγεί πώς μπορούμε να χρησιμοποιήσουμε τον οπτικοποιητή PCA του Yellowbrick για να δημιουργήσουμε ένα δισδιάστατο διάγραμμα διασποράς ενός συνόλου δεδομένων 2 διαστάσεων.

(Code by author)
Principal Component Plot — 2D (Image by autr)

Μπορούμε επίσης να δημιουργήσουμε ένα τρισδιάστατο διάγραμμα διασποράς με ρύθμιση projection=3στην κλάση PCA().

(Code by author)
Principal Component Plot — 3D (Image by author)

Οι πιο σημαντικές παράμετροι του οπτικοποιητή PCA περιλαμβάνουν:

  • κλίμακα: bool, προεπιλογή True. Αυτό υποδεικνύει εάν τα δεδομένα πρέπει να κλιμακωθούν ή όχι. Θα πρέπει να κλιμακώνουμε τα δεδομένα πριν εκτελέσουμε το PCA. Μάθε περισσότερα για εδώ.
  • προβολή: int, η προεπιλογή είναι 2. Όταν projection=2, δημιουργείται ένα δισδιάστατο διάγραμμα διασποράς. Πότε projection=3, δημιουργείται ένα τρισδιάστατο διάγραμμα διασποράς.
  • τάξεις: λίστα, προεπιλογή None. Αυτό υποδεικνύει τις ετικέτες κλάσεων για κάθε τάξη στο y. Τα ονόματα των κλάσεων θα είναι οι ετικέτες για το υπόμνημα.

Χρήση

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

Υλοποίηση κίτρινου τούβλου

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

Για να σχεδιάσουμε μια καμπύλη επικύρωσης στο Yellowbirck, θα δημιουργήσουμε έναν τυχαίο ταξινομητή δασών χρησιμοποιώντας τον ίδιο καρκίνος του μαστού σύνολο δεδομένων (βλ Παραπομπή στο τέλος). Θα σχεδιάσουμε την επιρροή του max_depth υπερπαράμετρος στο μοντέλο τυχαίου δάσους.

Ο παρακάτω κώδικας εξηγεί πώς μπορούμε να χρησιμοποιήσουμε το πρόγραμμα απεικόνισης ValidationCurve του Yellowbrick για να δημιουργήσουμε μια καμπύλη επικύρωσης χρησιμοποιώντας το καρκίνος του μαστού σύνολο δεδομένων

(Code by author)
Validation Curve (Image by author)

Το μοντέλο αρχίζει να υπερπροσαρμόζεται μετά το max_depth τιμή του 6. Όταν max_depth=6, το μοντέλο ταιριάζει πολύ καλά στα δεδομένα εκπαίδευσης και επίσης γενικεύει καλά σε νέα αόρατα δεδομένα.

Οι πιο σημαντικές παράμετροι του οπτικοποιητή ValidationCurve περιλαμβάνουν:

  • εκτιμητής: Αυτό μπορεί να είναι οποιοδήποτε μοντέλο ML Scikit-learn όπως δέντρο αποφάσεων, τυχαίο δάσος, μηχανή διανυσμάτων υποστήριξης κ.λπ.
  • param_name: Αυτό είναι το όνομα της υπερπαράμετρου που θέλουμε να παρακολουθήσουμε.
  • εύρος_param: Αυτό περιλαμβάνει τις πιθανές τιμές για param_name.
  • βιογραφικό: int, ορίζει τον αριθμό των πτυχών για τη διασταυρούμενη επικύρωση.
  • σκοράρισμα: σειρά, περιέχει τη μέθοδο βαθμολόγησης του μοντέλου. Για ταξινόμηση, ακρίβεια προτιμάται.

Χρήση

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

Οι χρήσεις της καμπύλης μάθησης περιλαμβάνουν:

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

Υλοποίηση κίτρινου τούβλου

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

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

Ο παρακάτω κώδικας εξηγεί πώς μπορούμε να χρησιμοποιήσουμε τον οπτικοποιητή LearningCurve του Yellowbrick για να δημιουργήσουμε μια καμπύλη επικύρωσης χρησιμοποιώντας το καρκίνος του μαστού σύνολο δεδομένων

(Code by author)
Καμπύλη εκμάθησης (Image by author)

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

Οι πιο σημαντικές παράμετροι του οπτικοποιητή LearningCurve περιλαμβάνουν:

  • εκτιμητής: Αυτό μπορεί να είναι οποιοδήποτε μοντέλο ML Scikit-learn όπως δέντρο αποφάσεων, τυχαίο δάσος, μηχανή διανυσμάτων υποστήριξης κ.λπ.
  • βιογραφικό: int, ορίζει τον αριθμό των πτυχών για τη διασταυρούμενη επικύρωση.
  • σκοράρισμα: σειρά, περιέχει τη μέθοδο βαθμολόγησης του μοντέλου. Για ταξινόμηση, ακρίβεια προτιμάται.

Χρήση

Η γραφική παράσταση Elbow χρησιμοποιείται για την επιλογή του βέλτιστου αριθμού συστάδων στην ομαδοποίηση K-Means. Το μοντέλο ταιριάζει καλύτερα στο σημείο όπου εμφανίζεται ο αγκώνας στο γραμμικό διάγραμμα. Ο αγκώνας είναι το σημείο καμπής στο διάγραμμα.

Υλοποίηση κίτρινου τούβλου

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

Για να σχεδιάσουμε μια καμπύλη μάθησης στο Yellowbirck, θα δημιουργήσουμε ένα μοντέλο ομαδοποίησης K-Means χρησιμοποιώντας το Ίρις σύνολο δεδομένων (βλ Παραπομπή στο τέλος).

Ο παρακάτω κώδικας εξηγεί πώς μπορούμε να χρησιμοποιήσουμε το KElbowVisualizer του Yellowbrick για να δημιουργήσουμε μια γραφική παράσταση Elbow χρησιμοποιώντας το Ίρις σύνολο δεδομένων

(Code by author)
Elbow Plot (Image by author)

Η αγκώνα εμφανίζεται στο k=4 (σημειώνεται με διακεκομμένη γραμμή). Η γραφική παράσταση δείχνει ότι ο βέλτιστος αριθμός συστάδων για το μοντέλο είναι 4. Με άλλα λόγια, το μοντέλο είναι καλά προσαρμοσμένο με 4 συστάδες.

Οι πιο σημαντικές παράμετροι του KElbowVisualizer περιλαμβάνουν:

  • εκτιμητής: Παράδειγμα μοντέλου K-Means
  • k: int ή πλειάδα. Εάν είναι ακέραιος, θα υπολογίσει τις βαθμολογίες για τα συμπλέγματα στην περιοχή (2, k). Εάν είναι πλειάδα, θα υπολογίσει τις βαθμολογίες για τα συμπλέγματα στο δεδομένο εύρος, για παράδειγμα, (3, 11).

Χρήση

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

Υλοποίηση κίτρινου τούβλου

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

Για να δημιουργήσουμε ένα οικόπεδο σιλουέτας στο Yellowbirck, θα δημιουργήσουμε ένα μοντέλο ομαδοποίησης K-Means χρησιμοποιώντας το Ίρις σύνολο δεδομένων (βλ Παραπομπή στο τέλος).

Τα παρακάτω μπλοκ κώδικα εξηγούν πώς μπορούμε να χρησιμοποιήσουμε το Yellowbrick's SilhouetteVisualizer για να δημιουργήσουμε γραφικά σιλουέτα χρησιμοποιώντας το Ίρις σύνολο δεδομένων με διαφορετικές τιμές k (αριθμός συμπλεγμάτων).

k = 2

(Code by author)
Silhouette Plot with 2 Clusters (k=2), (Image by author)

Αλλάζοντας τον αριθμό των συμπλεγμάτων στην κλάση KMeans(), μπορούμε να εκτελέσουμε τον παραπάνω κώδικα σε διαφορετικές χρονικές στιγμές για να δημιουργήσουμε διαγράμματα σιλουέτας όταν k=3, k=4 και k=5.

k = 3

Silhouette Plot with 3 Clusters (k=3), (Image by author)

k = 4

Silhouette Plot with 4 Clusters (k=4), (Image by author)

k = 5

Silhouette Plot with 4 Clusters (k=5), (Image by author)

Το οικόπεδο σιλουέτας περιέχει ένα σχήμα μαχαιριού ανά σύμπλεγμα. Κάθε σχήμα μαχαιριού δημιουργείται από ράβδους που αντιπροσωπεύουν όλα τα σημεία δεδομένων στο σύμπλεγμα. Έτσι, το πλάτος ενός σχήματος μαχαιριού αντιπροσωπεύει τον αριθμό όλων των περιπτώσεων στο σύμπλεγμα. Το μήκος της ράβδου αντιπροσωπεύει τον συντελεστή σιλουέτας για κάθε περίπτωση. Η διακεκομμένη γραμμή υποδεικνύει τη βαθμολογία της σιλουέτας — Πηγή: Hands-On K-Means Clustering (γραμμένο από εμένα).

Μια γραφική παράσταση με περίπου ίσα πλάτη σχημάτων μαχαιριού μας λέει ότι τα συμπλέγματα είναι καλά ισορροπημένα και έχουν περίπου τον ίδιο αριθμό περιπτώσεων σε κάθε σύμπλεγμα - μια από τις πιο σημαντικές υποθέσεις στην ομαδοποίηση K-Means.

Όταν οι ράβδοι σε σχήμα μαχαιριού επεκτείνουν τη διακεκομμένη γραμμή, τα συμπλέγματα είναι καλά διαχωρισμένα - μια άλλη σημαντική υπόθεση στην ομαδοποίηση K-Means.

Όταν k=3, τα συμπλέγματα είναι καλά ισορροπημένα και καλά διαχωρισμένα. Έτσι, ο βέλτιστος αριθμός συμπλεγμάτων στο παράδειγμά μας είναι 3.

Οι πιο σημαντικές παράμετροι του SilhouetteVisualizer περιλαμβάνουν:

  • εκτιμητής: Παράδειγμα μοντέλου K-Means
  • χρωματιστά: κορδόνι, μια συλλογή χρωμάτων που χρησιμοποιούνται για κάθε σχήμα μαχαιριού. "κίτρινο τούβλο" ή μία από τις συμβολοσειρές έγχρωμων χαρτών Matplotlib όπως "Accent", "Set1" κ.λπ.

Χρήση

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

Η ανισορροπία κλάσης συμβαίνει όταν μια κλάση έχει σημαντικά περισσότερες παρουσίες από την άλλη κλάση. Για παράδειγμα, ένα σύνολο δεδομένων που σχετίζεται με τον εντοπισμό ανεπιθύμητων μηνυμάτων ηλεκτρονικού ταχυδρομείου έχει 9900 περιπτώσεις για την κατηγορία "Μη ανεπιθύμητη αλληλογραφία" και μόλις 100 περιπτώσεις για την κατηγορία "Ανεπιθύμητα". Το μοντέλο θα αποτύχει να συλλάβει την τάξη μειοψηφίας (η κρέας κατηγορία). Ως αποτέλεσμα αυτού, το μοντέλο δεν θα είναι ακριβές στην πρόβλεψη της κατηγορίας μειοψηφίας όταν εμφανίζεται μια ανισορροπία τάξης — Πηγή: Τα κορυφαία 20 λάθη μηχανικής μάθησης και βαθιάς μάθησης που συμβαίνουν κρυφά πίσω από τις σκηνές (γραμμένο από εμένα).

Υλοποίηση κίτρινου τούβλου

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

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

Ο παρακάτω κώδικας εξηγεί πώς μπορούμε να χρησιμοποιήσουμε τον οπτικοποιητή ClassBalance του Yellowbrick για να δημιουργήσουμε ένα διάγραμμα ανισορροπίας κλάσης χρησιμοποιώντας το καρκίνος του μαστού σύνολο δεδομένων

(Code by author)
Class Imbalance Plot (Image by author)

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

Οι πιο σημαντικές παράμετροι του οπτικοποιητή ClassBalance περιλαμβάνουν:

  • ετικέτες: λίστα, τα ονόματα των μοναδικών κλάσεων στη στήλη προορισμού.

Χρήση

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

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

Υλοποίηση κίτρινου τούβλου

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

Για να σχεδιάσουμε ένα οικόπεδο υπολειμμάτων στο Yellowbirck, θα χρησιμοποιήσουμε το Διαφήμιση (Advertising.csv, Δείτε Παραπομπή στο τέλος) σύνολο δεδομένων.

Ο παρακάτω κώδικας εξηγεί πώς μπορούμε να χρησιμοποιήσουμε το πρόγραμμα απεικόνισης ResidualsPlot του Yellowbrick για να δημιουργήσουμε μια γραφική παράσταση υπολειμμάτων χρησιμοποιώντας το Διαφήμιση σύνολο δεδομένων

(Code by author)
Residuals Plot (Image by author)

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

Οι πιο σημαντικές παράμετροι του οπτικοποιητή ResidualsPlot περιλαμβάνουν:

  • εκτιμητής: Αυτό μπορεί να είναι οποιοδήποτε Scikit-learn regressor.
  • ιστορικό: bool, προεπιλογή True. Είτε σχεδιάζεται το ιστόγραμμα των υπολειμμάτων, το οποίο χρησιμοποιείται για τον έλεγχο μιας άλλης υπόθεσης — Τα υπολείμματα κατανέμονται περίπου κανονικά με τη μέση τιμή 0 και μια σταθερή τυπική απόκλιση.

Χρήση

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

Το διάγραμμα σφάλματος πρόβλεψης δημιουργείται σχεδιάζοντας τις προβλέψεις σε σχέση με τις πραγματικές τιμές στόχου.

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

Υλοποίηση κίτρινου τούβλου

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

Για να σχεδιάσουμε μια γραφική παράσταση σφάλματος πρόβλεψης στο Yellowbirck, θα χρησιμοποιήσουμε το Διαφήμιση (Advertising.csv, Δείτε Παραπομπή στο τέλος) σύνολο δεδομένων.

Ο παρακάτω κώδικας εξηγεί πώς μπορούμε να χρησιμοποιήσουμε το πρόγραμμα απεικόνισης PredictionError του Yellowbrick για να δημιουργήσουμε μια γραφική παράσταση υπολειμμάτων χρησιμοποιώντας το Διαφήμιση σύνολο δεδομένων

(Code by author)
Prediction Error Plot (Image by author)

Τα σημεία δεν είναι ακριβώς στη γραμμή των 45 μοιρών, αλλά το μοντέλο είναι αρκετά καλό.

Οι πιο σημαντικές παράμετροι του οπτικοποιητή PredictionError περιλαμβάνουν:

  • εκτιμητής: Αυτό μπορεί να είναι οποιοδήποτε Scikit-learn regressor.
  • Ταυτότητα: bool, προεπιλογή True. Εάν θα τραβήξετε τη γραμμή των 45 μοιρών.

Χρήση

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

Υλοποίηση κίτρινου τούβλου

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

Για να σχεδιάσουμε ένα οικόπεδο απόστασης του Μάγειρα στο Yellowbirck, θα χρησιμοποιήσουμε το Διαφήμιση (Advertising.csv, Δείτε Παραπομπή στο τέλος) σύνολο δεδομένων.

Ο ακόλουθος κώδικας εξηγεί πώς μπορούμε να χρησιμοποιήσουμε το πρόγραμμα απεικόνισης CooksDistance του Yellowbrick για να δημιουργήσουμε μια γραφική παράσταση απόστασης Μάγειρα χρησιμοποιώντας το Διαφήμιση σύνολο δεδομένων

(Code by author)
Cook’s Distance Plot (Image by author)

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

Οι πιο σημαντικές παράμετροι του οπτικοποιητή CooksDistance περιλαμβάνουν:

  • draw_threshold: bool, προεπιλογή True. Εάν θα τραβήξετε τη γραμμή κατωφλίου.

Χρήση

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

Η πλοκή των σημαντικών χαρακτηριστικών απεικονίζει τη σχετική σημασία κάθε χαρακτηριστικού.

Υλοποίηση κίτρινου τούβλου

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

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

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

(Code by author)
Feature Importances Plot (Image by author)

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

Οι πιο σημαντικές παράμετροι του προγράμματος οπτικοποίησης FeatureImportances περιλαμβάνουν:

  • εκτιμητής: Κάθε Εκτιμητής Scikit-learn που υποστηρίζει είτε feature_importances_ χαρακτηριστικό ή coef_ αποδίδουν.
  • συγγενής: bool, προεπιλογή True. Αν θα γραφεί η σχετική σημασία ως ποσοστό. Αν False, εμφανίζεται η ακατέργαστη αριθμητική βαθμολογία της σημασίας του χαρακτηριστικού.
  • απόλυτος: bool, προεπιλογή False. Εάν θα λάβουμε υπόψη μόνο το μέγεθος των συντελεστών αποφεύγοντας τα αρνητικά πρόσημα.
  1. Οικόπεδο κύριου στοιχείου: PCA(), Χρήση — Οπτικοποιεί δεδομένα υψηλών διαστάσεων σε μια γραφική παράσταση 2D ή 3D scatter που μπορεί να χρησιμοποιηθεί για τον εντοπισμό σημαντικών μοτίβων σε δεδομένα υψηλών διαστάσεων.
  2. Καμπύλη επικύρωσης: ValidationCurve(), Χρήση — Σχεδιάζει την επιρροή του α ενιαίας υπερπαράμετρος στο τρένο και σετ επικύρωσης.
  3. Καμπύλη εκμάθησης: Καμπύλη εκμάθησης(), Χρήση — Ανιχνεύει υποσυναρμολόγηση, υπερβολική τοποθέτηση και ακριβώς δεξιά συνθήκες ενός μοντέλου, Προσδιορίζει slow convergence, ταλάντωση, που ταλαντώνεται με απόκλιση και σωστή σύγκλιση σενάρια κατά την εύρεση του βέλτιστου ρυθμού εκμάθησης ενός νευρωνικού δικτύου, Δείχνει πόσο ωφελείται το μοντέλο μας από την προσθήκη περισσότερων δεδομένων εκπαίδευσης.
  4. Οικόπεδο αγκώνα: KElbowVisualizer(), Χρήση — Επιλέγει τον βέλτιστο αριθμό συμπλεγμάτων στην ομαδοποίηση K-Means.
  5. Οικόπεδο Silhouette: SilhouetteVisualizer(), Χρήση — Επιλέγει τον βέλτιστο αριθμό συμπλεγμάτων στην ομαδοποίηση K-Means, Ανιχνεύει την ανισορροπία συμπλέγματος στη ομαδοποίηση K-Means.
  6. Οικόπεδο ανισορροπίας τάξης: ClassBalance(), Χρήση — Εντοπίζει την ανισορροπία των κλάσεων στη στήλη προορισμού στα σύνολα δεδομένων ταξινόμησης.
  7. Οικόπεδο υπολειμμάτων: ResidualsPlot(), Χρήση — Καθορίζει εάν τα υπολείμματα (παρατηρούμενες τιμές-προβλεπόμενες τιμές) είναι ασυσχετισμένα (ανεξάρτητα) αναλύοντας τη διακύμανση των σφαλμάτων σε ένα μοντέλο παλινδρόμησης.
  8. Σχέδιο σφάλματος πρόβλεψης: PredictionError(), Χρήση — Μια γραφική μέθοδος που χρησιμοποιείται για την αξιολόγηση ενός μοντέλου παλινδρόμησης.
  9. Οικόπεδο της απόστασης του μάγειρα: CooksDistance(), Χρήση — Ανιχνεύει ακραίες τιμές στο σύνολο δεδομένων με βάση τις αποστάσεις των παρουσιών του Μάγειρα.
  10. Σχέδιο σημαντικών χαρακτηριστικών: FeatureImportances(), Χρήση — Επιλέγει τα ελάχιστα απαιτούμενα σημαντικά χαρακτηριστικά με βάση τις σχετικές σπουδαιότητες κάθε δυνατότητας για την παραγωγή ενός μοντέλου ML.

Αυτό είναι το τέλος της σημερινής ανάρτησης.

Παρακαλώ ενημερώστε με εάν έχετε ερωτήσεις ή σχόλια.

Read next (Recommended)

  • Yellowbrick for Visualizing Features’ Importances Using a Single Line of Code
  • Validation Curve Explained — Plot the influence of a single hyperparameter
  • Plotting the Learning Curve to Analyze the Training Performance of a Neural Network
  • Hands-On K-Means Clustering

Support me as a writer

I hope you enjoyed reading this article. If you’d like to support me as a writer, kindly consider signing up for a membership to get unlimited access to Medium. It only costs $5 per month and I will receive a portion of your membership fee.

Thank you so much for your continuous support! See you in the next article. Happy learning to everyone!

Πληροφορίες δεδομένων για τον καρκίνο του μαστού

  • Αιτιολογική αναφορά: Dua, D. και Graff, C. (2019). Αποθετήριο μηχανικής εκμάθησης UCI [http://archive.ics.uci.edu/ml]. Irvine, CA: Πανεπιστήμιο της Καλιφόρνια, Σχολή Πληροφοριών και Πληροφορικής.
  • πηγή: https://archive.ics.uci.edu/ml/datasets/breast+cancer+wisconsin+(diagnostic)
  • Άδεια: Ο Δρ William H. Wolberg (Τμήμα Γενικής Χειρουργικής
    Πανεπιστήμιο του Ουισκόνσιν), W. Nick Street (Τμήμα Επιστημών Υπολογιστών
    Πανεπιστήμιο του Ουισκόνσιν) και Olvi L. Mangasarian (Computer Sciences Dept. University of Wisconsin) κατέχει τα πνευματικά δικαιώματα αυτού του συνόλου δεδομένων. Ο Nick Street δώρισε αυτό το σύνολο δεδομένων στο κοινό κάτω από το Creative Commons Attribution 4.0 Διεθνής άδεια (CC-BY 4.0). Μπορείτε να μάθετε περισσότερα σχετικά με διαφορετικούς τύπους αδειών δεδομένων δεδομένων εδώ.

Πληροφορίες δεδομένων Iris

  • Αιτιολογική αναφορά: Dua, D. και Graff, C. (2019). Αποθετήριο μηχανικής εκμάθησης UCI [http://archive.ics.uci.edu/ml]. Irvine, CA: Πανεπιστήμιο της Καλιφόρνια, Σχολή Πληροφοριών και Πληροφορικής.
  • πηγή: https://archive.ics.uci.edu/ml/datasets/iris
  • Άδεια: RA Fisher κατέχει τα πνευματικά δικαιώματα αυτού του συνόλου δεδομένων. Ο Michael Marshall δώρισε αυτό το σύνολο δεδομένων στο κοινό κάτω από το Άδεια αφιέρωσης δημόσιου τομέα Creative Commons (CC0). Μπορείτε να μάθετε περισσότερα σχετικά με διαφορετικούς τύπους αδειών δεδομένων δεδομένων εδώ.

Πληροφορίες συνόλου δεδομένων διαφήμισης

αναφορές

10 Amazing Machine Learning Visualizations You Should Know in 2023 Republished from Source https://towardsdatascience.com/10-amazing-machine-learning-visualizations-you-should-know-in-2023-528282940582?source=rss—-7f60cf5620c9—4 via https://towardsdatascience.com/feed

Si al principi no tens èxit, aleshores el paracaigudisme no és per a tu.

->

Σφραγίδα ώρας:

Περισσότερα από Σύμβουλοι Blockchain