ich arbeite an einem content-based Image Retrieval-Projekt, wo große Feature-Vektoren aus massiven Bilddatensätzen extrahiert werden, ich die Feature-Vektoren in einer Datenbank für spätere Wiedergewinnung und Vergleich mit Abfragebildern mit Abstandsmaße wie Euklidische Entfernung speichern möchte Was ist die beste Datenbank zum Speichern dieser Feature-Vektoren?Was ist die beste Datenbank zum Speichern von großen Feature-Vektoren für spätere Abfrage und Berechnung von Distanzmessungen für Ähnlichkeitsvergleiche?
Antwort
Zwei weit verbreitete Bibliotheken in der Gemeinde sind die FALCONN und die NMSLIB. Beide implementieren eine ungefähre Suche nach dem nächsten Nachbarn in Echtzeit über Millionen (sogar Milliarden) von reellwertigen Vektoren, z. image SIFT-Funktionen. Während ersterer lokalisierungssensitives Hashing verwendet, unterstützt letzteres zusammen mit lokalisierungssensitivem Hashing eine neuere Technik namens Produktquantisierung. NMSLIB ermöglicht Ihnen auch, Ihre eigene Metrik zu definieren, z. Kosinusähnlichkeit oder Lp-Abstände anstatt nur mit dem L2 (euklidischen) Distanzmaß zu arbeiten.
Weitere 2 weit verbreitete Bibliotheken sind Faiss(2015) und FLANN(2009).
Faiss hat eine sehr effiziente GPU-Implementierung.
Alle diese Bibliotheken sind für den In-Memory-Betrieb ausgelegt, nicht für die Speicherung. Mir ist keine Implementierung bekannt, die Features unterstützt, die Vektoren hinzufügen/abfragen/auf persisten Speicher operieren.
- 1. Was ist die beste Methode zum Speichern/Berechnen von Benutzerbewertungen?
- 2. beste Möglichkeit, Code für die spätere Ausführung zu speichern (Python)
- 3. Speichern eines Zeigerwerts für die spätere Verwendung
- 4. Was ist die beste Wahl zum Speichern von Download-Links und einigen Attributen (Datenbank oder Datei)?
- 5. Was ist die beste Datenbanklösung zum Speichern von großen, oft aktualisierten Datensätzen?
- 6. Speichern Variable für die spätere Verwendung
- 7. Was ist die beste Programmiersprache für die Operationalisierung von Forschungsfragen mit großen Datensätzen?
- 8. Speichern von Daten auf der Seite für die spätere Verwendung
- 9. Die beste Möglichkeit zum Speichern von Konfigurationseinstellungen für T4
- 10. Talend: Speichern Variable für die spätere Verwendung
- 11. Speichern einer Destrukturierungskarte für die spätere Verwendung
- 12. Beste Programmiersprache für die Berechnung
- 13. speichern Benutzereingaben für eine spätere Verwendung C#
- 14. Was ist die beste Vorgehensweise für eine Such-SQL-Abfrage?
- 15. Was ist die beste Methode zum Erstellen von "ummauerten Gärten" für mehrere Clients in Ihrer Datenbank?
- 16. Die beste Methode zum Speichern von Benutzerpunkten in der Datenbank
- 17. Die beste Methode zum Speichern von Dateien
- 18. Die beste Möglichkeit zum Speichern und Suchen von Stichwörtern für einen Datensatz in PHP und MySQL?
- 19. Was ist die bestmögliche Struktur für eine Datenbank zum Speichern von Konfigurationen Datum
- 20. Was ist die beste Plattform für die Entwicklung von Apps für iOS und Android?
- 21. Was ist die beste Methode zum Speichern/Abrufen von Daten für einen Desktop ohne Verwendung einer Datenbank?
- 22. C++ speichern Funktion und Parameterliste für die spätere Verwendung
- 23. Was ist der beste Weg zum Speichern und Abrufen von Binärdateien mit Oracle 10g?
- 24. Was ist die beste Option zum Erstellen von Protokollnachrichtenpuffer
- 25. Was ist die beste Software zum Zeichnen ERD für eine MySQL-Datenbank für Windows
- 26. Was ist die beste Methode zum Reinigen von Daten nach dem Einfügen für einen Komponententest
- 27. Was ist die beste Vorgehensweise zum Speichern von mehrschichtigen Daten in mySQL?
- 28. Beste Option zum Speichern einer externen Datenbank für iOS App
- 29. Was ist die beste Vorgehensweise für die Abfrage von Daten mit Spark SQL?
- 30. Was ist die beste Datenbank für eine Java-Desktop-Anwendung
Wie werden diese Feature-Vektoren ordnungsgemäß gespeichert, bevor Ähnlichkeitsabgleich und -abruf ausgeführt werden? – markeb
Was meinst du mit 'richtig'? Die Bibliothek macht alles für Sie und Sie müssen nicht einmal über die internen Daten und Dateistrukturen Bescheid wissen ... Wählen Sie eine davon, lesen Sie die Dokumentation und probieren Sie mit einigen Beispielfällen den grundlegenden Workflow aus ... – Debasis