2.2.7
k-Κοντινότεροι Γείτονες (k-NN)
Σύνοψη
- Ο k-NN αποθηκεύει τα δεδομένα εκπαίδευσης και προβλέπει με ψηφοφορία πλειοψηφίας μεταξύ των \(k\) κοντινότερων γειτόνων ενός σημείου ερωτήματος.
- Οι κύριες υπερπαράμετροι είναι ο αριθμός γειτόνων \(k\) και το σχήμα στάθμισης αποστάσεων, τα οποία ρυθμίζονται εύκολα.
- Μοντελοποιεί φυσικά μη γραμμικά όρια απόφασης, αλλά οι μετρικές απόστασης γίνονται λιγότερο κατατοπιστικές σε υψηλές διαστάσεις («η κατάρα της διαστασιμότητας»).
- Η τυποποίηση χαρακτηριστικών ή η επιλογή κατατοπιστικών χαρακτηριστικών κάνει τους υπολογισμούς αποστάσεων πιο σταθερούς.
Εισαγωγή #
Αυτή η μέθοδος πρέπει να ερμηνεύεται μέσα από τις υποθέσεις της, τις συνθήκες δεδομένων και τον τρόπο με τον οποίο οι επιλογές παραμέτρων επηρεάζουν τη γενίκευση.
Αναλυτική Επεξήγηση #
Μαθηματική Διατύπωση #
Για ένα σημείο ελέγχου \(\mathbf{x}\), έστω \(\mathcal{N}_k(\mathbf{x})\) το σύνολο των \(k\) κοντινότερων γειτόνων στο σύνολο εκπαίδευσης. Η ψήφος για την κλάση \(c\) είναι
$$ v_c = \sum_{i \in \mathcal{N}_k(\mathbf{x})} w_i \,\mathbb{1}(y_i = c), $$όπου τα βάρη \(w_i\) μπορεί να είναι ομοιόμορφα ή συνάρτηση της απόστασης (π.χ. αντίστροφη απόσταση). Η προβλεπόμενη κλάση είναι αυτή με την υψηλότερη ψήφο.
Πειράματα σε Python #
Το παρακάτω απόσπασμα κώδικα Python αξιολογεί αρκετούς αριθμούς γειτόνων σε ένα σύνολο εκπαίδευσης/επικύρωσης και σχεδιάζει τις περιοχές απόφασης για το μοντέλο με την καλύτερη απόδοση.
| |

Αναφορές #
- Cover, T. M., & Hart, P. E. (1967). Nearest Neighbor Pattern Classification. IEEE Transactions on Information Theory, 13(1), 21–27.
- Hastie, T., Tibshirani, R., & Friedman, J. (2009). The Elements of Statistical Learning. Springer.