epfl-lts2 / pygsp

Graph Signal Processing in Python
https://pygsp.rtfd.io
BSD 3-Clause "New" or "Revised" License
483 stars 93 forks source link

refactor NN graph building (included in #43) #21

Open naspert opened 6 years ago

coveralls commented 6 years ago

Coverage Status

Coverage increased (+0.6%) to 82.579% when pulling a562896516c75514c1522337e12188c83f9dd57c on naspert:nn_refactor into e696d9fbe2744c8e6c8ffcdd692db411cf34ed7c on epfl-lts2:master.

mdeff commented 6 years ago

Thanks for merging the knn and radius matrix build :+1:

bricaud commented 6 years ago

This might be an interesting alternative to FLANN: https://github.com/spotify/annoy

mdeff commented 6 years ago

Thanks @bricaud :) There's actually a whole lot of libraries, see e.g. this benchmark. We currently support the following backends (thanks to @naspert work):

@bricaud: which kNN libraries do you have experience with? Would you recommend any? @naspert: do you see any reason to use KDTree over cKDTree?

naspert commented 6 years ago

cKDTree is the same as kdtree, with a C backend. It generates the same results, much faster so no good reason to prefer kdtree over ckdtree. If you are looking into having a dataset with many dimensions, nmslib will be faster.