Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Saturating the Graph #467

Open
wants to merge 6 commits into
base: main-dev
Choose a base branch
from
Open

Saturating the Graph #467

wants to merge 6 commits into from

Conversation

ashvardanian
Copy link
Contributor

No description provided.

In HNSW some nodes may become disconnected
from the rest of the graph. New `unreachable_nodes`
API allows retrieving the number of such entries.
On a real-world Wiki1M dataset around 0.1% nodes
are isolated.
Sometimes, knowing `disconnected_nodes()` number is not enough.
To know exactly which nodes are disconnected from the member
nodes of the current level, the upgraded API returns a `bitset_t`.

Moreover, multiple nodes may have links referencing each-other
and forming a connected component, but still be disconnected from
the rest of the hierarchical graph. To detect those - a
new `unreachable_nodes()` API was added.

This patch also refactors `bitset_gt` and `ring_gt`, extending
their functionality and fixing compilation errors.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant