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

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

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

Η δυαδική λογιστική παλινδρόμηση χρησιμοποιεί

p(y=1x)=σ(z),z=β0+β1x1++βnxnp(y=1 \mid x) = \sigma(z), \qquad z = \beta_0 + \beta_1 x_1 + \cdots + \beta_n x_n

με τη σιγμοειδή συνάρτηση

σ(z)=11+ez\sigma(z) = \frac{1}{1 + e^{-z}}

Το γραμμικό μέρος zz μπορεί να είναι οποιοσδήποτε πραγματικός αριθμός. Η σιγμοειδής συνάρτηση συμπιέζει αυτή την τιμή στο (0,1)(0,1), γι’ αυτό η έξοδος μπορεί να χρησιμοποιηθεί ως εκτίμηση πιθανότητας.

Γιατί έχει σημασία η σιγμοειδής συνάρτηση

Αν χρησιμοποιούσες το ακατέργαστο γραμμικό σκορ zz ως πιθανότητα, θα μπορούσες να πάρεις αδύνατες τιμές όπως 1.71.7 ή 0.4-0.4. Η σιγμοειδής το διορθώνει αυτό, αντιστοιχίζοντας μεγάλες αρνητικές τιμές σκορ κοντά στο 00, μεγάλες θετικές τιμές σκορ κοντά στο 11 και τιμές σκορ κοντά στο 00 κοντά στο 0.50.5.

Αυτό δίνει μια πρακτική ερμηνεία:

  • αν το zz είναι πολύ αρνητικό, το μοντέλο γέρνει προς την κλάση 00
  • αν το zz είναι κοντά στο 00, το μοντέλο είναι αβέβαιο
  • αν το zz είναι πολύ θετικό, το μοντέλο γέρνει προς την κλάση 11

Η καμπύλη είναι πιο απότομη κοντά στο z=0z=0. Άρα μια μικρή αλλαγή στο σκορ μπορεί να αλλάξει πολύ την πιθανότητα κοντά στο 0.50.5, αλλά πολύ λιγότερο όταν η πιθανότητα είναι ήδη κοντά στο 00 ή στο 11.

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

Έστω ότι ένα μοντέλο χρησιμοποιεί ένα χαρακτηριστικό xx και έχει

z=7+0.1xz = -7 + 0.1x

Μπορείς να θεωρήσεις το xx ως βαθμολογία σε ένα τεστ και το y=1y=1 ως «επιτυχία». Οι συντελεστές εδώ είναι απλώς ένα παράδειγμα για να δείξουν τον μηχανισμό.

Αν x=65x = 65, τότε

z=7+0.1(65)=0.5z = -7 + 0.1(65) = -0.5

Άρα η προβλεπόμενη πιθανότητα είναι

p(y=1x=65)=σ(0.5)=11+e0.50.378p(y=1 \mid x=65) = \sigma(-0.5) = \frac{1}{1 + e^{0.5}} \approx 0.378

Αν x=80x = 80, τότε

z=7+0.1(80)=1z = -7 + 0.1(80) = 1

και

p(y=1x=80)=σ(1)=11+e10.731p(y=1 \mid x=80) = \sigma(1) = \frac{1}{1 + e^{-1}} \approx 0.731

Άρα το ίδιο μοντέλο δίνει περίπου 37.8%37.8\% πιθανότητα επιτυχίας όταν x=65x=65 και περίπου 73.1%73.1\% όταν x=80x=80. Το σκορ αυξήθηκε κατά 1.51.5, αλλά η τελική έξοδος έμεινε μεταξύ 00 και 11 επειδή η σιγμοειδής μετατρέπει το αποτέλεσμα σε πιθανότητα.

Αν τώρα επιλέξεις κατώφλι 0.50.5, η πρώτη περίπτωση ταξινομείται ως κλάση 00 και η δεύτερη ως κλάση 11. Αυτό το τελευταίο βήμα εξαρτάται από το κατώφλι. Η ίδια η εκτίμηση πιθανότητας δεν εξαρτάται.

Μια χρήσιμη συντόμευση: με κατώφλι 0.50.5, η κλάση αλλάζει ακριβώς όταν z=0z=0, επειδή σ(0)=0.5\sigma(0)=0.5.

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

Η έξοδος του μοντέλου είναι μια εκτίμηση πιθανότητας. Ένας κανόνας ταξινόμησης προστίθεται μετά.

Για παράδειγμα, με κατώφλι 0.50.5:

  • πρόβλεψε κλάση 11 αν p(y=1x)0.5p(y=1 \mid x) \ge 0.5
  • πρόβλεψε κλάση 00 αν p(y=1x)<0.5p(y=1 \mid x) < 0.5

Όμως το 0.50.5 δεν είναι πάντα το σωστό κατώφλι. Αν τα false positives και τα false negatives έχουν διαφορετικό κόστος ή αν οι κλάσεις είναι πολύ ανισόρροπες, κάποιο άλλο κατώφλι μπορεί να λειτουργεί καλύτερα.

Τι σημαίνουν οι συντελεστές

Το πρόσημο ενός συντελεστή δείχνει την κατεύθυνση της επίδρασης στο γραμμικό σκορ zz:

  • αν βi>0\beta_i > 0, η αύξηση του xix_i αυξάνει το zz και τείνει να αυξήσει το p(y=1x)p(y=1 \mid x)
  • αν βi<0\beta_i < 0, η αύξηση του xix_i μειώνει το zz και τείνει να μειώσει το p(y=1x)p(y=1 \mid x)

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

Στη συνήθη λογιστική παλινδρόμηση, το γραμμικό μοντέλο είναι στην κλίμακα των log-odds:

log(p1p)=β0+β1x1++βnxn\log\left(\frac{p}{1-p}\right) = \beta_0 + \beta_1 x_1 + \cdots + \beta_n x_n

Αυτό σημαίνει ότι κάθε αύξηση κατά μία μονάδα σε ένα χαρακτηριστικό αλλάζει γραμμικά τα log-odds όταν τα άλλα χαρακτηριστικά παραμένουν σταθερά. Αυτό είναι πιο ακριβές από το να πούμε ότι αλλάζει την πιθανότητα κατά ένα σταθερό ποσό.

Συνηθισμένα λάθη στη λογιστική παλινδρόμηση

Να θεωρείς την έξοδο ως βέβαιη κλάση

Μια πρόβλεψη όπως 0.730.73 δεν σημαίνει ότι το γεγονός θα συμβεί σίγουρα. Σημαίνει ότι το μοντέλο αποδίδει περίπου 73%73\% εκτιμώμενη πιθανότητα στη θετική κλάση για αυτή την είσοδο.

Να υποθέτεις ότι το κατώφλι πρέπει να είναι 0.50.5

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

Να νομίζεις ότι η πιθανότητα αλλάζει γραμμικά

Το σκορ zz είναι γραμμικό ως προς τις εισόδους, αλλά η πιθανότητα δεν είναι. Μια μεταβολή κατά μία μονάδα σε ένα χαρακτηριστικό μπορεί να έχει διαφορετική επίδραση κοντά στο p=0.5p=0.5 απ’ ό,τι κοντά στο p=0.95p=0.95.

Να ξεχνάς ότι το μοντέλο είναι δυαδικό εκτός αν επεκταθεί

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

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

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

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

Ένας απλός τρόπος να το φανταστείς

Σκέψου τη λογιστική παλινδρόμηση ως μια μηχανή δύο βημάτων:

  1. Αθροίζει ενδείξεις με ένα γραμμικό σκορ.
  2. Μετατρέπει αυτό το σκορ σε πιθανότητα με τη σιγμοειδή συνάρτηση.

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

Δοκίμασε ένα παρόμοιο πρόβλημα λογιστικής παλινδρόμησης

Διάλεξε ένα απλό σκορ όπως

z=3+0.5xz = -3 + 0.5x

Υπολόγισε το σ(z)\sigma(z) για μερικές τιμές του xx, όπως 22, 66 και 1010. Παρατήρησε πώς το γραμμικό σκορ αλλάζει σταθερά ενώ η πιθανότητα καμπυλώνεται σε μια καμπύλη σχήματος S. Έπειτα δοκίμασε ένα διαφορετικό κατώφλι και δες πότε αλλάζει η προβλεπόμενη κλάση.

Χρειάζεσαι βοήθεια με μια άσκηση;

Ανέβασε την ερώτησή σου και πάρε επαληθευμένη λύση βήμα-βήμα σε δευτερόλεπτα.

Άνοιξε το GPAI Solver →