στέλεχος Τι είναι το Gradient Boosting; - Unite.AI
Συνδεθείτε μαζί μας
Masterclass AI:

AI 101

Τι είναι το Gradient Boosting;

mm
Ενημερώθηκε on

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

Καθορισμός Gradient Boosting

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

Ας ξεκινήσουμε ορίζοντας τι σημαίνει να «ενισχύεις» έναν μαθητή. Οι αδύναμοι μαθητές μετατρέπονται σε δυνατούς μαθητές προσαρμόζοντας τις ιδιότητες του μαθησιακού μοντέλου. Ποιος ακριβώς αλγόριθμος μάθησης ενισχύεται;

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

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

Απεικόνιση του τρόπου με τον οποίο εκπαιδεύονται τα μοντέλα ενίσχυσης.
Φωτογραφία: SeattleDataBuy μέσω Wikimedia Commons, CC 4.0 (https://commons.wikimedia.org/wiki/File:Boosting.png)

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

Το μοντέλο τώρα αποτελείται από τις προβλέψεις για το αρχικό δέντρο και το νέο δέντρο (ή Δέντρο 1 + Δέντρο 2). Η ακρίβεια ταξινόμησης αξιολογείται για άλλη μια φορά με βάση το νέο μοντέλο. Ένα τρίτο δέντρο δημιουργείται με βάση το υπολογισμένο σφάλμα για το μοντέλο και τα βάρη προσαρμόζονται για άλλη μια φορά. Αυτή η διαδικασία συνεχίζεται για έναν δεδομένο αριθμό επαναλήψεων και το τελικό μοντέλο είναι ένα μοντέλο συνόλου που χρησιμοποιεί το σταθμισμένο άθροισμα των προβλέψεων που έγιναν από όλα τα δέντρα που κατασκευάστηκαν προηγουμένως.

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

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

Ενίσχυση κλίσης

Θα εξετάσουμε τώρα έναν από τους πιο συνηθισμένους αλγόριθμους ενίσχυσης. Τα μοντέλα ενίσχυσης κλίσης (GBM) είναι γνωστά για την υψηλή τους ακρίβεια και ενισχύουν τις γενικές αρχές που χρησιμοποιούνται στο AdaBoost.

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

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

Για να γίνει πιο σαφές:

Προβλέψεις νέου μοντέλου = μεταβλητές εξόδου – παλιές ατελείς προβλέψεις.

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

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

Σημειώστε ότι μια μεγάλη ποικιλία άλλων συναρτήσεων απώλειας (όπως η λογαριθμική απώλεια) μπορεί να χρησιμοποιηθεί από ένα GBM. Το MSE επιλέχθηκε παραπάνω για λόγους απλότητας.

Παραλλαγές σε μοντέλα ενίσχυσης κλίσης

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

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

Συρρίκνωση

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

Περιορισμοί δέντρων

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

Τυχαία δειγματοληψία

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

Ποινική μάθηση

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

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