A Fast kNN Algorithm Using Multiple Space-Filling Curves

Entropy (Basel). 2022 May 30;24(6):767. doi: 10.3390/e24060767.

Abstract

The paper considers a time-efficient implementation of the k nearest neighbours (kNN) algorithm. A well-known approach for accelerating the kNN algorithm is to utilise dimensionality reduction methods based on the use of space-filling curves. In this paper, we take this approach further and propose an algorithm that employs multiple space-filling curves and is faster (with comparable quality) compared with the kNN algorithm, which uses kd-trees to determine the nearest neighbours. A specific method for constructing multiple Peano curves is outlined, and statements are given about the preservation of object proximity information in the course of dimensionality reduction. An experimental comparison with known kNN implementations using kd-trees was performed using test and real-life data.

Keywords: dimensionality reduction; kNN; machine learning; multiple space-filling curves.