Πώς να εφαρμόσετε τη γραμμική παλινδρόμηση για μηχανική εκμάθηση;



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

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

Τι είναι η παλινδρόμηση;

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





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

παράδειγμα-γραμμική παλινδρόμηση στη μηχανική μάθηση - edureka

Τύποι παλινδρόμησης

Τα ακόλουθα είναι τύποι παλινδρόμησης.



  1. Απλή γραμμική παλινδρόμηση
  2. Πολυωνυμική παλινδρόμηση
  3. Υποστήριξη Διάνυσμα Παλινδρόμησης
  4. Παλινδρόμηση δέντρων απόφασης
  5. Τυχαία παλινδρόμηση του δάσους

Απλή γραμμική παλινδρόμηση

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

Πολυωνυμική παλινδρόμηση

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

Υποστήριξη Διάνυσμα Παλινδρόμησης

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



Παλινδρόμηση δέντρων απόφασης

ΠΡΟΣ ΤΟ μπορεί να χρησιμοποιηθεί τόσο για παλινδρόμηση όσο και για . Στην περίπτωση παλινδρόμησης, χρησιμοποιούμε τον αλγόριθμο ID3 (Iterative Dichotomiser 3) για να αναγνωρίσουμε τον κόμβο διαχωρισμού μειώνοντας την τυπική απόκλιση.

Τυχαία παλινδρόμηση του δάσους

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

Τι είναι η γραμμική παλινδρόμηση;

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

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

Ορολογίες γραμμικής παλινδρόμησης

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

Λειτουργία κόστους

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

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

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

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

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

Κάθοδος κλίσης

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

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

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

Πλεονεκτήματα και μειονεκτήματα

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

Περιπτώσεις γραμμικής παλινδρόμησης

  • Πρόβλεψη πωλήσεων

  • Ανάλυση κινδύνου

  • Εφαρμογές στέγασης για την πρόβλεψη των τιμών και άλλων παραγόντων

  • Εφαρμογές χρηματοδότησης για την πρόβλεψη των τιμών των μετοχών, της αξιολόγησης των επενδύσεων κ.λπ.

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

Έχοντας αυτό κατά νου, ας ρίξουμε μια ματιά σε μια περίπτωση χρήσης.

Use Case - Εφαρμογή γραμμικής παλινδρόμησης

Η διαδικασία πραγματοποιείται στα ακόλουθα βήματα:

  1. Φόρτωση των δεδομένων
  2. Εξερεύνηση των δεδομένων
  3. Τεμαχισμός των δεδομένων
  4. Εκπαίδευση και διαχωρισμός δεδομένων
  5. Δημιουργήστε το μοντέλο
  6. Αξιολογήστε την ακρίβεια

Ας δούμε τις λεπτομέρειες καθενός από τα βήματα για την εφαρμογή γραμμικής παλινδρόμησης.

1. Φόρτωση των δεδομένων

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

από sklearn import datasets disease = datasets.load_diabetes () print (ασθένεια)

Παραγωγή:

2. Εξερεύνηση των δεδομένων

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

εκτύπωση (disease.keys ())

Παραγωγή:

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

εισαγωγή numpy ως np disease_X = disease.data [:, np.newaxis, 2] print (disease_X)

Παραγωγή:

Μετά από αυτό το βήμα, θα χωρίσουμε τα δεδομένα σε τρένο και σετ δοκιμών.

3. Διαχωρισμός των δεδομένων

disease_X_train = disease_X [: - 30] disease_X_test = disease_X [-20:] disease_Y_train = disease.target [: - 30] disease_Y_test = disease.target [-20:]

Το επόμενο μέρος περιλαμβάνει τη δημιουργία του μοντέλου, το οποίο θα περιλαμβάνει την εισαγωγή linear_model από το sklearn.

4. Δημιουργία του μοντέλου

από sklearn import linear_model reg = linear_model.LinearRegression () reg.fit (disease_X_train, disease_Y_train) y_predict = reg.predict (disease_X_test)

Για να αξιολογήσουμε την ακρίβεια του μοντέλου, θα χρησιμοποιήσουμε το μέσο σφάλμα τετραγώνου από το scikit-learn.

java τι κάνει το append

5. Αξιολόγηση

ακρίβεια = mean_squared_error (ασθένεια_Y_test, y_predict,) εκτύπωση (ακρίβεια) βάρη = reg.coef_ intercept = reg.intercept_ print (βάρη, αναχαίτιση)

Παραγωγή:

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

εισαγωγή matplotlib.pyplot ως plt plt.scatter (disease_X_test, disease_Y_test) plt.plot (disease_X_test, y_predict) plt.show ()

Παραγωγή:

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

# κάντε μια μικρή αλλαγή στον παραπάνω κώδικα και αφαιρέστε τον κώδικα σχεδίασης για να αποφύγετε τα σφάλματα ασθένεια_Χ = ασθένεια.data

Παραγωγή:

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

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

Εάν συναντήσετε οποιεσδήποτε ερωτήσεις, μη διστάσετε να κάνετε όλες τις ερωτήσεις σας στην ενότητα σχολίων του 'Linear Regression for Machine Learning' και η ομάδα μας θα χαρεί να απαντήσει.