Σύγκριση Γραμμικής και Λογιστικής Παλινδρόμησης

Συζήτηση για μια ερώτηση συνέντευξης επιστήμης δεδομένων εισαγωγικού επιπέδου

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

Ερώτηση: Ποια είναι η διαφορά μεταξύ της Γραμμικής παλινδρόμησης και της Λογιστικής Παλινδρόμησης;

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

Εικόνα από συγγραφέα

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

  • Υπόθεση ή οικογένεια μοντέλου
  • Εισόδου και εξόδου
  • Λειτουργία απώλειας
  • Τεχνική βελτιστοποίησης
  • Εφαρμογή

Θα συγκρίνουμε τώρα τη Γραμμική παλινδρόμηση (LinReg) και την Λογιστική παλινδρόμηση (LogReg) σε καθένα από αυτά τα σημεία. Ας ξεκινήσουμε με την εφαρμογή, για να βάλουμε τη συζήτηση στον σωστό δρόμο.

Εικόνα από τον Rajashree Rajadhyax

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

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

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

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

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

Η αναγνώριση μιας μαθηματικής συνάρτησης από τα δεδομένα που δίνονται ονομάζεται «μάθηση» ή «εκπαίδευση». Υπάρχουν δύο βήματα μάθησης:

  1. Ο «τύπος» της συνάρτησης (για παράδειγμα γραμμική, εκθετική, πολυωνυμική) επιλέγεται από έναν άνθρωπο
  2. Ο αλγόριθμος εκμάθησης μαθαίνει τις παραμέτρους (όπως η κλίση και η τομή μιας γραμμής) από τα δεδομένα.

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

Τόσο στο LinReg όσο και στο LogReg, η οικογένεια μοντέλων είναι η γραμμική συνάρτηση. Όπως γνωρίζετε, μια γραμμή έχει δύο παραμέτρους - κλίση και τομή. Αλλά αυτό ισχύει μόνο εάν η συνάρτηση παίρνει μόνο μία είσοδο. Για τα περισσότερα προβλήματα του πραγματικού κόσμου, υπάρχουν περισσότερες από μία είσοδοι. Η συνάρτηση μοντέλου για αυτές τις περιπτώσεις ονομάζεται γραμμική συνάρτηση, όχι γραμμή. Μια γραμμική συνάρτηση έχει περισσότερες παραμέτρους για εκμάθηση. Εάν υπάρχουν n είσοδοι στο μοντέλο, η γραμμική συνάρτηση έχει n+1 παραμέτρους. Όπως αναφέρθηκε, αυτές οι παράμετροι μαθαίνονται από τα δεδομένα. Για τους σκοπούς αυτού του άρθρου, θα συνεχίσουμε να υποθέτουμε ότι η συνάρτηση είναι η απλή γραμμή με δύο παραμέτρους. Η λειτουργία μοντέλου για το LogReg είναι λίγο πιο περίπλοκη. Η γραμμή υπάρχει, αλλά συνδυάζεται με μια άλλη λειτουργία. Αυτό θα το δούμε σε λίγο.

Όπως είπαμε παραπάνω, τόσο το LinReg όσο και το LogReg μαθαίνουν τις παραμέτρους της γραμμικής συνάρτησης από τα δεδομένα που ονομάζονται δεδομένα εκπαίδευσης. Τι περιέχουν τα δεδομένα εκπαίδευσης;

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

Εικόνα από συγγραφέα

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

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

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

Εικόνα από συγγραφέα

Τα σημεία με κίτρινο χρώμα ανήκουν στην κλάση 1 και τα γαλάζια ανήκουν στο 0. Η γραμμή είναι η πρότυπη συνάρτησή μας που χωρίζει τις δύο κατηγορίες. Σύμφωνα με αυτό το διαχωριστικό, και τα δύο κίτρινα σημεία (α και β) ανήκουν στην Κλάση 1 . Ωστόσο, η συμμετοχή στο σημείο β είναι πολύ πιο βέβαιη από αυτή του σημείου α. Εάν το μοντέλο βγάζει απλώς 0 και 1, τότε αυτό το γεγονός χάνεται.

Για να διορθωθεί αυτή η κατάσταση, το μοντέλο LogReg παράγει την πιθανότητα κάθε σημείο να ανήκει σε μια συγκεκριμένη κλάση. Στο παραπάνω παράδειγμα, η πιθανότητα το σημείο 'a' να ανήκει στην Κλάση 1 είναι χαμηλή, ενώ αυτή του σημείου 'b' είναι υψηλή. Εφόσον η πιθανότητα είναι ένας αριθμός μεταξύ 0 και 1, το ίδιο ισχύει και για την έξοδο του LogReg.

Δείτε τώρα το παρακάτω διάγραμμα:

Εικόνα από συγγραφέα

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

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

Έτσι το μοντέλο LogReg μοιάζει με:

Εικόνα από συγγραφέα

Η σιγμοειδής συνάρτηση ονομάζεται επίσης «λογιστική» και είναι ο λόγος για το όνομα «Λογιστική παλινδρόμηση».

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

Είδαμε ότι τόσο το LinReg όσο και το LogReg μαθαίνουν τις παραμέτρους της γραμμικής συνάρτησης από τα δεδομένα εκπαίδευσης. Πώς μαθαίνουν αυτές τις παραμέτρους;

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

Στην εκμάθηση μοντέλων ML, το μέτρο απόδοσης ονομάζεται μερικές φορές «απώλεια» και η συνάρτηση που μας βοηθά να τον υπολογίσουμε ονομάζεται «συνάρτηση απώλειας». Μπορούμε να το αναπαραστήσουμε ως:

Loss = Loss_Function (Parameters_being_evaluated)

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

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

Για τη βελτιστοποίηση των παραμέτρων LinReg, η πιο κοινή συνάρτηση απώλειας ονομάζεται Σφάλμα Sum of Squares (SSE). Αυτή η συνάρτηση λαμβάνει τις ακόλουθες εισόδους:

1) Όλα τα σημεία δεδομένων εκπαίδευσης. Για κάθε σημείο, προσδιορίζουμε:

α) οι είσοδοι, όπως η μέγιστη θερμοκρασία δεδομένων,

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

2) Η γραμμική εξίσωση με παραμέτρους

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

SSE Loss = Sum_for_all_points(
Square_of(
output_of_linear_equation_for_the_inputs — actual_output_from_the_data point
))

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

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

Κατά το σχεδιασμό του μέτρου για τη βελτιστοποίηση LogReg, ζητάμε:

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

Το αποτέλεσμα αυτού του μέτρου είναι επομένως πιθανό. Η μαθηματική μορφή της συνάρτησης μέτρησης χρησιμοποιεί λογάριθμους, δίνοντάς της έτσι το όνομα Log Likelihood (LL). Κατά τη συζήτηση των εξόδων, είδαμε ότι η συνάρτηση LogReg περιλαμβάνει εκθετικούς όρους (οι όροι με e «ανυψώθηκε σε» z) Οι λογάριθμοι βοηθούν στην αποτελεσματική αντιμετώπιση αυτών των εκθετικών.

Θα πρέπει να είναι διαισθητικά σαφές σε εσάς ότι η βελτιστοποίηση πρέπει να μεγιστοποιεί το LL. Σκεφτείτε ως εξής: θέλουμε να βρούμε τη γραμμή που κάνει πιο πιθανά τα δεδομένα προπόνησης. Στην πράξη, ωστόσο, προτιμούμε ένα μέτρο που μπορεί να ελαχιστοποιηθεί, οπότε παίρνουμε απλώς το αρνητικό του LL. Λαμβάνουμε έτσι τη συνάρτηση απώλειας αρνητικής πιθανότητας καταγραφής (NLL), αν και σύμφωνα με εμένα το να την αποκαλούμε συνάρτηση απώλειας δεν είναι πολύ σωστό.

Έτσι έχουμε τις δύο συναρτήσεις απώλειας: SSE για LinReg και NLL για LogReg. Σημειώστε ότι αυτές οι συναρτήσεις απώλειας έχουν πολλά ονόματα και θα πρέπει να εξοικειωθείτε με τους όρους.

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

Περαιτέρω λεπτομέρειες μπορούν να διερευνηθούν. Γιατί SSE; Πώς υπολογίζεται η πιθανότητα; Δεν μπήκαμε στη μέθοδο βελτιστοποίησης εδώ για να αποφύγουμε περισσότερα μαθηματικά. Ωστόσο, πρέπει να έχετε κατά νου ότι η βελτιστοποίηση του LogReg συνήθως απαιτεί την επαναληπτική μέθοδο gradient descent ενώ το LinReg συνήθως μπορεί να κάνει με μια γρήγορη λύση κλειστής μορφής. Μπορούμε να συζητήσουμε αυτά και περισσότερα σημεία σε άλλο άρθρο.

Σύγκριση Γραμμικής και Λογιστικής Παλινδρόμησης Αναδημοσίευση από την Πηγή https://towardsdatascience.com/comparing-linear-and-logistic-regression-11a3e1812212?source=rss—-7f60cf5620c9—4 μέσω https://towardsdatascience.com/fe

Si al principi no tens èxit, aleshores el paracaigudisme no és per a tu.

->

Σφραγίδα ώρας:

Περισσότερα από Σύμβουλοι Blockchain