similarity-topology bietet Algorithmen, die Indizes für die effiziente Nachbarnachtung hochdimensionaler Daten aufrechterhalten.
Der hierarchische Navigable Small World (HNSW) Index erstellt ein mehrschichtiges Diagramm, das einer Skip-Liste ähnelt. Die Suche beginnt auf der obersten Ebene-die die wenigsten Elemente enthält-und durchquert diese Ebene des Diagramms für das Element mit größter Ähnlichkeit mit der Suchabfrage. Die Suche die Suche wird auf der Schicht darunter und wiederholt diesen Algorithmus, bis die untere Schicht gesucht wird.
Es ist wichtig zu beachten, dass die HNSW -Indizes die Löschung nicht unterstützen! Wenn Sie Elemente entfernen müssen, müssen Sie den gesamten Index von Grund auf neu aufbauen!
GraphManager -Speicher.GraphManager , der LMDB für die Speicherung verwendet.Für diejenigen, die sich für die theoretischen Grundlagen des HNSW -Algorithmus interessieren, ist das ursprüngliche Forschungspapier eine hervorragende Ressource.
Um Ihrem Projekt similarity-topology hinzuzufügen, fügen Sie es in Ihr Package.swift auf.
dependencies: [
. package ( url : " https://github.com/yourusername/similarity-topology.git " , from : < #version# > )
]