Skip to content

R extensions to N2 implementing approximate nearest neighbor search methods

Notifications You must be signed in to change notification settings

kharchenkolab/N2R

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

<kharchenkolab> CRAN status CRAN downloads

N2R

R extensions to N2 implementing kNN functions.

Implements methods to perform fast approximate K-nearest neighbor search on an input matrix. The algorithm implemented is based on the N2 implementation of an approximate nearest neighbor search using Hierarchical NSW graphs. The original algorithm is described in "Efficient and Robust Approximate Nearest Neighbor Search Using Hierarchical Navigable Small World Graphs", Y. Malkov and D. Yashunin, doi: 10.1109/TPAMI.2018.2889473, arXiv: 1603.09320.

Related libraries:

Installation

To install the stable version from CRAN, use:

install.packages('N2R')

To install the latest version, use:

install.packages('devtools')
devtools::install_github('kharchenkolab/N2R')

For installing from source on Mac OS, please see instructions in the wiki here

Functions

  • Knn(): k-NN using N2 approximate nearest neighbors algorithm

  • crossKnn(): matrixA cross matrixB k-NN using N2

Citation

If you find N2R useful for your publication, please cite:

Peter Kharchenko, Viktor Petukhov and Evan Biederstedt (2022). N2R:
Fast and Scalable Approximate k-Nearest Neighbor Search Methods using
N2 Library. R package version 1.0.3
https://github.com/kharchenkolab/N2R