Καθαρισμός δεδομένων για μηχανική μάθηση

0
Καθαρισμός δεδομένων για μηχανική μάθηση

Καλώς ήρθατε στο Μέρος 3 του Data Science Primer μας. Σε αυτόν τον οδηγό, θα σας διδάξουμε πώς να φέρετε το σύνολο δεδομένων σας σε κορυφαία μορφή καθαρισμός δεδομένων. Ο καθαρισμός δεδομένων είναι ζωτικής σημασίας, επειδή τα σκουπίδια σας βγάζουν έξω, ανεξάρτητα από το πόσο φανταχτερός είναι ο αλγόριθμος ML σας.

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

Καθαρισμός δεδομένων για μηχανική μάθηση
Ας ετοιμαστούμε να καθαρίσουμε το σύνολο δεδομένων μας!

Καλύτερα δεδομένα > Φανταστικοί αλγόριθμοι

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

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

Γιατί; Λόγω μιας απλής αλήθειας στη μηχανική μάθηση:

Τα καλύτερα δεδομένα ξεπερνούν τους πιο εντυπωσιακούς αλγόριθμους.

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

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

Αφαιρέστε τις ανεπιθύμητες παρατηρήσεις

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

Διπλότυπες παρατηρήσεις
Αυτή η πόλη δεν είναι αρκετά μεγάλη.

Διπλές παρατηρήσεις

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

  • Συνδυάστε σύνολα δεδομένων από πολλά μέρη
  • Ξύστε δεδομένα
  • Λήψη δεδομένων από πελάτες/άλλα τμήματα
Άσχετες παρατηρήσεις
Απλώς δεν ήταν γραφτό να γίνει.

Άσχετες παρατηρήσεις

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

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

Διορθώστε δομικά σφάλματα

Ο επόμενος κάδος κάτω από τον καθαρισμό δεδομένων περιλαμβάνει τη διόρθωση δομικών σφαλμάτων. Τα δομικά σφάλματα είναι αυτά που προκύπτουν κατά τη μέτρηση, τη μεταφορά δεδομένων ή άλλους τύπους “Κακή καθαριότητα.”

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

Εδώ είναι ένα παράδειγμα:

Δομικά λάθη πριν

Οπως βλέπεις:

  • Και τα δυο 'composition' και 'Composition' αναφέρονται στην ίδια στέγη, αλλά καταγράφονται ως δύο διαφορετικές κατηγορίες
  • Το ίδιο με 'asphalt' και 'Asphalt'
  • Το ίδιο με 'shake-shingle' και 'Shake Shingle'
  • Τελικά, 'asphalt,shake-shingle' πιθανότατα θα μπορούσε απλώς να συγκεντρωθεί 'Shake Shingle' επισης

Αφού αντικαταστήσουμε τα τυπογραφικά λάθη και την ασυνεπή χρήση κεφαλαίων, η κατανομή κλάσης γίνεται πολύ πιο καθαρή:

Διορθώστε τα δομικά σφάλματα μετά

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

  • πχ Αν ’N/A’ και ’Not Applicable’ εμφανίζονται ως δύο ξεχωριστές κλάσεις, θα πρέπει να τις συνδυάσετε.
  • π.χ ’IT’ και ’information_technology’ πρέπει να είναι μια ενιαία τάξη.

Φιλτράρετε τα ανεπιθύμητα ακραία σημεία

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

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

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

Αφαιρέστε τα Outliers
Έχει ένα βαθμό.

Χειριστείτε τα δεδομένα που λείπουν

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

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

Η «κοινή λογική» δεν είναι λογική εδώ

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

Αυτοί είναι:

  1. Ρίψη παρατηρήσεις που λείπουν τιμές
  2. Καταλογισμός οι τιμές που λείπουν με βάση άλλες παρατηρήσεις

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

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

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

Με λίγα λόγια, πρέπει πάντα πείτε τον αλγόριθμό σας ότι αρχικά έλειπε μια τιμή επειδή Η «έλλειψη» είναι σχεδόν πάντα κατατοπιστική από μόνη της.

Πώς μπορείτε λοιπόν να το κάνετε;

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

Λείπουν κατηγορηματικά δεδομένα

Ο καλύτερος τρόπος χειρισμού δεδομένων που λείπουν για κατηγορηματικός χαρακτηριστικά είναι απλώς να τα χαρακτηρίσετε ως ’Missing’!

  • Ουσιαστικά προσθέτεις α νέα τάξη για το χαρακτηριστικό.
  • Αυτό λέει στον αλγόριθμο ότι η τιμή έλειπε.
  • Αυτό ξεπερνά επίσης την τεχνική απαίτηση για να μην λείπουν τιμές.

Λείπουν αριθμητικά δεδομένα

Για αγνοούμενο αριθμητικός δεδομένα, θα έπρεπε σημαία και συμπλήρωση οι αξίες.

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

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

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

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

Περισσότερα για το Data Cleaning

Διαβάστε το υπόλοιπο της Εισαγωγής μας στην Επιστήμη Δεδομένων εδώ.

Schreibe einen Kommentar