k-Nearest Neighbour Classifiers: 2nd Edition (with Python examples)
Abstract
Perhaps the most straightforward classifier in the arsenal or machine learning techniques is the Nearest Neighbour Classifier -- classification is achieved by identifying the nearest neighbours to a query example and using those neighbours to determine the class of the query. This approach to classification is of particular importance because issues of poor run-time performance is not such a problem these days with the computational power that is available. This paper presents an overview of techniques for Nearest Neighbour classification focusing on; mechanisms for assessing similarity (distance), computational issues in identifying nearest neighbours and mechanisms for reducing the dimension of the data. This paper is the second edition of a paper previously published as a technical report. Sections on similarity measures for time-series, retrieval speed-up and intrinsic dimensionality have been added. An Appendix is included providing access to Python code for the key methods.
Cite
@article{arxiv.2004.04523,
title = {k-Nearest Neighbour Classifiers: 2nd Edition (with Python examples)},
author = {Padraig Cunningham and Sarah Jane Delany},
journal= {arXiv preprint arXiv:2004.04523},
year = {2021}
}
Comments
22 pages, 15 figures: An updated edition of an older tutorial on kNN