Implementation of K-nearest Neighbor Algorithm Based on GPU

【Abstract】 K-nearest Neighbor(KNN) is a classical problem whose computational complexity increases rapidly with the size of data set. It is an interesting research to accelerate KNN implementation on the Graphics Processor Unit(GPU) by employing GPU’s massive parallel computing power. For its heavy overhead on time,after analyzing the existing work of GPU-based KNN implementations and the architectural features of GPU,this paper efficiently parallelizes KNN on the GPU. It optimizes data access by making good use of the coalesced access power of global memory,and reduces thread serialization by filtering out as much data as possible in advance that is to be sorted. Experiments on KDD,Poker and Covertype datasets and comparisons with some existing methods show that the number of floating point arithmetic of executed per second of this distance computing method is up to 266. 37 × 10,and is up to 26. 47 × 10 in sort phase, which are superior to that of existed methods. 【Key words】 K-nearest Neighbor (KNN) problem;Graphics Processing Unit (GPU); parallel computing; algorithm acceleration;coalesced access;global memory DOI:10. 3969 / j. issn. 1000-3428. 2015. 02. 036

[1]  Enrique Ferreira,et al.  Multi agent collaboration using distributed value functions , 2000, Proceedings of the IEEE Intelligent Vehicles Symposium 2000 (Cat. No.00TH8511).

[2]  Michel Barlaud,et al.  Fast k nearest neighbor search using GPU , 2008, 2008 IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops.

[3]  Francisca Quintana,et al.  Accelerating Space Variant Gaussian Filtering on Graphics Processing Unit , 2007, EUROCAST.

[4]  David R. Kaeli,et al.  Accelerating the local outlier factor algorithm on a GPU for intrusion detection systems , 2010, GPGPU-3.

[5]  Mei-Chih Chen,et al.  An Empirical Study for the Detection of Corporate Financial Anomaly Using Outlier Mining Techniques , 2007, 2007 International Conference on Convergence Information Technology (ICCIT 2007).

[6]  Sunil Arya,et al.  An optimal algorithm for approximate nearest neighbor searching fixed dimensions , 1998, JACM.

[7]  Chu Yanjie,et al.  A Network Specific Information Search System Based on Mobile Agent , 2012, 2012 Third Global Congress on Intelligent Systems.

[8]  Mohamed A. El-Sharkawi,et al.  Elliptical novelty grouping for on-line short-turn detection of excited running rotors , 1999 .

[9]  Hans-Peter Kriegel,et al.  LOF: identifying density-based local outliers , 2000, SIGMOD 2000.

[10]  Tikara Hosino,et al.  Solving k-Nearest Neighbor Problem on Multiple Graphics Processors , 2010, 2010 10th IEEE/ACM International Conference on Cluster, Cloud and Grid Computing.