Πολλαπλή Γραμμική Παλινδρόμηση σε R: Απλή & Σταδιακή με Παραδείγματα

⚡ Έξυπνη Σύνοψη

Η Απλή και Πολλαπλή Γραμμική Παλινδρόμηση στην R μοντελοποιεί ένα συνεχές αποτέλεσμα ως ένα σταθμισμένο άθροισμα προγνωστικών που προσαρμόζονται με συνήθεις ελαχίστες τετραγώνους. Αυτή η αναλυτική περιγραφή καλύπτει την lm(), την ανάγνωση συντελεστών, τους προγνωστικούς παράγοντες, τη διαγνωστική υπολειμμάτων, την πρόβλεψη και την αυτόματη επιλογή μεταβλητών.

  • 📐 Βασική Εξίσωση: Η απλή παλινδρόμηση ταιριάζει με την εξίσωση y = alpha + beta x, και η πολλαπλή παλινδρόμηση επεκτείνει την ίδια γραμμή σε k προγνωστικούς παράγοντες σε μορφή πίνακα.
  • 🧮 Μέθοδος Εκτίμησης: Η μέθοδος των συνήθων ελαχίστων τετραγώνων ελαχιστοποιεί το άθροισμα των τετραγώνων των κάθετων αποστάσεων μεταξύ των παρατηρούμενων και των προβλεπόμενων τιμών.
  • Σύνταξη μοντέλου: Η συνάρτηση lm(formula, data) αντικαθιστά το σύμβολο ισότητας με μια περισπωμένη και η συνάρτηση -1 αφαιρεί την τομή.
  • 📊 Έξοδος ανάγνωσης: Η summary() αναφέρει συντελεστές, τιμές p και προσαρμοσμένο R-τετράγωνο, το οποίο φτάνει το 0.8199 στο παράδειγμα mtcars.
  • 🔎 Διαγνωστικά: Η par(mfrow = c(2, 2)) ακολουθούμενη από την plot(fit) αποδίδει τα τέσσερα διαγράμματα υπολοίπων που χρησιμοποιούνται για τον έλεγχο των υποθέσεων OLS.
  • 🔁 Επιλογή μεταβλητής: Η σταδιακή παλινδρόμηση στο olsrr προσθέτει και αφαιρεί προγνωστικούς παράγοντες με βάση την τιμή p και καταλήγει στο βάρος συν την hp.

Πολλαπλή Γραμμική Παλινδρόμηση στο R

Πού εντάσσεται η γραμμική παλινδρόμηση στη μηχανική μάθηση

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

Άλλες συνηθισμένες εφαρμογές της μηχανικής μάθησης περιλαμβάνουν:

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

Εποπτευόμενη μάθηση

In Εποπτευόμενη μάθηση, τα δεδομένα εκπαίδευσης που τροφοδοτείτε στον αλγόριθμο περιλαμβάνουν μια ετικέτα.

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

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

Μερικοί βασικοί αλγόριθμοι εποπτευόμενης μάθησης είναι:

  • Γραμμικής παλινδρόμησης
  • Λογιστική παλινδρόμηση
  • Κοντινότεροι γείτονες
  • Μηχανή φορέα υποστήριξης (SVM)
  • Δέντρα απόφασης και Τυχαίο Δάσος
  • Νευρωνικά δίκτυα

Μη εποπτευόμενη μάθηση

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

  • Κ-μέσος
  • Ιεραρχικός Cluster Ανάλυση
  • Μεγιστοποίηση προσδοκιών
  • Οπτικοποίηση και μείωση διαστάσεων
  • Ανάλυση κύριων συστατικών
  • PCA πυρήνα
  • Τοπική-Γραμμική Ενσωμάτωση

Με αυτό το πλαίσιο στη θέση του, το υπόλοιπο αυτού του σεμιναρίου δημιουργεί μοντέλα παλινδρόμησης σε R βήμα προς βήμα.

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

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

Το απλούστερο πιθανοτικό μοντέλο είναι το ευθύγραμμο μοντέλο:

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

όπου

  • y = Εξαρτημένη μεταβλητή
  • x = Ανεξάρτητη μεταβλητή
  • Απλή γραμμική παλινδρόμηση στο R = συστατικό τυχαίου σφάλματος
  • Απλή γραμμική παλινδρόμηση στο R = αναχαιτίζω
  • Απλή γραμμική παλινδρόμηση στο R = Συντελεστής x

Εξετάστε την ακόλουθη πλοκή:

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

Η εξίσωση είναι Απλή γραμμική παλινδρόμηση στο R Σε αυτήν την εξίσωση, η τομή είναι 4.77, επομένως όταν το x ισούται με 0, η προσαρμοσμένη τιμή του y είναι 4.77. Η κλίση σας δείχνει σε ποια αναλογία μεταβάλλεται το y όταν το x μεταβάλλεται.

Για να υπολογίσετε τις βέλτιστες τιμές του Απλή γραμμική παλινδρόμηση στο R και Απλή γραμμική παλινδρόμηση στο R, χρησιμοποιείτε μια μέθοδο που ονομάζεται Συνήθη ελάχιστα τετράγωνα (OLS). Αυτή η μέθοδος προσπαθεί να βρει τις παραμέτρους που ελαχιστοποιούν το άθροισμα των τετραγωνικών σφαλμάτων, δηλαδή την κατακόρυφη απόσταση μεταξύ των προβλεπόμενων τιμών y και των πραγματικών τιμών y. Η διαφορά είναι γνωστή ως το όρος σφάλματος.

Πριν υπολογίσετε το μοντέλο, μπορείτε να προσδιορίσετε εάν μια γραμμική σχέση μεταξύ y και x είναι εύλογη σχεδιάζοντας ένα διάγραμμα διασποράς.

Διάγραμμα διασποράς

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

library(ggplot2)
path <- 'https://raw.githubusercontent.com/guru99-edu/R-Programming/master/women.csv'
df <-read.csv(path)
ggplot(df,aes(x=height, y =  weight))+
geom_point()

Παραγωγή:

Διάγραμμα διασποράς

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

Εκτιμήσεις ελάχιστων τετραγώνων

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

Θέλετε να υπολογίσετε: Εκτιμήσεις ελάχιστων τετραγώνων

Ο στόχος της παλινδρόμησης OLS είναι να ελαχιστοποιήσει την ακόλουθη εξίσωση:

Εκτιμήσεις ελάχιστων τετραγώνων

όπου

Εκτιμήσεις ελάχιστων τετραγώνων είναι η πραγματική τιμή και Εκτιμήσεις ελάχιστων τετραγώνων είναι η προβλεπόμενη τιμή.

Η λύση για Εκτιμήσεις ελάχιστων τετραγώνων is Εκτιμήσεις ελάχιστων τετραγώνων

Σημειώστε ότι Εκτιμήσεις ελάχιστων τετραγώνων σημαίνει τη μέση τιμή του x

Η λύση για Εκτιμήσεις ελάχιστων τετραγώνων is Εκτιμήσεις ελάχιστων τετραγώνων

Στην R, μπορείτε να χρησιμοποιήσετε τις συναρτήσεις cov() και var() για να εκτιμήσετε Εκτιμήσεις ελάχιστων τετραγώνων και μπορείτε να χρησιμοποιήσετε τη συνάρτηση mean() για να εκτιμήσετε Εκτιμήσεις ελάχιστων τετραγώνων

beta <- cov(df$height, df$weight) / var (df$height)
beta

Παραγωγή:

##[1] 3.45
alpha <- mean(df$weight) - beta * mean(df$height)
alpha

Παραγωγή:

## [1] -87.51667

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

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

Πολλαπλή Γραμμική Παλινδρόμηση στο R

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

Πολλαπλή Γραμμική Παλινδρόμηση στο R

Στη σημειογραφία μήτρας, μπορείτε να ξαναγράψετε το μοντέλο:

  • Πολλαπλή Γραμμική Παλινδρόμηση στο R

Η εξαρτημένη μεταβλητή y είναι πλέον συνάρτηση k ανεξάρτητων μεταβλητών. Η τιμή του συντελεστή Πολλαπλή Γραμμική Παλινδρόμηση στο R καθορίζει τη συνεισφορά της ανεξάρτητης μεταβλητής Πολλαπλή Γραμμική Παλινδρόμηση στο R και Πολλαπλή Γραμμική Παλινδρόμηση στο R.

Εισάγουμε εν συντομία την υπόθεση που κάναμε για το τυχαίο σφάλμα Πολλαπλή Γραμμική Παλινδρόμηση στο R του OLS:

  • Μέση τιμή ίση με 0
  • Διακύμανση ίση με Πολλαπλή Γραμμική Παλινδρόμηση στο R
  • Κανονική κατανομή
  • Τα τυχαία σφάλματα είναι ανεξάρτητα (με πιθανολογική έννοια)

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

Η λύση κλειστής μορφής είναι:

Πολλαπλή Γραμμική Παλινδρόμηση στο R

με:

  • δείχνει το μεταθέτω του πίνακα X
  • Πολλαπλή Γραμμική Παλινδρόμηση στο R δείχνει το αντιστρέψιμη μήτρα

Τα παρακάτω παραδείγματα χρησιμοποιούν το ενσωματωμένο σύνολο δεδομένων mtcars. Στόχος είναι η πρόβλεψη μιλίων ανά γαλόνι (mpg) από ένα σύνολο χαρακτηριστικών.

Συνεχείς μεταβλητές στο R

Προς το παρόν, θα χρησιμοποιήσετε μόνο τις συνεχείς μεταβλητές και θα αφήσετε στην άκρη τα κατηγορηματικά χαρακτηριστικά. Η μεταβλητή am είναι μια δυαδική μεταβλητή που παίρνει την τιμή 1 εάν το κιβώτιο ταχυτήτων είναι χειροκίνητο και 0 για αυτόματα αυτοκίνητα. Το vs είναι επίσης μια δυαδική μεταβλητή.

library(dplyr)
df <- mtcars %>%
select(-c(am, vs, cyl, gear, carb))
glimpse(df)

Παραγωγή:

## Observations: 32
## Variables: 6
## $ mpg  <dbl> 21.0, 21.0, 22.8, 21.4, 18.7, 18.1, 14.3, 24.4, 22.8, 19....
## $ disp <dbl> 160.0, 160.0, 108.0, 258.0, 360.0, 225.0, 360.0, 146.7, 1...
## $ hp   <dbl> 110, 110, 93, 110, 175, 105, 245, 62, 95, 123, 123, 180, ...
## $ drat <dbl> 3.90, 3.90, 3.85, 3.08, 3.15, 2.76, 3.21, 3.69, 3.92, 3.9...
## $ wt   <dbl> 2.620, 2.875, 2.320, 3.215, 3.440, 3.460, 3.570, 3.190, 3...
## $ qsec <dbl> 16.46, 17.02, 18.61, 19.44, 17.02, 20.22, 15.84, 20.00, 2...

Μπορείτε να χρησιμοποιήσετε τη συνάρτηση lm() για να υπολογίσετε τις παραμέτρους. Η βασική σύνταξη αυτής της συνάρτησης είναι:

lm(formula, data, subset)
Arguments:
	-formula: The equation you want to estimate	
	-data: The dataset used
	-subset: Estimate the model on a subset of the dataset

Θυμηθείτε ότι μια εξίσωση έχει την ακόλουθη μορφή

Συνεχείς μεταβλητές στο R

στο Ρ

  • Το σύμβολο = αντικαθίσταται από ~
  • Κάθε x αντικαθίσταται από το όνομα της μεταβλητής
  • Εάν θέλετε να αφαιρέσετε τη σταθερά, προσθέστε -1 στο τέλος του τύπου

Παράδειγμα:

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

Συνεχείς μεταβλητές στο R

Η εξίσωση στο R γράφεται ως εξής:

y ~ X1+ X2+…+Xn # Με διακοπή

Έτσι για το παράδειγμά μας:

  • Ζυγίζω ~ ύψος + έσοδα

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

Συνεχείς μεταβλητές στο R

Θα εκτιμήσετε την πρώτη σας γραμμική παλινδρόμηση και θα αποθηκεύσετε το αποτέλεσμα στο κατάλληλο αντικείμενο.

model <- mpg ~ disp + hp + drat + wt + qsec
fit <- lm(model, df)
fit

Code εξήγηση

  • μοντέλο <- mpg ~ disp + hp + drat + wt + qsec: Αποθηκεύστε το μοντέλο για εκτίμηση
  • lm(μοντέλο, df): Υπολογίστε το μοντέλο με το πλαίσιο δεδομένων df
## 
## Call:
## lm(formula = model, data = df)
## 
## Coefficients:
## (Intercept)         disp           hp         drat           wt  
##    16.53357      0.00872     -0.02060      2.01577     -4.38546  
##        qsec  
##     0.64015	

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

summary(fit)

Παραγωγή:

## return the p-value and coefficient
## 
## Call:
## lm(formula = model, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -3.5404 -1.6701 -0.4264  1.1320  5.4996 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)   
## (Intercept) 16.53357   10.96423   1.508  0.14362   
## disp         0.00872    0.01119   0.779  0.44281   
## hp          -0.02060    0.01528  -1.348  0.18936   
## drat         2.01578    1.30946   1.539  0.13579   
## wt          -4.38546    1.24343  -3.527  0.00158 **
## qsec         0.64015    0.45934   1.394  0.17523   
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.558 on 26 degrees of freedom
## Multiple R-squared:  0.8489, Adjusted R-squared:  0.8199 
## F-statistic: 29.22 on 5 and 26 DF, p-value: 6.892e-10

Συμπεράσματα από την έξοδο του παραπάνω πίνακα

  • Ο πίνακας δείχνει μια ισχυρή αρνητική σχέση μεταξύ wt και mpg, και έναν θετικό συντελεστή για το drat.
  • Μόνο η μεταβλητή wt έχει στατιστικό αντίκτυπο στο mpg. Θυμηθείτε, για να ελέγξουμε μια υπόθεση στη στατιστική, χρησιμοποιούμε:
    • H0: Καμία στατιστική επίδραση
    • H1: Ο προγνωστικός παράγοντας έχει σημαντική επίδραση στο y
    • Εάν η τιμή p είναι μικρότερη από 0.05, σημαίνει ότι η μεταβλητή είναι στατιστικά σημαντική
  • Προσαρμοσμένο R-τετράγωνο: το μερίδιο της διακύμανσης του y που εξηγείται από το μοντέλο, διορθωμένο για τον αριθμό των προγνωστικών παραγόντων. Εδώ είναι 0.8199, επομένως το μοντέλο εξηγεί περίπου το 82% της διακύμανσης του mpg. Το R-τετράγωνο βρίσκεται πάντα μεταξύ 0 και 1, και όσο υψηλότερο είναι τόσο καλύτερο.

Μπορείτε να εκτελέσετε το ANOVA δοκιμή για την εκτίμηση της επίδρασης κάθε χαρακτηριστικού στις διακυμάνσεις με τη συνάρτηση anova().

anova(fit)

Παραγωγή:

## Analysis of Variance Table
## 
## Response: mpg
##           Df Sum Sq Mean Sq  F value   Pr(>F)    
## disp       1 808.89  808.89 123.6185 2.23e-11 ***
## hp         1  33.67   33.67   5.1449 0.031854 *  
## drat       1  30.15   30.15   4.6073 0.041340 *  
## wt         1  70.51   70.51  10.7754 0.002933 ** 
## qsec       1  12.71   12.71   1.9422 0.175233    
## Residuals 26 170.13    6.54                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1	

Ένας πιο συμβατικός τρόπος εκτίμησης της απόδοσης του μοντέλου είναι η εμφάνιση του υπολειπόμενου σε διαφορετικές μετρήσεις.

Μπορείτε να χρησιμοποιήσετε τη συνάρτηση plot() για να εμφανίσετε τέσσερα γραφήματα:

– Υπολείμματα έναντι προσαρμοσμένων τιμών

– Κανονική γραφική παράσταση QQ: Θεωρητικό τεταρτημόριο έναντι τυποποιημένων υπολειμμάτων

– Κλίμακα-Τοποθεσία: Προσαρμοσμένες τιμές έναντι τετραγωνικών ριζών των τυποποιημένων υπολειμμάτων

– Υπολείμματα έναντι μόχλευσης: Μόχλευση έναντι τυποποιημένων υπολειμμάτων

Προσθέτετε τον κώδικα par(mfrow = c(2, 2)) πριν από την plot(fit). Εάν δεν προσθέσετε αυτήν τη γραμμή κώδικα, η R σας ζητά να πατήσετε την εντολή enter για να εμφανιστεί το επόμενο γράφημα.

par(mfrow = c(2, 2))

Code εξήγηση

  • (mfrow=c(2,2)): επιστρέψτε ένα παράθυρο με τα τέσσερα γραφήματα δίπλα-δίπλα.
  • Οι πρώτες 2 προσθέτουν τον αριθμό των σειρών
  • Το δεύτερο 2 προσθέτει τον αριθμό των στηλών.
  • Εάν γράψετε (mfrow=c(3,2)): θα δημιουργήσετε ένα παράθυρο 3 σειρών 2 στηλών
plot(fit)

Παραγωγή:

Συνεχείς μεταβλητές στο R

Ο τύπος lm() επιστρέφει μια λίστα που περιέχει πολλές χρήσιμες πληροφορίες. Μπορείτε να αποκτήσετε πρόσβαση σε αυτές με το αντικείμενο fit που έχετε δημιουργήσει, ακολουθούμενο από το σύμβολο $ και τις πληροφορίες που θέλετε να εξαγάγετε.tract.

– συντελεστές: «fit$coefficients».

– υπολείμματα: «fit$residuals».

– προσαρμοσμένη τιμή: «fit$fitted.values».

Παλινδρόμηση παραγόντων στο R

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

df <- mtcars %>%
    mutate(cyl = factor(cyl),
        vs = factor(vs),
        am = factor(am),
        gear = factor(gear),
        carb = factor(carb))
model <- mpg ~ .
summary(lm(model, df))

Παραγωγή:

## 
## Call:
## lm(formula = model, data = df)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -3.5087 -1.3584 -0.0948  0.7745  4.6251 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)  
## (Intercept) 23.87913   20.06582   1.190   0.2525  
## cyl6        -2.64870    3.04089  -0.871   0.3975  
## cyl8        -0.33616    7.15954  -0.047   0.9632  
## disp         0.03555    0.03190   1.114   0.2827  
## hp          -0.07051    0.03943  -1.788   0.0939 .
## drat         1.18283    2.48348   0.476   0.6407  
## wt          -4.52978    2.53875  -1.784   0.0946 .
## qsec         0.36784    0.93540   0.393   0.6997  
## vs1          1.93085    2.87126   0.672   0.5115  
## am1          1.21212    3.21355   0.377   0.7113  
## gear4        1.11435    3.79952   0.293   0.7733  
## gear5        2.52840    3.73636   0.677   0.5089  
## carb2       -0.97935    2.31797  -0.423   0.6787  
## carb3        2.99964    4.29355   0.699   0.4955  
## carb4        1.09142    4.44962   0.245   0.8096  
## carb6        4.47757    6.38406   0.701   0.4938  
## carb8        7.25041    8.36057   0.867   0.3995  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.833 on 15 degrees of freedom
## Multiple R-squared:  0.8931, Adjusted R-squared:  0.779 
## F-statistic:  7.83 on 16 and 15 DF,  p-value: 0.000124

Το R χρησιμοποιεί το πρώτο επίπεδο παράγοντα ως βασική ομάδα. Πρέπει να συγκρίνετε τους συντελεστές της άλλης ομάδας με τη βασική ομάδα.

Υποθέσεις Γραμμικής Παλινδρόμησης στην R

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

  • Γραμμικότητα: η σχέση μεταξύ κάθε προγνωστικού παράγοντα και του y είναι γραμμική. Ελέγξτε το Υπολείμματα έναντι Τοποθετημένων διάγραμμα· μια ορατή καμπύλη σημαίνει ότι χρειάζεστε έναν μετασχηματισμό ή έναν πολυωνυμικό όρο.
  • Ανεξαρτησία: Οι όροι σφάλματος δεν είναι συσχετισμένοι. Τα δεδομένα με χρονική σειρά συχνά παραβιάζουν αυτό το πρότυπο, το οποίο μπορείτε να ελέγξετε με την durbinWatsonTest() από το πακέτο car.
  • Ομοσκεδαστικότητα: η διακύμανση σφάλματος είναι σταθερή σε όλες τις προσαρμοσμένες τιμές. Ένα σχήμα χοάνης στο Κλίμακα-Τοποθεσία Το γράφημα υποδηλώνει παραβίαση.
  • Κανονικότητα υπολειμμάτων: τα σφάλματα ακολουθούν μια κανονική κατανομή. Τα σημεία θα πρέπει να βρίσκονται στη διαγώνιο του Κανονικό QQ οικόπεδο.
  • Χωρίς πολυσυγγραμμικότητα: Οι προγνωστικοί παράγοντες δεν είναι σχεδόν διπλότυποι ο ένας του άλλου. Ένας συντελεστής πληθωρισμού διακύμανσης άνω του 5 είναι η συνήθης γραμμή προειδοποίησης.
library(car)
vif(fit)           # variance inflation factors
shapiro.test(residuals(fit))   # normality of residuals

Οι παραβιάσεις δεν ακυρώνουν πάντα ένα μοντέλο, αλλά αλλάζουν την αξιοπιστία των τιμών p, επομένως ελέγξτε τις πριν αναφέρετε οποιονδήποτε συντελεστή.

Πώς να κάνετε προβλέψεις με ένα γραμμικό μοντέλο παλινδρόμησης στην R

Η προσαρμογή ενός μοντέλου είναι μόνο η μισή δουλειά. Η συνάρτηση predict() εφαρμόζει τους προσαρμοσμένους συντελεστές σε νέες παρατηρήσεις.

predict(object, newdata, interval = "none", level = 0.95)
arguments:
-object: The model returned by lm()
-newdata: A data frame whose columns match the predictors used in the formula
-interval: "none", "confidence" for the mean response, or "prediction" for a single new case
-level: The confidence level, 0.95 by default

Ακολουθήστε αυτά τα τρία βήματα.

  1. Δημιουργήστε ένα πλαίσιο δεδομένων νέων περιπτώσεων. Τα ονόματα των στηλών πρέπει να ταιριάζουν ακριβώς με τα ονόματα των προγνωστικών στον τύπο και τα επίπεδα των παραγόντων πρέπει να ταιριάζουν με τα δεδομένα εκπαίδευσης.
  2. Καλέστε την predict(). Περάστε το προσαρμοσμένο αντικείμενο και το νέο πλαίσιο δεδομένων.
  3. Προσθέστε ένα διάστημα. Επιλέξτε «εμπιστοσύνη» όταν θέλετε την αβεβαιότητα γύρω από τη μέση απόκριση και «πρόβλεψη» όταν θέλετε την αυτονομία για ένα μεμονωμένο αυτοκίνητο.
new_cars <- data.frame(wt = c(2.5, 3.2), hp = c(110, 175))
fit_final <- lm(mpg ~ wt + hp, data = mtcars)

predict(fit_final, newdata = new_cars)
predict(fit_final, newdata = new_cars, interval = "prediction")

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

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

Γραμμική Παλινδρόμηση έναντι Λογιστικής Παλινδρόμησης σε R

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

Κριτήρια γραμμική Παλινδρόμηση Λογιστική παλινδρόμηση
Μεταβλητή απόκρισης Συνεχής Δυαδικό ή κατηγορικό
Προβλεπόμενη απόδοση Οποιοσδήποτε πραγματικός αριθμός Μια πιθανότητα μεταξύ 0 και 1
Εκτίμηση Συνηθισμένα ελάχιστα τετράγωνα Μέγιστη πιθανότητα
Μέτρο προσαρμογής R-τετράγωνο, RMSE AIC, απόκλιση, ακρίβεια
Συνάρτηση R lm(τύπος, δεδομένα) glm(τύπος, δεδομένα, οικογένεια = “διωνυμικό”)

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

Βηματική Γραμμική Παλινδρόμηση στο R

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

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

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

Η βασική σύνταξη για το ggscatmat() είναι:

ggscatmat(df, columns = 1:ncol(df), corMethod = "pearson")
arguments:
-df:  A matrix of continuous variables
-columns: Pick up the columns to use in the function. By default, all columns are used
-corMethod: Define the function to compute the correlation between variable. By default, the algorithm uses the Pearson formula

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

library(GGally)
df <- mtcars %>%
	select(-c(am, vs, cyl, gear, carb))
ggscatmat(df, columns = 1: ncol(df))

Παραγωγή:

Βηματική Γραμμική Παλινδρόμηση στο R

Βήμα προς βήμα Παλινδρόμηση Παράδειγμα

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

Πρέπει να εγκαταστήσετε το πακέτο olsrr από το CRAN. Το πακέτο δεν είναι ακόμα διαθέσιμο στο Anaconda. Ως εκ τούτου, το εγκαθιστάτε απευθείας από τη γραμμή εντολών:

install.packages("olsrr")

Μπορείτε να σχεδιάσετε όλα τα υποσύνολα δυνατοτήτων με τα κριτήρια προσαρμογής (π.χ. R-square, Adjusted R-square, Bayesian κριτήρια). Το μοντέλο με τα χαμηλότερα κριτήρια AIC θα είναι το τελικό μοντέλο.

library(olsrr)
model <- mpg~.
fit <- lm(model, df)
test <- ols_all_subset(fit)
plot(test)

Code εξήγηση

  • mpg ~.: Κατασκευάστε το μοντέλο για εκτίμηση
  • lm(μοντέλο, df): Εκτέλεση του μοντέλου OLS
  • ols_all_subset(προσαρμογή): Κατασκευάστε τα γραφήματα με τις σχετικές στατιστικές πληροφορίες
  • πλοκή (δοκιμή): Σχεδιάστε τα γραφήματα

Παραγωγή:

Βήμα προς βήμα Παλινδρόμηση Παράδειγμα

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

Βηματική Γραμμική Παλινδρόμηση στο R
Βηματική Γραμμική Παλινδρόμηση στο R
  • Βήμα 1: Αναδρομή κάθε προγνωστικού στο y ξεχωριστά. Δηλαδή, παλινδρομήστε το x_1 στο y, το x_2 στο y στο x_n. Αποθηκεύστε το p-value και διατηρήστε τον παλινδρομητή με τιμή p χαμηλότερη από ένα καθορισμένο όριο (0.1 από προεπιλογή). Οι προγνωστικοί παράγοντες με σημαντικότητα χαμηλότερη από το όριο θα προστεθούν στο τελικό μοντέλο. Εάν καμία μεταβλητή δεν έχει τιμή p χαμηλότερη από το όριο εισαγωγής, τότε ο αλγόριθμος σταματά και έχετε το τελικό σας μοντέλο μόνο με σταθερά.
  • Βήμα 2: Χρησιμοποιήστε τον προγνωστικό δείκτη με τη χαμηλότερη τιμή p και προσθέτετε ξεχωριστά μία μεταβλητή. Παθαίνεις μια σταθερά, ο καλύτερος προγνωστικός δείκτης του βήματος ένα και μιας τρίτης μεταβλητής. Προσθέτετε στο σταδιακό μοντέλο, τους νέους προγνωστικούς παράγοντες με τιμή χαμηλότερη από το όριο εισαγωγής. Εάν καμία μεταβλητή δεν έχει τιμή p μικρότερη από 0.1, τότε ο αλγόριθμος σταματά και έχετε το τελικό σας μοντέλο με έναν μόνο προγνωστικό παράγοντα. Παθάνετε το σταδιακό μοντέλο για να ελέγξετε τη σημασία των καλύτερων προγνωστικών του βήματος 1. Εάν είναι υψηλότερο από το όριο αφαίρεσης, το κρατάτε στο σταδιακό μοντέλο. Διαφορετικά το αποκλείεις.
  • Βήμα 3: Αντιγράφετε το βήμα 2 στο νέο καλύτερο σταδιακό μοντέλο. Ο αλγόριθμος προσθέτει προγνωστικούς παράγοντες στο σταδιακό μοντέλο με βάση τις τιμές εισαγωγής και αποκλείει τον προγνωστικό από το σταδιακό μοντέλο εάν δεν ικανοποιεί το όριο εξαίρεσης.
  • Ο αλγόριθμος συνεχίζει μέχρι να μην μπορεί να προστεθεί ή να εξαιρεθεί καμία μεταβλητή.

Μπορείτε να εκτελέσετε τον αλγόριθμο με τη συνάρτηση ols_stepwise() από το πακέτο olsrr.

ols_stepwise(fit, pent = 0.1, prem = 0.3, details = FALSE)

arguments:
-fit:  Model to fit. Need to use `lm()`before to run `ols_stepwise()
-pent: Threshold of the p-value used to enter a variable into the stepwise model. By default, 0.1
-prem: Threshold of the p-value used to exclude a variable into the stepwise model. By default, 0.3
-details: Print the details of each step

⚠️ Σημείωση για το πακέτο: Οι πρόσφατες εκδόσεις του olsrr μετονόμασαν αυτές τις συναρτήσεις. Χρησιμοποιήστε ols_step_all_possible() στη θέση της ols_all_subset() και ols_step_both_p() στη θέση της ols_stepwise(). Τα ορίσματα και η έξοδος παραμένουν αμετάβλητα.

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

Εξαρτημένη μεταβλητή Ανεξάρτητες μεταβλητές
mpg διανομή
hp
αρουραίος
wt
qsec

Αρχική

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

## [[1]]
##  (Intercept)         disp 
## 3.576586e-21 9.380327e-10 
## 
## [[2]]
##  (Intercept)           hp 
## 6.642736e-18 1.787835e-07 
## 
## [[3]]
##  (Intercept)         drat 
## 0.1796390847 0.0000177624 
## 
## [[4]]
##  (Intercept)           wt 
## 8.241799e-19 1.293959e-10 
## 
## [[5]
## (Intercept)        qsec 
##  0.61385436  0.01708199

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

Βήμα 1

Στο πρώτο βήμα, ο αλγόριθμος τρέχει mpg σε wt και τις άλλες μεταβλητές ανεξάρτητα.

## [[1]]
##  (Intercept)           wt         disp
## 4.910746e-16 7.430725e-03 6.361981e-02 
## 
## [[2]]
##  (Intercept)           wt           hp 
## 2.565459e-20 1.119647e-06 1.451229e-03 
## 
## [[3]]
##  (Intercept)           wt         drat 
## 2.737824e-04 1.589075e-06 3.308544e-01 
## 
## [[4]]
##  (Intercept)           wt         qsec 
## 7.650466e-04 2.518948e-11 1.499883e-03

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

Βήμα 2

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

## [[1]]
##  (Intercept)           wt           hp         disp 
## 1.161936e-16 1.330991e-03 1.097103e-02 9.285070e-01 
## 
## [[2]]
##  (Intercept)           wt           hp         drat 
## 5.133678e-05 3.642961e-04 1.178415e-03 1.987554e-01 
## 
## [[3]]
##  (Intercept)           wt           hp         qsec 
## 2.784556e-03 3.217222e-06 2.441762e-01 2.546284e-01

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

## 
## Call:
## lm(formula = mpg ~ wt + hp, data = df)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -3.941 -1.600 -0.182  1.050  5.854 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 37.22727    1.59879  23.285  < 2e-16 ***
## wt          -3.87783    0.63273  -6.129 1.12e-06 ***
## hp          -0.03177    0.00903  -3.519  0.00145 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.593 on 29 degrees of freedom
## Multiple R-squared:  0.8268, Adjusted R-squared:  0.8148 
## F-statistic: 69.21 on 2 and 29 DF,  p-value: 9.109e-12

Μπορείτε να χρησιμοποιήσετε τη συνάρτηση ols_stepwise() για να συγκρίνετε τα αποτελέσματα.

stp_s <-ols_stepwise(fit, details=TRUE)

Παραγωγή:

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

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

## You are selecting variables based on p value...
## 1 variable(s) added....
## Variable Selection Procedure
##  Dependent Variable: mpg 
## 
##  Stepwise Selection: Step 1 
## 
##  Variable wt Entered 
## 
##                         Model Summary                          
## --------------------------------------------------------------
## R                       0.868       RMSE                3.046 
## R-Squared               0.753       Coef. Var          15.161 
## Adj. R-Squared          0.745       MSE                 9.277 
## Pred R-Squared          0.709       MAE                 2.341 
## --------------------------------------------------------------
##  RMSE: Root Mean Square Error 
##  MSE: Mean Square Error 
##  MAE: Mean Absolute Error 
##		ANOVA                                 
## --------------------------------------------------------------------
##                 Sum of                                              
##                Squares        DF    Mean Square      F         Sig. 
## --------------------------------------------------------------------
## Regression     847.725         1        847.725    91.375    0.0000 
## Residual       278.322        30          9.277                     
## Total         1126.047        31                                    
## --------------------------------------------------------------------
## 
##                                   Parameter Estimates                                    
## ----------------------------------------------------------------------------------------
##       model      Beta    Std. Error    Std. Beta      t        Sig      lower     upper 
## ----------------------------------------------------------------------------------------
## (Intercept)    37.285         1.878                 19.858    0.000    33.450    41.120 
##          wt    -5.344         0.559       -0.868    -9.559    0.000    -6.486    -4.203 
## ----------------------------------------------------------------------------------------
## 1 variable(s) added...
## Stepwise Selection: Step 2 
## 
##  Variable hp Entered 
## 
##                         Model Summary                          
## --------------------------------------------------------------
## R                       0.909       RMSE                2.593 
## R-Squared               0.827       Coef. Var          12.909 
## Adj. R-Squared          0.815       MSE                 6.726 
## Pred R-Squared          0.781       MAE                 1.901 
## --------------------------------------------------------------
##  RMSE: Root Mean Square Error 
##  MSE: Mean Square Error 
##  MAE: Mean Absolute Error 
##			ANOVA                                 
## --------------------------------------------------------------------
##                 Sum of                                              
##                Squares        DF    Mean Square      F         Sig. 
## --------------------------------------------------------------------
## Regression     930.999         2        465.500    69.211    0.0000 
## Residual       195.048        29          6.726                     
## Total         1126.047        31                                    
## --------------------------------------------------------------------
## 
##                                   Parameter Estimates                                    
## ----------------------------------------------------------------------------------------
##       model      Beta    Std. Error    Std. Beta      t        Sig      lower     upper 
## ----------------------------------------------------------------------------------------
## (Intercept)    37.227         1.599                 23.285    0.000    33.957    40.497 
##          wt    -3.878         0.633       -0.630    -6.129    0.000    -5.172    -2.584 
##          hp    -0.032         0.009       -0.361    -3.519    0.001    -0.050    -0.013 
## ----------------------------------------------------------------------------------------
## No more variables to be added or removed.

Γραμμική Παλινδρόμηση στην R: Βασικά Συμπεράσματα και Αναφορά Συναρτήσεων

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

Κάθε συνάρτηση που χρησιμοποιείται σε αυτό το σεμινάριο παρατίθεται παρακάτω:

Βιβλιοθήκη Σκοπός Λειτουργία Επιχειρήματα
βάση Υπολογίστε μια γραμμική παλινδρόμηση lm() τύπος, δεδομένα
βάση Συνοψίστε το μοντέλο περίληψη() ταιριάζουν
βάση Extracσυντελεστές t lm()$συντελεστής
βάση Extract υπολείμματα lm()$υπολείμματα
βάση Extracπροσαρμοσμένη τιμή t lm()$fitted.values
olsrr Εκτέλεση σταδιακής παλινδρόμησης ols_stepwise() fit, pent = 0.1, prem = 0.3, λεπτομέρειες = FALSE

ΣημείωσηΘυμηθείτε να μετατρέψετε τις κατηγορικές μεταβλητές σε παράγοντες πριν προσαρμόσετε το μοντέλο.

Συχνές Ερωτήσεις

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

Το γράφημα Υπολειμμάτων έναντι Μόχλευσης επισημαίνει τα σημεία επιρροής μέσω της απόστασης Cook. Διερευνήστε τα πριν διαγράψετε οτιδήποτε: μια ακραία τιμή μπορεί να είναι σφάλμα εισαγωγής δεδομένων ή μπορεί να είναι η πιο κατατοπιστική παρατήρηση στο δείγμα.

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

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

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

Συνοψίστε αυτήν την ανάρτηση με: