Skip to main content

MinimalKNN: minimal package to construct k-NN Graph

Project description

License: MIT Build CodeQL PyPI

A Minimal k-Nearest Neighbor Graph Construction Library

Overview

This package will provide a function to construct an approximated k-Nearest Neighbor graph from a list of three dimensional points. The graph construction algorithm is based on NN-descent presented in Dong, Moses, & Li (2011)[^DML2011]. The Euclidean and Manhattan metrics are implemented in the current version, while only the Euclidean one is available in Python. The algorithm efficiently constructs an approximated k-Nearest Neighbor graph. This provides a portable C++11 header and a Python interface.

Dependencies

The library is written in C++11 and do not depends on any library outside of the STL. The Python interface is depends on NumPy, and functional test procedures depend on Matplotlib. The library is developed on g++ version 5.4 installed in Linux Mint 18.1 (serena). The Python interface is developed on Python 3.7.1 and Numpy 1.18.1.

References

[^DML2011]: Wei Dong, Charikar Moses, & Kai Li, WWW'11: Proceedings of the 20th international conference on World wide web (2011), 577--586 (doi: 10.1145/1963405.1963487)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

minimalknn-0.10.tar.gz (8.9 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

minimalknn-0.10-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (426.9 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

minimalknn-0.10-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (425.6 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

minimalknn-0.10-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (414.3 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

minimalknn-0.10-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (413.0 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

File details

Details for the file minimalknn-0.10.tar.gz.

File metadata

  • Download URL: minimalknn-0.10.tar.gz
  • Upload date:
  • Size: 8.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for minimalknn-0.10.tar.gz
Algorithm Hash digest
SHA256 06746d10868e494d471c5d96b0593ee0fd6f41bd537d542d09594492015e9f4d
MD5 9ab40b286cf0bece470c597bcd78b6ca
BLAKE2b-256 f659009d73db9b636746d3acf7b131dcc5758283ca3831d5d4f2387c1348b5a6

See more details on using hashes here.

File details

Details for the file minimalknn-0.10-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for minimalknn-0.10-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ffdb07457e1dbc1a0d35a7137ffd7ac75f77a3ab870e8d37ac039d67f74c3bf1
MD5 f80507d166bd9e2820b133c7427bac52
BLAKE2b-256 2d8de14698eed6f224d4dc4160310d87f3d146b61ee61cd432f30d3c89b0e492

See more details on using hashes here.

File details

Details for the file minimalknn-0.10-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for minimalknn-0.10-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d07ac25188fb850544bb05e042e3e6f5df95e3c1088d8fb984c31f172469006e
MD5 2373af04d28fbd4609ae530727d00386
BLAKE2b-256 a525a99d9f78c83d53e5879536f5a9e95b45d9837033e3e7978ada2f73020c4c

See more details on using hashes here.

File details

Details for the file minimalknn-0.10-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for minimalknn-0.10-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b32a79dead668da37afe021e44c8d916664cac70fa7234c1b0976ea019a64644
MD5 3ab4dcde288ccd30eb8611494474bdbd
BLAKE2b-256 59dca7a34d13bc571d18df5e6e703b2e635b0d866b91fbccf732d1a775ab915b

See more details on using hashes here.

File details

Details for the file minimalknn-0.10-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for minimalknn-0.10-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 84692dbca71fe0b22d5714ebb23a01e91a8565dc1cf62457f50921cea92862e8
MD5 65d1f7532d3572b452323fb9dfecd63d
BLAKE2b-256 651cd33ff9c139df76bd4a1d924fa67858ac2ff3a70f80c6e5bcd362e912ef52

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page